diff options
Diffstat (limited to 'doc')
118 files changed, 3727 insertions, 42679 deletions
diff --git a/doc/_static/js/pgcalc.js b/doc/_static/js/pgcalc.js new file mode 100644 index 000000000..e13c30895 --- /dev/null +++ b/doc/_static/js/pgcalc.js @@ -0,0 +1,357 @@ +var _____WB$wombat$assign$function_____ = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; }; +if (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } } +{ + let window = _____WB$wombat$assign$function_____("window"); + let self = _____WB$wombat$assign$function_____("self"); + let document = _____WB$wombat$assign$function_____("document"); + let location = _____WB$wombat$assign$function_____("location"); + let top = _____WB$wombat$assign$function_____("top"); + let parent = _____WB$wombat$assign$function_____("parent"); + let frames = _____WB$wombat$assign$function_____("frames"); + let opener = _____WB$wombat$assign$function_____("opener"); + +var pow2belowThreshold = 0.25 +var key_values={}; +key_values['poolName'] ={'name':'Pool Name','default':'newPool','description': 'Name of the pool in question. Typical pool names are included below.', 'width':'30%; text-align: left'}; +key_values['size'] ={'name':'Size','default': 3, 'description': 'Number of replicas the pool will have. Default value of 3 is pre-filled.', 'width':'10%', 'global':1}; +key_values['osdNum'] ={'name':'OSD #','default': 100, 'description': 'Number of OSDs which this Pool will have PGs in. Typically, this is the entire Cluster OSD count, but could be less based on CRUSH rules. (e.g. Separate SSD and SATA disk sets)', 'width':'10%', 'global':1}; +key_values['percData'] ={'name':'%Data', 'default': 5, 'description': 'This value represents the approximate percentage of data which will be contained in this pool for that specific OSD set. Examples are pre-filled below for guidance.','width':'10%'}; +key_values['targPGsPerOSD'] ={'name':'Target PGs per OSD', 'default':100, 'description': 'This value should be populated based on the following guidance:', 'width':'10%', 'global':1, 'options': [ ['100','If the cluster OSD count is not expected to increase in the foreseeable future.'], ['200', 'If the cluster OSD count is expected to increase (up to double the size) in the foreseeable future.']]} + +var notes ={ + 'totalPerc':'<b>"Total Data Percentage"</b> below table should be a multiple of 100%.', + 'totalPGs':'<b>"Total PG Count"</b> below table will be the count of Primary PG copies. However, when calculating total PGs per OSD average, you must include all copies.', + 'noDecrease':'It\'s also important to know that the PG count can be increased, but <b>NEVER</b> decreased without destroying / recreating the pool. However, increasing the PG Count of a pool is one of the most impactful events in a Ceph Cluster, and should be avoided for production clusters if possible.', +}; + +var presetTables={}; +presetTables['All-in-One']=[ + { 'poolName' : 'rbd', 'size' : '3', 'osdNum' : '100', 'percData' : '100', 'targPGsPerOSD' : '100'}, +]; +presetTables['OpenStack']=[ + { 'poolName' : 'cinder-backup', 'size' : '3', 'osdNum' : '100', 'percData' : '25', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'cinder-volumes', 'size' : '3', 'osdNum' : '100', 'percData' : '53', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'ephemeral-vms', 'size' : '3', 'osdNum' : '100', 'percData' : '15', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'glance-images', 'size' : '3', 'osdNum' : '100', 'percData' : '7', 'targPGsPerOSD' : '100'}, +]; +presetTables['OpenStack w RGW - Jewel and later']=[ + { 'poolName' : '.rgw.root', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.control', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.data.root', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.gc', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.intent-log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.meta', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.usage', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.keys', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.email', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.swift', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.uid', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.buckets.extra', 'size' : '3', 'osdNum' : '100', 'percData' : '1.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.buckets.index', 'size' : '3', 'osdNum' : '100', 'percData' : '3.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.buckets.data', 'size' : '3', 'osdNum' : '100', 'percData' : '19', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'cinder-backup', 'size' : '3', 'osdNum' : '100', 'percData' : '18', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'cinder-volumes', 'size' : '3', 'osdNum' : '100', 'percData' : '42.8', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'ephemeral-vms', 'size' : '3', 'osdNum' : '100', 'percData' : '10', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'glance-images', 'size' : '3', 'osdNum' : '100', 'percData' : '5', 'targPGsPerOSD' : '100'}, +]; + +presetTables['Rados Gateway Only - Jewel and later']=[ + { 'poolName' : '.rgw.root', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.control', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.data.root', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.gc', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.intent-log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.meta', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.usage', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.keys', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.email', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.swift', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.users.uid', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.buckets.extra', 'size' : '3', 'osdNum' : '100', 'percData' : '1.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.buckets.index', 'size' : '3', 'osdNum' : '100', 'percData' : '3.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'default.rgw.buckets.data', 'size' : '3', 'osdNum' : '100', 'percData' : '94.8', 'targPGsPerOSD' : '100'}, +]; + +presetTables['OpenStack w RGW - Infernalis and earlier']=[ + { 'poolName' : '.intent-log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.buckets', 'size' : '3', 'osdNum' : '100', 'percData' : '18', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.buckets.extra', 'size' : '3', 'osdNum' : '100', 'percData' : '1.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.buckets.index', 'size' : '3', 'osdNum' : '100', 'percData' : '3.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.control', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.gc', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.root', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.usage', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users.email', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users.swift', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users.uid', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'cinder-backup', 'size' : '3', 'osdNum' : '100', 'percData' : '19', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'cinder-volumes', 'size' : '3', 'osdNum' : '100', 'percData' : '42.9', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'ephemeral-vms', 'size' : '3', 'osdNum' : '100', 'percData' : '10', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'glance-images', 'size' : '3', 'osdNum' : '100', 'percData' : '5', 'targPGsPerOSD' : '100'}, +]; + +presetTables['Rados Gateway Only - Infernalis and earlier']=[ + { 'poolName' : '.intent-log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.log', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.buckets', 'size' : '3', 'osdNum' : '100', 'percData' : '94.9', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.buckets.extra', 'size' : '3', 'osdNum' : '100', 'percData' : '1.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.buckets.index', 'size' : '3', 'osdNum' : '100', 'percData' : '3.0', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.control', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.gc', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.rgw.root', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.usage', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users.email', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users.swift', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, + { 'poolName' : '.users.uid', 'size' : '3', 'osdNum' : '100', 'percData' : '0.1', 'targPGsPerOSD' : '100'}, +]; +presetTables['RBD and libRados']=[ + { 'poolName' : 'rbd', 'size' : '3', 'osdNum' : '100', 'percData' : '75', 'targPGsPerOSD' : '100'}, + { 'poolName' : 'myObjects', 'size' : '3', 'osdNum' : '100', 'percData' : '25', 'targPGsPerOSD' : '100'}, +]; + +$(function() { + $("#presetType").on("change",changePreset); + $("#btnAddPool").on("click",addPool); + $("#btnGenCommands").on("click",generateCommands); + $.each(presetTables,function(index,value) { + selIndex=''; + if ( index == 'OpenStack w RGW - Jewel and later' ) + selIndex=' selected'; + $("#presetType").append("<option value=\""+index+"\""+selIndex+">"+index+"</option>"); + }); + changePreset(); + $("#beforeTable").html("<fieldset id='keyFieldset'><legend>Key</legend><dl class='table-display' id='keyDL'></dl></fieldset>"); + $.each(key_values, function(index, value) { + pre=''; + post=''; + if ('global' in value) { + pre='<a href="javascript://" onClick="globalChange(\''+index+'\');" title="Change the \''+value['name']+'\' parameter globally">'; + post='</a>' + } + + var dlAdd="<dt id='dt_"+index+"'>"+pre+value['name']+post+"</dt><dd id='dd_"+index+"'>"+value['description']; + if ( 'options' in value ) { + dlAdd+="<dl class='sub-table'>"; + $.each(value['options'], function (subIndex, subValue) { + dlAdd+="<dt><a href=\"javascript://\" onClick=\"massUpdate('"+index+"','"+subValue[0]+"');\" title=\"Set all '"+value['name']+"' fields to '"+subValue[0]+"'.\">"+subValue[0]+"</a></dt><dd>"+subValue[1]+"</dd>"; + }); + dlAdd+="</dl>"; + } + dlAdd+="</dd>"; + $("#keyDL").append(dlAdd); + }); + $("#afterTable").html("<fieldset id='notesFieldset'><legend>Notes</legend><ul id='notesUL'>\n<ul></fieldset>"); + $.each(notes,function(index, value) { + $("#notesUL").append("\t<li id=\"li_"+index+"\">"+value+"</li>\n"); + }); + +}); + +function changePreset() { + resetTable(); + fillTable($("#presetType").val()); +} + +function resetTable() { + $("#pgsperpool").html(""); + $("#pgsperpool").append("<tr id='headerRow'>\n</tr>\n"); + $("#headerRow").append("\t<th> </th>\n"); + var fieldCount=0; + var percDataIndex=0; + $.each(key_values, function(index, value) { + fieldCount++; + pre=''; + post=''; + var widthAdd=''; + if ( index == 'percData' ) + percDataIndex=fieldCount; + if ('width' in value) + widthAdd=' style=\'width: '+value['width']+'\''; + if ('global' in value) { + pre='<a href="javascript://" onClick="globalChange(\''+index+'\');" title="Change the \''+value['name']+'\' parameter globally">'; + post='</a>' + } + $("#headerRow").append("\t<th"+widthAdd+">"+pre+value['name']+post+"</th>\n"); + }); + percDataIndex++; + $("#headerRow").append("\t<th class='center'>Suggested PG Count</th>\n"); + $("#pgsperpool").append("<tr id='totalRow'><td colspan='"+percDataIndex+"' id='percTotal' style='text-align: right; margin-right: 10px;'><strong>Total Data Percentage:</strong> <span id='percTotalValue'>0</span>%</td><td> </td><td id='pgTotal' class='bold pgcount' style='text-align: right;'>PG Total Count: <span id='pgTotalValue'>0</span></td></tr>"); +} + +function nearestPow2( aSize ){ + var tmp=Math.pow(2, Math.round(Math.log(aSize)/Math.log(2))); + if(tmp<(aSize*(1-pow2belowThreshold))) + tmp*=2; + return tmp; +} + +function globalChange(field) { + dialogHTML='<div title="Change \''+key_values[field]['name']+'\' Globally"><form>'; + dialogHTML+='<label for="value">New '+key_values[field]['name']+' value:</label><br />\n'; + dialogHTML+='<input type="text" name="globalValue" id="globalValue" value="'+$("#row0_"+field+"_input").val()+'" style="text-align: right;"/>'; + dialogHTML+='<input type="hidden" name="globalField" id="globalField" value="'+field+'"/>'; + dialogHTML+='<input type="submit" tabindex="-1" style="position:absolute; top:-1000px">'; + dialogHTML+='</form>'; + globalDialog=$(dialogHTML).dialog({ + autoOpen: true, + width: 350, + show: 'fold', + hide: 'fold', + modal: true, + buttons: { + "Update Value": function() { massUpdate($("#globalField").val(),$("#globalValue").val()); globalDialog.dialog("close"); setTimeout(function() { globalDialog.dialog("destroy"); }, 1000); }, + "Cancel": function() { globalDialog.dialog("close"); setTimeout(function() { globalDialog.dialog("destroy"); }, 1000); } + } + }); +} + +var rowCount=0; +function fillTable(presetType) { + rowCount=0; + $.each(presetTables[presetType], function(index,value) { + addTableRow(value); + }); +} + +function addPool() { + dialogHTML='<div title="Add Pool"><form>'; + $.each(key_values, function(index,value) { + dialogHTML+='<br /><label for="new'+index+'">'+value['name']+':</label><br />\n'; + classAdd='right'; + if ( index == 'poolName' ) + classAdd='left'; + dialogHTML+='<input type="text" name="new'+index+'" id="new'+index+'" value="'+value['default']+'" class="'+classAdd+'"/><br />'; + }); + dialogHTML+='<input type="submit" tabindex="-1" style="position:absolute; top:-1000px">'; + dialogHTML+='</form>'; + addPoolDialog=$(dialogHTML).dialog({ + autoOpen: true, + width: 350, + show: 'fold', + hide: 'fold', + modal: true, + buttons: { + "Add Pool": function() { + var newPoolValues={}; + $.each(key_values,function(index,value) { + newPoolValues[index]=$("#new"+index).val(); + }); + addTableRow(newPoolValues); + addPoolDialog.dialog("close"); + setTimeout(function() { addPoolDialog.dialog("destroy"); }, 1000); }, + "Cancel": function() { addPoolDialog.dialog("close"); setTimeout(function() { addPoolDialog.dialog("destroy"); }, 1000); } + } + }); + +// addTableRow({'poolName':'newPool','size':3, 'osdNum':100,'targPGsPerOSD': 100, 'percData':0}); +} + +function addTableRow(rowValues) { + rowAdd="<tr id='row"+rowCount+"'>\n"; + rowAdd+="\t<td width='15px' class='inputColor'><a href='javascript://' title='Remove Pool' onClick='$(\"#row"+rowCount+"\").remove();updateTotals();'><span class='ui-icon ui-icon-trash'></span></a></td>\n"; + $.each(key_values, function(index,value) { + classAdd=' center'; + modifier=''; + if ( index == 'percData' ) { + classAdd='" style="text-align: right;'; + // modifier=' %'; + } else if ( index == 'poolName' ) + classAdd=' left'; + rowAdd+="\t<td id=\"row"+rowCount+"_"+index+"\"><input type=\"text\" class=\"inputColor "+index+classAdd+"\" id=\"row"+rowCount+"_"+index+"_input\" value=\""+rowValues[index]+"\" onFocus=\"focusMe("+rowCount+",'"+index+"');\" onKeyUp=\"keyMe("+rowCount+",'"+index+"');\" onBlur=\"blurMe("+rowCount+",'"+index+"');\">"+modifier+"</td>\n"; + }); + rowAdd+="\t<td id=\"row"+rowCount+"_pgCount\" class='pgcount' style='text-align: right;'>0</td></tr>"; + $("#totalRow").before(rowAdd); + updatePGCount(rowCount); + $("[id$='percData_input']").each(function() { var fieldVal=parseFloat($(this).val()); $(this).val(fieldVal.toFixed(2)); }); + rowCount++; +} + +function updatePGCount(rowID) { + if(rowID==-1) { + for(var i=0;i<rowCount;i++) { + updatePGCount(i); + } + } else { + minValue=nearestPow2(Math.floor($("#row"+rowID+"_osdNum_input").val()/$("#row"+rowID+"_size_input").val())+1); + if(minValue<$("#row"+rowID+"_osdNum_input").val()) + minValue*=2; + calcValue=nearestPow2(Math.floor(($("#row"+rowID+"_targPGsPerOSD_input").val()*$("#row"+rowID+"_osdNum_input").val()*$("#row"+rowID+"_percData_input").val())/(100*$("#row"+rowID+"_size_input").val()))); + if(minValue>calcValue) + $("#row"+rowID+"_pgCount").html(minValue); + else + $("#row"+rowID+"_pgCount").html(calcValue); + } + updateTotals(); +} + +function focusMe(rowID,field) { + $("#row"+rowID+"_"+field+"_input").toggleClass('inputColor'); + $("#row"+rowID+"_"+field+"_input").toggleClass('highlightColor'); + $("#dt_"+field).toggleClass('highlightColor'); + $("#dd_"+field).toggleClass('highlightColor'); + updatePGCount(rowID); +} + +function blurMe(rowID,field) { + focusMe(rowID,field); + $("[id$='percData_input']").each(function() { var fieldVal=parseFloat($(this).val()); $(this).val(fieldVal.toFixed(2)); }); +} + +function keyMe(rowID,field) { + updatePGCount(rowID); +} + +function massUpdate(field,value) { + $("[id$='_"+field+"_input']").val(value); + key_values[field]['default']=value; + updatePGCount(-1); +} + +function updateTotals() { + var totalPerc=0; + var totalPGs=0; + $("[id$='percData_input']").each(function() { + totalPerc+=parseFloat($(this).val()); + if ( parseFloat($(this).val()) > 100 ) + $(this).addClass('ui-state-error'); + else + $(this).removeClass('ui-state-error'); + }); + $("[id$='_pgCount']").each(function() { + totalPGs+=parseInt($(this).html()); + }); + $("#percTotalValue").html(totalPerc.toFixed(2)); + $("#pgTotalValue").html(totalPGs); + if(parseFloat(totalPerc.toFixed(2)) % 100 != 0) { + $("#percTotalValue").addClass('ui-state-error'); + $("#li_totalPerc").addClass('ui-state-error'); + } else { + $("#percTotalValue").removeClass('ui-state-error'); + $("#li_totalPerc").removeClass('ui-state-error'); + } + $("#commandCode").html(""); +} + +function generateCommands() { + outputCommands="## Note: The 'while' loops below pause between pools to allow all\n\ +## PGs to be created. This is a safety mechanism to prevent\n\ +## saturating the Monitor nodes.\n\ +## -------------------------------------------------------------------\n\n"; + for(i=0;i<rowCount;i++) { + console.log(i); + outputCommands+="ceph osd pool create "+$("#row"+i+"_poolName_input").val()+" "+$("#row"+i+"_pgCount").html()+"\n"; + outputCommands+="ceph osd pool set "+$("#row"+i+"_poolName_input").val()+" size "+$("#row"+i+"_size_input").val()+"\n"; + outputCommands+="while [ $(ceph -s | grep creating -c) -gt 0 ]; do echo -n .;sleep 1; done\n\n"; + } + window.location.href = "data:application/download," + encodeURIComponent(outputCommands); +} + + +} diff --git a/doc/architecture.rst b/doc/architecture.rst index 852225ce6..2b28f9af1 100644 --- a/doc/architecture.rst +++ b/doc/architecture.rst @@ -19,9 +19,14 @@ The Ceph Storage Cluster ======================== Ceph provides an infinitely scalable :term:`Ceph Storage Cluster` based upon -:abbr:`RADOS (Reliable Autonomic Distributed Object Store)`, which you can read -about in `RADOS - A Scalable, Reliable Storage Service for Petabyte-scale -Storage Clusters`_. +:abbr:`RADOS (Reliable Autonomic Distributed Object Store)`, a reliable, +distributed storage service that uses the intelligence in each of its nodes to +secure the data it stores and to provide that data to :term:`client`\s. See +Sage Weil's "`The RADOS Object Store +<https://ceph.io/en/news/blog/2009/the-rados-distributed-object-store/>`_" blog +post for a brief explanation of RADOS and see `RADOS - A Scalable, Reliable +Storage Service for Petabyte-scale Storage Clusters`_ for an exhaustive +explanation of :term:`RADOS`. A Ceph Storage Cluster consists of multiple types of daemons: @@ -33,11 +38,10 @@ A Ceph Storage Cluster consists of multiple types of daemons: .. _arch_monitor: Ceph Monitors maintain the master copy of the cluster map, which they provide -to Ceph clients. Provisioning multiple monitors within the Ceph cluster ensures -availability in the event that one of the monitor daemons or its host fails. -The Ceph monitor provides copies of the cluster map to storage cluster clients. +to Ceph clients. The existence of multiple monitors in the Ceph cluster ensures +availability if one of the monitor daemons or its host fails. -A Ceph OSD Daemon checks its own state and the state of other OSDs and reports +A Ceph OSD Daemon checks its own state and the state of other OSDs and reports back to monitors. A Ceph Manager serves as an endpoint for monitoring, orchestration, and plug-in @@ -47,10 +51,11 @@ A Ceph Metadata Server (MDS) manages file metadata when CephFS is used to provide file services. Storage cluster clients and :term:`Ceph OSD Daemon`\s use the CRUSH algorithm -to compute information about data location. This means that clients and OSDs -are not bottlenecked by a central lookup table. Ceph's high-level features -include a native interface to the Ceph Storage Cluster via ``librados``, and a -number of service interfaces built on top of ``librados``. +to compute information about the location of data. Use of the CRUSH algoritm +means that clients and OSDs are not bottlenecked by a central lookup table. +Ceph's high-level features include a native interface to the Ceph Storage +Cluster via ``librados``, and a number of service interfaces built on top of +``librados``. Storing Data ------------ @@ -61,7 +66,7 @@ comes through a :term:`Ceph Block Device`, :term:`Ceph Object Storage`, the ``librados``. The data received by the Ceph Storage Cluster is stored as RADOS objects. Each object is stored on an :term:`Object Storage Device` (this is also called an "OSD"). Ceph OSDs control read, write, and replication -operations on storage drives. The default BlueStore back end stores objects +operations on storage drives. The default BlueStore back end stores objects in a monolithic, database-like fashion. .. ditaa:: @@ -69,7 +74,7 @@ in a monolithic, database-like fashion. /------\ +-----+ +-----+ | obj |------>| {d} |------>| {s} | \------/ +-----+ +-----+ - + Object OSD Drive Ceph OSD Daemons store data as objects in a flat namespace. This means that @@ -85,10 +90,10 @@ created date, and the last modified date. /------+------------------------------+----------------\ | ID | Binary Data | Metadata | +------+------------------------------+----------------+ - | 1234 | 0101010101010100110101010010 | name1 = value1 | + | 1234 | 0101010101010100110101010010 | name1 = value1 | | | 0101100001010100110101010010 | name2 = value2 | | | 0101100001010100110101010010 | nameN = valueN | - \------+------------------------------+----------------/ + \------+------------------------------+----------------/ .. note:: An object ID is unique across the entire cluster, not just the local filesystem. @@ -128,8 +133,8 @@ massive scale by distributing the work to all the OSD daemons in the cluster and all the clients that communicate with them. CRUSH uses intelligent data replication to ensure resiliency, which is better suited to hyper-scale storage. The following sections provide additional details on how CRUSH works. -For a detailed discussion of CRUSH, see `CRUSH - Controlled, Scalable, -Decentralized Placement of Replicated Data`_. +For an in-depth, academic discussion of CRUSH, see `CRUSH - Controlled, +Scalable, Decentralized Placement of Replicated Data`_. .. index:: architecture; cluster map @@ -147,14 +152,14 @@ five maps that constitute the cluster map are: the address, and the TCP port of each monitor. The monitor map specifies the current epoch, the time of the monitor map's creation, and the time of the monitor map's last modification. To view a monitor map, run ``ceph mon - dump``. - + dump``. + #. **The OSD Map:** Contains the cluster ``fsid``, the time of the OSD map's creation, the time of the OSD map's last modification, a list of pools, a list of replica sizes, a list of PG numbers, and a list of OSDs and their statuses (for example, ``up``, ``in``). To view an OSD map, run ``ceph - osd dump``. - + osd dump``. + #. **The PG Map:** Contains the PG version, its time stamp, the last OSD map epoch, the full ratios, and the details of each placement group. This includes the PG ID, the `Up Set`, the `Acting Set`, the state of the PG (for @@ -168,8 +173,8 @@ five maps that constitute the cluster map are: {decomp-crushmap-filename}``. Use a text editor or ``cat`` to view the decompiled map. -#. **The MDS Map:** Contains the current MDS map epoch, when the map was - created, and the last time it changed. It also contains the pool for +#. **The MDS Map:** Contains the current MDS map epoch, when the map was + created, and the last time it changed. It also contains the pool for storing metadata, a list of metadata servers, and which metadata servers are ``up`` and ``in``. To view an MDS map, execute ``ceph fs dump``. @@ -212,13 +217,13 @@ High Availability Authentication ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The ``cephx`` authentication system is used by Ceph to authenticate users and -daemons and to protect against man-in-the-middle attacks. +daemons and to protect against man-in-the-middle attacks. -.. note:: The ``cephx`` protocol does not address data encryption in transport +.. note:: The ``cephx`` protocol does not address data encryption in transport (for example, SSL/TLS) or encryption at rest. ``cephx`` uses shared secret keys for authentication. This means that both the -client and the monitor cluster keep a copy of the client's secret key. +client and the monitor cluster keep a copy of the client's secret key. The ``cephx`` protocol makes it possible for each party to prove to the other that it has a copy of the key without revealing it. This provides mutual @@ -235,7 +240,7 @@ Direct interactions between Ceph clients and OSDs require authenticated connections. The ``cephx`` authentication system establishes and sustains these authenticated connections. -The ``cephx`` protocol operates in a manner similar to `Kerberos`_. +The ``cephx`` protocol operates in a manner similar to `Kerberos`_. A user invokes a Ceph client to contact a monitor. Unlike Kerberos, each monitor can authenticate users and distribute keys, which means that there is @@ -248,7 +253,7 @@ Monitors. The client then uses the session key to request services from the monitors, and the monitors provide the client with a ticket that authenticates the client against the OSDs that actually handle data. Ceph Monitors and OSDs share a secret, which means that the clients can use the ticket provided by the -monitors to authenticate against any OSD or metadata server in the cluster. +monitors to authenticate against any OSD or metadata server in the cluster. Like Kerberos tickets, ``cephx`` tickets expire. An attacker cannot use an expired ticket or session key that has been obtained surreptitiously. This form @@ -264,8 +269,8 @@ subsystem generates the username and key, stores a copy on the monitor(s), and transmits the user's secret back to the ``client.admin`` user. This means that the client and the monitor share a secret key. -.. note:: The ``client.admin`` user must provide the user ID and - secret key to the user in a secure manner. +.. note:: The ``client.admin`` user must provide the user ID and + secret key to the user in a secure manner. .. ditaa:: @@ -275,7 +280,7 @@ the client and the monitor share a secret key. | request to | | create a user | |-------------->|----------+ create user - | | | and + | | | and |<--------------|<---------+ store key | transmit key | | | @@ -298,25 +303,25 @@ and uses it to sign requests to OSDs and to metadata servers in the cluster. +---------+ +---------+ | authenticate | |-------------->|----------+ generate and - | | | encrypt + | | | encrypt |<--------------|<---------+ session key | transmit | | encrypted | | session key | - | | + | | |-----+ decrypt | - | | session | - |<----+ key | + | | session | + |<----+ key | | | | req. ticket | |-------------->|----------+ generate and - | | | encrypt + | | | encrypt |<--------------|<---------+ ticket | recv. ticket | - | | + | | |-----+ decrypt | - | | ticket | - |<----+ | + | | ticket | + |<----+ | The ``cephx`` protocol authenticates ongoing communications between the clients @@ -331,7 +336,7 @@ between the client and the daemon. | Client | | Monitor | | MDS | | OSD | +---------+ +---------+ +-------+ +-------+ | request to | | | - | create a user | | | + | create a user | | | |-------------->| mon and | | |<--------------| client share | | | receive | a secret. | | @@ -339,7 +344,7 @@ between the client and the daemon. | |<------------>| | | |<-------------+------------>| | | mon, mds, | | - | authenticate | and osd | | + | authenticate | and osd | | |-------------->| share | | |<--------------| a secret | | | session key | | | @@ -355,7 +360,7 @@ between the client and the daemon. | receive response (CephFS only) | | | | make request | - |------------------------------------------->| + |------------------------------------------->| |<-------------------------------------------| receive response @@ -364,7 +369,7 @@ daemons. The authentication is not extended beyond the Ceph client. If a user accesses the Ceph client from a remote host, cephx authentication will not be applied to the connection between the user's host and the client host. -See `Cephx Config Guide`_ for more on configuration details. +See `Cephx Config Guide`_ for more on configuration details. See `User Management`_ for more on user management. @@ -418,7 +423,7 @@ the greater cluster provides several benefits: Monitors receive no such message after a configurable period of time, then they mark the OSD ``down``. This mechanism is a failsafe, however. Normally, Ceph OSD Daemons determine if a neighboring OSD is ``down`` and - report it to the Ceph Monitors. This contributes to making Ceph Monitors + report it to the Ceph Monitors. This contributes to making Ceph Monitors lightweight processes. See `Monitoring OSDs`_ and `Heartbeats`_ for additional details. @@ -465,7 +470,7 @@ the greater cluster provides several benefits: Write (2) | | | | Write (3) +------+ | | +------+ | +------+ +------+ | - | | Ack (4) Ack (5)| | + | | Ack (4) Ack (5)| | v * * v +---------------+ +---------------+ | Secondary OSD | | Tertiary OSD | @@ -492,7 +497,7 @@ About Pools The Ceph storage system supports the notion of 'Pools', which are logical partitions for storing objects. - + Ceph Clients retrieve a `Cluster Map`_ from a Ceph Monitor, and write RADOS objects to pools. The way that Ceph places the data in the pools is determined by the pool's ``size`` or number of replicas, the CRUSH rule, and the number of @@ -513,12 +518,12 @@ placement groups in the pool. +--------+ +---------------+ | Pool |---------->| CRUSH Rule | +--------+ Selects +---------------+ - + Pools set at least the following parameters: - Ownership/Access to Objects -- The Number of Placement Groups, and +- The Number of Placement Groups, and - The CRUSH Rule to Use. See `Set Pool Values`_ for details. @@ -531,12 +536,12 @@ Mapping PGs to OSDs Each pool has a number of placement groups (PGs) within it. CRUSH dynamically maps PGs to OSDs. When a Ceph Client stores objects, CRUSH maps each RADOS -object to a PG. +object to a PG. This mapping of RADOS objects to PGs implements an abstraction and indirection layer between Ceph OSD Daemons and Ceph Clients. The Ceph Storage Cluster must be able to grow (or shrink) and redistribute data adaptively when the internal -topology changes. +topology changes. If the Ceph Client "knew" which Ceph OSD Daemons were storing which objects, a tight coupling would exist between the Ceph Client and the Ceph OSD Daemon. @@ -565,11 +570,11 @@ placement groups, and how it maps placement groups to OSDs. +------+------+-------------+ | | | | | v v v v - /----------\ /----------\ /----------\ /----------\ + /----------\ /----------\ /----------\ /----------\ | | | | | | | | | OSD #1 | | OSD #2 | | OSD #3 | | OSD #4 | | | | | | | | | - \----------/ \----------/ \----------/ \----------/ + \----------/ \----------/ \----------/ \----------/ The client uses its copy of the cluster map and the CRUSH algorithm to compute precisely which OSD it will use when reading or writing a particular object. @@ -583,11 +588,11 @@ When a Ceph Client binds to a Ceph Monitor, it retrieves the latest version of the `Cluster Map`_. When a client has been equipped with a copy of the cluster map, it is aware of all the monitors, OSDs, and metadata servers in the cluster. **However, even equipped with a copy of the latest version of the -cluster map, the client doesn't know anything about object locations.** +cluster map, the client doesn't know anything about object locations.** **Object locations must be computed.** -The client requies only the object ID and the name of the pool in order to +The client requires only the object ID and the name of the pool in order to compute the object location. Ceph stores data in named pools (for example, "liverpool"). When a client @@ -626,7 +631,7 @@ persists, you may need to refer to the `Troubleshooting Peering Failure`_ section. .. Note:: PGs that agree on the state of the cluster do not necessarily have - the current data yet. + the current data yet. The Ceph Storage Cluster was designed to store at least two copies of an object (that is, ``size = 2``), which is the minimum requirement for data safety. For @@ -656,7 +661,7 @@ epoch. The Ceph OSD daemons that are part of an *Acting Set* might not always be ``up``. When an OSD in the *Acting Set* is ``up``, it is part of the *Up Set*. The *Up Set* is an important distinction, because Ceph can remap PGs to other -Ceph OSD Daemons when an OSD fails. +Ceph OSD Daemons when an OSD fails. .. note:: Consider a hypothetical *Acting Set* for a PG that contains ``osd.25``, ``osd.32`` and ``osd.61``. The first OSD (``osd.25``), is the @@ -676,7 +681,7 @@ process (albeit rather crudely, since it is substantially less impactful with large clusters) where some, but not all of the PGs migrate from existing OSDs (OSD 1, and OSD 2) to the new OSD (OSD 3). Even when rebalancing, CRUSH is stable. Many of the placement groups remain in their original configuration, -and each OSD gets some added capacity, so there are no load spikes on the +and each OSD gets some added capacity, so there are no load spikes on the new OSD after rebalancing is complete. @@ -823,7 +828,7 @@ account. | | | | | +-------+-------+ | | ^ | - | | | + | | | | | | +--+---+ +------+ +---+--+ +---+--+ name | NYAN | | NYAN | | NYAN | | NYAN | @@ -876,7 +881,7 @@ version 1). .. ditaa:: Primary OSD - + +-------------+ | OSD 1 | +-------------+ | log | Write Full | | @@ -921,7 +926,7 @@ as ``D2v2`` ) while others are acknowledged and persisted to storage drives .. ditaa:: Primary OSD - + +-------------+ | OSD 1 | | log | @@ -930,11 +935,11 @@ as ``D2v2`` ) while others are acknowledged and persisted to storage drives | +----+ +<------------+ Ceph Client | | | v2 | | | +----+ | +-------------+ - | |D1v1| 1,1 | - | +----+ | - +------+------+ - | - | + | |D1v1| 1,1 | + | +----+ | + +------+------+ + | + | | +------+------+ | | OSD 2 | | +------+ | log | @@ -962,7 +967,7 @@ the logs' ``last_complete`` pointer can move from ``1,1`` to ``1,2``. .. ditaa:: Primary OSD - + +-------------+ | OSD 1 | | log | @@ -971,10 +976,10 @@ the logs' ``last_complete`` pointer can move from ``1,1`` to ``1,2``. | +----+ +<------------+ Ceph Client | | | v2 | | | +----+ | +-------------+ - | |D1v1| 1,1 | - | +----+ | - +------+------+ - | + | |D1v1| 1,1 | + | +----+ | + +------+------+ + | | +-------------+ | | OSD 2 | | | log | @@ -986,7 +991,7 @@ the logs' ``last_complete`` pointer can move from ``1,1`` to ``1,2``. | | |D2v1| 1,1 | | | +----+ | | +-------------+ - | + | | +-------------+ | | OSD 3 | | | log | @@ -1007,7 +1012,7 @@ on **OSD 3**. .. ditaa:: Primary OSD - + +-------------+ | OSD 1 | | log | @@ -1050,7 +1055,7 @@ will be the head of the new authoritative log. | (down) | | c333 | +------+------+ - | + | | +-------------+ | | OSD 2 | | | log | @@ -1059,7 +1064,7 @@ will be the head of the new authoritative log. | | +----+ | | | | | +-------------+ - | + | | +-------------+ | | OSD 3 | | | log | @@ -1079,20 +1084,20 @@ will be the head of the new authoritative log. | 1,1 | | | +------+------+ - + The log entry 1,2 found on **OSD 3** is divergent from the new authoritative log provided by **OSD 4**: it is discarded and the file containing the ``C1v2`` chunk is removed. The ``D1v1`` chunk is rebuilt with the ``decode`` function of -the erasure coding library during scrubbing and stored on the new primary +the erasure coding library during scrubbing and stored on the new primary **OSD 4**. .. ditaa:: Primary OSD - + +-------------+ | OSD 4 | | log | @@ -1140,7 +1145,7 @@ configured to act as a cache tier, and a backing pool of either erasure-coded or relatively slower/cheaper devices configured to act as an economical storage tier. The Ceph objecter handles where to place the objects and the tiering agent determines when to flush objects from the cache to the backing storage -tier. So the cache tier and the backing storage tier are completely transparent +tier. So the cache tier and the backing storage tier are completely transparent to Ceph clients. @@ -1150,14 +1155,14 @@ to Ceph clients. | Ceph Client | +------+------+ ^ - Tiering is | + Tiering is | Transparent | Faster I/O to Ceph | +---------------+ - Client Ops | | | + Client Ops | | | | +----->+ Cache Tier | | | | | | | +-----+---+-----+ - | | | ^ + | | | ^ v v | | Active Data in Cache Tier +------+----+--+ | | | Objecter | | | @@ -1198,11 +1203,11 @@ operations on the outbound data and return the data to the client. A Ceph class for a content management system that presents pictures of a particular size and aspect ratio could take an inbound bitmap image, crop it - to a particular aspect ratio, resize it and embed an invisible copyright or - watermark to help protect the intellectual property; then, save the + to a particular aspect ratio, resize it and embed an invisible copyright or + watermark to help protect the intellectual property; then, save the resulting bitmap image to the object store. -See ``src/objclass/objclass.h``, ``src/fooclass.cc`` and ``src/barclass`` for +See ``src/objclass/objclass.h``, ``src/fooclass.cc`` and ``src/barclass`` for exemplary implementations. @@ -1279,7 +1284,7 @@ synchronization/communication channel. +----------+ +----------+ +----------+ +---------------+ | | | | | | | | - | | Watch Object | | + | | Watch Object | | |--------------------------------------------------->| | | | | |<---------------------------------------------------| @@ -1295,7 +1300,7 @@ synchronization/communication channel. | | | | | | |<-----------------| | | | Ack/Commit | - | | Notify | | + | | Notify | | |--------------------------------------------------->| | | | | |<---------------------------------------------------| @@ -1305,7 +1310,7 @@ synchronization/communication channel. | | Notify | | | | |<-----------------| | | | Notify | - | | Ack | | + | | Ack | | |----------------+---------------------------------->| | | | | | | Ack | | @@ -1313,7 +1318,7 @@ synchronization/communication channel. | | | | | | | Ack | | | |----------------->| - | | | | + | | | | |<---------------+----------------+------------------| | Complete @@ -1331,13 +1336,13 @@ volume'. Ceph's striping offers the throughput of RAID 0 striping, the reliability of n-way RAID mirroring and faster recovery. Ceph provides three types of clients: Ceph Block Device, Ceph File System, and -Ceph Object Storage. A Ceph Client converts its data from the representation +Ceph Object Storage. A Ceph Client converts its data from the representation format it provides to its users (a block device image, RESTful objects, CephFS -filesystem directories) into objects for storage in the Ceph Storage Cluster. +filesystem directories) into objects for storage in the Ceph Storage Cluster. -.. tip:: The objects Ceph stores in the Ceph Storage Cluster are not striped. - Ceph Object Storage, Ceph Block Device, and the Ceph File System stripe their - data over multiple Ceph Storage Cluster objects. Ceph Clients that write +.. tip:: The objects Ceph stores in the Ceph Storage Cluster are not striped. + Ceph Object Storage, Ceph Block Device, and the Ceph File System stripe their + data over multiple Ceph Storage Cluster objects. Ceph Clients that write directly to the Ceph Storage Cluster via ``librados`` must perform the striping (and parallel I/O) for themselves to obtain these benefits. @@ -1380,7 +1385,7 @@ diagram depicts the simplest form of striping: | End cCCC | | End cCCC | | Object 0 | | Object 1 | \-----------/ \-----------/ - + If you anticipate large images sizes, large S3 or Swift objects (e.g., video), or large CephFS directories, you may see considerable read/write performance @@ -1420,16 +1425,16 @@ stripe (``stripe unit 16``) in the first object in the new object set (``object +-----------------+--------+--------+-----------------+ | | | | +--\ v v v v | - /-----------\ /-----------\ /-----------\ /-----------\ | + /-----------\ /-----------\ /-----------\ /-----------\ | | Begin cCCC| | Begin cCCC| | Begin cCCC| | Begin cCCC| | | Object 0 | | Object 1 | | Object 2 | | Object 3 | | +-----------+ +-----------+ +-----------+ +-----------+ | | stripe | | stripe | | stripe | | stripe | | | unit 0 | | unit 1 | | unit 2 | | unit 3 | | +-----------+ +-----------+ +-----------+ +-----------+ | - | stripe | | stripe | | stripe | | stripe | +-\ + | stripe | | stripe | | stripe | | stripe | +-\ | unit 4 | | unit 5 | | unit 6 | | unit 7 | | Object - +-----------+ +-----------+ +-----------+ +-----------+ +- Set + +-----------+ +-----------+ +-----------+ +-----------+ +- Set | stripe | | stripe | | stripe | | stripe | | 1 | unit 8 | | unit 9 | | unit 10 | | unit 11 | +-/ +-----------+ +-----------+ +-----------+ +-----------+ | @@ -1437,36 +1442,36 @@ stripe (``stripe unit 16``) in the first object in the new object set (``object | unit 12 | | unit 13 | | unit 14 | | unit 15 | | +-----------+ +-----------+ +-----------+ +-----------+ | | End cCCC | | End cCCC | | End cCCC | | End cCCC | | - | Object 0 | | Object 1 | | Object 2 | | Object 3 | | + | Object 0 | | Object 1 | | Object 2 | | Object 3 | | \-----------/ \-----------/ \-----------/ \-----------/ | | +--/ - + +--\ | - /-----------\ /-----------\ /-----------\ /-----------\ | + /-----------\ /-----------\ /-----------\ /-----------\ | | Begin cCCC| | Begin cCCC| | Begin cCCC| | Begin cCCC| | - | Object 4 | | Object 5 | | Object 6 | | Object 7 | | + | Object 4 | | Object 5 | | Object 6 | | Object 7 | | +-----------+ +-----------+ +-----------+ +-----------+ | | stripe | | stripe | | stripe | | stripe | | | unit 16 | | unit 17 | | unit 18 | | unit 19 | | +-----------+ +-----------+ +-----------+ +-----------+ | - | stripe | | stripe | | stripe | | stripe | +-\ + | stripe | | stripe | | stripe | | stripe | +-\ | unit 20 | | unit 21 | | unit 22 | | unit 23 | | Object +-----------+ +-----------+ +-----------+ +-----------+ +- Set - | stripe | | stripe | | stripe | | stripe | | 2 + | stripe | | stripe | | stripe | | stripe | | 2 | unit 24 | | unit 25 | | unit 26 | | unit 27 | +-/ +-----------+ +-----------+ +-----------+ +-----------+ | | stripe | | stripe | | stripe | | stripe | | | unit 28 | | unit 29 | | unit 30 | | unit 31 | | +-----------+ +-----------+ +-----------+ +-----------+ | | End cCCC | | End cCCC | | End cCCC | | End cCCC | | - | Object 4 | | Object 5 | | Object 6 | | Object 7 | | + | Object 4 | | Object 5 | | Object 6 | | Object 7 | | \-----------/ \-----------/ \-----------/ \-----------/ | | +--/ -Three important variables determine how Ceph stripes data: +Three important variables determine how Ceph stripes data: - **Object Size:** Objects in the Ceph Storage Cluster have a maximum configurable size (e.g., 2MB, 4MB, etc.). The object size should be large @@ -1474,24 +1479,24 @@ Three important variables determine how Ceph stripes data: the stripe unit. - **Stripe Width:** Stripes have a configurable unit size (e.g., 64kb). - The Ceph Client divides the data it will write to objects into equally - sized stripe units, except for the last stripe unit. A stripe width, - should be a fraction of the Object Size so that an object may contain + The Ceph Client divides the data it will write to objects into equally + sized stripe units, except for the last stripe unit. A stripe width, + should be a fraction of the Object Size so that an object may contain many stripe units. - **Stripe Count:** The Ceph Client writes a sequence of stripe units - over a series of objects determined by the stripe count. The series - of objects is called an object set. After the Ceph Client writes to + over a series of objects determined by the stripe count. The series + of objects is called an object set. After the Ceph Client writes to the last object in the object set, it returns to the first object in the object set. - + .. important:: Test the performance of your striping configuration before putting your cluster into production. You CANNOT change these striping parameters after you stripe the data and write it to objects. Once the Ceph Client has striped data to stripe units and mapped the stripe units to objects, Ceph's CRUSH algorithm maps the objects to placement groups, -and the placement groups to Ceph OSD Daemons before the objects are stored as +and the placement groups to Ceph OSD Daemons before the objects are stored as files on a storage drive. .. note:: Since a client writes to a single pool, all data striped into objects @@ -1513,23 +1518,23 @@ Ceph Clients include a number of service interfaces. These include: that uses ``librbd`` directly--avoiding the kernel object overhead for virtualized systems. -- **Object Storage:** The :term:`Ceph Object Storage` (a.k.a., RGW) service +- **Object Storage:** The :term:`Ceph Object Storage` (a.k.a., RGW) service provides RESTful APIs with interfaces that are compatible with Amazon S3 - and OpenStack Swift. - -- **Filesystem**: The :term:`Ceph File System` (CephFS) service provides - a POSIX compliant filesystem usable with ``mount`` or as + and OpenStack Swift. + +- **Filesystem**: The :term:`Ceph File System` (CephFS) service provides + a POSIX compliant filesystem usable with ``mount`` or as a filesystem in user space (FUSE). Ceph can run additional instances of OSDs, MDSs, and monitors for scalability and high availability. The following diagram depicts the high-level -architecture. +architecture. .. ditaa:: +--------------+ +----------------+ +-------------+ | Block Device | | Object Storage | | CephFS | - +--------------+ +----------------+ +-------------+ + +--------------+ +----------------+ +-------------+ +--------------+ +----------------+ +-------------+ | librbd | | librgw | | libcephfs | @@ -1561,10 +1566,10 @@ another application. .. topic:: S3/Swift Objects and Store Cluster Objects Compared Ceph's Object Storage uses the term *object* to describe the data it stores. - S3 and Swift objects are not the same as the objects that Ceph writes to the + S3 and Swift objects are not the same as the objects that Ceph writes to the Ceph Storage Cluster. Ceph Object Storage objects are mapped to Ceph Storage - Cluster objects. The S3 and Swift objects do not necessarily - correspond in a 1:1 manner with an object stored in the storage cluster. It + Cluster objects. The S3 and Swift objects do not necessarily + correspond in a 1:1 manner with an object stored in the storage cluster. It is possible for an S3 or Swift object to map to multiple Ceph objects. See `Ceph Object Storage`_ for details. @@ -1580,7 +1585,7 @@ Ceph Storage Cluster, where each object gets mapped to a placement group and distributed, and the placement groups are spread across separate ``ceph-osd`` daemons throughout the cluster. -.. important:: Striping allows RBD block devices to perform better than a single +.. important:: Striping allows RBD block devices to perform better than a single server could! Thin-provisioned snapshottable Ceph Block Devices are an attractive option for @@ -1589,7 +1594,8 @@ typically deploy a Ceph Block Device with the ``rbd`` network storage driver in QEMU/KVM, where the host machine uses ``librbd`` to provide a block device service to the guest. Many cloud computing stacks use ``libvirt`` to integrate with hypervisors. You can use thin-provisioned Ceph Block Devices with QEMU and -``libvirt`` to support OpenStack and CloudStack among other solutions. +``libvirt`` to support OpenStack, OpenNebula and CloudStack +among other solutions. While we do not provide ``librbd`` support with other hypervisors at this time, you may also use Ceph Block Device kernel objects to provide a block device to a @@ -1614,7 +1620,7 @@ a Filesystem in User Space (FUSE). +-----------------------+ +------------------------+ | CephFS Kernel Object | | CephFS FUSE | - +-----------------------+ +------------------------+ + +-----------------------+ +------------------------+ +---------------------------------------------------+ | CephFS Library (libcephfs) | @@ -1643,9 +1649,9 @@ CephFS separates the metadata from the data, storing the metadata in the MDS, and storing the file data in one or more objects in the Ceph Storage Cluster. The Ceph filesystem aims for POSIX compatibility. ``ceph-mds`` can run as a single process, or it can be distributed out to multiple physical machines, -either for high availability or for scalability. +either for high availability or for scalability. -- **High Availability**: The extra ``ceph-mds`` instances can be `standby`, +- **High Availability**: The extra ``ceph-mds`` instances can be `standby`, ready to take over the duties of any failed ``ceph-mds`` that was `active`. This is easy because all the data, including the journal, is stored on RADOS. The transition is triggered automatically by ``ceph-mon``. diff --git a/doc/cephadm/adoption.rst b/doc/cephadm/adoption.rst index 86254a16c..2ebce606c 100644 --- a/doc/cephadm/adoption.rst +++ b/doc/cephadm/adoption.rst @@ -22,20 +22,20 @@ Preparation #. Make sure that the ``cephadm`` command line tool is available on each host in the existing cluster. See :ref:`get-cephadm` to learn how. -#. Prepare each host for use by ``cephadm`` by running this command: +#. Prepare each host for use by ``cephadm`` by running this command on that host: .. prompt:: bash # cephadm prepare-host #. Choose a version of Ceph to use for the conversion. This procedure will work - with any release of Ceph that is Octopus (15.2.z) or later, inclusive. The + with any release of Ceph that is Octopus (15.2.z) or later. The latest stable release of Ceph is the default. You might be upgrading from an earlier Ceph release at the same time that you're performing this - conversion; if you are upgrading from an earlier release, make sure to + conversion. If you are upgrading from an earlier release, make sure to follow any upgrade-related instructions for that release. - Pass the image to cephadm with the following command: + Pass the Ceph container image to cephadm with the following command: .. prompt:: bash # @@ -50,25 +50,27 @@ Preparation cephadm ls - Before starting the conversion process, ``cephadm ls`` shows all existing - daemons to have a style of ``legacy``. As the adoption process progresses, - adopted daemons will appear with a style of ``cephadm:v1``. + Before starting the conversion process, ``cephadm ls`` reports all existing + daemons with the style ``legacy``. As the adoption process progresses, + adopted daemons will appear with the style ``cephadm:v1``. Adoption process ---------------- -#. Make sure that the ceph configuration has been migrated to use the cluster - config database. If the ``/etc/ceph/ceph.conf`` is identical on each host, - then the following command can be run on one single host and will affect all - hosts: +#. Make sure that the ceph configuration has been migrated to use the cluster's + central config database. If ``/etc/ceph/ceph.conf`` is identical on all + hosts, then the following command can be run on one host and will take + effect for all hosts: .. prompt:: bash # ceph config assimilate-conf -i /etc/ceph/ceph.conf If there are configuration variations between hosts, you will need to repeat - this command on each host. During this adoption process, view the cluster's + this command on each host, taking care that if there are conflicting option + settings across hosts, the values from the last host will be used. During this + adoption process, view the cluster's central configuration to confirm that it is complete by running the following command: @@ -76,36 +78,36 @@ Adoption process ceph config dump -#. Adopt each monitor: +#. Adopt each Monitor: .. prompt:: bash # cephadm adopt --style legacy --name mon.<hostname> - Each legacy monitor should stop, quickly restart as a cephadm + Each legacy Monitor will stop, quickly restart as a cephadm container, and rejoin the quorum. -#. Adopt each manager: +#. Adopt each Manager: .. prompt:: bash # cephadm adopt --style legacy --name mgr.<hostname> -#. Enable cephadm: +#. Enable cephadm orchestration: .. prompt:: bash # ceph mgr module enable cephadm ceph orch set backend cephadm -#. Generate an SSH key: +#. Generate an SSH key for cephadm: .. prompt:: bash # ceph cephadm generate-key ceph cephadm get-pub-key > ~/ceph.pub -#. Install the cluster SSH key on each host in the cluster: +#. Install the cephadm SSH key on each host in the cluster: .. prompt:: bash # @@ -118,9 +120,10 @@ Adoption process SSH keys. .. note:: - It is also possible to have cephadm use a non-root user to SSH + It is also possible to arrange for cephadm to use a non-root user to SSH into cluster hosts. This user needs to have passwordless sudo access. - Use ``ceph cephadm set-user <user>`` and copy the SSH key to that user. + Use ``ceph cephadm set-user <user>`` and copy the SSH key to that user's + home directory on each host. See :ref:`cephadm-ssh-user` #. Tell cephadm which hosts to manage: @@ -129,10 +132,10 @@ Adoption process ceph orch host add <hostname> [ip-address] - This will perform a ``cephadm check-host`` on each host before adding it; - this check ensures that the host is functioning properly. The IP address - argument is recommended; if not provided, then the host name will be resolved - via DNS. + This will run ``cephadm check-host`` on each host before adding it. + This check ensures that the host is functioning properly. The IP address + argument is recommended. If the address is not provided, then the host name + will be resolved via DNS. #. Verify that the adopted monitor and manager daemons are visible: @@ -153,8 +156,8 @@ Adoption process cephadm adopt --style legacy --name osd.1 cephadm adopt --style legacy --name osd.2 -#. Redeploy MDS daemons by telling cephadm how many daemons to run for - each file system. List file systems by name with the command ``ceph fs +#. Redeploy CephFS MDS daemons (if deployed) by telling cephadm how many daemons to run for + each file system. List CephFS file systems by name with the command ``ceph fs ls``. Run the following command on the master nodes to redeploy the MDS daemons: @@ -189,19 +192,19 @@ Adoption process systemctl stop ceph-mds.target rm -rf /var/lib/ceph/mds/ceph-* -#. Redeploy RGW daemons. Cephadm manages RGW daemons by zone. For each - zone, deploy new RGW daemons with cephadm: +#. Redeploy Ceph Object Gateway RGW daemons if deployed. Cephadm manages RGW + daemons by zone. For each zone, deploy new RGW daemons with cephadm: .. prompt:: bash # ceph orch apply rgw <svc_id> [--realm=<realm>] [--zone=<zone>] [--port=<port>] [--ssl] [--placement=<placement>] where *<placement>* can be a simple daemon count, or a list of - specific hosts (see :ref:`orchestrator-cli-placement-spec`), and the + specific hosts (see :ref:`orchestrator-cli-placement-spec`). The zone and realm arguments are needed only for a multisite setup. After the daemons have started and you have confirmed that they are - functioning, stop and remove the old, legacy daemons: + functioning, stop and remove the legacy daemons: .. prompt:: bash # diff --git a/doc/cephadm/client-setup.rst b/doc/cephadm/client-setup.rst index f98ba798b..0f38773b1 100644 --- a/doc/cephadm/client-setup.rst +++ b/doc/cephadm/client-setup.rst @@ -1,36 +1,36 @@ ======================= Basic Ceph Client Setup ======================= -Client machines require some basic configuration to interact with -Ceph clusters. This section describes how to configure a client machine -so that it can interact with a Ceph cluster. +Client hosts require basic configuration to interact with +Ceph clusters. This section describes how to perform this configuration. .. note:: - Most client machines need to install only the `ceph-common` package - and its dependencies. Such a setup supplies the basic `ceph` and - `rados` commands, as well as other commands including `mount.ceph` - and `rbd`. + Most client hosts need to install only the ``ceph-common`` package + and its dependencies. Such an installation supplies the basic ``ceph`` and + ``rados`` commands, as well as other commands including ``mount.ceph`` + and ``rbd``. Config File Setup ================= -Client machines usually require smaller configuration files (here -sometimes called "config files") than do full-fledged cluster members. +Client hosts usually require smaller configuration files (here +sometimes called "config files") than do back-end cluster hosts. To generate a minimal config file, log into a host that has been -configured as a client or that is running a cluster daemon, and then run the following command: +configured as a client or that is running a cluster daemon, then +run the following command: .. prompt:: bash # ceph config generate-minimal-conf This command generates a minimal config file that tells the client how -to reach the Ceph monitors. The contents of this file should usually -be installed in ``/etc/ceph/ceph.conf``. +to reach the Ceph Monitors. This file should usually +be copied to ``/etc/ceph/ceph.conf`` on each client host. Keyring Setup ============= Most Ceph clusters run with authentication enabled. This means that -the client needs keys in order to communicate with the machines in the -cluster. To generate a keyring file with credentials for `client.fs`, +the client needs keys in order to communicate with Ceph daemons. +To generate a keyring file with credentials for ``client.fs``, log into an running cluster member and run the following command: .. prompt:: bash $ @@ -40,6 +40,10 @@ log into an running cluster member and run the following command: The resulting output is directed into a keyring file, typically ``/etc/ceph/ceph.keyring``. -To gain a broader understanding of client keyring distribution and administration, you should read :ref:`client_keyrings_and_configs`. +To gain a broader understanding of client keyring distribution and administration, +you should read :ref:`client_keyrings_and_configs`. -To see an example that explains how to distribute ``ceph.conf`` configuration files to hosts that are tagged with the ``bare_config`` label, you should read the section called "Distributing ceph.conf to hosts tagged with bare_config" in the section called :ref:`etc_ceph_conf_distribution`. +To see an example that explains how to distribute ``ceph.conf`` configuration +files to hosts that are tagged with the ``bare_config`` label, you should read +the subsection named "Distributing ceph.conf to hosts tagged with bare_config" +under the heading :ref:`etc_ceph_conf_distribution`. diff --git a/doc/cephadm/compatibility.rst b/doc/cephadm/compatibility.rst index 46ab62a62..8dd301f1a 100644 --- a/doc/cephadm/compatibility.rst +++ b/doc/cephadm/compatibility.rst @@ -30,8 +30,8 @@ This table shows which version pairs are expected to work or not work together: .. note:: - While not all podman versions have been actively tested against - all Ceph versions, there are no known issues with using podman + While not all Podman versions have been actively tested against + all Ceph versions, there are no known issues with using Podman version 3.0 or greater with Ceph Quincy and later releases. .. warning:: diff --git a/doc/cephadm/host-management.rst b/doc/cephadm/host-management.rst index 4b964c5f4..1fba8e582 100644 --- a/doc/cephadm/host-management.rst +++ b/doc/cephadm/host-management.rst @@ -74,9 +74,9 @@ To add each new host to the cluster, perform two steps: ceph orch host add host2 10.10.0.102 ceph orch host add host3 10.10.0.103 - It is best to explicitly provide the host IP address. If an IP is + It is best to explicitly provide the host IP address. If an address is not provided, then the host name will be immediately resolved via - DNS and that IP will be used. + DNS and the result will be used. One or more labels can also be included to immediately label the new host. For example, by default the ``_admin`` label will make @@ -104,7 +104,7 @@ To drain all daemons from a host, run a command of the following form: The ``_no_schedule`` and ``_no_conf_keyring`` labels will be applied to the host. See :ref:`cephadm-special-host-labels`. -If you only want to drain daemons but leave managed ceph conf and keyring +If you want to drain daemons but leave managed `ceph.conf` and keyring files on the host, you may pass the ``--keep-conf-keyring`` flag to the drain command. @@ -115,7 +115,8 @@ drain command. This will apply the ``_no_schedule`` label to the host but not the ``_no_conf_keyring`` label. -All OSDs on the host will be scheduled to be removed. You can check the progress of the OSD removal operation with the following command: +All OSDs on the host will be scheduled to be removed. You can check +progress of the OSD removal operation with the following command: .. prompt:: bash # @@ -148,7 +149,7 @@ cluster by running the following command: Offline host removal -------------------- -Even if a host is offline and can not be recovered, it can be removed from the +If a host is offline and can not be recovered, it can be removed from the cluster by running a command of the following form: .. prompt:: bash # @@ -250,8 +251,8 @@ Rescanning Host Devices ======================= Some servers and external enclosures may not register device removal or insertion with the -kernel. In these scenarios, you'll need to perform a host rescan. A rescan is typically -non-disruptive, and can be performed with the following CLI command: +kernel. In these scenarios, you'll need to perform a device rescan on the appropriate host. +A rescan is typically non-disruptive, and can be performed with the following CLI command: .. prompt:: bash # @@ -314,19 +315,43 @@ create a new CRUSH host located in the specified hierarchy. .. note:: - The ``location`` attribute will be only affect the initial CRUSH location. Subsequent - changes of the ``location`` property will be ignored. Also, removing a host will not remove - any CRUSH buckets. + The ``location`` attribute will be only affect the initial CRUSH location. + Subsequent changes of the ``location`` property will be ignored. Also, + removing a host will not remove an associated CRUSH bucket unless the + ``--rm-crush-entry`` flag is provided to the ``orch host rm`` command See also :ref:`crush_map_default_types`. +Removing a host from the CRUSH map +================================== + +The ``ceph orch host rm`` command has support for removing the associated host bucket +from the CRUSH map. This is done by providing the ``--rm-crush-entry`` flag. + +.. prompt:: bash [ceph:root@host1/]# + + ceph orch host rm host1 --rm-crush-entry + +When this flag is specified, cephadm will attempt to remove the host bucket +from the CRUSH map as part of the host removal process. Note that if +it fails to do so, cephadm will report the failure and the host will remain under +cephadm control. + +.. note:: + + Removal from the CRUSH map will fail if there are OSDs deployed on the + host. If you would like to remove all the host's OSDs as well, please start + by using the ``ceph orch host drain`` command to do so. Once the OSDs + have been removed, then you may direct cephadm remove the CRUSH bucket + along with the host using the ``--rm-crush-entry`` flag. + OS Tuning Profiles ================== -Cephadm can be used to manage operating-system-tuning profiles that apply sets -of sysctl settings to sets of hosts. +Cephadm can be used to manage operating system tuning profiles that apply +``sysctl`` settings to sets of hosts. -Create a YAML spec file in the following format: +To do so, create a YAML spec file in the following format: .. code-block:: yaml @@ -345,18 +370,21 @@ Apply the tuning profile with the following command: ceph orch tuned-profile apply -i <tuned-profile-file-name> -This profile is written to ``/etc/sysctl.d/`` on each host that matches the -hosts specified in the placement block of the yaml, and ``sysctl --system`` is +This profile is written to a file under ``/etc/sysctl.d/`` on each host +specified in the ``placement`` block, then ``sysctl --system`` is run on the host. .. note:: The exact filename that the profile is written to within ``/etc/sysctl.d/`` is ``<profile-name>-cephadm-tuned-profile.conf``, where ``<profile-name>`` is - the ``profile_name`` setting that you specify in the YAML spec. Because + the ``profile_name`` setting that you specify in the YAML spec. We suggest + naming these profiles following the usual ``sysctl.d`` `NN-xxxxx` convention. Because sysctl settings are applied in lexicographical order (sorted by the filename - in which the setting is specified), you may want to set the ``profile_name`` - in your spec so that it is applied before or after other conf files. + in which the setting is specified), you may want to carefully choose + the ``profile_name`` in your spec so that it is applied before or after other + conf files. Careful selection ensures that values supplied here override or + do not override those in other ``sysctl.d`` files as desired. .. note:: @@ -365,7 +393,7 @@ run on the host. .. note:: - Applying tuned profiles is idempotent when the ``--no-overwrite`` option is + Applying tuning profiles is idempotent when the ``--no-overwrite`` option is passed. Moreover, if the ``--no-overwrite`` option is passed, existing profiles with the same name are not overwritten. @@ -525,7 +553,7 @@ There are two ways to customize this configuration for your environment: We do *not recommend* this approach. The path name must be visible to *any* mgr daemon, and cephadm runs all daemons as - containers. That means that the file either need to be placed + containers. That means that the file must either be placed inside a customized container image for your deployment, or manually distributed to the mgr data directory (``/var/lib/ceph/<cluster-fsid>/mgr.<id>`` on the host, visible at @@ -578,8 +606,8 @@ Note that ``man hostname`` recommends ``hostname`` to return the bare host name: The FQDN (Fully Qualified Domain Name) of the system is the - name that the resolver(3) returns for the host name, such as, - ursula.example.com. It is usually the hostname followed by the DNS + name that the resolver(3) returns for the host name, for example + ``ursula.example.com``. It is usually the short hostname followed by the DNS domain name (the part after the first dot). You can check the FQDN using ``hostname --fqdn`` or the domain name using ``dnsdomainname``. diff --git a/doc/cephadm/install.rst b/doc/cephadm/install.rst index b1aa736e2..0ab4531ff 100644 --- a/doc/cephadm/install.rst +++ b/doc/cephadm/install.rst @@ -4,7 +4,7 @@ Deploying a new Ceph cluster ============================ -Cephadm creates a new Ceph cluster by "bootstrapping" on a single +Cephadm creates a new Ceph cluster by bootstrapping a single host, expanding the cluster to encompass any additional hosts, and then deploying the needed services. @@ -18,7 +18,7 @@ Requirements - Python 3 - Systemd - Podman or Docker for running containers -- Time synchronization (such as chrony or NTP) +- Time synchronization (such as Chrony or the legacy ``ntpd``) - LVM2 for provisioning storage devices Any modern Linux distribution should be sufficient. Dependencies @@ -45,6 +45,13 @@ There are two ways to install ``cephadm``: Choose either the distribution-specific method or the curl-based method. Do not attempt to use both these methods on one system. +.. note:: Recent versions of cephadm are distributed as an executable compiled + from source code. Unlike for earlier versions of Ceph it is no longer + sufficient to copy a single script from Ceph's git tree and run it. If you + wish to run cephadm using a development version you should create your own + build of cephadm. See :ref:`compiling-cephadm` for details on how to create + your own standalone cephadm executable. + .. _cephadm_install_distros: distribution-specific installations @@ -85,9 +92,9 @@ that case, you can install cephadm directly. For example: curl-based installation ----------------------- -* First, determine what version of Ceph you will need. You can use the releases +* First, determine what version of Ceph you wish to install. You can use the releases page to find the `latest active releases <https://docs.ceph.com/en/latest/releases/#active-releases>`_. - For example, we might look at that page and find that ``18.2.0`` is the latest + For example, we might find that ``18.2.1`` is the latest active release. * Use ``curl`` to fetch a build of cephadm for that release. @@ -113,7 +120,7 @@ curl-based installation * If you encounter any issues with running cephadm due to errors including the message ``bad interpreter``, then you may not have Python or the correct version of Python installed. The cephadm tool requires Python 3.6 - and above. You can manually run cephadm with a particular version of Python by + or later. You can manually run cephadm with a particular version of Python by prefixing the command with your installed Python version. For example: .. prompt:: bash # @@ -121,6 +128,11 @@ curl-based installation python3.8 ./cephadm <arguments...> +* Although the standalone cephadm is sufficient to bootstrap a cluster, it is + best to have the ``cephadm`` command installed on the host. To install + the packages that provide the ``cephadm`` command, run the following + commands: + .. _cephadm_update: update cephadm @@ -166,7 +178,7 @@ What to know before you bootstrap The first step in creating a new Ceph cluster is running the ``cephadm bootstrap`` command on the Ceph cluster's first host. The act of running the ``cephadm bootstrap`` command on the Ceph cluster's first host creates the Ceph -cluster's first "monitor daemon", and that monitor daemon needs an IP address. +cluster's first Monitor daemon. You must pass the IP address of the Ceph cluster's first host to the ``ceph bootstrap`` command, so you'll need to know the IP address of that host. @@ -187,13 +199,13 @@ Run the ``ceph bootstrap`` command: This command will: -* Create a monitor and manager daemon for the new cluster on the local +* Create a Monitor and a Manager daemon for the new cluster on the local host. * Generate a new SSH key for the Ceph cluster and add it to the root user's ``/root/.ssh/authorized_keys`` file. * Write a copy of the public key to ``/etc/ceph/ceph.pub``. * Write a minimal configuration file to ``/etc/ceph/ceph.conf``. This - file is needed to communicate with the new cluster. + file is needed to communicate with Ceph daemons. * Write a copy of the ``client.admin`` administrative (privileged!) secret key to ``/etc/ceph/ceph.client.admin.keyring``. * Add the ``_admin`` label to the bootstrap host. By default, any host @@ -205,7 +217,7 @@ This command will: Further information about cephadm bootstrap ------------------------------------------- -The default bootstrap behavior will work for most users. But if you'd like +The default bootstrap process will work for most users. But if you'd like immediately to know more about ``cephadm bootstrap``, read the list below. Also, you can run ``cephadm bootstrap -h`` to see all of ``cephadm``'s @@ -216,15 +228,15 @@ available options. journald. If you want Ceph to write traditional log files to ``/var/log/ceph/$fsid``, use the ``--log-to-file`` option during bootstrap. -* Larger Ceph clusters perform better when (external to the Ceph cluster) +* Larger Ceph clusters perform best when (external to the Ceph cluster) public network traffic is separated from (internal to the Ceph cluster) cluster traffic. The internal cluster traffic handles replication, recovery, and heartbeats between OSD daemons. You can define the :ref:`cluster network<cluster-network>` by supplying the ``--cluster-network`` option to the ``bootstrap`` - subcommand. This parameter must define a subnet in CIDR notation (for example + subcommand. This parameter must be a subnet in CIDR notation (for example ``10.90.90.0/24`` or ``fe80::/64``). -* ``cephadm bootstrap`` writes to ``/etc/ceph`` the files needed to access +* ``cephadm bootstrap`` writes to ``/etc/ceph`` files needed to access the new cluster. This central location makes it possible for Ceph packages installed on the host (e.g., packages that give access to the cephadm command line interface) to find these files. @@ -245,12 +257,12 @@ available options. EOF $ ./cephadm bootstrap --config initial-ceph.conf ... -* The ``--ssh-user *<user>*`` option makes it possible to choose which SSH +* The ``--ssh-user *<user>*`` option makes it possible to designate which SSH user cephadm will use to connect to hosts. The associated SSH key will be added to ``/home/*<user>*/.ssh/authorized_keys``. The user that you designate with this option must have passwordless sudo access. -* If you are using a container on an authenticated registry that requires +* If you are using a container image from a registry that requires login, you may add the argument: * ``--registry-json <path to json file>`` @@ -261,7 +273,7 @@ available options. Cephadm will attempt to log in to this registry so it can pull your container and then store the login info in its config database. Other hosts added to - the cluster will then also be able to make use of the authenticated registry. + the cluster will then also be able to make use of the authenticated container registry. * See :ref:`cephadm-deployment-scenarios` for additional examples for using ``cephadm bootstrap``. @@ -326,7 +338,7 @@ Add all hosts to the cluster by following the instructions in By default, a ``ceph.conf`` file and a copy of the ``client.admin`` keyring are maintained in ``/etc/ceph`` on all hosts that have the ``_admin`` label. This -label is initially applied only to the bootstrap host. We usually recommend +label is initially applied only to the bootstrap host. We recommend that one or more other hosts be given the ``_admin`` label so that the Ceph CLI (for example, via ``cephadm shell``) is easily accessible on multiple hosts. To add the ``_admin`` label to additional host(s), run a command of the following form: @@ -339,9 +351,10 @@ the ``_admin`` label to additional host(s), run a command of the following form: Adding additional MONs ====================== -A typical Ceph cluster has three or five monitor daemons spread +A typical Ceph cluster has three or five Monitor daemons spread across different hosts. We recommend deploying five -monitors if there are five or more nodes in your cluster. +Monitors if there are five or more nodes in your cluster. Most clusters do not +benefit from seven or more Monitors. Please follow :ref:`deploy_additional_monitors` to deploy additional MONs. @@ -366,12 +379,12 @@ See :ref:`osd_autotune`. To deploy hyperconverged Ceph with TripleO, please refer to the TripleO documentation: `Scenario: Deploy Hyperconverged Ceph <https://docs.openstack.org/project-deploy-guide/tripleo-docs/latest/features/cephadm.html#scenario-deploy-hyperconverged-ceph>`_ -In other cases where the cluster hardware is not exclusively used by Ceph (hyperconverged), +In other cases where the cluster hardware is not exclusively used by Ceph (converged infrastructure), reduce the memory consumption of Ceph like so: .. prompt:: bash # - # hyperconverged only: + # converged only: ceph config set mgr mgr/cephadm/autotune_memory_target_ratio 0.2 Then enable memory autotuning: @@ -400,9 +413,11 @@ Different deployment scenarios Single host ----------- -To configure a Ceph cluster to run on a single host, use the -``--single-host-defaults`` flag when bootstrapping. For use cases of this, see -:ref:`one-node-cluster`. +To deploy a Ceph cluster running on a single host, use the +``--single-host-defaults`` flag when bootstrapping. For use cases, see +:ref:`one-node-cluster`. Such clusters are generally not suitable for +production. + The ``--single-host-defaults`` flag sets the following configuration options:: @@ -419,8 +434,8 @@ Deployment in an isolated environment ------------------------------------- You might need to install cephadm in an environment that is not connected -directly to the internet (such an environment is also called an "isolated -environment"). This can be done if a custom container registry is used. Either +directly to the Internet (an "isolated" or "airgapped" +environment). This requires the use of a custom container registry. Either of two kinds of custom container registry can be used in this scenario: (1) a Podman-based or Docker-based insecure registry, or (2) a secure registry. @@ -569,9 +584,9 @@ in order to have cephadm use them for SSHing between cluster hosts Note that this setup does not require installing the corresponding public key from the private key passed to bootstrap on other nodes. In fact, cephadm will reject the ``--ssh-public-key`` argument when passed along with ``--ssh-signed-cert``. -Not because having the public key breaks anything, but because it is not at all needed -for this setup and it helps bootstrap differentiate if the user wants the CA signed -keys setup or standard pubkey encryption. What this means is, SSH key rotation +This is not because having the public key breaks anything, but rather because it is not at all needed +and helps the bootstrap command differentiate if the user wants the CA signed +keys setup or standard pubkey encryption. What this means is that SSH key rotation would simply be a matter of getting another key signed by the same CA and providing cephadm with the new private key and signed cert. No additional distribution of keys to cluster nodes is needed after the initial setup of the CA key as a trusted key, diff --git a/doc/cephadm/operations.rst b/doc/cephadm/operations.rst index 5d8fdaca8..623cf1635 100644 --- a/doc/cephadm/operations.rst +++ b/doc/cephadm/operations.rst @@ -328,15 +328,15 @@ You can disable this health warning by running the following command: Cluster Configuration Checks ---------------------------- -Cephadm periodically scans each of the hosts in the cluster in order -to understand the state of the OS, disks, NICs etc. These facts can -then be analysed for consistency across the hosts in the cluster to +Cephadm periodically scans each host in the cluster in order +to understand the state of the OS, disks, network interfacess etc. This information can +then be analyzed for consistency across the hosts in the cluster to identify any configuration anomalies. Enabling Cluster Configuration Checks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The configuration checks are an **optional** feature, and are enabled +These configuration checks are an **optional** feature, and are enabled by running the following command: .. prompt:: bash # @@ -346,7 +346,7 @@ by running the following command: States Returned by Cluster Configuration Checks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The configuration checks are triggered after each host scan (1m). The +Configuration checks are triggered after each host scan. The cephadm log entries will show the current state and outcome of the configuration checks as follows: @@ -383,14 +383,14 @@ To list all the configuration checks and their current states, run the following # ceph cephadm config-check ls NAME HEALTHCHECK STATUS DESCRIPTION - kernel_security CEPHADM_CHECK_KERNEL_LSM enabled checks SELINUX/Apparmor profiles are consistent across cluster hosts - os_subscription CEPHADM_CHECK_SUBSCRIPTION enabled checks subscription states are consistent for all cluster hosts - public_network CEPHADM_CHECK_PUBLIC_MEMBERSHIP enabled check that all hosts have a NIC on the Ceph public_network + kernel_security CEPHADM_CHECK_KERNEL_LSM enabled check that SELINUX/Apparmor profiles are consistent across cluster hosts + os_subscription CEPHADM_CHECK_SUBSCRIPTION enabled check that subscription states are consistent for all cluster hosts + public_network CEPHADM_CHECK_PUBLIC_MEMBERSHIP enabled check that all hosts have a network interface on the Ceph public_network osd_mtu_size CEPHADM_CHECK_MTU enabled check that OSD hosts share a common MTU setting - osd_linkspeed CEPHADM_CHECK_LINKSPEED enabled check that OSD hosts share a common linkspeed - network_missing CEPHADM_CHECK_NETWORK_MISSING enabled checks that the cluster/public networks defined exist on the Ceph hosts - ceph_release CEPHADM_CHECK_CEPH_RELEASE enabled check for Ceph version consistency - ceph daemons should be on the same release (unless upgrade is active) - kernel_version CEPHADM_CHECK_KERNEL_VERSION enabled checks that the MAJ.MIN of the kernel on Ceph hosts is consistent + osd_linkspeed CEPHADM_CHECK_LINKSPEED enabled check that OSD hosts share a common network link speed + network_missing CEPHADM_CHECK_NETWORK_MISSING enabled check that the cluster/public networks as defined exist on the Ceph hosts + ceph_release CEPHADM_CHECK_CEPH_RELEASE enabled check for Ceph version consistency: all Ceph daemons should be the same release unless upgrade is in progress + kernel_version CEPHADM_CHECK_KERNEL_VERSION enabled checks that the maj.min version of the kernel is consistent across Ceph hosts The name of each configuration check can be used to enable or disable a specific check by running a command of the following form: : @@ -414,31 +414,31 @@ flagged as an anomaly and a healthcheck (WARNING) state raised. CEPHADM_CHECK_SUBSCRIPTION ~~~~~~~~~~~~~~~~~~~~~~~~~~ -This check relates to the status of vendor subscription. This check is -performed only for hosts using RHEL, but helps to confirm that all hosts are +This check relates to the status of OS vendor subscription. This check is +performed only for hosts using RHEL and helps to confirm that all hosts are covered by an active subscription, which ensures that patches and updates are available. CEPHADM_CHECK_PUBLIC_MEMBERSHIP ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -All members of the cluster should have NICs configured on at least one of the +All members of the cluster should have a network interface configured on at least one of the public network subnets. Hosts that are not on the public network will rely on routing, which may affect performance. CEPHADM_CHECK_MTU ~~~~~~~~~~~~~~~~~ -The MTU of the NICs on OSDs can be a key factor in consistent performance. This +The MTU of the network interfaces on OSD hosts can be a key factor in consistent performance. This check examines hosts that are running OSD services to ensure that the MTU is -configured consistently within the cluster. This is determined by establishing +configured consistently within the cluster. This is determined by determining the MTU setting that the majority of hosts is using. Any anomalies result in a -Ceph health check. +health check. CEPHADM_CHECK_LINKSPEED ~~~~~~~~~~~~~~~~~~~~~~~ -This check is similar to the MTU check. Linkspeed consistency is a factor in -consistent cluster performance, just as the MTU of the NICs on the OSDs is. -This check determines the linkspeed shared by the majority of OSD hosts, and a -health check is run for any hosts that are set at a lower linkspeed rate. +This check is similar to the MTU check. Link speed consistency is a factor in +consistent cluster performance, as is the MTU of the OSD node network interfaces. +This check determines the link speed shared by the majority of OSD hosts, and a +health check is run for any hosts that are set at a lower link speed rate. CEPHADM_CHECK_NETWORK_MISSING ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -448,15 +448,14 @@ a health check is raised. CEPHADM_CHECK_CEPH_RELEASE ~~~~~~~~~~~~~~~~~~~~~~~~~~ -Under normal operations, the Ceph cluster runs daemons under the same ceph -release (that is, the Ceph cluster runs all daemons under (for example) -Octopus). This check determines the active release for each daemon, and +Under normal operations, the Ceph cluster runs daemons that are of the same Ceph +release (for example, Reef). This check determines the active release for each daemon, and reports any anomalies as a healthcheck. *This check is bypassed if an upgrade -process is active within the cluster.* +is in process.* CEPHADM_CHECK_KERNEL_VERSION ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The OS kernel version (maj.min) is checked for consistency across the hosts. +The OS kernel version (maj.min) is checked for consistency across hosts. The kernel version of the majority of the hosts is used as the basis for identifying anomalies. diff --git a/doc/cephadm/services/index.rst b/doc/cephadm/services/index.rst index 82f83bfac..c1da5d15f 100644 --- a/doc/cephadm/services/index.rst +++ b/doc/cephadm/services/index.rst @@ -357,7 +357,9 @@ Or in YAML: Placement by pattern matching ----------------------------- -Daemons can be placed on hosts as well: +Daemons can be placed on hosts using a host pattern as well. +By default, the host pattern is matched using fnmatch which supports +UNIX shell-style wildcards (see https://docs.python.org/3/library/fnmatch.html): .. prompt:: bash # @@ -385,6 +387,26 @@ Or in YAML: placement: host_pattern: "*" +The host pattern also has support for using a regex. To use a regex, you +must either add "regex: " to the start of the pattern when using the +command line, or specify a ``pattern_type`` field to be "regex" +when using YAML. + +On the command line: + +.. prompt:: bash # + + ceph orch apply prometheus --placement='regex:FOO[0-9]|BAR[0-9]' + +In YAML: + +.. code-block:: yaml + + service_type: prometheus + placement: + host_pattern: + pattern: 'FOO[0-9]|BAR[0-9]' + pattern_type: regex Changing the number of daemons ------------------------------ diff --git a/doc/cephadm/services/monitoring.rst b/doc/cephadm/services/monitoring.rst index a17a5ba03..d95504796 100644 --- a/doc/cephadm/services/monitoring.rst +++ b/doc/cephadm/services/monitoring.rst @@ -83,6 +83,37 @@ steps below: ceph orch apply grafana +Enabling security for the monitoring stack +---------------------------------------------- + +By default, in a cephadm-managed cluster, the monitoring components are set up and configured without enabling security measures. +While this suffices for certain deployments, others with strict security needs may find it necessary to protect the +monitoring stack against unauthorized access. In such cases, cephadm relies on a specific configuration parameter, +`mgr/cephadm/secure_monitoring_stack`, which toggles the security settings for all monitoring components. To activate security +measures, set this option to ``true`` with a command of the following form: + + .. prompt:: bash # + + ceph config set mgr mgr/cephadm/secure_monitoring_stack true + +This change will trigger a sequence of reconfigurations across all monitoring daemons, typically requiring +few minutes until all components are fully operational. The updated secure configuration includes the following modifications: + +#. Prometheus: basic authentication is required to access the web portal and TLS is enabled for secure communication. +#. Alertmanager: basic authentication is required to access the web portal and TLS is enabled for secure communication. +#. Node Exporter: TLS is enabled for secure communication. +#. Grafana: TLS is enabled and authentication is requiered to access the datasource information. + +In this secure setup, users will need to setup authentication +(username/password) for both Prometheus and Alertmanager. By default the +username and password are set to ``admin``/``admin``. The user can change these +value with the commands ``ceph orch prometheus set-credentials`` and ``ceph +orch alertmanager set-credentials`` respectively. These commands offer the +flexibility to input the username/password either as parameters or via a JSON +file, which enhances security. Additionally, Cephadm provides the commands +`orch prometheus get-credentials` and `orch alertmanager get-credentials` to +retrieve the current credentials. + .. _cephadm-monitoring-centralized-logs: Centralized Logging in Ceph diff --git a/doc/cephadm/services/nfs.rst b/doc/cephadm/services/nfs.rst index 2f12c5916..ab616ddcb 100644 --- a/doc/cephadm/services/nfs.rst +++ b/doc/cephadm/services/nfs.rst @@ -15,7 +15,7 @@ Deploying NFS ganesha ===================== Cephadm deploys NFS Ganesha daemon (or set of daemons). The configuration for -NFS is stored in the ``nfs-ganesha`` pool and exports are managed via the +NFS is stored in the ``.nfs`` pool and exports are managed via the ``ceph nfs export ...`` commands and via the dashboard. To deploy a NFS Ganesha gateway, run the following command: diff --git a/doc/cephadm/services/osd.rst b/doc/cephadm/services/osd.rst index f62b0f831..aa906e239 100644 --- a/doc/cephadm/services/osd.rst +++ b/doc/cephadm/services/osd.rst @@ -232,7 +232,7 @@ Remove an OSD Removing an OSD from a cluster involves two steps: -#. evacuating all placement groups (PGs) from the cluster +#. evacuating all placement groups (PGs) from the OSD #. removing the PG-free OSD from the cluster The following command performs these two steps: diff --git a/doc/cephadm/services/rgw.rst b/doc/cephadm/services/rgw.rst index 20ec39a88..ed0b14936 100644 --- a/doc/cephadm/services/rgw.rst +++ b/doc/cephadm/services/rgw.rst @@ -246,6 +246,7 @@ It is a yaml format file with the following properties: virtual_interface_networks: [ ... ] # optional: list of CIDR networks use_keepalived_multicast: <bool> # optional: Default is False. vrrp_interface_network: <string>/<string> # optional: ex: 192.168.20.0/24 + health_check_interval: <string> # optional: Default is 2s. ssl_cert: | # optional: SSL certificate and key -----BEGIN CERTIFICATE----- ... @@ -273,6 +274,7 @@ It is a yaml format file with the following properties: monitor_port: <integer> # ex: 1967, used by haproxy for load balancer status virtual_interface_networks: [ ... ] # optional: list of CIDR networks first_virtual_router_id: <integer> # optional: default 50 + health_check_interval: <string> # optional: Default is 2s. ssl_cert: | # optional: SSL certificate and key -----BEGIN CERTIFICATE----- ... @@ -321,6 +323,9 @@ where the properties of this service specification are: keepalived will have different virtual_router_id. In the case of using ``virtual_ips_list``, each IP will create its own virtual router. So the first one will have ``first_virtual_router_id``, second one will have ``first_virtual_router_id`` + 1, etc. Valid values go from 1 to 255. +* ``health_check_interval`` + Default is 2 seconds. This parameter can be used to set the interval between health checks + for the haproxy with the backend servers. .. _ingress-virtual-ip: diff --git a/doc/cephadm/troubleshooting.rst b/doc/cephadm/troubleshooting.rst index d891ebaf2..a7afaa108 100644 --- a/doc/cephadm/troubleshooting.rst +++ b/doc/cephadm/troubleshooting.rst @@ -32,7 +32,7 @@ completely by running the following commands: ceph orch set backend '' ceph mgr module disable cephadm -These commands disable all of the ``ceph orch ...`` CLI commands. All +These commands disable all ``ceph orch ...`` CLI commands. All previously deployed daemon containers continue to run and will start just as they were before you ran these commands. @@ -56,7 +56,7 @@ following form: ceph orch ls --service_name=<service-name> --format yaml -This will return something in the following form: +This will return information in the following form: .. code-block:: yaml @@ -252,16 +252,17 @@ For more detail on operations of this kind, see Accessing the Admin Socket -------------------------- -Each Ceph daemon provides an admin socket that bypasses the MONs (See -:ref:`rados-monitoring-using-admin-socket`). +Each Ceph daemon provides an admin socket that allows runtime option setting and statistic reading. See +:ref:`rados-monitoring-using-admin-socket`. #. To access the admin socket, enter the daemon container on the host:: [root@mon1 ~]# cephadm enter --name <daemon-name> -#. Run a command of the following form to see the admin socket's configuration:: +#. Run a command of the following forms to see the admin socket's configuration and other available actions:: [ceph: root@mon1 /]# ceph --admin-daemon /var/run/ceph/ceph-<daemon-name>.asok config show + [ceph: root@mon1 /]# ceph --admin-daemon /var/run/ceph/ceph-<daemon-name>.asok help Running Various Ceph Tools -------------------------------- @@ -444,11 +445,11 @@ Running repeated debugging sessions When using ``cephadm shell``, as in the example above, any changes made to the container that is spawned by the shell command are ephemeral. After the shell session exits, the files that were downloaded and installed cease to be -available. You can simply re-run the same commands every time ``cephadm -shell`` is invoked, but in order to save time and resources one can create a -new container image and use it for repeated debugging sessions. +available. You can simply re-run the same commands every time ``cephadm shell`` +is invoked, but to save time and resources you can create a new container image +and use it for repeated debugging sessions. -In the following example, we create a simple file that will construct the +In the following example, we create a simple file that constructs the container image. The command below uses podman but it is expected to work correctly even if ``podman`` is replaced with ``docker``:: @@ -463,14 +464,14 @@ correctly even if ``podman`` is replaced with ``docker``:: The above file creates a new local image named ``ceph:debugging``. This image can be used on the same machine that built it. The image can also be pushed to -a container repository or saved and copied to a node runing other Ceph -containers. Consult the ``podman`` or ``docker`` documentation for more +a container repository or saved and copied to a node that is running other Ceph +containers. See the ``podman`` or ``docker`` documentation for more information about the container workflow. After the image has been built, it can be used to initiate repeat debugging sessions. By using an image in this way, you avoid the trouble of having to -re-install the debug tools and debuginfo packages every time you need to run a -debug session. To debug a core file using this image, in the same way as +re-install the debug tools and the debuginfo packages every time you need to +run a debug session. To debug a core file using this image, in the same way as previously described, run: .. prompt:: bash # diff --git a/doc/cephadm/upgrade.rst b/doc/cephadm/upgrade.rst index e0a9f610a..9bb1a6b4d 100644 --- a/doc/cephadm/upgrade.rst +++ b/doc/cephadm/upgrade.rst @@ -2,7 +2,7 @@ Upgrading Ceph ============== -Cephadm can safely upgrade Ceph from one bugfix release to the next. For +Cephadm can safely upgrade Ceph from one point release to the next. For example, you can upgrade from v15.2.0 (the first Octopus release) to the next point release, v15.2.1. @@ -137,25 +137,25 @@ UPGRADE_NO_STANDBY_MGR ---------------------- This alert (``UPGRADE_NO_STANDBY_MGR``) means that Ceph does not detect an -active standby manager daemon. In order to proceed with the upgrade, Ceph -requires an active standby manager daemon (which you can think of in this +active standby Manager daemon. In order to proceed with the upgrade, Ceph +requires an active standby Manager daemon (which you can think of in this context as "a second manager"). -You can ensure that Cephadm is configured to run 2 (or more) managers by +You can ensure that Cephadm is configured to run two (or more) Managers by running the following command: .. prompt:: bash # ceph orch apply mgr 2 # or more -You can check the status of existing mgr daemons by running the following +You can check the status of existing Manager daemons by running the following command: .. prompt:: bash # ceph orch ps --daemon-type mgr -If an existing mgr daemon has stopped, you can try to restart it by running the +If an existing Manager daemon has stopped, you can try to restart it by running the following command: .. prompt:: bash # @@ -183,7 +183,7 @@ Using customized container images ================================= For most users, upgrading requires nothing more complicated than specifying the -Ceph version number to upgrade to. In such cases, cephadm locates the specific +Ceph version to which to upgrade. In such cases, cephadm locates the specific Ceph container image to use by combining the ``container_image_base`` configuration option (default: ``docker.io/ceph/ceph``) with a tag of ``vX.Y.Z``. diff --git a/doc/cephfs/add-remove-mds.rst b/doc/cephfs/add-remove-mds.rst index 4f5ee06aa..2fec7873d 100644 --- a/doc/cephfs/add-remove-mds.rst +++ b/doc/cephfs/add-remove-mds.rst @@ -1,11 +1,13 @@ .. _cephfs_add_remote_mds: -.. note:: - It is highly recommended to use :doc:`/cephadm/index` or another Ceph - orchestrator for setting up the ceph cluster. Use this approach only if you - are setting up the ceph cluster manually. If one still intends to use the - manual way for deploying MDS daemons, :doc:`/cephadm/services/mds/` can - also be used. +.. warning:: The material on this page is to be used only for manually setting + up a Ceph cluster. If you intend to use an automated tool such as + :doc:`/cephadm/index` to set up a Ceph cluster, do not use the + instructions on this page. + +.. note:: If you are certain that you know what you are doing and you intend to + manually deploy MDS daemons, see :doc:`/cephadm/services/mds/` before + proceeding. ============================ Deploying Metadata Servers diff --git a/doc/cephfs/cephfs-io-path.rst b/doc/cephfs/cephfs-io-path.rst index 8c7810ba0..d5ae17197 100644 --- a/doc/cephfs/cephfs-io-path.rst +++ b/doc/cephfs/cephfs-io-path.rst @@ -47,4 +47,4 @@ client cache. | MDSs | -=-------> | OSDs | +---------------------+ +--------------------+ -.. _Architecture: ../architecture +.. _Architecture: ../../architecture diff --git a/doc/cephfs/cephfs-mirroring.rst b/doc/cephfs/cephfs-mirroring.rst index fd00a1eef..973a2affa 100644 --- a/doc/cephfs/cephfs-mirroring.rst +++ b/doc/cephfs/cephfs-mirroring.rst @@ -93,6 +93,15 @@ providing high-availability. .. note:: Deploying a single mirror daemon is recommended. Running multiple daemons is untested. +The following file types are supported by the mirroring: + +- Regular files (-) +- Directory files (d) +- Symbolic link file (l) + +The other file types are ignored by the mirroring. So they won't be +available on a successfully synchronized peer. + The mirroring module is disabled by default. To enable the mirroring module, run the following command: diff --git a/doc/cephfs/cephfs-top.rst b/doc/cephfs/cephfs-top.rst index 49439a4bd..1588c4f5c 100644 --- a/doc/cephfs/cephfs-top.rst +++ b/doc/cephfs/cephfs-top.rst @@ -63,6 +63,62 @@ By default, `cephfs-top` uses `client.fstop` user to connect to a Ceph cluster:: $ ceph auth get-or-create client.fstop mon 'allow r' mds 'allow r' osd 'allow r' mgr 'allow r' $ cephfs-top +Description of Fields +--------------------- + +1. chit : Cap hit + Percentage of file capability hits over total number of caps + +2. dlease : Dentry lease + Percentage of dentry leases handed out over the total dentry lease requests + +3. ofiles : Opened files + Number of opened files + +4. oicaps : Pinned caps + Number of pinned caps + +5. oinodes : Opened inodes + Number of opened inodes + +6. rtio : Total size of read IOs + Number of bytes read in input/output operations generated by all process + +7. wtio : Total size of write IOs + Number of bytes written in input/output operations generated by all processes + +8. raio : Average size of read IOs + Mean of number of bytes read in input/output operations generated by all + process over total IO done + +9. waio : Average size of write IOs + Mean of number of bytes written in input/output operations generated by all + process over total IO done + +10. rsp : Read speed + Speed of read IOs with respect to the duration since the last refresh of clients + +11. wsp : Write speed + Speed of write IOs with respect to the duration since the last refresh of clients + +12. rlatavg : Average read latency + Mean value of the read latencies + +13. rlatsd : Standard deviation (variance) for read latency + Dispersion of the metric for the read latency relative to its mean + +14. wlatavg : Average write latency + Mean value of the write latencies + +15. wlatsd : Standard deviation (variance) for write latency + Dispersion of the metric for the write latency relative to its mean + +16. mlatavg : Average metadata latency + Mean value of the metadata latencies + +17. mlatsd : Standard deviation (variance) for metadata latency + Dispersion of the metric for the metadata latency relative to its mean + Command-Line Options -------------------- diff --git a/doc/cephfs/client-auth.rst b/doc/cephfs/client-auth.rst index a7dea5251..75528f91e 100644 --- a/doc/cephfs/client-auth.rst +++ b/doc/cephfs/client-auth.rst @@ -259,3 +259,121 @@ Following is an example of enabling root_squash in a filesystem except within caps mds = "allow rw fsname=a root_squash, allow rw fsname=a path=/volumes" caps mon = "allow r fsname=a" caps osd = "allow rw tag cephfs data=a" + +Updating Capabilities using ``fs authorize`` +============================================ +After Ceph's Reef version, ``fs authorize`` can not only be used to create a +new client with caps for a CephFS but it can also be used to add new caps +(for a another CephFS or another path in same FS) to an already existing +client. + +Let's say we run following and create a new client:: + + $ ceph fs authorize a client.x / rw + [client.x] + key = AQAOtSVk9WWtIhAAJ3gSpsjwfIQ0gQ6vfSx/0w== + $ ceph auth get client.x + [client.x] + key = AQAOtSVk9WWtIhAAJ3gSpsjwfIQ0gQ6vfSx/0w== + caps mds = "allow rw fsname=a" + caps mon = "allow r fsname=a" + caps osd = "allow rw tag cephfs data=a" + +Previously, running ``fs authorize a client.x / rw`` a second time used to +print an error message. But after Reef, it instead prints message that +there's not update:: + + $ ./bin/ceph fs authorize a client.x / rw + no update for caps of client.x + +Adding New Caps Using ``fs authorize`` +-------------------------------------- +Users can now add caps for another path in same CephFS:: + + $ ceph fs authorize a client.x /dir1 rw + updated caps for client.x + $ ceph auth get client.x + [client.x] + key = AQAOtSVk9WWtIhAAJ3gSpsjwfIQ0gQ6vfSx/0w== + caps mds = "allow r fsname=a, allow rw fsname=a path=some/dir" + caps mon = "allow r fsname=a" + caps osd = "allow rw tag cephfs data=a" + +And even add caps for another CephFS on Ceph cluster:: + + $ ceph fs authorize b client.x / rw + updated caps for client.x + $ ceph auth get client.x + [client.x] + key = AQD6tiVk0uJdARAABMaQuLRotxTi3Qdj47FkBA== + caps mds = "allow rw fsname=a, allow rw fsname=b" + caps mon = "allow r fsname=a, allow r fsname=b" + caps osd = "allow rw tag cephfs data=a, allow rw tag cephfs data=b" + +Changing rw permissions in caps +------------------------------- + +It's not possible to modify caps by running ``fs authorize`` except for the +case when read/write permissions have to be changed. This is because the +``fs authorize`` becomes ambiguous. For example, user runs ``fs authorize +cephfs1 client.x /dir1 rw`` to create a client and then runs ``fs authorize +cephfs1 client.x /dir2 rw`` (notice ``/dir1`` is changed to ``/dir2``). +Running second command can be interpreted as changing ``/dir1`` to ``/dir2`` +in current cap or can also be interpreted as authorizing the client with a +new cap for path ``/dir2``. As seen in previous sections, second +interpretation is chosen and therefore it's impossible to update a part of +capability granted except rw permissions. Following is how read/write +permissions for ``client.x`` (that was created above) can be changed:: + + $ ceph fs authorize a client.x / r + [client.x] + key = AQBBKjBkIFhBDBAA6q5PmDDWaZtYjd+jafeVUQ== + $ ceph auth get client.x + [client.x] + key = AQBBKjBkIFhBDBAA6q5PmDDWaZtYjd+jafeVUQ== + caps mds = "allow r fsname=a" + caps mon = "allow r fsname=a" + caps osd = "allow r tag cephfs data=a" + +``fs authorize`` never deducts any part of caps +----------------------------------------------- +It's not possible to remove caps issued to a client by running ``fs +authorize`` again. For example, if a client cap has ``root_squash`` applied +on a certain CephFS, running ``fs authorize`` again for the same CephFS but +without ``root_squash`` will not lead to any update, the client caps will +remain unchanged:: + + $ ceph fs authorize a client.x / rw root_squash + [client.x] + key = AQD61CVkcA1QCRAAd0XYqPbHvcc+lpUAuc6Vcw== + $ ceph auth get client.x + [client.x] + key = AQD61CVkcA1QCRAAd0XYqPbHvcc+lpUAuc6Vcw== + caps mds = "allow rw fsname=a root_squash" + caps mon = "allow r fsname=a" + caps osd = "allow rw tag cephfs data=a" + $ ceph fs authorize a client.x / rw + [client.x] + key = AQD61CVkcA1QCRAAd0XYqPbHvcc+lpUAuc6Vcw== + no update was performed for caps of client.x. caps of client.x remains unchanged. + +And if a client already has a caps for FS name ``a`` and path ``dir1``, +running ``fs authorize`` again for FS name ``a`` but path ``dir2``, instead +of modifying the caps client already holds, a new cap for ``dir2`` will be +granted:: + + $ ceph fs authorize a client.x /dir1 rw + $ ceph auth get client.x + [client.x] + key = AQC1tyVknMt+JxAAp0pVnbZGbSr/nJrmkMNKqA== + caps mds = "allow rw fsname=a path=/dir1" + caps mon = "allow r fsname=a" + caps osd = "allow rw tag cephfs data=a" + $ ceph fs authorize a client.x /dir2 rw + updated caps for client.x + $ ceph auth get client.x + [client.x] + key = AQC1tyVknMt+JxAAp0pVnbZGbSr/nJrmkMNKqA== + caps mds = "allow rw fsname=a path=dir1, allow rw fsname=a path=dir2" + caps mon = "allow r fsname=a" + caps osd = "allow rw tag cephfs data=a" diff --git a/doc/cephfs/disaster-recovery-experts.rst b/doc/cephfs/disaster-recovery-experts.rst index c881c2423..9a196c88e 100644 --- a/doc/cephfs/disaster-recovery-experts.rst +++ b/doc/cephfs/disaster-recovery-experts.rst @@ -15,7 +15,7 @@ Advanced: Metadata repair tools file system before attempting to repair it. If you do not have access to professional support for your cluster, - consult the ceph-users mailing list or the #ceph IRC channel. + consult the ceph-users mailing list or the #ceph IRC/Slack channel. Journal export diff --git a/doc/cephfs/fs-volumes.rst b/doc/cephfs/fs-volumes.rst index e7fd377bf..3d17be561 100644 --- a/doc/cephfs/fs-volumes.rst +++ b/doc/cephfs/fs-volumes.rst @@ -501,10 +501,14 @@ To initiate a clone operation use:: $ ceph fs subvolume snapshot clone <vol_name> <subvol_name> <snap_name> <target_subvol_name> +.. note:: ``subvolume snapshot clone`` command depends upon the above mentioned config option ``snapshot_clone_no_wait`` + If a snapshot (source subvolume) is a part of non-default group, the group name needs to be specified:: $ ceph fs subvolume snapshot clone <vol_name> <subvol_name> <snap_name> <target_subvol_name> --group_name <subvol_group_name> +If a snapshot (source subvolume) is a part of non-default group, the group name needs to be specified: + Cloned subvolumes can be a part of a different group than the source snapshot (by default, cloned subvolumes are created in default group). To clone to a particular group use:: $ ceph fs subvolume snapshot clone <vol_name> <subvol_name> <snap_name> <target_subvol_name> --target_group_name <subvol_group_name> @@ -513,13 +517,15 @@ Similar to specifying a pool layout when creating a subvolume, pool layout can b $ ceph fs subvolume snapshot clone <vol_name> <subvol_name> <snap_name> <target_subvol_name> --pool_layout <pool_layout> -Configure the maximum number of concurrent clones. The default is 4:: +To check the status of a clone operation use:: - $ ceph config set mgr mgr/volumes/max_concurrent_clones <value> + ceph fs subvolume snapshot clone <vol_name> <subvol_name> <snap_name> <target_subvol_name> --pool_layout <pool_layout> -To check the status of a clone operation use:: +To check the status of a clone operation use: + +.. prompt:: bash # - $ ceph fs clone status <vol_name> <clone_name> [--group_name <group_name>] + ceph fs clone status <vol_name> <clone_name> [--group_name <group_name>] A clone can be in one of the following states: @@ -616,6 +622,31 @@ On successful cancellation, the cloned subvolume is moved to the ``canceled`` st .. note:: The canceled cloned may be deleted by supplying the ``--force`` option to the `fs subvolume rm` command. +Configurables +~~~~~~~~~~~~~ + +Configure the maximum number of concurrent clone operations. The default is 4: + +.. prompt:: bash # + + ceph config set mgr mgr/volumes/max_concurrent_clones <value> + +Configure the snapshot_clone_no_wait option : + +The ``snapshot_clone_no_wait`` config option is used to reject clone creation requests when cloner threads +(which can be configured using above option i.e. ``max_concurrent_clones``) are not available. +It is enabled by default i.e. the value set is True, whereas it can be configured by using below command. + +.. prompt:: bash # + + ceph config set mgr mgr/volumes/snapshot_clone_no_wait <bool> + +The current value of ``snapshot_clone_no_wait`` can be fetched by using below command. + +.. prompt:: bash # + + ceph config get mgr mgr/volumes/snapshot_clone_no_wait + .. _subvol-pinning: diff --git a/doc/cephfs/health-messages.rst b/doc/cephfs/health-messages.rst index 7edc1262f..8fb23715d 100644 --- a/doc/cephfs/health-messages.rst +++ b/doc/cephfs/health-messages.rst @@ -130,7 +130,9 @@ other daemons, please see :ref:`health-checks`. from properly cleaning up resources used by client requests. This message appears if a client appears to have more than ``max_completed_requests`` (default 100000) requests that are complete on the MDS side but haven't - yet been accounted for in the client's *oldest tid* value. + yet been accounted for in the client's *oldest tid* value. The last tid + used by the MDS to trim completed client requests (or flush) is included + as part of `session ls` (or `client ls`) command as a debug aid. ``MDS_DAMAGE`` -------------- @@ -238,3 +240,15 @@ other daemons, please see :ref:`health-checks`. Description All MDS ranks are unavailable resulting in the file system to be completely offline. + +``MDS_CLIENTS_LAGGY`` +---------------------------- + Message + "Client *ID* is laggy; not evicted because some OSD(s) is/are laggy" + + Description + If OSD(s) is laggy (due to certain conditions like network cut-off, etc) + then it might make clients laggy(session might get idle or cannot flush + dirty data for cap revokes). If ``defer_client_eviction_on_laggy_osds`` is + set to true (default true), client eviction will not take place and thus + this health warning will be generated. diff --git a/doc/cephfs/multimds.rst b/doc/cephfs/multimds.rst index e50a5148e..d105c74ad 100644 --- a/doc/cephfs/multimds.rst +++ b/doc/cephfs/multimds.rst @@ -116,7 +116,7 @@ The mechanism provided for this purpose is called an ``export pin``, an extended attribute of directories. The name of this extended attribute is ``ceph.dir.pin``. Users can set this attribute using standard commands: -:: +.. prompt:: bash # setfattr -n ceph.dir.pin -v 2 path/to/dir @@ -128,7 +128,7 @@ pin. In this way, setting the export pin on a directory affects all of its children. However, the parents pin can be overridden by setting the child directory's export pin. For example: -:: +.. prompt:: bash # mkdir -p a/b # "a" and "a/b" both start without an export pin set @@ -173,7 +173,7 @@ immediate children across a range of MDS ranks. The canonical example use-case would be the ``/home`` directory: we want every user's home directory to be spread across the entire MDS cluster. This can be set via: -:: +.. prompt:: bash # setfattr -n ceph.dir.pin.distributed -v 1 /cephfs/home @@ -183,7 +183,7 @@ may be ephemerally pinned. This is set through the extended attribute ``ceph.dir.pin.random`` with the value set to the percentage of directories that should be pinned. For example: -:: +.. prompt:: bash # setfattr -n ceph.dir.pin.random -v 0.5 /cephfs/tmp @@ -205,7 +205,7 @@ Ephemeral pins may override parent export pins and vice versa. What determines which policy is followed is the rule of the closest parent: if a closer parent directory has a conflicting policy, use that one instead. For example: -:: +.. prompt:: bash # mkdir -p foo/bar1/baz foo/bar2 setfattr -n ceph.dir.pin -v 0 foo @@ -217,7 +217,7 @@ directory will obey the pin on ``foo`` normally. For the reverse situation: -:: +.. prompt:: bash # mkdir -p home/{patrick,john} setfattr -n ceph.dir.pin.distributed -v 1 home @@ -229,7 +229,8 @@ because its export pin overrides the policy on ``home``. To remove a partitioning policy, remove the respective extended attribute or set the value to 0. -.. code::bash +.. prompt:: bash # + $ setfattr -n ceph.dir.pin.distributed -v 0 home # or $ setfattr -x ceph.dir.pin.distributed home @@ -237,10 +238,36 @@ or set the value to 0. For export pins, remove the extended attribute or set the extended attribute value to `-1`. -.. code::bash +.. prompt:: bash # + $ setfattr -n ceph.dir.pin -v -1 home +Dynamic Subtree Partitioning +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +CephFS has long had a dynamic metadata blanacer (sometimes called the "default +balancer") which can split or merge subtrees while placing them on "colder" MDS +ranks. Moving the metadata around can improve overall file system throughput +and cache size. + +However, the balancer has suffered from problem with efficiency and performance +so it is by default turned off. This is to avoid an administrator "turning on +multimds" by increasing the ``max_mds`` setting and then finding the balancer +has made a mess of the cluster performance (reverting is straightforward but +can take time). + +The setting to turn on the balancer is: + +.. prompt:: bash # + + ceph fs set <fs_name> balance_automate true + +Turning on the balancer should only be done with appropriate configuration, +such as with the ``bal_rank_mask`` setting (described below). Careful +monitoring of the file system performance and MDS is advised. + + Dynamic subtree partitioning with Balancer on specific ranks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -260,27 +287,27 @@ static pinned subtrees. This option can be configured with the ``ceph fs set`` command. For example: -:: +.. prompt:: bash # ceph fs set <fs_name> bal_rank_mask <hex> Each bitfield of the ``<hex>`` number represents a dedicated rank. If the ``<hex>`` is set to ``0x3``, the balancer runs on active ``0`` and ``1`` ranks. For example: -:: +.. prompt:: bash # ceph fs set <fs_name> bal_rank_mask 0x3 If the ``bal_rank_mask`` is set to ``-1`` or ``all``, all active ranks are masked and utilized by the balancer. As an example: -:: +.. prompt:: bash # ceph fs set <fs_name> bal_rank_mask -1 On the other hand, if the balancer needs to be disabled, the ``bal_rank_mask`` should be set to ``0x0``. For example: -:: +.. prompt:: bash # ceph fs set <fs_name> bal_rank_mask 0x0 diff --git a/doc/cephfs/quota.rst b/doc/cephfs/quota.rst index 0bc56be12..e78173bcc 100644 --- a/doc/cephfs/quota.rst +++ b/doc/cephfs/quota.rst @@ -21,6 +21,14 @@ value:: setfattr -n ceph.quota.max_bytes -v 100000000 /some/dir # 100 MB setfattr -n ceph.quota.max_files -v 10000 /some/dir # 10,000 files +``ceph.quota.max_bytes`` can also be set using human-friendly units:: + + setfattr -n ceph.quota.max_bytes -v 100K /some/dir # 100 KiB + setfattr -n ceph.quota.max_bytes -v 5Gi /some/dir # 5 GiB + +.. note:: Values will be strictly cast to IEC units even when SI units + are input, e.g. 1K to 1024 bytes. + To view quota limit:: $ getfattr -n ceph.quota.max_bytes /some/dir diff --git a/doc/cephfs/snap-schedule.rst b/doc/cephfs/snap-schedule.rst index 2b8873699..ef746be23 100644 --- a/doc/cephfs/snap-schedule.rst +++ b/doc/cephfs/snap-schedule.rst @@ -30,9 +30,9 @@ assumed to be keyword arguments too. Snapshot schedules are identified by path, their repeat interval and their start time. The repeat interval defines the time between two subsequent snapshots. It is -specified by a number and a period multiplier, one of `h(our)`, `d(ay)` and -`w(eek)`. E.g. a repeat interval of `12h` specifies one snapshot every 12 -hours. +specified by a number and a period multiplier, one of `h(our)`, `d(ay)`, +`w(eek)`, `M(onth)` and `Y(ear)`. E.g. a repeat interval of `12h` specifies one +snapshot every 12 hours. The start time is specified as a time string (more details about passing times below). By default the start time is last midnight. So when a snapshot schedule with repeat @@ -52,8 +52,8 @@ space or concatenated pairs of `<number><time period>`. The semantics are that a spec will ensure `<number>` snapshots are kept that are at least `<time period>` apart. For Example `7d` means the user wants to keep 7 snapshots that are at least one day (but potentially longer) apart from each other. -The following time periods are recognized: `h(our), d(ay), w(eek), m(onth), -y(ear)` and `n`. The latter is a special modifier where e.g. `10n` means keep +The following time periods are recognized: `h(our)`, `d(ay)`, `w(eek)`, `M(onth)`, +`Y(ear)` and `n`. The latter is a special modifier where e.g. `10n` means keep the last 10 snapshots regardless of timing, All subcommands take optional `fs` argument to specify paths in diff --git a/doc/cephfs/standby.rst b/doc/cephfs/standby.rst index 367c6762b..e20735aaa 100644 --- a/doc/cephfs/standby.rst +++ b/doc/cephfs/standby.rst @@ -118,10 +118,16 @@ enforces this affinity. When failing over MDS daemons, a cluster's monitors will prefer standby daemons with ``mds_join_fs`` equal to the file system ``name`` with the failed ``rank``. If no standby exists with ``mds_join_fs`` equal to the file system ``name``, it will -choose an unqualified standby (no setting for ``mds_join_fs``) for the replacement, -or any other available standby, as a last resort. Note, this does not change the -behavior that ``standby-replay`` daemons are always selected before -other standbys. +choose an unqualified standby (no setting for ``mds_join_fs``) for the replacement. +As a last resort, a standby for another filesystem will be chosen, although this +behavior can be disabled: + +:: + + ceph fs set <fs name> refuse_standby_for_another_fs true + +Note, configuring MDS file system affinity does not change the behavior that +``standby-replay`` daemons are always selected before other standbys. Even further, the monitors will regularly examine the CephFS file systems even when stable to check if a standby with stronger affinity is available to replace an diff --git a/doc/dev/cephadm/developing-cephadm.rst b/doc/dev/cephadm/developing-cephadm.rst index 49b771caa..a213b5f1e 100644 --- a/doc/dev/cephadm/developing-cephadm.rst +++ b/doc/dev/cephadm/developing-cephadm.rst @@ -401,3 +401,64 @@ own copy of the cephadm "binary" use the script located at ``./src/cephadm/build.py [output]``. .. _Python Zip Application: https://peps.python.org/pep-0441/ + +You can pass a limited set of version metadata values to be stored in the +compiled cepadm. These options can be passed to the build script with +the ``--set-version-var`` or ``-S`` option. The values should take the form +``KEY=VALUE`` and valid keys include: +* ``CEPH_GIT_VER`` +* ``CEPH_GIT_NICE_VER`` +* ``CEPH_RELEASE`` +* ``CEPH_RELEASE_NAME`` +* ``CEPH_RELEASE_TYPE`` + +Example: ``./src/cephadm/build.py -SCEPH_GIT_VER=$(git rev-parse HEAD) -SCEPH_GIT_NICE_VER=$(git describe) /tmp/cephadm`` + +Typically these values will be passed to build.py by other, higher level, build +tools - such as cmake. + +The compiled version of the binary may include a curated set of dependencies +within the zipapp. The tool used to fetch the bundled dependencies can be +Python's ``pip``, locally installed RPMs, or bundled dependencies can be +disabled. To select the mode for bundled dependencies use the +``--bundled-dependencies`` or ``-B`` option with a value of ``pip``, ``rpm``, +or ``none``. + +The compiled cephadm zipapp file retains metadata about how it was built. This +can be displayed by running ``cephadm version --verbose``. The command will +emit a JSON formatted object showing version metadata (if available), a list of +the bundled dependencies generated by the build script (if bundled dependencies +were enabled), and a summary of the top-level contents of the zipapp. Example:: + + $ ./cephadm version --verbose + { + "name": "cephadm", + "ceph_git_nice_ver": "18.0.0-6867-g6a1df2d0b01", + "ceph_git_ver": "6a1df2d0b01da581bfef3357940e1e88d5ce70ce", + "ceph_release_name": "reef", + "ceph_release_type": "dev", + "bundled_packages": [ + { + "name": "Jinja2", + "version": "3.1.2", + "package_source": "pip", + "requirements_entry": "Jinja2 == 3.1.2" + }, + { + "name": "MarkupSafe", + "version": "2.1.3", + "package_source": "pip", + "requirements_entry": "MarkupSafe == 2.1.3" + } + ], + "zip_root_entries": [ + "Jinja2-3.1.2-py3.9.egg-info", + "MarkupSafe-2.1.3-py3.9.egg-info", + "__main__.py", + "__main__.pyc", + "_cephadmmeta", + "cephadmlib", + "jinja2", + "markupsafe" + ] + } diff --git a/doc/dev/crimson/crimson.rst b/doc/dev/crimson/crimson.rst index cbc20b773..ea00ceebf 100644 --- a/doc/dev/crimson/crimson.rst +++ b/doc/dev/crimson/crimson.rst @@ -148,7 +148,7 @@ options. By default, ``log-to-stdout`` is enabled, and ``--log-to-syslog`` is di vstart.sh --------- -The following options aree handy when using ``vstart.sh``, +The following options can be used with ``vstart.sh``. ``--crimson`` Start ``crimson-osd`` instead of ``ceph-osd``. @@ -195,9 +195,6 @@ The following options aree handy when using ``vstart.sh``, Valid types include ``HDD``, ``SSD``(default), ``ZNS``, and ``RANDOM_BLOCK_SSD`` Note secondary devices should not be faster than the main device. -``--seastore`` - Use SeaStore as the object store backend. - To start a cluster with a single Crimson node, run:: $ MGR=1 MON=1 OSD=1 MDS=0 RGW=0 ../src/vstart.sh -n -x \ diff --git a/doc/dev/crimson/index.rst b/doc/dev/crimson/index.rst index 55f071825..9790a9640 100644 --- a/doc/dev/crimson/index.rst +++ b/doc/dev/crimson/index.rst @@ -1,3 +1,5 @@ +.. _crimson_dev_doc: + =============================== Crimson developer documentation =============================== diff --git a/doc/dev/developer_guide/essentials.rst b/doc/dev/developer_guide/essentials.rst index 5a31e430b..90201f7c5 100644 --- a/doc/dev/developer_guide/essentials.rst +++ b/doc/dev/developer_guide/essentials.rst @@ -13,20 +13,18 @@ following table shows all the leads and their nicks on `GitHub`_: .. _github: https://github.com/ -========= ================ ============= -Scope Lead GitHub nick -========= ================ ============= -Ceph Sage Weil liewegas -RADOS Neha Ojha neha-ojha -RGW Yehuda Sadeh yehudasa -RGW Matt Benjamin mattbenjamin -RBD Ilya Dryomov dis -CephFS Venky Shankar vshankar -Dashboard Ernesto Puerta epuertat -MON Joao Luis jecluis -Build/Ops Ken Dreyer ktdreyer -Docs Zac Dover zdover23 -========= ================ ============= +========= ================== ============= +Scope Lead GitHub nick +========= ================== ============= +RADOS Radoslaw Zarzynski rzarzynski +RGW Casey Bodley cbodley +RGW Matt Benjamin mattbenjamin +RBD Ilya Dryomov dis +CephFS Venky Shankar vshankar +Dashboard Nizamudeen A nizamial09 +Build/Ops Ken Dreyer ktdreyer +Docs Zac Dover zdover23 +========= ================== ============= The Ceph-specific acronyms in the table are explained in :doc:`/architecture`. diff --git a/doc/dev/developer_guide/testing_integration_tests/tests-integration-testing-teuthology-workflow.rst b/doc/dev/developer_guide/testing_integration_tests/tests-integration-testing-teuthology-workflow.rst index 64b006c57..427c84bd0 100644 --- a/doc/dev/developer_guide/testing_integration_tests/tests-integration-testing-teuthology-workflow.rst +++ b/doc/dev/developer_guide/testing_integration_tests/tests-integration-testing-teuthology-workflow.rst @@ -209,6 +209,15 @@ For example: for the above test ID, the path is:: This method can be used to view the log more quickly than would be possible through a browser. +In addition to ``teuthology.log``, some other files are included for debugging +purposes: + +* ``unit_test_summary.yaml``: Provides a summary of all unit test failures. + Generated (optionally) when the ``unit_test_scan`` configuration option is + used in the job's YAML file. + +* ``valgrind.yaml``: Summarizes any Valgrind errors that may occur. + .. note:: To access archives more conveniently, ``/a/`` has been symbolically linked to ``/ceph/teuthology-archive/``. For instance, to access the previous example, we can use something like:: diff --git a/doc/dev/internals.rst b/doc/dev/internals.rst index a894394c9..e72d2738b 100644 --- a/doc/dev/internals.rst +++ b/doc/dev/internals.rst @@ -2,10 +2,14 @@ Ceph Internals ================ -.. note:: If you're looking for how to use Ceph as a library from your - own software, please see :doc:`/api/index`. +.. note:: For information on how to use Ceph as a library (from your own + software), see :doc:`/api/index`. -You can start a development mode Ceph cluster, after compiling the source, with:: +Starting a Development-mode Ceph Cluster +---------------------------------------- + +Compile the source and then run the following commands to start a +development-mode Ceph cluster:: cd build OSD=3 MON=3 MGR=3 ../src/vstart.sh -n -x diff --git a/doc/dev/osd_internals/manifest.rst b/doc/dev/osd_internals/manifest.rst index 7be4350ea..43c23fa71 100644 --- a/doc/dev/osd_internals/manifest.rst +++ b/doc/dev/osd_internals/manifest.rst @@ -218,6 +218,8 @@ we may want to exploit. The dedup-tool needs to be updated to use ``LIST_SNAPS`` to discover clones as part of leak detection. +.. _osd-make-writeable: + An important question is how we deal with the fact that many clones will frequently have references to the same backing chunks at the same offset. In particular, ``make_writeable`` will generally create a clone diff --git a/doc/dev/osd_internals/snaps.rst b/doc/dev/osd_internals/snaps.rst index 5ebd0884a..736d0add5 100644 --- a/doc/dev/osd_internals/snaps.rst +++ b/doc/dev/osd_internals/snaps.rst @@ -23,12 +23,11 @@ The difference between *pool snaps* and *self managed snaps* from the OSD's point of view lies in whether the *SnapContext* comes to the OSD via the client's MOSDOp or via the most recent OSDMap. -See OSD::make_writeable +See :ref:`manifest.rst <osd-make-writeable>` for more information. Ondisk Structures ----------------- -Each object has in the PG collection a *head* object (or *snapdir*, which we -will come to shortly) and possibly a set of *clone* objects. +Each object has in the PG collection a *head* object and possibly a set of *clone* objects. Each hobject_t has a snap field. For the *head* (the only writeable version of an object), the snap field is set to CEPH_NOSNAP. For the *clones*, the snap field is set to the *seq* of the *SnapContext* at their creation. @@ -47,8 +46,12 @@ The *head* object contains a *SnapSet* encoded in an attribute, which tracks 3. Overlapping intervals between clones for tracking space usage 4. Clone size -If the *head* is deleted while there are still clones, a *snapdir* object -is created instead to house the *SnapSet*. +The *head* can't be deleted while there are still clones. Instead, it is +marked as whiteout (``object_info_t::FLAG_WHITEOUT``) in order to house the +*SnapSet* contained in it. +In that case, the *head* object no longer logically exists. + +See: should_whiteout() Additionally, the *object_info_t* on each clone includes a vector of snaps for which clone is defined. @@ -126,3 +129,111 @@ up to 8 prefixes need to be checked to determine all hobjects in a particular snap for a particular PG. Upon split, the prefixes to check on the parent are adjusted such that only the objects remaining in the PG will be visible. The children will immediately have the correct mapping. + +clone_overlap +------------- +Each SnapSet attached to the *head* object contains the overlapping intervals +between clone objects for optimizing space. +The overlapping intervals are stored within the ``clone_overlap`` map, each element in the +map stores the snap ID and the corresponding overlap with the next newest clone. + +See the following example using a 4 byte object: + ++--------+---------+ +| object | content | ++========+=========+ +| head | [AAAA] | ++--------+---------+ + +listsnaps output is as follows: + ++---------+-------+------+---------+ +| cloneid | snaps | size | overlap | ++=========+=======+======+=========+ +| head | - | 4 | | ++---------+-------+------+---------+ + +After taking a snapshot (ID 1) and re-writing the first 2 bytes of the object, +the clone created will overlap with the new *head* object in its last 2 bytes. + ++------------+---------+ +| object | content | ++============+=========+ +| head | [BBAA] | ++------------+---------+ +| clone ID 1 | [AAAA] | ++------------+---------+ + ++---------+-------+------+---------+ +| cloneid | snaps | size | overlap | ++=========+=======+======+=========+ +| 1 | 1 | 4 | [2~2] | ++---------+-------+------+---------+ +| head | - | 4 | | ++---------+-------+------+---------+ + +By taking another snapshot (ID 2) and this time re-writing only the first 1 byte of the object, +the clone created (ID 2) will overlap with the new *head* object in its last 3 bytes. +While the oldest clone (ID 1) will overlap with the newest clone in its last 2 bytes. + ++------------+---------+ +| object | content | ++============+=========+ +| head | [CBAA] | ++------------+---------+ +| clone ID 2 | [BBAA] | ++------------+---------+ +| clone ID 1 | [AAAA] | ++------------+---------+ + ++---------+-------+------+---------+ +| cloneid | snaps | size | overlap | ++=========+=======+======+=========+ +| 1 | 1 | 4 | [2~2] | ++---------+-------+------+---------+ +| 2 | 2 | 4 | [1~3] | ++---------+-------+------+---------+ +| head | - | 4 | | ++---------+-------+------+---------+ + +If the *head* object will be completely re-written by re-writing 4 bytes, +the only existing overlap that will remain will be between the two clones. + ++------------+---------+ +| object | content | ++============+=========+ +| head | [DDDD] | ++------------+---------+ +| clone ID 2 | [BBAA] | ++------------+---------+ +| clone ID 1 | [AAAA] | ++------------+---------+ + ++---------+-------+------+---------+ +| cloneid | snaps | size | overlap | ++=========+=======+======+=========+ +| 1 | 1 | 4 | [2~2] | ++---------+-------+------+---------+ +| 2 | 2 | 4 | | ++---------+-------+------+---------+ +| head | - | 4 | | ++---------+-------+------+---------+ + +Lastly, after the last snap (ID 2) is removed and snaptrim kicks in, +no overlapping intervals will remain: + ++------------+---------+ +| object | content | ++============+=========+ +| head | [DDDD] | ++------------+---------+ +| clone ID 1 | [AAAA] | ++------------+---------+ + ++---------+-------+------+---------+ +| cloneid | snaps | size | overlap | ++=========+=======+======+=========+ +| 1 | 1 | 4 | | ++---------+-------+------+---------+ +| head | - | 4 | | ++---------+-------+------+---------+ diff --git a/doc/dev/peering.rst b/doc/dev/peering.rst index 3960e14ca..97a319129 100644 --- a/doc/dev/peering.rst +++ b/doc/dev/peering.rst @@ -6,98 +6,93 @@ Concepts -------- *Peering* - the process of bringing all of the OSDs that store - a Placement Group (PG) into agreement about the state - of all of the objects (and their metadata) in that PG. - Note that agreeing on the state does not mean that - they all have the latest contents. + the process of bringing all of the OSDs that store a Placement Group (PG) + into agreement about the state of all of the objects in that PG and all of + the metadata associated with those objects. Two OSDs can agree on the state + of the objects in the placement group yet still may not necessarily have the + latest contents. *Acting set* - the ordered list of OSDs who are (or were as of some epoch) - responsible for a particular PG. + the ordered list of OSDs that are (or were as of some epoch) responsible for + a particular PG. *Up set* - the ordered list of OSDs responsible for a particular PG for - a particular epoch according to CRUSH. Normally this - is the same as the *acting set*, except when the *acting set* has been - explicitly overridden via *PG temp* in the OSDMap. + the ordered list of OSDs responsible for a particular PG for a particular + epoch, according to CRUSH. This is the same as the *acting set* except when + the *acting set* has been explicitly overridden via *PG temp* in the OSDMap. *PG temp* - a temporary placement group acting set used while backfilling the - primary osd. Let say acting is [0,1,2] and we are - active+clean. Something happens and acting is now [3,1,2]. osd 3 is - empty and can't serve reads although it is the primary. osd.3 will - see that and request a *PG temp* of [1,2,3] to the monitors using a - MOSDPGTemp message so that osd.1 temporarily becomes the - primary. It will select osd.3 as a backfill peer and continue to - serve reads and writes while osd.3 is backfilled. When backfilling - is complete, *PG temp* is discarded and the acting set changes back - to [3,1,2] and osd.3 becomes the primary. + a temporary placement group acting set that is used while backfilling the + primary OSD. Assume that the acting set is ``[0,1,2]`` and we are + ``active+clean``. Now assume that something happens and the acting set + becomes ``[2,1,2]``. Under these circumstances, OSD ``3`` is empty and can't + serve reads even though it is the primary. ``osd.3`` will respond by + requesting a *PG temp* of ``[1,2,3]`` to the monitors using a ``MOSDPGTemp`` + message, and ``osd.1`` will become the primary temporarily. ``osd.1`` will + select ``osd.3`` as a backfill peer and will continue to serve reads and + writes while ``osd.3`` is backfilled. When backfilling is complete, *PG + temp* is discarded. The acting set changes back to ``[3,1,2]`` and ``osd.3`` + becomes the primary. *current interval* or *past interval* - a sequence of OSD map epochs during which the *acting set* and *up - set* for particular PG do not change + a sequence of OSD map epochs during which the *acting set* and the *up + set* for particular PG do not change. *primary* - the (by convention first) member of the *acting set*, - who is responsible for coordination peering, and is - the only OSD that will accept client initiated - writes to objects in a placement group. + the member of the *acting set* that is responsible for coordination peering. + The only OSD that accepts client-initiated writes to the objects in a + placement group. By convention, the primary is the first member of the + *acting set*. *replica* - a non-primary OSD in the *acting set* for a placement group - (and who has been recognized as such and *activated* by the primary). + a non-primary OSD in the *acting set* of a placement group. A replica has + been recognized as a non-primary OSD and has been *activated* by the + primary. *stray* - an OSD who is not a member of the current *acting set*, but - has not yet been told that it can delete its copies of a - particular placement group. + an OSD that is not a member of the current *acting set* and has not yet been + told to delete its copies of a particular placement group. *recovery* - ensuring that copies of all of the objects in a PG - are on all of the OSDs in the *acting set*. Once - *peering* has been performed, the primary can start - accepting write operations, and *recovery* can proceed - in the background. + the process of ensuring that copies of all of the objects in a PG are on all + of the OSDs in the *acting set*. After *peering* has been performed, the + primary can begin accepting write operations and *recovery* can proceed in + the background. *PG info* - basic metadata about the PG's creation epoch, the version - for the most recent write to the PG, *last epoch started*, *last - epoch clean*, and the beginning of the *current interval*. Any - inter-OSD communication about PGs includes the *PG info*, such that - any OSD that knows a PG exists (or once existed) also has a lower - bound on *last epoch clean* or *last epoch started*. + basic metadata about the PG's creation epoch, the version for the most + recent write to the PG, the *last epoch started*, the *last epoch clean*, + and the beginning of the *current interval*. Any inter-OSD communication + about PGs includes the *PG info*, such that any OSD that knows a PG exists + (or once existed) and also has a lower bound on *last epoch clean* or *last + epoch started*. *PG log* - a list of recent updates made to objects in a PG. - Note that these logs can be truncated after all OSDs - in the *acting set* have acknowledged up to a certain - point. + a list of recent updates made to objects in a PG. These logs can be + truncated after all OSDs in the *acting set* have acknowledged the changes. *missing set* - Each OSD notes update log entries and if they imply updates to - the contents of an object, adds that object to a list of needed - updates. This list is called the *missing set* for that <OSD,PG>. + the set of all objects that have not yet had their contents updated to match + the log entries. The missing set is collated by each OSD. Missing sets are + kept track of on an ``<OSD,PG>`` basis. *Authoritative History* - a complete, and fully ordered set of operations that, if - performed, would bring an OSD's copy of a Placement Group - up to date. + a complete and fully-ordered set of operations that bring an OSD's copy of a + Placement Group up to date. *epoch* - a (monotonically increasing) OSD map version number + a (monotonically increasing) OSD map version number. *last epoch start* - the last epoch at which all nodes in the *acting set* - for a particular placement group agreed on an - *authoritative history*. At this point, *peering* is - deemed to have been successful. + the last epoch at which all nodes in the *acting set* for a given placement + group agreed on an *authoritative history*. At the start of the last epoch, + *peering* is deemed to have been successful. *up_thru* before a primary can successfully complete the *peering* process, it must inform a monitor that is alive through the current OSD map epoch by having the monitor set its *up_thru* in the osd - map. This helps peering ignore previous *acting sets* for which + map. This helps peering ignore previous *acting sets* for which peering never completed after certain sequences of failures, such as the second interval below: @@ -107,10 +102,9 @@ Concepts - *acting set* = [B] (B restarts, A does not) *last epoch clean* - the last epoch at which all nodes in the *acting set* - for a particular placement group were completely - up to date (both PG logs and object contents). - At this point, *recovery* is deemed to have been + the last epoch at which all nodes in the *acting set* for a given placement + group were completely up to date (this includes both the PG's logs and the + PG's object contents). At this point, *recovery* is deemed to have been completed. Description of the Peering Process diff --git a/doc/glossary.rst b/doc/glossary.rst index 4d7037684..978eae0c2 100644 --- a/doc/glossary.rst +++ b/doc/glossary.rst @@ -213,10 +213,24 @@ Ceph cluster. See :ref:`the "Cluster Map" section of the Architecture document<architecture_cluster_map>` for details. + Crimson + A next-generation OSD architecture whose core aim is the + reduction of latency costs incurred due to cross-core + communications. A re-design of the OSD that reduces lock + contention by reducing communication between shards in the data + path. Crimson improves upon the performance of classic Ceph + OSDs by eliminating reliance on thread pools. See `Crimson: + Next-generation Ceph OSD for Multi-core Scalability + <https://ceph.io/en/news/blog/2023/crimson-multi-core-scalability/>`_. + See the :ref:`Crimson developer + documentation<crimson_dev_doc>`. + CRUSH **C**\ontrolled **R**\eplication **U**\nder **S**\calable **H**\ashing. The algorithm that Ceph uses to compute object - storage locations. + storage locations. See `CRUSH: Controlled, Scalable, + Decentralized Placement of Replicated Data + <https://ceph.com/assets/pdfs/weil-crush-sc06.pdf>`_. CRUSH rule The CRUSH data placement rule that applies to a particular @@ -255,17 +269,31 @@ Hybrid OSD Refers to an OSD that has both HDD and SSD drives. + librados + An API that can be used to create a custom interface to a Ceph + storage cluster. ``librados`` makes it possible to interact + with Ceph Monitors and with OSDs. See :ref:`Introduction to + librados <librados-intro>`. See :ref:`librados (Python) + <librados-python>`. + LVM tags **L**\ogical **V**\olume **M**\anager tags. Extensible metadata for LVM volumes and groups. They are used to store Ceph-specific information about devices and its relationship with OSDs. - :ref:`MDS<cephfs_add_remote_mds>` + MDS The Ceph **M**\eta\ **D**\ata **S**\erver daemon. Also referred to as "ceph-mds". The Ceph metadata server daemon must be running in any Ceph cluster that runs the CephFS file system. - The MDS stores all filesystem metadata. + The MDS stores all filesystem metadata. :term:`Client`\s work + together with either a single MDS or a group of MDSes to + maintain a distributed metadata cache that is required by + CephFS. + + See :ref:`Deploying Metadata Servers<cephfs_add_remote_mds>`. + + See the :ref:`ceph-mds man page<ceph_mds_man>`. MGR The Ceph manager software, which collects all the state from @@ -274,12 +302,30 @@ :ref:`MON<arch_monitor>` The Ceph monitor software. + Monitor Store + The persistent storage that is used by the Monitor. This + includes the Monitor's RocksDB and all related files in + ``/var/lib/ceph``. + Node See :term:`Ceph Node`. Object Storage Device See :term:`OSD`. + OMAP + "object map". A key-value store (a database) that is used to + reduce the time it takes to read data from and to write to the + Ceph cluster. RGW bucket indexes are stored as OMAPs. + Erasure-coded pools cannot store RADOS OMAP data structures. + + Run the command ``ceph osd df`` to see your OMAPs. + + See Eleanor Cawthon's 2012 paper `A Distributed Key-Value Store + using Ceph + <https://ceph.io/assets/pdfs/CawthonKeyValueStore.pdf>`_ (17 + pages). + OSD Probably :term:`Ceph OSD`, but not necessarily. Sometimes (especially in older correspondence, and especially in @@ -291,18 +337,19 @@ mid-2010s to insist that "OSD" should refer to "Object Storage Device", so it is important to know which meaning is intended. - OSD fsid - This is a unique identifier used to identify an OSD. It is - found in the OSD path in a file called ``osd_fsid``. The - term ``fsid`` is used interchangeably with ``uuid`` + OSD FSID + The OSD fsid is a unique identifier that is used to identify an + OSD. It is found in the OSD path in a file called ``osd_fsid``. + The term ``FSID`` is used interchangeably with ``UUID``. - OSD id - The integer that defines an OSD. It is generated by the - monitors during the creation of each OSD. + OSD ID + The OSD id an integer unique to each OSD (each OSD has a unique + OSD ID). Each OSD id is generated by the monitors during the + creation of its associated OSD. - OSD uuid - This is the unique identifier of an OSD. This term is used - interchangeably with ``fsid`` + OSD UUID + The OSD UUID is the unique identifier of an OSD. This term is + used interchangeably with ``FSID``. Period In the context of :term:`RGW`, a period is the configuration diff --git a/doc/hardware-monitoring/index.rst b/doc/hardware-monitoring/index.rst new file mode 100644 index 000000000..dcafa8230 --- /dev/null +++ b/doc/hardware-monitoring/index.rst @@ -0,0 +1,183 @@ +.. _hardware-monitoring: + +Hardware monitoring +=================== + +`node-proxy` is the internal name to designate the running agent which inventories a machine's hardware, provides the different statuses and enable the operator to perform some actions. +It gathers details from the RedFish API, processes and pushes data to agent endpoint in the Ceph manager daemon. + +.. graphviz:: + + digraph G { + node [shape=record]; + mgr [label="{<mgr> ceph manager}"]; + dashboard [label="<dashboard> ceph dashboard"]; + agent [label="<agent> agent"]; + redfish [label="<redfish> redfish"]; + + agent -> redfish [label=" 1." color=green]; + agent -> mgr [label=" 2." color=orange]; + dashboard:dashboard -> mgr [label=" 3."color=lightgreen]; + node [shape=plaintext]; + legend [label=<<table border="0" cellborder="1" cellspacing="0"> + <tr><td bgcolor="lightgrey">Legend</td></tr> + <tr><td align="center">1. Collects data from redfish API</td></tr> + <tr><td align="left">2. Pushes data to ceph mgr</td></tr> + <tr><td align="left">3. Query ceph mgr</td></tr> + </table>>]; + } + + +Limitations +----------- + +For the time being, the `node-proxy` agent relies on the RedFish API. +It implies both `node-proxy` agent and `ceph-mgr` daemon need to be able to access the Out-Of-Band network to work. + + +Deploying the agent +------------------- + +| The first step is to provide the out of band management tool credentials. +| This can be done when adding the host with a service spec file: + +.. code-block:: bash + + # cat host.yml + --- + service_type: host + hostname: node-10 + addr: 10.10.10.10 + oob: + addr: 20.20.20.10 + username: admin + password: p@ssword + +Apply the spec: + +.. code-block:: bash + + # ceph orch apply -i host.yml + Added host 'node-10' with addr '10.10.10.10' + +Deploy the agent: + +.. code-block:: bash + + # ceph config set mgr mgr/cephadm/hw_monitoring true + +CLI +--- + +| **orch** **hardware** **status** [hostname] [--category CATEGORY] [--format plain | json] + +supported categories are: + +* summary (default) +* memory +* storage +* processors +* network +* power +* fans +* firmwares +* criticals + +Examples +******** + + +hardware health statuses summary +++++++++++++++++++++++++++++++++ + +.. code-block:: bash + + # ceph orch hardware status + +------------+---------+-----+-----+--------+-------+------+ + | HOST | STORAGE | CPU | NET | MEMORY | POWER | FANS | + +------------+---------+-----+-----+--------+-------+------+ + | node-10 | ok | ok | ok | ok | ok | ok | + +------------+---------+-----+-----+--------+-------+------+ + + +storage devices report +++++++++++++++++++++++ + +.. code-block:: bash + + # ceph orch hardware status IBM-Ceph-1 --category storage + +------------+--------------------------------------------------------+------------------+----------------+----------+----------------+--------+---------+ + | HOST | NAME | MODEL | SIZE | PROTOCOL | SN | STATUS | STATE | + +------------+--------------------------------------------------------+------------------+----------------+----------+----------------+--------+---------+ + | node-10 | Disk 8 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT99QLL | OK | Enabled | + | node-10 | Disk 10 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT98ZYX | OK | Enabled | + | node-10 | Disk 11 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT98ZWB | OK | Enabled | + | node-10 | Disk 9 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT98ZC9 | OK | Enabled | + | node-10 | Disk 3 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT9903Y | OK | Enabled | + | node-10 | Disk 1 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT9901E | OK | Enabled | + | node-10 | Disk 7 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT98ZQJ | OK | Enabled | + | node-10 | Disk 2 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT99PA2 | OK | Enabled | + | node-10 | Disk 4 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT99PFG | OK | Enabled | + | node-10 | Disk 0 in Backplane 0 of Storage Controller in Slot 2 | MZ7L33T8HBNAAD3 | 3840755981824 | SATA | S6M5NE0T800539 | OK | Enabled | + | node-10 | Disk 1 in Backplane 0 of Storage Controller in Slot 2 | MZ7L33T8HBNAAD3 | 3840755981824 | SATA | S6M5NE0T800554 | OK | Enabled | + | node-10 | Disk 6 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT98ZER | OK | Enabled | + | node-10 | Disk 0 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT98ZEJ | OK | Enabled | + | node-10 | Disk 5 in Backplane 1 of Storage Controller in Slot 2 | ST20000NM008D-3D | 20000588955136 | SATA | ZVT99QMH | OK | Enabled | + | node-10 | Disk 0 on AHCI Controller in SL 6 | MTFDDAV240TDU | 240057409536 | SATA | 22373BB1E0F8 | OK | Enabled | + | node-10 | Disk 1 on AHCI Controller in SL 6 | MTFDDAV240TDU | 240057409536 | SATA | 22373BB1E0D5 | OK | Enabled | + +------------+--------------------------------------------------------+------------------+----------------+----------+----------------+--------+---------+ + + + +firmwares details ++++++++++++++++++ + +.. code-block:: bash + + # ceph orch hardware status node-10 --category firmwares + +------------+----------------------------------------------------------------------------+--------------------------------------------------------------+----------------------+-------------+--------+ + | HOST | COMPONENT | NAME | DATE | VERSION | STATUS | + +------------+----------------------------------------------------------------------------+--------------------------------------------------------------+----------------------+-------------+--------+ + | node-10 | current-107649-7.03__raid.backplane.firmware.0 | Backplane 0 | 2022-12-05T00:00:00Z | 7.03 | OK | + + + ... omitted output ... + + + | node-10 | previous-25227-6.10.30.20__idrac.embedded.1-1 | Integrated Remote Access Controller | 00:00:00Z | 6.10.30.20 | OK | + +------------+----------------------------------------------------------------------------+--------------------------------------------------------------+----------------------+-------------+--------+ + + +hardware critical warnings report ++++++++++++++++++++++++++++++++++ + +.. code-block:: bash + + # ceph orch hardware status --category criticals + +------------+-----------+------------+----------+-----------------+ + | HOST | COMPONENT | NAME | STATUS | STATE | + +------------+-----------+------------+----------+-----------------+ + | node-10 | power | PS2 Status | critical | unplugged | + +------------+-----------+------------+----------+-----------------+ + + +Developpers +----------- + +.. py:currentmodule:: cephadm.agent +.. autoclass:: NodeProxyEndpoint +.. automethod:: NodeProxyEndpoint.__init__ +.. automethod:: NodeProxyEndpoint.oob +.. automethod:: NodeProxyEndpoint.data +.. automethod:: NodeProxyEndpoint.fullreport +.. automethod:: NodeProxyEndpoint.summary +.. automethod:: NodeProxyEndpoint.criticals +.. automethod:: NodeProxyEndpoint.memory +.. automethod:: NodeProxyEndpoint.storage +.. automethod:: NodeProxyEndpoint.network +.. automethod:: NodeProxyEndpoint.power +.. automethod:: NodeProxyEndpoint.processors +.. automethod:: NodeProxyEndpoint.fans +.. automethod:: NodeProxyEndpoint.firmwares +.. automethod:: NodeProxyEndpoint.led + diff --git a/doc/index.rst b/doc/index.rst index 8edc2cb09..20ce78838 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -118,8 +118,9 @@ about Ceph, see our `Architecture`_ section. governance foundation ceph-volume/index - releases/general - releases/index + Ceph Releases (general) <https://docs.ceph.com/en/latest/releases/general/> + Ceph Releases (index) <https://docs.ceph.com/en/latest/releases/> security/index + hardware-monitoring/index Glossary <glossary> Tracing <jaegertracing/index> diff --git a/doc/install/clone-source.rst b/doc/install/clone-source.rst index 2d09ef9eb..9dbf335f1 100644 --- a/doc/install/clone-source.rst +++ b/doc/install/clone-source.rst @@ -98,59 +98,7 @@ repository. Updating Submodules ------------------- -#. Determine whether your submodules are out of date: - - .. prompt:: bash $ - - git status - - A. If your submodules are up to date - If your submodules are up to date, the following console output will - appear: - - :: - - On branch main - Your branch is up to date with 'origin/main'. - - nothing to commit, working tree clean - - If you see this console output, then your submodules are up to date. - You do not need this procedure. - - - B. If your submodules are not up to date - If your submodules are not up to date, you will see a message that - includes a list of "untracked files". The example here shows such a - list, which was generated from a real situation in which the - submodules were no longer current. Your list of files will not be the - same as this list of files, but this list is provided as an example. - If in your case any untracked files are listed, then you should - continue to the next step of this procedure. - - :: - - On branch main - Your branch is up to date with 'origin/main'. - - Untracked files: - (use "git add <file>..." to include in what will be committed) - src/pybind/cephfs/build/ - src/pybind/cephfs/cephfs.c - src/pybind/cephfs/cephfs.egg-info/ - src/pybind/rados/build/ - src/pybind/rados/rados.c - src/pybind/rados/rados.egg-info/ - src/pybind/rbd/build/ - src/pybind/rbd/rbd.c - src/pybind/rbd/rbd.egg-info/ - src/pybind/rgw/build/ - src/pybind/rgw/rgw.c - src/pybind/rgw/rgw.egg-info/ - - nothing added to commit but untracked files present (use "git add" to track) - -#. If your submodules are out of date, run the following commands: +If your submodules are out of date, run the following commands: .. prompt:: bash $ @@ -158,24 +106,10 @@ Updating Submodules git clean -fdx git submodule foreach git clean -fdx - If you still have problems with a submodule directory, use ``rm -rf - [directory name]`` to remove the directory. Then run ``git submodule update - --init --recursive`` again. - -#. Run ``git status`` again: - - .. prompt:: bash $ - - git status - - Your submodules are up to date if you see the following message: - - :: +If you still have problems with a submodule directory, use ``rm -rf [directory +name]`` to remove the directory. Then run ``git submodule update --init +--recursive --progress`` again. - On branch main - Your branch is up to date with 'origin/main'. - - nothing to commit, working tree clean Choose a Branch =============== diff --git a/doc/install/get-packages.rst b/doc/install/get-packages.rst index d6edc177b..ca7168310 100644 --- a/doc/install/get-packages.rst +++ b/doc/install/get-packages.rst @@ -251,6 +251,17 @@ openSUSE Tumbleweed The newest major release of Ceph is already available through the normal Tumbleweed repositories. There's no need to add another package repository manually. +openEuler +^^^^^^^^^ + +There are two major versions supported in normal openEuler repositories. They are ceph 12.2.8 in openEuler-20.03-LTS series and ceph 16.2.7 in openEuler-22.03-LTS series. There’s no need to add another package repository manually. +You can install ceph just by executing the following: + +.. prompt:: bash $ + + sudo yum -y install ceph + +Also you can download packages manually from https://repo.openeuler.org/openEuler-{release}/everything/{arch}/Packages/. Ceph Development Packages ------------------------- diff --git a/doc/install/index.rst b/doc/install/index.rst index 58ef92a27..7076eb355 100644 --- a/doc/install/index.rst +++ b/doc/install/index.rst @@ -4,14 +4,13 @@ Installing Ceph =============== -There are multiple ways to install Ceph. +There are multiple ways to install Ceph. Recommended methods ~~~~~~~~~~~~~~~~~~~ -:ref:`Cephadm <cephadm_deploying_new_cluster>` installs and manages a Ceph -cluster that uses containers and systemd and is tightly integrated with the CLI -and dashboard GUI. +:ref:`Cephadm <cephadm_deploying_new_cluster>` is a tool that can be used to +install and manage a Ceph cluster. * cephadm supports only Octopus and newer releases. * cephadm is fully integrated with the orchestration API and fully supports the @@ -59,6 +58,8 @@ tool that can be used to quickly deploy clusters. It is deprecated. `github.com/openstack/puppet-ceph <https://github.com/openstack/puppet-ceph>`_ installs Ceph via Puppet. +`OpenNebula HCI clusters <https://docs.opennebula.io/stable/provision_clusters/hci_clusters/overview.html>`_ deploys Ceph on various cloud platforms. + Ceph can also be :ref:`installed manually <install-manual>`. diff --git a/doc/install/manual-deployment.rst b/doc/install/manual-deployment.rst index 6716ecb5b..0eb759de7 100644 --- a/doc/install/manual-deployment.rst +++ b/doc/install/manual-deployment.rst @@ -461,6 +461,52 @@ In the below instructions, ``{id}`` is an arbitrary name, such as the hostname o #. Now you are ready to `create a Ceph file system`_. +Manually Installing RADOSGW +=========================== + +For a more involved discussion of the procedure presented here, see `this +thread on the ceph-users mailing list +<https://lists.ceph.io/hyperkitty/list/ceph-users@ceph.io/message/LB3YRIKAPOHXYCW7MKLVUJPYWYRQVARU/>`_. + +#. Install ``radosgw`` packages on the nodes that will be the RGW nodes. + +#. From a monitor or from a node with admin privileges, run a command of the + following form: + + .. prompt:: bash # + + ceph auth get-or-create client.short-hostname-of-rgw mon 'allow rw' osd 'allow rwx' + +#. On one of the RGW nodes, do the following: + + a. Create a ``ceph-user``-owned directory. For example: + + .. prompt:: bash # + + install -d -o ceph -g ceph /var/lib/ceph/radosgw/ceph-$(hostname -s) + + b. Enter the directory just created and create a ``keyring`` file: + + .. prompt:: bash # + + touch /var/lib/ceph/radosgw/ceph-$(hostname -s)/keyring + + Use a command similar to this one to put the key from the earlier ``ceph + auth get-or-create`` step in the ``keyring`` file. Use your preferred + editor: + + .. prompt:: bash # + + $EDITOR /var/lib/ceph/radosgw/ceph-$(hostname -s)/keyring + + c. Repeat these steps on every RGW node. + +#. Start the RADOSGW service by running the following command: + + .. prompt:: bash # + + systemctl start ceph-radosgw@$(hostname -s).service + Summary ======= diff --git a/doc/man/8/ceph-mds.rst b/doc/man/8/ceph-mds.rst index fd8fc800e..c68d3d110 100644 --- a/doc/man/8/ceph-mds.rst +++ b/doc/man/8/ceph-mds.rst @@ -1,5 +1,7 @@ :orphan: +.. _ceph_mds_man: + ========================================= ceph-mds -- ceph metadata server daemon ========================================= diff --git a/doc/man/8/ceph-objectstore-tool.rst b/doc/man/8/ceph-objectstore-tool.rst index de1304733..9b5436f24 100644 --- a/doc/man/8/ceph-objectstore-tool.rst +++ b/doc/man/8/ceph-objectstore-tool.rst @@ -244,45 +244,56 @@ Procedure Manipulating the Object Map Key ------------------------------- -Use the **ceph-objectstore-tool** utility to change the object map (OMAP) key. You need to provide the data path, the placement group identifier (PG ID), the object, and the key in the OMAP. -Note +Use the **ceph-objectstore-tool** utility to change the object map (OMAP) key. +Provide the data path, the placement group identifier (PG ID), the object, and +the key in the OMAP. Prerequisites +^^^^^^^^^^^^^ * Having root access to the Ceph OSD node. * Stopping the ceph-osd daemon. -Procedure +Commands +^^^^^^^^ + +Run the commands in this section as ``root`` on an OSD node. + +* **Getting the object map key** - Get the object map key: + Syntax: - Syntax:: + .. code-block:: ini - ceph-objectstore-tool --data-path $PATH_TO_OSD --pgid $PG_ID $OBJECT get-omap $KEY > $OBJECT_MAP_FILE_NAME + ceph-objectstore-tool --data-path $PATH_TO_OSD --pgid $PG_ID $OBJECT get-omap $KEY > $OBJECT_MAP_FILE_NAME Example:: - [root@osd ~]# ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0 --pgid 0.1c '{"oid":"zone_info.default","key":"","snapid":-2,"hash":235010478,"max":0,"pool":11,"namespace":""}' get-omap "" > zone_info.default.omap.txt + ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0 --pgid 0.1c '{"oid":"zone_info.default","key":"","snapid":-2,"hash":235010478,"max":0,"pool":11,"namespace":""}' get-omap "" > zone_info.default.omap.txt - Set the object map key: +* **Setting the object map key** - Syntax:: + Syntax: + + .. code-block:: ini - ceph-objectstore-tool --data-path $PATH_TO_OSD --pgid $PG_ID $OBJECT set-omap $KEY < $OBJECT_MAP_FILE_NAME + ceph-objectstore-tool --data-path $PATH_TO_OSD --pgid $PG_ID $OBJECT set-omap $KEY < $OBJECT_MAP_FILE_NAME Example:: - [root@osd ~]# ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0 --pgid 0.1c '{"oid":"zone_info.default","key":"","snapid":-2,"hash":235010478,"max":0,"pool":11,"namespace":""}' set-omap "" < zone_info.default.omap.txt + ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0 --pgid 0.1c '{"oid":"zone_info.default","key":"","snapid":-2,"hash":235010478,"max":0,"pool":11,"namespace":""}' set-omap "" < zone_info.default.omap.txt - Remove the object map key: +* **Removing the object map key** - Syntax:: + Syntax: + + .. code-block:: ini - ceph-objectstore-tool --data-path $PATH_TO_OSD --pgid $PG_ID $OBJECT rm-omap $KEY + ceph-objectstore-tool --data-path $PATH_TO_OSD --pgid $PG_ID $OBJECT rm-omap $KEY Example:: - [root@osd ~]# ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0 --pgid 0.1c '{"oid":"zone_info.default","key":"","snapid":-2,"hash":235010478,"max":0,"pool":11,"namespace":""}' rm-omap "" + ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-0 --pgid 0.1c '{"oid":"zone_info.default","key":"","snapid":-2,"hash":235010478,"max":0,"pool":11,"namespace":""}' rm-omap "" Listing an Object's Attributes diff --git a/doc/man/8/ceph-osd.rst b/doc/man/8/ceph-osd.rst index 5b631eeff..4b038437b 100644 --- a/doc/man/8/ceph-osd.rst +++ b/doc/man/8/ceph-osd.rst @@ -18,14 +18,16 @@ Synopsis Description =========== -**ceph-osd** is the object storage daemon for the Ceph distributed file -system. It is responsible for storing objects on a local file system -and providing access to them over the network. - -The datapath argument should be a directory on a xfs file system -where the object data resides. The journal is optional, and is only -useful performance-wise when it resides on a different disk than -datapath with low latency (ideally, an NVRAM device). +**ceph-osd** is the **o**\bject **s**\torage **d**\aemon for the Ceph +distributed file system. It manages data on local storage with redundancy and +provides access to that data over the network. + +For Filestore-backed clusters, the argument of the ``--osd-data datapath`` +option (which is ``datapath`` in this example) should be a directory on an XFS +file system where the object data resides. The journal is optional. The journal +improves performance only when it resides on a different disk than the disk +specified by ``datapath`` . The storage medium on which the journal is stored +should be a low-latency medium (ideally, an SSD device). Options diff --git a/doc/man/8/cephfs-shell.rst b/doc/man/8/cephfs-shell.rst index a615dab98..974ba37d9 100644 --- a/doc/man/8/cephfs-shell.rst +++ b/doc/man/8/cephfs-shell.rst @@ -56,7 +56,7 @@ Options .. code:: bash - [build]$ python3 -m venv venv && source venv/bin/activate && pip3 install cmd2 + [build]$ python3 -m venv venv && source venv/bin/activate && pip3 install cmd2 colorama [build]$ source vstart_environment.sh && source venv/bin/activate && python3 ../src/tools/cephfs/shell/cephfs-shell Commands diff --git a/doc/man/8/mount.ceph.rst b/doc/man/8/mount.ceph.rst index fbe8790dd..e45030cd0 100644 --- a/doc/man/8/mount.ceph.rst +++ b/doc/man/8/mount.ceph.rst @@ -199,6 +199,50 @@ Advanced option is enabled, a namespace operation may complete before the MDS replies, if it has sufficient capabilities to do so. +:command:`crush_location=x` + Specify the location of the client in terms of CRUSH hierarchy (since 5.8). + This is a set of key-value pairs separated from each other by '|', with + keys separated from values by ':'. Note that '|' may need to be quoted + or escaped to avoid it being interpreted as a pipe by the shell. The key + is the bucket type name (e.g. rack, datacenter or region with default + bucket types) and the value is the bucket name. For example, to indicate + that the client is local to rack "myrack", data center "mydc" and region + "myregion":: + + crush_location=rack:myrack|datacenter:mydc|region:myregion + + Each key-value pair stands on its own: "myrack" doesn't need to reside in + "mydc", which in turn doesn't need to reside in "myregion". The location + is not a path to the root of the hierarchy but rather a set of nodes that + are matched independently. "Multipath" locations are supported, so it is + possible to indicate locality for multiple parallel hierarchies:: + + crush_location=rack:myrack1|rack:myrack2|datacenter:mydc + + +:command:`read_from_replica=<no|balance|localize>` + - ``no``: Disable replica reads, always pick the primary OSD (since 5.8, default). + + - ``balance``: When a replicated pool receives a read request, pick a random + OSD from the PG's acting set to serve it (since 5.8). + + This mode is safe for general use only since Octopus (i.e. after "ceph osd + require-osd-release octopus"). Otherwise it should be limited to read-only + workloads such as snapshots. + + - ``localize``: When a replicated pool receives a read request, pick the most + local OSD to serve it (since 5.8). The locality metric is calculated against + the location of the client given with crush_location; a match with the + lowest-valued bucket type wins. For example, an OSD in a matching rack + is closer than an OSD in a matching data center, which in turn is closer + than an OSD in a matching region. + + This mode is safe for general use only since Octopus (i.e. after "ceph osd + require-osd-release octopus"). Otherwise it should be limited to read-only + workloads such as snapshots. + + + Examples ======== diff --git a/doc/man/8/rbd.rst b/doc/man/8/rbd.rst index 59e346209..506a7bb3e 100644 --- a/doc/man/8/rbd.rst +++ b/doc/man/8/rbd.rst @@ -333,7 +333,7 @@ Commands be specified. :command:`flatten` [--encryption-format *encryption-format* --encryption-passphrase-file *passphrase-file*]... *image-spec* - If image is a clone, copy all shared blocks from the parent snapshot and + If the image is a clone, copy all shared blocks from the parent snapshot and make the child independent of the parent, severing the link between parent snap and child. The parent snapshot can be unprotected and deleted if it has no further dependent clones. @@ -390,7 +390,7 @@ Commands Set metadata key with the value. They will displayed in `image-meta list`. :command:`import` [--export-format *format (1 or 2)*] [--image-format *format-id*] [--object-size *size-in-B/K/M*] [--stripe-unit *size-in-B/K/M* --stripe-count *num*] [--image-feature *feature-name*]... [--image-shared] *src-path* [*image-spec*] - Create a new image and imports its data from path (use - for + Create a new image and import its data from path (use - for stdin). The import operation will try to create sparse rbd images if possible. For import from stdin, the sparsification unit is the data block size of the destination image (object size). @@ -402,14 +402,14 @@ Commands of image, but also the snapshots and other properties, such as image_order, features. :command:`import-diff` *src-path* *image-spec* - Import an incremental diff of an image and applies it to the current image. If the diff + Import an incremental diff of an image and apply it to the current image. If the diff was generated relative to a start snapshot, we verify that snapshot already exists before continuing. If there was an end snapshot we verify it does not already exist before applying the changes, and create the snapshot when we are done. :command:`info` *image-spec* | *snap-spec* Will dump information (such as size and object size) about a specific rbd image. - If image is a clone, information about its parent is also displayed. + If the image is a clone, information about its parent is also displayed. If a snapshot is specified, whether it is protected is shown as well. :command:`journal client disconnect` *journal-spec* @@ -472,7 +472,7 @@ Commands the destination image are lost. :command:`migration commit` *image-spec* - Commit image migration. This step is run after a successful migration + Commit image migration. This step is run after successful migration prepare and migration execute steps and removes the source image data. :command:`migration execute` *image-spec* @@ -499,14 +499,12 @@ Commands :command:`mirror image disable` [--force] *image-spec* Disable RBD mirroring for an image. If the mirroring is configured in ``image`` mode for the image's pool, then it - can be explicitly disabled mirroring for each image within - the pool. + must be disabled for each image individually. :command:`mirror image enable` *image-spec* *mode* Enable RBD mirroring for an image. If the mirroring is configured in ``image`` mode for the image's pool, then it - can be explicitly enabled mirroring for each image within - the pool. + must be enabled for each image individually. The mirror image mode can either be ``journal`` (default) or ``snapshot``. The ``journal`` mode requires the RBD journaling @@ -523,7 +521,7 @@ Commands :command:`mirror pool demote` [*pool-name*] Demote all primary images within a pool to non-primary. - Every mirroring enabled image will demoted in the pool. + Every mirror-enabled image in the pool will be demoted. :command:`mirror pool disable` [*pool-name*] Disable RBD mirroring by default within a pool. When mirroring @@ -551,7 +549,7 @@ Commands The default for *remote client name* is "client.admin". - This requires mirroring mode is enabled. + This requires mirroring to be enabled on the pool. :command:`mirror pool peer remove` [*pool-name*] *uuid* Remove a mirroring peer from a pool. The peer uuid is available @@ -564,12 +562,12 @@ Commands :command:`mirror pool promote` [--force] [*pool-name*] Promote all non-primary images within a pool to primary. - Every mirroring enabled image will promoted in the pool. + Every mirror-enabled image in the pool will be promoted. :command:`mirror pool status` [--verbose] [*pool-name*] Show status for all mirrored images in the pool. - With --verbose, also show additionally output status - details for every mirroring image in the pool. + With ``--verbose``, show additional output status + details for every mirror-enabled image in the pool. :command:`mirror snapshot schedule add` [-p | --pool *pool*] [--namespace *namespace*] [--image *image*] *interval* [*start-time*] Add mirror snapshot schedule. @@ -603,7 +601,7 @@ Commands specified to rebuild an invalid object map for a snapshot. :command:`pool init` [*pool-name*] [--force] - Initialize pool for use by RBD. Newly created pools must initialized + Initialize pool for use by RBD. Newly created pools must be initialized prior to use. :command:`resize` (-s | --size *size-in-M/G/T*) [--allow-shrink] [--encryption-format *encryption-format* --encryption-passphrase-file *passphrase-file*]... *image-spec* @@ -615,7 +613,7 @@ Commands snapshots, this fails and nothing is deleted. :command:`snap create` *snap-spec* - Create a new snapshot. Requires the snapshot name parameter specified. + Create a new snapshot. Requires the snapshot name parameter to be specified. :command:`snap limit clear` *image-spec* Remove any previously set limit on the number of snapshots allowed on @@ -625,7 +623,7 @@ Commands Set a limit for the number of snapshots allowed on an image. :command:`snap ls` *image-spec* - Dump the list of snapshots inside a specific image. + Dump the list of snapshots of a specific image. :command:`snap protect` *snap-spec* Protect a snapshot from deletion, so that clones can be made of it @@ -668,9 +666,11 @@ Commands :command:`trash ls` [*pool-name*] List all entries from trash. -:command:`trash mv` *image-spec* +:command:`trash mv` [--expires-at <expires-at>] *image-spec* Move an image to the trash. Images, even ones actively in-use by - clones, can be moved to the trash and deleted at a later time. + clones, can be moved to the trash and deleted at a later time. Use + ``--expires-at`` to set the expiration time of an image after which + it's allowed to be removed. :command:`trash purge` [*pool-name*] Remove all expired images from trash. @@ -678,10 +678,10 @@ Commands :command:`trash restore` *image-id* Restore an image from trash. -:command:`trash rm` *image-id* - Delete an image from trash. If image deferment time has not expired - you can not removed it unless use force. But an actively in-use by clones - or has snapshots can not be removed. +:command:`trash rm` [--force] *image-id* + Delete an image from trash. If the image deferment time has not expired + it can be removed using ``--force``. An image that is actively in-use by clones + or has snapshots cannot be removed. :command:`trash purge schedule add` [-p | --pool *pool*] [--namespace *namespace*] *interval* [*start-time*] Add trash purge schedule. diff --git a/doc/mgr/nfs.rst b/doc/mgr/nfs.rst index 7e6637684..746ab4247 100644 --- a/doc/mgr/nfs.rst +++ b/doc/mgr/nfs.rst @@ -568,6 +568,9 @@ If the NFS service is running on a non-standard port number: .. note:: Only NFS v4.0+ is supported. +.. note:: As of this writing (01 Jan 2024), no version of Microsoft Windows + supports mouting an NFS v4.x export natively. + Troubleshooting =============== diff --git a/doc/mgr/zabbix.rst b/doc/mgr/zabbix.rst index f044b7a79..e7287af55 100644 --- a/doc/mgr/zabbix.rst +++ b/doc/mgr/zabbix.rst @@ -151,3 +151,96 @@ ceph-mgr and check the logs. With logging set to debug for the manager the module will print various logging lines prefixed with *mgr[zabbix]* for easy filtering. + +Installing zabbix-agent 2 +------------------------- + +*The procedures that explain the installation of Zabbix 2 were developed by John Jasen.* + +Follow the instructions in the sections :ref:`mgr_zabbix_2_nodes`, +:ref:`mgr_zabbix_2_cluster`, and :ref:`mgr_zabbix_2_server` to install a Zabbix +server to monitor your Ceph cluster. + +.. _mgr_zabbix_2_nodes: + +Ceph MGR Nodes +^^^^^^^^^^^^^^ + +#. Download an appropriate Zabbix release from https://www.zabbix.com/download + or install a package from the Zabbix repositories. +#. Use your package manager to remove any other Zabbix agents. +#. Install ``zabbix-agent 2`` using the instructions at + https://www.zabbix.com/download. +#. Edit ``/etc/zabbix/zabbix-agent2.conf``. Add your Zabbix monitoring servers + and your localhost to the ``Servers`` line of ``zabbix-agent2.conf``:: + + Server=127.0.0.1,zabbix2.example.com,zabbix1.example.com +#. Start or restart the ``zabbix-agent2`` agent: + + .. prompt:: bash # + + systemctl restart zabbix-agent2 + +.. _mgr_zabbix_2_cluster: + +Ceph Cluster +^^^^^^^^^^^^ + +#. Enable the ``restful`` module: + + .. prompt:: bash # + + ceph mgr module enable restful + +#. Generate a self-signed certificate. This step is optional: + + .. prompt:: bash # + + restful create-self-signed-cert + +#. Create an API user called ``zabbix-monitor``: + + .. prompt:: bash # + + ceph restful create-key zabbix-monitor + + The output of this command, an API key, will look something like this:: + + a4bb2019-XXXX-YYYY-ZZZZ-abcdefghij + +#. Save the generated API key. It will be necessary later. +#. Test API access by using ``zabbix-get``: + + .. note:: This step is optional. + + + .. prompt:: bash # + + zabbix_get -s 127.0.0.1 -k ceph.ping["${CEPH.CONNSTRING}","${CEPH.USER}","{CEPH.API.KEY}" + + Example: + + .. prompt:: bash # + + zabbix_get -s 127.0.0.1 -k ceph.ping["https://localhost:8003","zabbix-monitor","a4bb2019-XXXX-YYYY-ZZZZ-abcdefghij"] + + .. note:: You may need to install ``zabbix-get`` via your package manager. + +.. _mgr_zabbix_2_server: + +Zabbix Server +^^^^^^^^^^^^^ + +#. Create a host for the Ceph monitoring servers. +#. Add the template ``Ceph by Zabbix agent 2`` to the host. +#. Inform the host of the keys: + + #. Go to “Macros” on the host. + #. Show “Inherited and host macros”. + #. Change ``${CEPH.API.KEY}`` and ``${CEPH.USER}`` to the values provided + under ``ceph restful create-key``, above. Example:: + + {$CEPH.API.KEY} a4bb2019-XXXX-YYYY-ZZZZ-abcdefghij + {$CEPH.USER} zabbix-monitor + +#. Update the host. Within a few cycles, data will populate the server. diff --git a/doc/monitoring/index.rst b/doc/monitoring/index.rst index 2bf2aca90..3f0bb2919 100644 --- a/doc/monitoring/index.rst +++ b/doc/monitoring/index.rst @@ -470,5 +470,8 @@ Useful queries rate(ceph_rbd_read_latency_sum[30s]) / rate(ceph_rbd_read_latency_count[30s]) * on (instance) group_left (ceph_daemon) ceph_rgw_metadata +Hardware monitoring +=================== +See :ref:`hardware-monitoring` diff --git a/doc/rados/api/librados-intro.rst b/doc/rados/api/librados-intro.rst index 5174188b4..b863efc9e 100644 --- a/doc/rados/api/librados-intro.rst +++ b/doc/rados/api/librados-intro.rst @@ -1,3 +1,5 @@ +.. _librados-intro: + ========================== Introduction to librados ========================== diff --git a/doc/rados/api/python.rst b/doc/rados/api/python.rst index 346653a3d..60bdfa4da 100644 --- a/doc/rados/api/python.rst +++ b/doc/rados/api/python.rst @@ -1,3 +1,5 @@ +.. _librados-python: + =================== Librados (Python) =================== diff --git a/doc/rados/configuration/bluestore-config-ref.rst b/doc/rados/configuration/bluestore-config-ref.rst index 3707be1aa..4c63c1043 100644 --- a/doc/rados/configuration/bluestore-config-ref.rst +++ b/doc/rados/configuration/bluestore-config-ref.rst @@ -358,7 +358,7 @@ OSD and run the following command: ceph-bluestore-tool \ --path <data path> \ - --sharding="m(3) p(3,0-12) o(3,0-13)=block_cache={type=binned_lru} l p" \ + --sharding="m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} l p" \ reshard .. confval:: bluestore_rocksdb_cf diff --git a/doc/rados/configuration/common.rst b/doc/rados/configuration/common.rst index 0b373f469..c397f4e52 100644 --- a/doc/rados/configuration/common.rst +++ b/doc/rados/configuration/common.rst @@ -123,11 +123,10 @@ OSD host, run the following commands: ssh {osd-host} sudo mkdir /var/lib/ceph/osd/ceph-{osd-number} -The ``osd_data`` path ought to lead to a mount point that has mounted on it a -device that is distinct from the device that contains the operating system and -the daemons. To use a device distinct from the device that contains the +The ``osd_data`` path must lead to a device that is not shared with the +operating system. To use a device other than the device that contains the operating system and the daemons, prepare it for use with Ceph and mount it on -the directory you just created by running the following commands: +the directory you just created by running commands of the following form: .. prompt:: bash $ diff --git a/doc/rados/configuration/osd-config-ref.rst b/doc/rados/configuration/osd-config-ref.rst index 060121200..5d59cb9f6 100644 --- a/doc/rados/configuration/osd-config-ref.rst +++ b/doc/rados/configuration/osd-config-ref.rst @@ -151,7 +151,7 @@ generates a catalog of all objects in each placement group and compares each primary object to its replicas, ensuring that no objects are missing or mismatched. Light scrubbing checks the object size and attributes, and is usually done daily. Deep scrubbing reads the data and uses checksums to ensure -data integrity, and is usually done weekly. The freqeuncies of both light +data integrity, and is usually done weekly. The frequencies of both light scrubbing and deep scrubbing are determined by the cluster's configuration, which is fully under your control and subject to the settings explained below in this section. diff --git a/doc/rados/configuration/pool-pg-config-ref.rst b/doc/rados/configuration/pool-pg-config-ref.rst index 902c80346..c3a25a3e7 100644 --- a/doc/rados/configuration/pool-pg-config-ref.rst +++ b/doc/rados/configuration/pool-pg-config-ref.rst @@ -6,12 +6,41 @@ .. index:: pools; configuration -Ceph uses default values to determine how many placement groups (PGs) will be -assigned to each pool. We recommend overriding some of the defaults. -Specifically, we recommend setting a pool's replica size and overriding the -default number of placement groups. You can set these values when running -`pool`_ commands. You can also override the defaults by adding new ones in the -``[global]`` section of your Ceph configuration file. +The number of placement groups that the CRUSH algorithm assigns to each pool is +determined by the values of variables in the centralized configuration database +in the monitor cluster. + +Both containerized deployments of Ceph (deployments made using ``cephadm`` or +Rook) and non-containerized deployments of Ceph rely on the values in the +central configuration database in the monitor cluster to assign placement +groups to pools. + +Example Commands +---------------- + +To see the value of the variable that governs the number of placement groups in a given pool, run a command of the following form: + +.. prompt:: bash + + ceph config get osd osd_pool_default_pg_num + +To set the value of the variable that governs the number of placement groups in a given pool, run a command of the following form: + +.. prompt:: bash + + ceph config set osd osd_pool_default_pg_num + +Manual Tuning +------------- +In some cases, it might be advisable to override some of the defaults. For +example, you might determine that it is wise to set a pool's replica size and +to override the default number of placement groups in the pool. You can set +these values when running `pool`_ commands. + +See Also +-------- + +See :ref:`pg-autoscaler`. .. literalinclude:: pool-pg.conf diff --git a/doc/rados/operations/add-or-rm-mons.rst b/doc/rados/operations/add-or-rm-mons.rst index 3688bb798..e97c0b94d 100644 --- a/doc/rados/operations/add-or-rm-mons.rst +++ b/doc/rados/operations/add-or-rm-mons.rst @@ -344,12 +344,13 @@ addresses, repeat this process. Changing a Monitor's IP address (Advanced Method) ------------------------------------------------- -There are cases in which the method outlined in :ref"`<Changing a Monitor's IP -Address (Preferred Method)> operations_add_or_rm_mons_changing_mon_ip` cannot -be used. For example, it might be necessary to move the cluster's monitors to a -different network, to a different part of the datacenter, or to a different -datacenter altogether. It is still possible to change the monitors' IP -addresses, but a different method must be used. +There are cases in which the method outlined in +:ref:`operations_add_or_rm_mons_changing_mon_ip` cannot be used. For example, +it might be necessary to move the cluster's monitors to a different network, to +a different part of the datacenter, or to a different datacenter altogether. It +is still possible to change the monitors' IP addresses, but a different method +must be used. + For such cases, a new monitor map with updated IP addresses for every monitor in the cluster must be generated and injected on each monitor. Although this @@ -357,11 +358,11 @@ method is not particularly easy, such a major migration is unlikely to be a routine task. As stated at the beginning of this section, existing monitors are not supposed to change their IP addresses. -Continue with the monitor configuration in the example from :ref"`<Changing a -Monitor's IP Address (Preferred Method)> -operations_add_or_rm_mons_changing_mon_ip` . Suppose that all of the monitors -are to be moved from the ``10.0.0.x`` range to the ``10.1.0.x`` range, and that -these networks are unable to communicate. Carry out the following procedure: +Continue with the monitor configuration in the example from +:ref:`operations_add_or_rm_mons_changing_mon_ip`. Suppose that all of the +monitors are to be moved from the ``10.0.0.x`` range to the ``10.1.0.x`` range, +and that these networks are unable to communicate. Carry out the following +procedure: #. Retrieve the monitor map (``{tmp}`` is the path to the retrieved monitor map, and ``{filename}`` is the name of the file that contains the retrieved @@ -448,7 +449,135 @@ and inject the modified monitor map into each new monitor. Migration to the new location is now complete. The monitors should operate successfully. +Using cephadm to change the public network +========================================== + +Overview +-------- + +The procedure in this overview section provides only the broad outlines of +using ``cephadm`` to change the public network. + +#. Create backups of all keyrings, configuration files, and the current monmap. + +#. Stop the cluster and disable ``ceph.target`` to prevent the daemons from + starting. + +#. Move the servers and power them on. + +#. Change the network setup as desired. + + +Example Procedure +----------------- + +.. note:: In this procedure, the "old network" has addresses of the form + ``10.10.10.0/24`` and the "new network" has addresses of the form + ``192.168.160.0/24``. + +#. Enter the shell of the first monitor: + + .. prompt:: bash # + + cephadm shell --name mon.reef1 + +#. Extract the current monmap from ``mon.reef1``: + + .. prompt:: bash # + + ceph-mon -i reef1 --extract-monmap monmap + +#. Print the content of the monmap: + + .. prompt:: bash # + + monmaptool --print monmap + + :: + + monmaptool: monmap file monmap + epoch 5 + fsid 2851404a-d09a-11ee-9aaa-fa163e2de51a + last_changed 2024-02-21T09:32:18.292040+0000 + created 2024-02-21T09:18:27.136371+0000 + min_mon_release 18 (reef) + election_strategy: 1 + 0: [v2:10.10.10.11:3300/0,v1:10.10.10.11:6789/0] mon.reef1 + 1: [v2:10.10.10.12:3300/0,v1:10.10.10.12:6789/0] mon.reef2 + 2: [v2:10.10.10.13:3300/0,v1:10.10.10.13:6789/0] mon.reef3 + +#. Remove monitors with old addresses: + + .. prompt:: bash # + + monmaptool --rm reef1 --rm reef2 --rm reef3 monmap + +#. Add monitors with new addresses: + + .. prompt:: bash # + + monmaptool --addv reef1 [v2:192.168.160.11:3300/0,v1:192.168.160.11:6789/0] --addv reef2 [v2:192.168.160.12:3300/0,v1:192.168.160.12:6789/0] --addv reef3 [v2:192.168.160.13:3300/0,v1:192.168.160.13:6789/0] monmap + +#. Verify that the changes to the monmap have been made successfully: + + .. prompt:: bash # + + monmaptool --print monmap + + :: + + monmaptool: monmap file monmap + epoch 4 + fsid 2851404a-d09a-11ee-9aaa-fa163e2de51a + last_changed 2024-02-21T09:32:18.292040+0000 + created 2024-02-21T09:18:27.136371+0000 + min_mon_release 18 (reef) + election_strategy: 1 + 0: [v2:192.168.160.11:3300/0,v1:192.168.160.11:6789/0] mon.reef1 + 1: [v2:192.168.160.12:3300/0,v1:192.168.160.12:6789/0] mon.reef2 + 2: [v2:192.168.160.13:3300/0,v1:192.168.160.13:6789/0] mon.reef3 + +#. Inject the new monmap into the Ceph cluster: + + .. prompt:: bash # + + ceph-mon -i reef1 --inject-monmap monmap + +#. Repeat the steps above for all other monitors in the cluster. + +#. Update ``/var/lib/ceph/{FSID}/mon.{MON}/config``. + +#. Start the monitors. + +#. Update the ceph ``public_network``: + + .. prompt:: bash # + + ceph config set mon public_network 192.168.160.0/24 + +#. Update the configuration files of the managers + (``/var/lib/ceph/{FSID}/mgr.{mgr}/config``) and start them. Orchestrator + will now be available, but it will attempt to connect to the old network + because the host list contains the old addresses. + +#. Update the host addresses by running commands of the following form: + + .. prompt:: bash # + + ceph orch host set-addr reef1 192.168.160.11 + ceph orch host set-addr reef2 192.168.160.12 + ceph orch host set-addr reef3 192.168.160.13 + +#. Wait a few minutes for the orchestrator to connect to each host. + +#. Reconfigure the OSDs so that their config files are automatically updated: + + .. prompt:: bash # + + ceph orch reconfig osd +*The above procedure was developed by Eugen Block and was successfully tested +in February 2024 on Ceph version 18.2.1 (Reef).* .. _Manual Deployment: ../../../install/manual-deployment .. _Monitor Bootstrap: ../../../dev/mon-bootstrap diff --git a/doc/rados/operations/control.rst b/doc/rados/operations/control.rst index 033f831cd..32d043f1f 100644 --- a/doc/rados/operations/control.rst +++ b/doc/rados/operations/control.rst @@ -474,27 +474,25 @@ following command: ceph tell mds.{mds-id} config set {setting} {value} -Example: +Example: to enable debug messages, run the following command: .. prompt:: bash $ ceph tell mds.0 config set debug_ms 1 -To enable debug messages, run the following command: +To display the status of all metadata servers, run the following command: .. prompt:: bash $ ceph mds stat -To display the status of all metadata servers, run the following command: +To mark the active metadata server as failed (and to trigger failover to a +standby if a standby is present), run the following command: .. prompt:: bash $ ceph mds fail 0 -To mark the active metadata server as failed (and to trigger failover to a -standby if a standby is present), run the following command: - .. todo:: ``ceph mds`` subcommands missing docs: set, dump, getmap, stop, setmap diff --git a/doc/rados/operations/crush-map.rst b/doc/rados/operations/crush-map.rst index 39151e6d4..18f4dcb6d 100644 --- a/doc/rados/operations/crush-map.rst +++ b/doc/rados/operations/crush-map.rst @@ -57,53 +57,62 @@ case for most clusters), its CRUSH location can be specified as follows:: ``pod``, ``pdu``, ``rack``, ``chassis``, and ``host``. These defined types suffice for nearly all clusters, but can be customized by modifying the CRUSH map. - #. Not all keys need to be specified. For example, by default, Ceph - automatically sets an ``OSD``'s location as ``root=default - host=HOSTNAME`` (as determined by the output of ``hostname -s``). -The CRUSH location for an OSD can be modified by adding the ``crush location`` -option in ``ceph.conf``. When this option has been added, every time the OSD +The CRUSH location for an OSD can be set by adding the ``crush_location`` +option in ``ceph.conf``, example: + + crush_location = root=default row=a rack=a2 chassis=a2a host=a2a1 + +When this option has been added, every time the OSD starts it verifies that it is in the correct location in the CRUSH map and moves itself if it is not. To disable this automatic CRUSH map management, add the following to the ``ceph.conf`` configuration file in the ``[osd]`` section:: - osd crush update on start = false + osd_crush_update_on_start = false Note that this action is unnecessary in most cases. +If the ``crush_location`` is not set explicitly, +a default of ``root=default host=HOSTNAME`` is used for ``OSD``s, +where the hostname is determined by the output of the ``hostname -s`` command. + +.. note:: If you switch from this default to an explicitly set ``crush_location``, + do not forget to include ``root=default`` because existing CRUSH rules refer to it. Custom location hooks --------------------- -A custom location hook can be used to generate a more complete CRUSH location -on startup. The CRUSH location is determined by, in order of preference: +A custom location hook can be used to generate a more complete CRUSH location, +on startup. + +This is useful when some location fields are not known at the time +``ceph.conf`` is written (for example, fields ``rack`` or ``datacenter`` +when deploying a single configuration across multiple datacenters). -#. A ``crush location`` option in ``ceph.conf`` -#. A default of ``root=default host=HOSTNAME`` where the hostname is determined - by the output of the ``hostname -s`` command +If configured, executed, and parsed successfully, the hook's output replaces +any previously set CRUSH location. -A script can be written to provide additional location fields (for example, -``rack`` or ``datacenter``) and the hook can be enabled via the following -config option:: +The hook hook can be enabled in ``ceph.conf`` by providing a path to an +executable file (often a script), example:: - crush location hook = /path/to/customized-ceph-crush-location + crush_location_hook = /path/to/customized-ceph-crush-location This hook is passed several arguments (see below). The hook outputs a single -line to ``stdout`` that contains the CRUSH location description. The output -resembles the following::: +line to ``stdout`` that contains the CRUSH location description. The arguments +resemble the following::: --cluster CLUSTER --id ID --type TYPE Here the cluster name is typically ``ceph``, the ``id`` is the daemon identifier or (in the case of OSDs) the OSD number, and the daemon type is -``osd``, ``mds, ``mgr``, or ``mon``. +``osd``, ``mds``, ``mgr``, or ``mon``. For example, a simple hook that specifies a rack location via a value in the -file ``/etc/rack`` might be as follows:: +file ``/etc/rack`` (assuming it contains no spaces) might be as follows:: #!/bin/sh - echo "host=$(hostname -s) rack=$(cat /etc/rack) root=default" + echo "root=default rack=$(cat /etc/rack) host=$(hostname -s)" CRUSH structure diff --git a/doc/rados/operations/erasure-code-profile.rst b/doc/rados/operations/erasure-code-profile.rst index 947b34c1f..a8f006398 100644 --- a/doc/rados/operations/erasure-code-profile.rst +++ b/doc/rados/operations/erasure-code-profile.rst @@ -96,7 +96,9 @@ Where: ``--force`` :Description: Override an existing profile by the same name, and allow - setting a non-4K-aligned stripe_unit. + setting a non-4K-aligned stripe_unit. Overriding an existing + profile can be dangerous, and thus ``--yes-i-really-mean-it`` + must be used as well. :Type: String :Required: No. diff --git a/doc/rados/operations/erasure-code.rst b/doc/rados/operations/erasure-code.rst index e2bd3c296..e53f348cd 100644 --- a/doc/rados/operations/erasure-code.rst +++ b/doc/rados/operations/erasure-code.rst @@ -179,6 +179,8 @@ This can be enabled only on a pool residing on BlueStore OSDs, since BlueStore's checksumming is used during deep scrubs to detect bitrot or other corruption. Using Filestore with EC overwrites is not only unsafe, but it also results in lower performance compared to BlueStore. +Moreover, Filestore is deprecated and any Filestore OSDs in your cluster +should be migrated to BlueStore. Erasure-coded pools do not support omap, so to use them with RBD and CephFS you must instruct them to store their data in an EC pool and @@ -192,6 +194,182 @@ erasure-coded pool as the ``--data-pool`` during image creation: For CephFS, an erasure-coded pool can be set as the default data pool during file system creation or via `file layouts <../../../cephfs/file-layouts>`_. +Erasure-coded pool overhead +--------------------------- + +The overhead factor (space amplification) of an erasure-coded pool +is `(k+m) / k`. For a 4,2 profile, the overhead is +thus 1.5, which means that 1.5 GiB of underlying storage are used to store +1 GiB of user data. Contrast with default three-way replication, with +which the overhead factor is 3.0. Do not mistake erasure coding for a free +lunch: there is a significant performance tradeoff, especially when using HDDs +and when performing cluster recovery or backfill. + +Below is a table showing the overhead factors for various values of `k` and `m`. +As `m` increases above 2, the incremental capacity overhead gain quickly +experiences diminishing returns but the performance impact grows proportionally. +We recommend that you do not choose a profile with `k` > 4 or `m` > 2 until +and unless you fully understand the ramifications, including the number of +failure domains your cluster topology must contain. If you choose `m=1`, +expect data unavailability during maintenance and data loss if component +failures overlap. + +.. list-table:: Erasure coding overhead + :widths: 4 4 4 4 4 4 4 4 4 4 4 4 + :header-rows: 1 + :stub-columns: 1 + + * - + - m=1 + - m=2 + - m=3 + - m=4 + - m=4 + - m=6 + - m=7 + - m=8 + - m=9 + - m=10 + - m=11 + * - k=1 + - 2.00 + - 3.00 + - 4.00 + - 5.00 + - 6.00 + - 7.00 + - 8.00 + - 9.00 + - 10.00 + - 11.00 + - 12.00 + * - k=2 + - 1.50 + - 2.00 + - 2.50 + - 3.00 + - 3.50 + - 4.00 + - 4.50 + - 5.00 + - 5.50 + - 6.00 + - 6.50 + * - k=3 + - 1.33 + - 1.67 + - 2.00 + - 2.33 + - 2.67 + - 3.00 + - 3.33 + - 3.67 + - 4.00 + - 4.33 + - 4.67 + * - k=4 + - 1.25 + - 1.50 + - 1.75 + - 2.00 + - 2.25 + - 2.50 + - 2.75 + - 3.00 + - 3.25 + - 3.50 + - 3.75 + * - k=5 + - 1.20 + - 1.40 + - 1.60 + - 1.80 + - 2.00 + - 2.20 + - 2.40 + - 2.60 + - 2.80 + - 3.00 + - 3.20 + * - k=6 + - 1.16 + - 1.33 + - 1.50 + - 1.66 + - 1.83 + - 2.00 + - 2.17 + - 2.33 + - 2.50 + - 2.66 + - 2.83 + * - k=7 + - 1.14 + - 1.29 + - 1.43 + - 1.58 + - 1.71 + - 1.86 + - 2.00 + - 2.14 + - 2.29 + - 2.43 + - 2.58 + * - k=8 + - 1.13 + - 1.25 + - 1.38 + - 1.50 + - 1.63 + - 1.75 + - 1.88 + - 2.00 + - 2.13 + - 2.25 + - 2.38 + * - k=9 + - 1.11 + - 1.22 + - 1.33 + - 1.44 + - 1.56 + - 1.67 + - 1.78 + - 1.88 + - 2.00 + - 2.11 + - 2.22 + * - k=10 + - 1.10 + - 1.20 + - 1.30 + - 1.40 + - 1.50 + - 1.60 + - 1.70 + - 1.80 + - 1.90 + - 2.00 + - 2.10 + * - k=11 + - 1.09 + - 1.18 + - 1.27 + - 1.36 + - 1.45 + - 1.54 + - 1.63 + - 1.72 + - 1.82 + - 1.91 + - 2.00 + + + + + + + Erasure-coded pools and cache tiering ------------------------------------- diff --git a/doc/rados/operations/index.rst b/doc/rados/operations/index.rst index 15525c1d3..91301382d 100644 --- a/doc/rados/operations/index.rst +++ b/doc/rados/operations/index.rst @@ -21,6 +21,7 @@ and, monitoring an operating cluster. monitoring-osd-pg user-management pg-repair + pgcalc/index .. raw:: html diff --git a/doc/rados/operations/monitoring.rst b/doc/rados/operations/monitoring.rst index a9171f2d8..d3a258f76 100644 --- a/doc/rados/operations/monitoring.rst +++ b/doc/rados/operations/monitoring.rst @@ -517,6 +517,8 @@ multiple monitors are running to ensure proper functioning of your Ceph cluster. Check monitor status regularly in order to ensure that all of the monitors are running. +.. _display-mon-map: + To display the monitor map, run the following command: .. prompt:: bash $ diff --git a/doc/rados/operations/pgcalc/index.rst b/doc/rados/operations/pgcalc/index.rst new file mode 100644 index 000000000..1aed87391 --- /dev/null +++ b/doc/rados/operations/pgcalc/index.rst @@ -0,0 +1,68 @@ +.. _pgcalc: + + +======= +PG Calc +======= + + +.. raw:: html + + + <link rel="stylesheet" id="wp-job-manager-job-listings-css" href="https://web.archive.org/web/20230614135557cs_/https://old.ceph.com/wp-content/plugins/wp-job-manager/assets/dist/css/job-listings.css" type="text/css" media="all"/> + <link rel="stylesheet" id="ceph/googlefont-css" href="https://web.archive.org/web/20230614135557cs_/https://fonts.googleapis.com/css?family=Raleway%3A300%2C400%2C700&ver=5.7.2" type="text/css" media="all"/> + <link rel="stylesheet" id="Stylesheet-css" href="https://web.archive.org/web/20230614135557cs_/https://old.ceph.com/wp-content/themes/cephTheme/Resources/Styles/style.min.css" type="text/css" media="all"/> + <link rel="stylesheet" id="tablepress-default-css" href="https://web.archive.org/web/20230614135557cs_/https://old.ceph.com/wp-content/plugins/tablepress/css/default.min.css" type="text/css" media="all"/> + <link rel="stylesheet" id="jetpack_css-css" href="https://web.archive.org/web/20230614135557cs_/https://old.ceph.com/wp-content/plugins/jetpack/css/jetpack.css" type="text/css" media="all"/> + <script type="text/javascript" src="https://web.archive.org/web/20230614135557js_/https://old.ceph.com/wp-content/themes/cephTheme/foundation_framework/js/vendor/jquery.js" id="jquery-js"></script> + + <link rel="stylesheet" href="https://web.archive.org/web/20230614135557cs_/https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/themes/smoothness/jquery-ui.css"/> + <link rel="stylesheet" href="https://web.archive.org/web/20230614135557cs_/https://old.ceph.com/pgcalc_assets/pgcalc.css"/> + <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script> + + <script src="../../../_static/js/pgcalc.js"></script> + <div id="pgcalcdiv"> + <div id="instructions"> + <h2>Ceph PGs per Pool Calculator</h2><br/><fieldset><legend>Instructions</legend> + <ol> + <li>Confirm your understanding of the fields by reading through the Key below.</li> + <li>Select a <b>"Ceph Use Case"</b> from the drop down menu.</li> + <li>Adjust the values in the <span class="inputColor addBorder" style="font-weight: bold;">"Green"</span> shaded fields below.<br/> + <b>Tip:</b> Headers can be clicked to change the value throughout the table.</li> + <li>You will see the Suggested PG Count update based on your inputs.</li> + <li>Click the <b>"Add Pool"</b> button to create a new line for a new pool.</li> + <li>Click the <span class="ui-icon ui-icon-trash" style="display:inline-block;"></span> icon to delete the specific Pool.</li> + <li>For more details on the logic used and some important details, see the area below the table.</li> + <li>Once all values have been adjusted, click the <b>"Generate Commands"</b> button to get the pool creation commands.</li> + </ol></fieldset> + </div> + <div id="beforeTable"></div> + <br/> + <p class="validateTips"> </p> + <label for="presetType">Ceph Use Case Selector:</label><br/><select id="presetType"></select><button style="margin-left: 200px;" id="btnAddPool" type="button">Add Pool</button><button type="button" id="btnGenCommands" download="commands.txt">Generate Commands</button> + <div id="pgsPerPoolTable"> + <table id="pgsperpool"> + </table> + </div> <!-- id = pgsPerPoolTable --> + <br/> + <div id="afterTable"></div> + <div id="countLogic"><fieldset><legend>Logic behind Suggested PG Count</legend> + <br/> + <div class="upperFormula">( Target PGs per OSD ) x ( OSD # ) x ( %Data )</div> + <div class="lowerFormula">( Size )</div> + <ol id="countLogicList"> + <li>If the value of the above calculation is less than the value of <b>( OSD# ) / ( Size )</b>, then the value is updated to the value of <b>( OSD# ) / ( Size )</b>. This is to ensure even load / data distribution by allocating at least one Primary or Secondary PG to every OSD for every Pool.</li> + <li>The output value is then rounded to the <b>nearest power of 2</b>.<br/><b>Tip:</b> The nearest power of 2 provides a marginal improvement in efficiency of the <a href="https://web.archive.org/web/20230614135557/http://ceph.com/docs/master/rados/operations/crush-map/" title="CRUSH Map Details">CRUSH</a> algorithm.</li> + <li>If the nearest power of 2 is more than <b>25%</b> below the original value, the next higher power of 2 is used.</li> + </ol> + <b>Objective</b> + <ul><li>The objective of this calculation and the target ranges noted in the "Key" section above are to ensure that there are sufficient Placement Groups for even data distribution throughout the cluster, while not going high enough on the PG per OSD ratio to cause problems during Recovery and/or Backfill operations.</li></ul> + <b>Effects of enpty or non-active pools:</b> + <ul> + <li>Empty or otherwise non-active pools should not be considered helpful toward even data distribution throughout the cluster.</li> + <li>However, the PGs associated with these empty / non-active pools still consume memory and CPU overhead.</li> + </ul> + </fieldset> + </div> + <div id="commands" title="Pool Creation Commands"><code><pre id="commandCode"></pre></code></div> + </div> diff --git a/doc/rados/operations/placement-groups.rst b/doc/rados/operations/placement-groups.rst index dda4a0177..93ab1f0c0 100644 --- a/doc/rados/operations/placement-groups.rst +++ b/doc/rados/operations/placement-groups.rst @@ -4,6 +4,21 @@ Placement Groups ================== +Placement groups (PGs) are subsets of each logical Ceph pool. Placement groups +perform the function of placing objects (as a group) into OSDs. Ceph manages +data internally at placement-group granularity: this scales better than would +managing individual RADOS objects. A cluster that has a larger number of +placement groups (for example, 150 per OSD) is better balanced than an +otherwise identical cluster with a smaller number of placement groups. + +Ceph’s internal RADOS objects are each mapped to a specific placement group, +and each placement group belongs to exactly one Ceph pool. + +See Sage Weil's blog post `New in Nautilus: PG merging and autotuning +<https://ceph.io/en/news/blog/2019/new-in-nautilus-pg-merging-and-autotuning/>`_ +for more information about the relationship of placement groups to pools and to +objects. + .. _pg-autoscaler: Autoscaling placement groups @@ -131,11 +146,11 @@ The output will resemble the following:: if a ``pg_num`` change is in progress, the current number of PGs that the pool is working towards. -- **NEW PG_NUM** (if present) is the value that the system is recommending the - ``pg_num`` of the pool to be changed to. It is always a power of 2, and it is - present only if the recommended value varies from the current value by more - than the default factor of ``3``. To adjust this factor (in the following - example, it is changed to ``2``), run the following command: +- **NEW PG_NUM** (if present) is the value that the system recommends that the + ``pg_num`` of the pool should be. It is always a power of two, and it + is present only if the recommended value varies from the current value by + more than the default factor of ``3``. To adjust this multiple (in the + following example, it is changed to ``2``), run the following command: .. prompt:: bash # @@ -168,7 +183,6 @@ The output will resemble the following:: .. prompt:: bash # ceph osd pool set .mgr crush_rule replicated-ssd - ceph osd pool set pool 1 crush_rule to replicated-ssd This intervention will result in a small amount of backfill, but typically this traffic completes quickly. @@ -626,15 +640,14 @@ pools, each with 512 PGs on 10 OSDs, the OSDs will have to handle ~50,000 PGs each. This cluster will require significantly more resources and significantly more time for peering. -For determining the optimal number of PGs per OSD, we recommend the `PGCalc`_ -tool. - .. _setting the number of placement groups: Setting the Number of PGs ========================= +:ref:`Placement Group Link <pgcalc>` + Setting the initial number of PGs in a pool must be done at the time you create the pool. See `Create a Pool`_ for details. @@ -894,4 +907,3 @@ about it entirely (if it is too new to have a previous version). To mark the .. _Create a Pool: ../pools#createpool .. _Mapping PGs to OSDs: ../../../architecture#mapping-pgs-to-osds -.. _pgcalc: https://old.ceph.com/pgcalc/ diff --git a/doc/rados/operations/pools.rst b/doc/rados/operations/pools.rst index dda9e844e..c3fe3b7d8 100644 --- a/doc/rados/operations/pools.rst +++ b/doc/rados/operations/pools.rst @@ -18,15 +18,17 @@ Pools provide: <../erasure-code>`_, resilience is defined as the number of coding chunks (for example, ``m = 2`` in the default **erasure code profile**). -- **Placement Groups**: You can set the number of placement groups (PGs) for - the pool. In a typical configuration, the target number of PGs is - approximately one hundred PGs per OSD. This provides reasonable balancing - without consuming excessive computing resources. When setting up multiple - pools, be careful to set an appropriate number of PGs for each pool and for - the cluster as a whole. Each PG belongs to a specific pool: when multiple - pools use the same OSDs, make sure that the **sum** of PG replicas per OSD is - in the desired PG-per-OSD target range. To calculate an appropriate number of - PGs for your pools, use the `pgcalc`_ tool. +- **Placement Groups**: The :ref:`autoscaler <pg-autoscaler>` sets the number + of placement groups (PGs) for the pool. In a typical configuration, the + target number of PGs is approximately one-hundred and fifty PGs per OSD. This + provides reasonable balancing without consuming excessive computing + resources. When setting up multiple pools, set an appropriate number of PGs + for each pool and for the cluster as a whole. Each PG belongs to a specific + pool: when multiple pools use the same OSDs, make sure that the **sum** of PG + replicas per OSD is in the desired PG-per-OSD target range. See :ref:`Setting + the Number of Placement Groups <setting the number of placement groups>` for + instructions on how to manually set the number of placement groups per pool + (this procedure works only when the autoscaler is not used). - **CRUSH Rules**: When data is stored in a pool, the placement of the object and its replicas (or chunks, in the case of erasure-coded pools) in your @@ -94,19 +96,12 @@ To get even more information, you can execute this command with the ``--format`` Creating a Pool =============== -Before creating a pool, consult `Pool, PG and CRUSH Config Reference`_. Your -Ceph configuration file contains a setting (namely, ``pg_num``) that determines -the number of PGs. However, this setting's default value is NOT appropriate -for most systems. In most cases, you should override this default value when -creating your pool. For details on PG numbers, see `setting the number of -placement groups`_ - -For example: - -.. prompt:: bash $ - - osd_pool_default_pg_num = 128 - osd_pool_default_pgp_num = 128 +Before creating a pool, consult `Pool, PG and CRUSH Config Reference`_. The +Ceph central configuration database in the monitor cluster contains a setting +(namely, ``pg_num``) that determines the number of PGs per pool when a pool has +been created and no per-pool value has been specified. It is possible to change +this value from its default. For more on the subject of setting the number of +PGs per pool, see `setting the number of placement groups`_. .. note:: In Luminous and later releases, each pool must be associated with the application that will be using the pool. For more information, see @@ -742,8 +737,6 @@ Managing pools that are flagged with ``--bulk`` =============================================== See :ref:`managing_bulk_flagged_pools`. - -.. _pgcalc: https://old.ceph.com/pgcalc/ .. _Pool, PG and CRUSH Config Reference: ../../configuration/pool-pg-config-ref .. _Bloom Filter: https://en.wikipedia.org/wiki/Bloom_filter .. _setting the number of placement groups: ../placement-groups#set-the-number-of-placement-groups diff --git a/doc/rados/operations/stretch-mode.rst b/doc/rados/operations/stretch-mode.rst index f797b5b91..787e8cb4d 100644 --- a/doc/rados/operations/stretch-mode.rst +++ b/doc/rados/operations/stretch-mode.rst @@ -121,8 +121,6 @@ your CRUSH map. This procedure shows how to do this. rule stretch_rule { id 1 - min_size 1 - max_size 10 type replicated step take site1 step chooseleaf firstn 2 type host @@ -141,11 +139,15 @@ your CRUSH map. This procedure shows how to do this. #. Run the monitors in connectivity mode. See `Changing Monitor Elections`_. + .. prompt:: bash $ + + ceph mon set election_strategy connectivity + #. Command the cluster to enter stretch mode. In this example, ``mon.e`` is the tiebreaker monitor and we are splitting across data centers. The tiebreaker monitor must be assigned a data center that is neither ``site1`` nor - ``site2``. For this purpose you can create another data-center bucket named - ``site3`` in your CRUSH and place ``mon.e`` there: + ``site2``. This data center **should not** be defined in your CRUSH map, here + we are placing ``mon.e`` in a virtual data center called ``site3``: .. prompt:: bash $ diff --git a/doc/rados/troubleshooting/log-and-debug.rst b/doc/rados/troubleshooting/log-and-debug.rst index 929c3f53f..fa089338c 100644 --- a/doc/rados/troubleshooting/log-and-debug.rst +++ b/doc/rados/troubleshooting/log-and-debug.rst @@ -175,17 +175,19 @@ For each subsystem, there is a logging level for its output logs (a so-called "log level") and a logging level for its in-memory logs (a so-called "memory level"). Different values may be set for these two logging levels in each subsystem. Ceph's logging levels operate on a scale of ``1`` to ``20``, where -``1`` is terse and ``20`` is verbose [#f1]_. As a general rule, the in-memory -logs are not sent to the output log unless one or more of the following -conditions obtain: - -- a fatal signal is raised or -- an ``assert`` in source code is triggered or -- upon requested. Please consult `document on admin socket - <http://docs.ceph.com/en/latest/man/8/ceph/#daemon>`_ for more details. - -.. warning :: - .. [#f1] In certain rare cases, there are logging levels that can take a value greater than 20. The resulting logs are extremely verbose. +``1`` is terse and ``20`` is verbose. In certain rare cases, there are logging +levels that can take a value greater than 20. The resulting logs are extremely +verbose. + +The in-memory logs are not sent to the output log unless one or more of the +following conditions are true: + +- a fatal signal has been raised or +- an assertion within Ceph code has been triggered or +- the sending of in-memory logs to the output log has been manually triggered. + Consult `the portion of the "Ceph Administration Tool documentation + that provides an example of how to submit admin socket commands + <http://docs.ceph.com/en/latest/man/8/ceph/#daemon>`_ for more detail. Log levels and memory levels can be set either together or separately. If a subsystem is assigned a single value, then that value determines both the log diff --git a/doc/rados/troubleshooting/troubleshooting-mon.rst b/doc/rados/troubleshooting/troubleshooting-mon.rst index 1170da7c3..443d6c443 100644 --- a/doc/rados/troubleshooting/troubleshooting-mon.rst +++ b/doc/rados/troubleshooting/troubleshooting-mon.rst @@ -85,23 +85,27 @@ Using the monitor's admin socket ================================ A monitor's admin socket allows you to interact directly with a specific daemon -by using a Unix socket file. This file is found in the monitor's ``run`` -directory. The admin socket's default directory is -``/var/run/ceph/ceph-mon.ID.asok``, but this can be overridden and the admin -socket might be elsewhere, especially if your cluster's daemons are deployed in -containers. If you cannot find it, either check your ``ceph.conf`` for an -alternative path or run the following command: +by using a Unix socket file. This socket file is found in the monitor's ``run`` +directory. + +The admin socket's default directory is ``/var/run/ceph/ceph-mon.ID.asok``. It +is possible to override the admin socket's default location. If the default +location has been overridden, then the admin socket will be elsewhere. This is +often the case when a cluster's daemons are deployed in containers. + +To find the directory of the admin socket, check either your ``ceph.conf`` for +an alternative path or run the following command: .. prompt:: bash $ ceph-conf --name mon.ID --show-config-value admin_socket -The admin socket is available for use only when the monitor daemon is running. -Whenever the monitor has been properly shut down, the admin socket is removed. -However, if the monitor is not running and the admin socket persists, it is -likely that the monitor has been improperly shut down. In any case, if the -monitor is not running, it will be impossible to use the admin socket, and the -``ceph`` command is likely to return ``Error 111: Connection Refused``. +The admin socket is available for use only when the Monitor daemon is running. +Every time the Monitor is properly shut down, the admin socket is removed. If +the Monitor is not running and yet the admin socket persists, it is likely that +the Monitor has been improperly shut down. If the Monitor is not running, it +will be impossible to use the admin socket, and the ``ceph`` command is likely +to return ``Error 111: Connection Refused``. To access the admin socket, run a ``ceph tell`` command of the following form (specifying the daemon that you are interested in): @@ -110,7 +114,7 @@ To access the admin socket, run a ``ceph tell`` command of the following form ceph tell mon.<id> mon_status -This command passes a ``help`` command to the specific running monitor daemon +This command passes a ``help`` command to the specified running Monitor daemon ``<id>`` via its admin socket. If you know the full path to the admin socket file, this can be done more directly by running the following command: @@ -127,10 +131,11 @@ and ``quorum_status``. Understanding mon_status ======================== -The status of the monitor (as reported by the ``ceph tell mon.X mon_status`` -command) can always be obtained via the admin socket. This command outputs a -great deal of information about the monitor (including the information found in -the output of the ``quorum_status`` command). +The status of a Monitor (as reported by the ``ceph tell mon.X mon_status`` +command) can be obtained via the admin socket. The ``ceph tell mon.X +mon_status`` command outputs a great deal of information about the monitor +(including the information found in the output of the ``quorum_status`` +command). To understand this command's output, let us consider the following example, in which we see the output of ``ceph tell mon.c mon_status``:: @@ -160,29 +165,34 @@ which we see the output of ``ceph tell mon.c mon_status``:: "name": "c", "addr": "127.0.0.1:6795\/0"}]}} -It is clear that there are three monitors in the monmap (*a*, *b*, and *c*), -the quorum is formed by only two monitors, and *c* is in the quorum as a -*peon*. +This output reports that there are three monitors in the monmap (*a*, *b*, and +*c*), that quorum is formed by only two monitors, and that *c* is in quorum as +a *peon*. -**Which monitor is out of the quorum?** +**Which monitor is out of quorum?** - The answer is **a** (that is, ``mon.a``). + The answer is **a** (that is, ``mon.a``). ``mon.a`` is out of quorum. -**Why?** +**How do we know, in this example, that mon.a is out of quorum?** - When the ``quorum`` set is examined, there are clearly two monitors in the - set: *1* and *2*. But these are not monitor names. They are monitor ranks, as - established in the current ``monmap``. The ``quorum`` set does not include - the monitor that has rank 0, and according to the ``monmap`` that monitor is - ``mon.a``. + We know that ``mon.a`` is out of quorum because it has rank 0, and Monitors + with rank 0 are by definition out of quorum. + + If we examine the ``quorum`` set, we can see that there are clearly two + monitors in the set: *1* and *2*. But these are not monitor names. They are + monitor ranks, as established in the current ``monmap``. The ``quorum`` set + does not include the monitor that has rank 0, and according to the ``monmap`` + that monitor is ``mon.a``. **How are monitor ranks determined?** - Monitor ranks are calculated (or recalculated) whenever monitors are added or - removed. The calculation of ranks follows a simple rule: the **greater** the - ``IP:PORT`` combination, the **lower** the rank. In this case, because - ``127.0.0.1:6789`` is lower than the other two ``IP:PORT`` combinations, - ``mon.a`` has the highest rank: namely, rank 0. + Monitor ranks are calculated (or recalculated) whenever monitors are added to + or removed from the cluster. The calculation of ranks follows a simple rule: + the **greater** the ``IP:PORT`` combination, the **lower** the rank. In this + case, because ``127.0.0.1:6789`` (``mon.a``) is numerically less than the + other two ``IP:PORT`` combinations (which are ``127.0.0.1:6790`` for "Monitor + b" and ``127.0.0.1:6795`` for "Monitor c"), ``mon.a`` has the highest rank: + namely, rank 0. Most Common Monitor Issues @@ -250,14 +260,15 @@ detail`` returns a message similar to the following:: Monitors at a wrong address. ``mon_status`` outputs the ``monmap`` that is known to the monitor: determine whether the other Monitors' locations as specified in the ``monmap`` match the locations of the Monitors in the - network. If they do not, see `Recovering a Monitor's Broken monmap`_. - If the locations of the Monitors as specified in the ``monmap`` match the - locations of the Monitors in the network, then the persistent - ``probing`` state could be related to severe clock skews amongst the monitor - nodes. See `Clock Skews`_. If the information in `Clock Skews`_ does not - bring the Monitor out of the ``probing`` state, then prepare your system logs - and ask the Ceph community for help. See `Preparing your logs`_ for - information about the proper preparation of logs. + network. If they do not, see :ref:`Recovering a Monitor's Broken monmap + <rados_troubleshooting_troubleshooting_mon_recovering_broken_monmap>`. If + the locations of the Monitors as specified in the ``monmap`` match the + locations of the Monitors in the network, then the persistent ``probing`` + state could be related to severe clock skews among the monitor nodes. See + `Clock Skews`_. If the information in `Clock Skews`_ does not bring the + Monitor out of the ``probing`` state, then prepare your system logs and ask + the Ceph community for help. See `Preparing your logs`_ for information about + the proper preparation of logs. **What does it mean when a Monitor's state is ``electing``?** @@ -314,13 +325,16 @@ detail`` returns a message similar to the following:: substantiate it. See `Preparing your logs`_ for information about the proper preparation of logs. +.. _rados_troubleshooting_troubleshooting_mon_recovering_broken_monmap: -Recovering a Monitor's Broken ``monmap`` ----------------------------------------- +Recovering a Monitor's Broken "monmap" +-------------------------------------- -This is how a ``monmap`` usually looks, depending on the number of -monitors:: +A monmap can be retrieved by using a command of the form ``ceph tell mon.c +mon_status``, as described in :ref:`Understanding mon_status +<rados_troubleshoting_troubleshooting_mon_understanding_mon_status>`. +Here is an example of a ``monmap``:: epoch 3 fsid 5c4e9d53-e2e1-478a-8061-f543f8be4cf8 @@ -329,61 +343,64 @@ monitors:: 0: 127.0.0.1:6789/0 mon.a 1: 127.0.0.1:6790/0 mon.b 2: 127.0.0.1:6795/0 mon.c - -This may not be what you have however. For instance, in some versions of -early Cuttlefish there was a bug that could cause your ``monmap`` -to be nullified. Completely filled with zeros. This means that not even -``monmaptool`` would be able to make sense of cold, hard, inscrutable zeros. -It's also possible to end up with a monitor with a severely outdated monmap, -notably if the node has been down for months while you fight with your vendor's -TAC. The subject ``ceph-mon`` daemon might be unable to find the surviving -monitors (e.g., say ``mon.c`` is down; you add a new monitor ``mon.d``, -then remove ``mon.a``, then add a new monitor ``mon.e`` and remove -``mon.b``; you will end up with a totally different monmap from the one -``mon.c`` knows). -In this situation you have two possible solutions: +This ``monmap`` is in working order, but your ``monmap`` might not be in +working order. The ``monmap`` in a given node might be outdated because the +node was down for a long time, during which the cluster's Monitors changed. + +There are two ways to update a Monitor's outdated ``monmap``: + +A. **Scrap the monitor and redeploy.** + + Do this only if you are certain that you will not lose the information kept + by the Monitor that you scrap. Make sure that you have other Monitors in + good condition, so that the new Monitor will be able to synchronize with + the surviving Monitors. Remember that destroying a Monitor can lead to data + loss if there are no other copies of the Monitor's contents. + +B. **Inject a monmap into the monitor.** -Scrap the monitor and redeploy + It is possible to fix a Monitor that has an outdated ``monmap`` by + retrieving an up-to-date ``monmap`` from surviving Monitors in the cluster + and injecting it into the Monitor that has a corrupted or missing + ``monmap``. - You should only take this route if you are positive that you won't - lose the information kept by that monitor; that you have other monitors - and that they are running just fine so that your new monitor is able - to synchronize from the remaining monitors. Keep in mind that destroying - a monitor, if there are no other copies of its contents, may lead to - loss of data. + Implement this solution by carrying out the following procedure: -Inject a monmap into the monitor + #. Retrieve the ``monmap`` in one of the two following ways: - These are the basic steps: + a. **IF THERE IS A QUORUM OF MONITORS:** + + Retrieve the ``monmap`` from the quorum: - Retrieve the ``monmap`` from the surviving monitors and inject it into the - monitor whose ``monmap`` is corrupted or lost. + .. prompt:: bash - Implement this solution by carrying out the following procedure: + ceph mon getmap -o /tmp/monmap - 1. Is there a quorum of monitors? If so, retrieve the ``monmap`` from the - quorum:: + b. **IF THERE IS NO QUORUM OF MONITORS:** + + Retrieve the ``monmap`` directly from a Monitor that has been stopped + : - $ ceph mon getmap -o /tmp/monmap + .. prompt:: bash - 2. If there is no quorum, then retrieve the ``monmap`` directly from another - monitor that has been stopped (in this example, the other monitor has - the ID ``ID-FOO``):: + ceph-mon -i ID-FOO --extract-monmap /tmp/monmap - $ ceph-mon -i ID-FOO --extract-monmap /tmp/monmap + In this example, the ID of the stopped Monitor is ``ID-FOO``. - 3. Stop the monitor you are going to inject the monmap into. + #. Stop the Monitor into which the ``monmap`` will be injected. - 4. Inject the monmap:: + #. Inject the monmap into the stopped Monitor: - $ ceph-mon -i ID --inject-monmap /tmp/monmap + .. prompt:: bash - 5. Start the monitor + ceph-mon -i ID --inject-monmap /tmp/monmap - .. warning:: Injecting ``monmaps`` can cause serious problems because doing - so will overwrite the latest existing ``monmap`` stored on the monitor. Be - careful! + #. Start the Monitor. + + .. warning:: Injecting a ``monmap`` into a Monitor can cause serious + problems. Injecting a ``monmap`` overwrites the latest existing + ``monmap`` stored on the monitor. Be careful! Clock Skews ----------- @@ -464,12 +481,13 @@ Clock Skew Questions and Answers Client Can't Connect or Mount ----------------------------- -Check your IP tables. Some operating-system install utilities add a ``REJECT`` -rule to ``iptables``. ``iptables`` rules will reject all clients other than -``ssh`` that try to connect to the host. If your monitor host's IP tables have -a ``REJECT`` rule in place, clients that are connecting from a separate node -will fail and will raise a timeout error. Any ``iptables`` rules that reject -clients trying to connect to Ceph daemons must be addressed. For example:: +If a client can't connect to the cluster or mount, check your iptables. Some +operating-system install utilities add a ``REJECT`` rule to ``iptables``. +``iptables`` rules will reject all clients other than ``ssh`` that try to +connect to the host. If your monitor host's iptables have a ``REJECT`` rule in +place, clients that connect from a separate node will fail, and this will raise +a timeout error. Look for ``iptables`` rules that reject clients that are +trying to connect to Ceph daemons. For example:: REJECT all -- anywhere anywhere reject-with icmp-host-prohibited @@ -487,9 +505,9 @@ Monitor Store Failures Symptoms of store corruption ---------------------------- -Ceph monitors store the :term:`Cluster Map` in a key-value store. If key-value -store corruption causes a monitor to fail, then the monitor log might contain -one of the following error messages:: +Ceph Monitors maintain the :term:`Cluster Map` in a key-value store. If +key-value store corruption causes a Monitor to fail, then the Monitor log might +contain one of the following error messages:: Corruption: error in middle of record @@ -500,10 +518,10 @@ or:: Recovery using healthy monitor(s) --------------------------------- -If there are surviving monitors, we can always :ref:`replace -<adding-and-removing-monitors>` the corrupted monitor with a new one. After the -new monitor boots, it will synchronize with a healthy peer. After the new -monitor is fully synchronized, it will be able to serve clients. +If the cluster contains surviving Monitors, the corrupted Monitor can be +:ref:`replaced <adding-and-removing-monitors>` with a new Monitor. After the +new Monitor boots, it will synchronize with a healthy peer. After the new +Monitor is fully synchronized, it will be able to serve clients. .. _mon-store-recovery-using-osds: @@ -511,15 +529,14 @@ Recovery using OSDs ------------------- Even if all monitors fail at the same time, it is possible to recover the -monitor store by using information stored in OSDs. You are encouraged to deploy -at least three (and preferably five) monitors in a Ceph cluster. In such a -deployment, complete monitor failure is unlikely. However, unplanned power loss -in a data center whose disk settings or filesystem settings are improperly -configured could cause the underlying filesystem to fail and this could kill -all of the monitors. In such a case, data in the OSDs can be used to recover -the monitors. The following is such a script and can be used to recover the -monitors: - +Monitor store by using information that is stored in OSDs. You are encouraged +to deploy at least three (and preferably five) Monitors in a Ceph cluster. In +such a deployment, complete Monitor failure is unlikely. However, unplanned +power loss in a data center whose disk settings or filesystem settings are +improperly configured could cause the underlying filesystem to fail and this +could kill all of the monitors. In such a case, data in the OSDs can be used to +recover the Monitors. The following is a script that can be used in such a case +to recover the Monitors: .. code-block:: bash @@ -572,10 +589,10 @@ monitors: This script performs the following steps: -#. Collects the map from each OSD host. -#. Rebuilds the store. -#. Fills the entities in the keyring file with appropriate capabilities. -#. Replaces the corrupted store on ``mon.foo`` with the recovered copy. +#. Collect the map from each OSD host. +#. Rebuild the store. +#. Fill the entities in the keyring file with appropriate capabilities. +#. Replace the corrupted store on ``mon.foo`` with the recovered copy. Known limitations @@ -587,19 +604,18 @@ The above recovery tool is unable to recover the following information: auth add`` command are recovered from the OSD's copy, and the ``client.admin`` keyring is imported using ``ceph-monstore-tool``. However, the MDS keyrings and all other keyrings will be missing in the recovered - monitor store. You might need to manually re-add them. + Monitor store. It might be necessary to manually re-add them. - **Creating pools**: If any RADOS pools were in the process of being created, that state is lost. The recovery tool operates on the assumption that all pools have already been created. If there are PGs that are stuck in the - 'unknown' state after the recovery for a partially created pool, you can + ``unknown`` state after the recovery for a partially created pool, you can force creation of the *empty* PG by running the ``ceph osd force-create-pg`` - command. Note that this will create an *empty* PG, so take this action only - if you know the pool is empty. + command. This creates an *empty* PG, so take this action only if you are + certain that the pool is empty. - **MDS Maps**: The MDS maps are lost. - Everything Failed! Now What? ============================ @@ -611,16 +627,20 @@ irc.oftc.net), or at ``dev@ceph.io`` and ``ceph-users@lists.ceph.com``. Make sure that you have prepared your logs and that you have them ready upon request. -See https://ceph.io/en/community/connect/ for current (as of October 2023) -information on getting in contact with the upstream Ceph community. +The upstream Ceph Slack workspace can be joined at this address: +https://ceph-storage.slack.com/ +See https://ceph.io/en/community/connect/ for current (as of December 2023) +information on getting in contact with the upstream Ceph community. Preparing your logs ------------------- -The default location for monitor logs is ``/var/log/ceph/ceph-mon.FOO.log*``. -However, if they are not there, you can find their current location by running -the following command: +The default location for Monitor logs is ``/var/log/ceph/ceph-mon.FOO.log*``. +It is possible that the location of the Monitor logs has been changed from the +default. If the location of the Monitor logs has been changed from the default +location, find the location of the Monitor logs by running the following +command: .. prompt:: bash @@ -631,21 +651,21 @@ cluster's configuration files. If Ceph is using the default debug levels, then your logs might be missing important information that would help the upstream Ceph community address your issue. -To make sure your monitor logs contain relevant information, you can raise -debug levels. Here we are interested in information from the monitors. As with -other components, the monitors have different parts that output their debug +Raise debug levels to make sure that your Monitor logs contain relevant +information. Here we are interested in information from the Monitors. As with +other components, the Monitors have different parts that output their debug information on different subsystems. If you are an experienced Ceph troubleshooter, we recommend raising the debug -levels of the most relevant subsystems. Of course, this approach might not be -easy for beginners. In most cases, however, enough information to address the -issue will be secured if the following debug levels are entered:: +levels of the most relevant subsystems. This approach might not be easy for +beginners. In most cases, however, enough information to address the issue will +be logged if the following debug levels are entered:: debug_mon = 10 debug_ms = 1 Sometimes these debug levels do not yield enough information. In such cases, -members of the upstream Ceph community might ask you to make additional changes +members of the upstream Ceph community will ask you to make additional changes to these or to other debug levels. In any case, it is better for us to receive at least some useful information than to receive an empty log. @@ -653,10 +673,12 @@ at least some useful information than to receive an empty log. Do I need to restart a monitor to adjust debug levels? ------------------------------------------------------ -No, restarting a monitor is not necessary. Debug levels may be adjusted by -using two different methods, depending on whether or not there is a quorum: +No. It is not necessary to restart a Monitor when adjusting its debug levels. + +There are two different methods for adjusting debug levels. One method is used +when there is quorum. The other is used when there is no quorum. -There is a quorum +**Adjusting debug levels when there is a quorum** Either inject the debug option into the specific monitor that needs to be debugged:: @@ -668,17 +690,19 @@ There is a quorum ceph tell mon.* config set debug_mon 10/10 -There is no quorum +**Adjusting debug levels when there is no quorum** Use the admin socket of the specific monitor that needs to be debugged and directly adjust the monitor's configuration options:: ceph daemon mon.FOO config set debug_mon 10/10 +**Returning debug levels to their default values** To return the debug levels to their default values, run the above commands -using the debug level ``1/10`` rather than ``10/10``. To check a monitor's -current values, use the admin socket and run either of the following commands: +using the debug level ``1/10`` rather than the debug level ``10/10``. To check +a Monitor's current values, use the admin socket and run either of the +following commands: .. prompt:: bash @@ -695,17 +719,17 @@ or: I Reproduced the problem with appropriate debug levels. Now what? ----------------------------------------------------------------- -We prefer that you send us only the portions of your logs that are relevant to -your monitor problems. Of course, it might not be easy for you to determine -which portions are relevant so we are willing to accept complete and -unabridged logs. However, we request that you avoid sending logs containing -hundreds of thousands of lines with no additional clarifying information. One -common-sense way of making our task easier is to write down the current time -and date when you are reproducing the problem and then extract portions of your +Send the upstream Ceph community only the portions of your logs that are +relevant to your Monitor problems. Because it might not be easy for you to +determine which portions are relevant, the upstream Ceph community accepts +complete and unabridged logs. But don't send logs containing hundreds of +thousands of lines with no additional clarifying information. One common-sense +way to help the Ceph community help you is to write down the current time and +date when you are reproducing the problem and then extract portions of your logs based on that information. -Finally, reach out to us on the mailing lists or IRC or Slack, or by filing a -new issue on the `tracker`_. +Contact the upstream Ceph community on the mailing lists or IRC or Slack, or by +filing a new issue on the `tracker`_. .. _tracker: http://tracker.ceph.com/projects/ceph/issues/new diff --git a/doc/radosgw/admin.rst b/doc/radosgw/admin.rst index 8d70252fe..fe29849cb 100644 --- a/doc/radosgw/admin.rst +++ b/doc/radosgw/admin.rst @@ -2,25 +2,23 @@ Admin Guide ============= -Once you have your Ceph Object Storage service up and running, you may -administer the service with user management, access controls, quotas -and usage tracking among other features. - +After the Ceph Object Storage service is up and running, it can be administered +with user management, access controls, quotas, and usage tracking. User Management =============== -Ceph Object Storage user management refers to users of the Ceph Object Storage -service (i.e., not the Ceph Object Gateway as a user of the Ceph Storage -Cluster). You must create a user, access key and secret to enable end users to -interact with Ceph Object Gateway services. +Ceph Object Storage user management refers only to users of the Ceph Object +Storage service and not to the Ceph Object Gateway as a user of the Ceph +Storage Cluster. Create a user, access key, and secret key to enable end users +to interact with Ceph Object Gateway services. -There are two user types: +There are two types of user: -- **User:** The term 'user' reflects a user of the S3 interface. +- **User:** The term "user" refers to user of the S3 interface. -- **Subuser:** The term 'subuser' reflects a user of the Swift interface. A subuser - is associated to a user . +- **Subuser:** The term "subuser" refers to a user of the Swift interface. A + subuser is associated with a user. .. ditaa:: +---------+ @@ -31,24 +29,30 @@ There are two user types: +-----+ Subuser | +-----------+ -You can create, modify, view, suspend and remove users and subusers. In addition -to user and subuser IDs, you may add a display name and an email address for a -user. You can specify a key and secret, or generate a key and secret -automatically. When generating or specifying keys, note that user IDs correspond -to an S3 key type and subuser IDs correspond to a swift key type. Swift keys -also have access levels of ``read``, ``write``, ``readwrite`` and ``full``. +Users and subusers can be created, modified, viewed, suspended and removed. +you may add a Display names and an email addresses can be added to user +profiles. Keys and secrets can either be specified or generated automatically. +When generating or specifying keys, remember that user IDs correspond to S3 key +types and subuser IDs correspond to Swift key types. + +Swift keys have access levels of ``read``, ``write``, ``readwrite`` and +``full``. Create a User ------------- -To create a user (S3 interface), execute the following:: +To create a user (S3 interface), run a command of the following form: + +.. prompt:: bash - radosgw-admin user create --uid={username} --display-name="{display-name}" [--email={email}] + radosgw-admin user create --uid={username} --display-name="{display-name}" [--email={email}] -For example:: +For example: + +.. prompt:: bash - radosgw-admin user create --uid=johndoe --display-name="John Doe" --email=john@example.com + radosgw-admin user create --uid=johndoe --display-name="John Doe" --email=john@example.com .. code-block:: javascript @@ -75,32 +79,37 @@ For example:: "max_objects": -1}, "temp_url_keys": []} -Creating a user also creates an ``access_key`` and ``secret_key`` entry for use -with any S3 API-compatible client. +The creation of a user entails the creation of an ``access_key`` and a +``secret_key`` entry, which can be used with any S3 API-compatible client. -.. important:: Check the key output. Sometimes ``radosgw-admin`` - generates a JSON escape (``\``) character, and some clients - do not know how to handle JSON escape characters. Remedies include - removing the JSON escape character (``\``), encapsulating the string - in quotes, regenerating the key and ensuring that it - does not have a JSON escape character or specify the key and secret - manually. +.. important:: Check the key output. Sometimes ``radosgw-admin`` generates a + JSON escape (``\``) character, and some clients do not know how to handle + JSON escape characters. Remedies include removing the JSON escape character + (``\``), encapsulating the string in quotes, regenerating the key and + ensuring that it does not have a JSON escape character, or specifying the + key and secret manually. Create a Subuser ---------------- -To create a subuser (Swift interface) for the user, you must specify the user ID -(``--uid={username}``), a subuser ID and the access level for the subuser. :: +To create a subuser (a user of the Swift interface) for the user, specify the +user ID (``--uid={username}``), a subuser ID, and the subuser's access level: + +.. prompt:: bash - radosgw-admin subuser create --uid={uid} --subuser={uid} --access=[ read | write | readwrite | full ] + radosgw-admin subuser create --uid={uid} --subuser={uid} --access=[ read | write | readwrite | full ] -For example:: +For example: - radosgw-admin subuser create --uid=johndoe --subuser=johndoe:swift --access=full +.. prompt:: bash + radosgw-admin subuser create --uid=johndoe --subuser=johndoe:swift --access=full -.. note:: ``full`` is not ``readwrite``, as it also includes the access control policy. + +.. note:: ``full`` is not the same as ``readwrite``. The ``full`` access level + includes ``read`` and ``write``, but it also includes the access control + policy. .. code-block:: javascript @@ -133,102 +142,128 @@ For example:: Get User Info ------------- -To get information about a user, you must specify ``user info`` and the user ID -(``--uid={username}``) . :: +To get information about a user, specify ``user info`` and the user ID +(``--uid={username}``). Use a command of the following form: - radosgw-admin user info --uid=johndoe +.. prompt:: bash + radosgw-admin user info --uid=johndoe Modify User Info ---------------- -To modify information about a user, you must specify the user ID (``--uid={username}``) -and the attributes you want to modify. Typical modifications are to keys and secrets, -email addresses, display names and access levels. For example:: +To modify information about a user, specify the user ID (``--uid={username}``) +and the attributes that you want to modify. Typical modifications are made to +keys and secrets, email addresses, display names, and access levels. Use a +command of the following form: - radosgw-admin user modify --uid=johndoe --display-name="John E. Doe" +.. prompt:: bash -To modify subuser values, specify ``subuser modify``, user ID and the subuser ID. For example:: + radosgw-admin user modify --uid=johndoe --display-name="John E. Doe" - radosgw-admin subuser modify --uid=johndoe --subuser=johndoe:swift --access=full +To modify subuser values, specify ``subuser modify``, user ID and the subuser +ID. Use a command of the following form: +.. prompt:: bash -User Enable/Suspend -------------------- + radosgw-admin subuser modify --uid=johndoe --subuser=johndoe:swift --access=full + + +User Suspend +------------ -When you create a user, the user is enabled by default. However, you may suspend -user privileges and re-enable them at a later time. To suspend a user, specify -``user suspend`` and the user ID. :: +When a user is created, the user is enabled by default. However, it is possible +to suspend user privileges and to re-enable them at a later time. To suspend a +user, specify ``user suspend`` and the user ID in a command of the following +form: - radosgw-admin user suspend --uid=johndoe +.. prompt:: bash -To re-enable a suspended user, specify ``user enable`` and the user ID. :: + radosgw-admin user suspend --uid=johndoe - radosgw-admin user enable --uid=johndoe +User Enable +----------- +To re-enable a suspended user, provide ``user enable`` and specify the user ID +in a command of the following form: + +.. prompt:: bash + + radosgw-admin user enable --uid=johndoe -.. note:: Disabling the user disables the subuser. +.. note:: Disabling the user also disables any subusers. Remove a User ------------- -When you remove a user, the user and subuser are removed from the system. -However, you may remove just the subuser if you wish. To remove a user (and -subuser), specify ``user rm`` and the user ID. :: +When you remove a user, you also remove any subusers associated with the user. - radosgw-admin user rm --uid=johndoe +It is possible to remove a subuser without removing its associated user. This +is covered in the section called :ref:`Remove a Subuser <radosgw-admin-remove-a-subuser>`. -To remove the subuser only, specify ``subuser rm`` and the subuser ID. :: +To remove a user and any subusers associated with it, use the ``user rm`` +command and provide the user ID of the user to be removed. Use a command of the +following form: - radosgw-admin subuser rm --subuser=johndoe:swift +.. prompt:: bash + radosgw-admin user rm --uid=johndoe Options include: - **Purge Data:** The ``--purge-data`` option purges all data associated - to the UID. + with the UID. - **Purge Keys:** The ``--purge-keys`` option purges all keys associated - to the UID. + with the UID. +.. _radosgw-admin-remove-a-subuser: Remove a Subuser ---------------- -When you remove a sub user, you are removing access to the Swift interface. -The user will remain in the system. To remove the subuser, specify -``subuser rm`` and the subuser ID. :: +Removing a subuser removes access to the Swift interface or to S3. The user +associated with the removed subuser remains in the system after the subuser's +removal. - radosgw-admin subuser rm --subuser=johndoe:swift +To remove the subuser, use the command ``subuser rm`` and provide the subuser +ID of the subuser to be removed. Use a command of the following form: +.. prompt:: bash + radosgw-admin subuser rm --subuser=johndoe:swift Options include: - **Purge Keys:** The ``--purge-keys`` option purges all keys associated - to the UID. + with the UID. -Add / Remove a Key ------------------------- +Add or Remove a Key +-------------------- -Both users and subusers require the key to access the S3 or Swift interface. To -use S3, the user needs a key pair which is composed of an access key and a -secret key. On the other hand, to use Swift, the user typically needs a secret -key (password), and use it together with the associated user ID. You may create -a key and either specify or generate the access key and/or secret key. You may -also remove a key. Options include: +Both users and subusers require a key to access the S3 or Swift interface. To +use S3, the user needs a key pair which is composed of an access key and a +secret key. To use Swift, the user needs a secret key (password), which is used +together with its associated user ID. You can create a key and either specify +or generate the access key or secret key. You can also remove a key. Options +include: -- ``--key-type=<type>`` specifies the key type. The options are: s3, swift +- ``--key-type=<type>`` specifies the key type. The options are: ``s3``, ``swift`` - ``--access-key=<key>`` manually specifies an S3 access key. - ``--secret-key=<key>`` manually specifies a S3 secret key or a Swift secret key. - ``--gen-access-key`` automatically generates a random S3 access key. - ``--gen-secret`` automatically generates a random S3 secret key or a random Swift secret key. -An example how to add a specified S3 key pair for a user. :: +Adding S3 keys +~~~~~~~~~~~~~~ + +To add a specific S3 key pair for a user, run a command of the following form: - radosgw-admin key create --uid=foo --key-type=s3 --access-key fooAccessKey --secret-key fooSecretKey +.. prompt:: bash + + radosgw-admin key create --uid=foo --key-type=s3 --access-key fooAccessKey --secret-key fooSecretKey .. code-block:: javascript @@ -243,11 +278,17 @@ An example how to add a specified S3 key pair for a user. :: "secret_key": "fooSecretKey"}], } -Note that you may create multiple S3 key pairs for a user. +.. note:: You can create multiple S3 key pairs for a user. + +Adding Swift secret keys +~~~~~~~~~~~~~~~~~~~~~~~~ -To attach a specified swift secret key for a subuser. :: +To attach a specific Swift secret key for a subuser, run a command of the +following form: - radosgw-admin key create --subuser=foo:bar --key-type=swift --secret-key barSecret +.. prompt:: bash + + radosgw-admin key create --subuser=foo:bar --key-type=swift --secret-key barSecret .. code-block:: javascript @@ -263,11 +304,18 @@ To attach a specified swift secret key for a subuser. :: { "user": "foo:bar", "secret_key": "asfghjghghmgm"}]} -Note that a subuser can have only one swift secret key. +.. note:: A subuser can have only one Swift secret key. + +Associating subusers with S3 key pairs +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Subusers can also be used with S3 APIs if the subuser is associated with a S3 key pair. :: +Subusers can also be used with S3 APIs if the subuser is associated with a S3 +key pair. To associate a subuser with an S3 key pair, run a command of the +following form: - radosgw-admin key create --subuser=foo:bar --key-type=s3 --access-key barAccessKey --secret-key barSecretKey +.. prompt:: bash + + radosgw-admin key create --subuser=foo:bar --key-type=s3 --access-key barAccessKey --secret-key barSecretKey .. code-block:: javascript @@ -286,49 +334,70 @@ Subusers can also be used with S3 APIs if the subuser is associated with a S3 ke } -To remove a S3 key pair, specify the access key. :: +Removing S3 key pairs +~~~~~~~~~~~~~~~~~~~~~ - radosgw-admin key rm --uid=foo --key-type=s3 --access-key=fooAccessKey +To remove a S3 key pair, specify the access key to be removed. Run a command of the following form: -To remove the swift secret key. :: +.. prompt:: bash - radosgw-admin key rm --subuser=foo:bar --key-type=swift + radosgw-admin key rm --uid=foo --key-type=s3 --access-key=fooAccessKey +Removing Swift secret keys +~~~~~~~~~~~~~~~~~~~~~~~~~~ -Add / Remove Admin Capabilities -------------------------------- +To remove a Swift secret key, run a command of the following form: + +.. prompt:: bash + + radosgw-admin key rm --subuser=foo:bar --key-type=swift + + +Add or Remove Admin Capabilities +-------------------------------- + +The Ceph Storage Cluster provides an administrative API that enables users to +execute administrative functions via the REST API. By default, users do NOT +have access to this API. To enable a user to exercise administrative +functionality, provide the user with administrative capabilities. + +To add administrative capabilities to a user, run a command of the following +form: -The Ceph Storage Cluster provides an administrative API that enables users to -execute administrative functions via the REST API. By default, users do NOT have -access to this API. To enable a user to exercise administrative functionality, -provide the user with administrative capabilities. +.. prompt:: bash -To add administrative capabilities to a user, execute the following:: + radosgw-admin caps add --uid={uid} --caps={caps} - radosgw-admin caps add --uid={uid} --caps={caps} +You can add read, write or all capabilities to users, buckets, metadata and +usage (utilization). To do this, use a command-line option of the following +form: -You can add read, write or all capabilities to users, buckets, metadata and -usage (utilization). For example:: +.. prompt:: bash - --caps="[users|buckets|metadata|usage|zone|amz-cache|info|bilog|mdlog|datalog|user-policy|oidc-provider|roles|ratelimit]=[*|read|write|read, write]" + --caps="[users|buckets|metadata|usage|zone|amz-cache|info|bilog|mdlog|datalog|user-policy|oidc-provider|roles|ratelimit]=[\*|read|write|read, write]" -For example:: +For example: + +.. prompt:: bash radosgw-admin caps add --uid=johndoe --caps="users=*;buckets=*" +To remove administrative capabilities from a user, run a command of the +following form: -To remove administrative capabilities from a user, execute the following:: +.. prompt:: bash - radosgw-admin caps rm --uid=johndoe --caps={caps} + radosgw-admin caps rm --uid=johndoe --caps={caps} + Quota Management ================ -The Ceph Object Gateway enables you to set quotas on users and buckets owned by -users. Quotas include the maximum number of objects in a bucket and the maximum -storage size a bucket can hold. +The Ceph Object Gateway makes it possible for you to set quotas on users and +buckets owned by users. Quotas include the maximum number of objects in a +bucket and the maximum storage size a bucket can hold. - **Bucket:** The ``--bucket`` option allows you to specify a quota for buckets the user owns. @@ -337,159 +406,202 @@ storage size a bucket can hold. the maximum number of objects. A negative value disables this setting. - **Maximum Size:** The ``--max-size`` option allows you to specify a quota - size in B/K/M/G/T, where B is the default. A negative value disables this setting. + size in B/K/M/G/T, where B is the default. A negative value disables this + setting. - **Quota Scope:** The ``--quota-scope`` option sets the scope for the quota. - The options are ``bucket`` and ``user``. Bucket quotas apply to buckets a - user owns. User quotas apply to a user. + The options are ``bucket`` and ``user``. Bucket quotas apply to each bucket + owned by the user. User Quotas are summed across all buckets owned by the + user. Set User Quota -------------- Before you enable a quota, you must first set the quota parameters. -For example:: +To set quota parameters, run a command of the following form: + +.. prompt:: bash + + radosgw-admin quota set --quota-scope=user --uid=<uid> [--max-objects=<num objects>] [--max-size=<max size>] - radosgw-admin quota set --quota-scope=user --uid=<uid> [--max-objects=<num objects>] [--max-size=<max size>] +For example: -For example:: +.. prompt:: bash - radosgw-admin quota set --quota-scope=user --uid=johndoe --max-objects=1024 --max-size=1024B + radosgw-admin quota set --quota-scope=user --uid=johndoe --max-objects=1024 --max-size=1024B +Passing a negative value as an argument of ``--max-objects`` or ``--max-size`` +disables the given quota attribute. -A negative value for num objects and / or max size means that the -specific quota attribute check is disabled. +Enabling and Disabling User Quota +--------------------------------- -Enable/Disable User Quota -------------------------- +After a user quota is set, it must be enabled in order to take effect. To enable a user quota, run a command of the following form: -Once you set a user quota, you may enable it. For example:: +.. prompt:: bash - radosgw-admin quota enable --quota-scope=user --uid=<uid> + radosgw-admin quota enable --quota-scope=user --uid=<uid> -You may disable an enabled user quota. For example:: +To disable an enabled user quota, run a command of the following form: - radosgw-admin quota disable --quota-scope=user --uid=<uid> +.. prompt:: bash + + radosgw-admin quota disable --quota-scope=user --uid=<uid> Set Bucket Quota ---------------- Bucket quotas apply to the buckets owned by the specified ``uid``. They are -independent of the user. :: +independent of the user. To set a bucket quota, run a command of the following +form: + +.. prompt:: bash + + radosgw-admin quota set --uid=<uid> --quota-scope=bucket [--max-objects=<num objects>] [--max-size=<max size] + +A negative value for ``--max-objects`` or ``--max-size`` means that the +specific quota attribute is disabled. - radosgw-admin quota set --uid=<uid> --quota-scope=bucket [--max-objects=<num objects>] [--max-size=<max size] -A negative value for num objects and / or max size means that the -specific quota attribute check is disabled. +Enable and Disabling Bucket Quota +--------------------------------- +After a bucket quota has been set, it must be enabled in order to take effect. +To enable a bucket quota, run a command of the following form: -Enable/Disable Bucket Quota ---------------------------- +.. prompt:: bash -Once you set a bucket quota, you may enable it. For example:: + radosgw-admin quota enable --quota-scope=bucket --uid=<uid> - radosgw-admin quota enable --quota-scope=bucket --uid=<uid> +To disable an enabled bucket quota, run a command of the following form: -You may disable an enabled bucket quota. For example:: +.. prompt:: bash - radosgw-admin quota disable --quota-scope=bucket --uid=<uid> + radosgw-admin quota disable --quota-scope=bucket --uid=<uid> Get Quota Settings ------------------ -You may access each user's quota settings via the user information +You can access each user's quota settings via the user information API. To read user quota setting information with the CLI interface, -execute the following:: +run a command of the following form: - radosgw-admin user info --uid=<uid> +.. prompt:: bash + + radosgw-admin user info --uid=<uid> Update Quota Stats ------------------ -Quota stats get updated asynchronously. You can update quota -statistics for all users and all buckets manually to retrieve -the latest quota stats. :: +Quota stats are updated asynchronously. You can update quota statistics for all +users and all buckets manually to force an update of the latest quota stats. To +update quota statistics for all users and all buckets in order to retrieve the +latest quota statistics, run a command of the following form: + +.. prompt:: bash - radosgw-admin user stats --uid=<uid> --sync-stats + radosgw-admin user stats --uid=<uid> --sync-stats .. _rgw_user_usage_stats: Get User Usage Stats -------------------- -To see how much of the quota a user has consumed, execute the following:: +To see how much of a quota a user has consumed, run a command of the following +form: + +.. prompt:: bash - radosgw-admin user stats --uid=<uid> + radosgw-admin user stats --uid=<uid> -.. note:: You should execute ``radosgw-admin user stats`` with the - ``--sync-stats`` option to receive the latest data. +.. note:: Run ``radosgw-admin user stats`` with the ``--sync-stats`` option to + receive the latest data. Default Quotas -------------- -You can set default quotas in the config. These defaults are used when -creating a new user and have no effect on existing users. If the -relevant default quota is set in config, then that quota is set on the -new user, and that quota is enabled. See ``rgw bucket default quota max objects``, -``rgw bucket default quota max size``, ``rgw user default quota max objects``, and -``rgw user default quota max size`` in `Ceph Object Gateway Config Reference`_ +You can set default quotas in the Ceph Object Gateway config. **These defaults +will be used only when creating new users and will have no effect on existing +users.** If a default quota is set in the Ceph Object Gateway Config, then that +quota is set for all subsequently-created users, and that quota is enabled. See +``rgw_bucket_default_quota_max_objects``, +``rgw_bucket_default_quota_max_size``, ``rgw_user_default_quota_max_objects``, +and ``rgw_user_default_quota_max_size`` in `Ceph Object Gateway Config +Reference`_ Quota Cache ----------- -Quota statistics are cached on each RGW instance. If there are multiple -instances, then the cache can keep quotas from being perfectly enforced, as -each instance will have a different view of quotas. The options that control -this are ``rgw bucket quota ttl``, ``rgw user quota bucket sync interval`` and -``rgw user quota sync interval``. The higher these values are, the more -efficient quota operations are, but the more out-of-sync multiple instances -will be. The lower these values are, the closer to perfect enforcement -multiple instances will achieve. If all three are 0, then quota caching is -effectively disabled, and multiple instances will have perfect quota -enforcement. See `Ceph Object Gateway Config Reference`_ +Quota statistics are cached by each RGW instance. If multiple RGW instances are +deployed, then this cache may prevent quotas from being perfectly enforced, +because each instance may have a different set of quota settings. + +Here are the options that control this behavior: + +:confval:`rgw_bucket_quota_ttl` +:confval:`rgw_user_quota_bucket_sync_interval` +:confval:`rgw_user_quota_sync_interval` + +Increasing these values will make quota operations more efficient at the cost +of increasing the likelihood that the multiple RGW instances may not +consistently have the latest quota settings. Decreasing these values brings +the multiple RGW instances closer to perfect quota synchronization. + +If all three values are set to ``0`` , then quota caching is effectively +disabled, and multiple instances will have perfect quota enforcement. See +`Ceph Object Gateway Config Reference`_. Reading / Writing Global Quotas ------------------------------- You can read and write global quota settings in the period configuration. To -view the global quota settings:: +view the global quota settings, run the following command: - radosgw-admin global quota get +.. prompt:: bash -The global quota settings can be manipulated with the ``global quota`` + radosgw-admin global quota get + +Global quota settings can be manipulated with the ``global quota`` counterparts of the ``quota set``, ``quota enable``, and ``quota disable`` -commands. :: +commands, as in the following examples: + +.. prompt:: bash radosgw-admin global quota set --quota-scope bucket --max-objects 1024 radosgw-admin global quota enable --quota-scope bucket -.. note:: In a multisite configuration, where there is a realm and period +.. note:: In a multisite configuration where there is a realm and period present, changes to the global quotas must be committed using ``period - update --commit``. If there is no period present, the rados gateway(s) must + update --commit``. If no period is present, the RGW instances must be restarted for the changes to take effect. Rate Limit Management ===================== -The Ceph Object Gateway makes it possible to set rate limits on users and -buckets. "Rate limit" includes the maximum number of read operations (read -ops) and write operations (write ops) per minute and the number of bytes per -minute that can be written or read per user or per bucket. +Quotas can be set for The Ceph Object Gateway on users and buckets. The "rate +limit" includes the maximum number of read operations (read ops) and write +operations (write ops) per minute as well as the number of bytes per minute +that can be written or read per user or per bucket. +Read Requests and Write Requests +-------------------------------- Operations that use the ``GET`` method or the ``HEAD`` method in their REST requests are "read requests". All other requests are "write requests". +How Metrics Work +---------------- Each object gateway tracks per-user metrics separately from bucket metrics. These metrics are not shared with other gateways. The configured limits should be divided by the number of active object gateways. For example, if "user A" is to be be limited to 10 ops per minute and there are two object gateways in the cluster, then the limit on "user A" should be ``5`` (10 ops per minute / 2 -RGWs). If the requests are **not** balanced between RGWs, the rate limit might +RGWs). If the requests are **not** balanced between RGWs, the rate limit might be underutilized. For example: if the ops limit is ``5`` and there are two RGWs, **but** the Load Balancer sends load to only one of those RGWs, the effective limit is 5 ops, because this limit is enforced per RGW. If the rate @@ -518,196 +630,263 @@ time has elapsed, "user A" will be able to send ``GET`` requests again. - **User:** The ``--uid`` option allows you to specify a rate limit for a user. -- **Maximum Read Ops:** The ``--max-read-ops`` setting allows you to specify - the maximum number of read ops per minute per RGW. A 0 value disables this setting (which means unlimited access). +- **Maximum Read Ops:** The ``--max-read-ops`` setting allows you to limit read + bytes per minute per RGW instance. A ``0`` value disables throttling. -- **Maximum Read Bytes:** The ``--max-read-bytes`` setting allows you to specify - the maximum number of read bytes per minute per RGW. A 0 value disables this setting (which means unlimited access). +- **Maximum Read Bytes:** The ``--max-read-bytes`` setting allows you to limit + read bytes per minute per RGW instance. A ``0`` value disables throttling. - **Maximum Write Ops:** The ``--max-write-ops`` setting allows you to specify - the maximum number of write ops per minute per RGW. A 0 value disables this setting (which means unlimited access). + the maximum number of write ops per minute per RGW instance. A ``0`` value + disables throttling. -- **Maximum Write Bytes:** The ``--max-write-bytes`` setting allows you to specify - the maximum number of write bytes per minute per RGW. A 0 value disables this setting (which means unlimited access). +- **Maximum Write Bytes:** The ``--max-write-bytes`` setting allows you to + specify the maximum number of write bytes per minute per RGW instance. A + ``0`` value disables throttling. -- **Rate Limit Scope:** The ``--ratelimit-scope`` option sets the scope for the rate limit. - The options are ``bucket`` , ``user`` and ``anonymous``. Bucket rate limit apply to buckets. - The user rate limit applies to a user. Anonymous applies to an unauthenticated user. - Anonymous scope is only available for global rate limit. +- **Rate Limit Scope:** The ``--ratelimit-scope`` option sets the scope for the + rate limit. The options are ``bucket`` , ``user`` and ``anonymous``. Bucket + rate limit apply to buckets. The user rate limit applies to a user. The + ``anonymous`` option applies to an unauthenticated user. Anonymous scope is + available only for global rate limit. Set User Rate Limit ------------------- -Before you enable a rate limit, you must first set the rate limit parameters. -For example:: +Before you can enable a rate limit, you must first set the rate limit +parameters. The following is the general form of commands that set rate limit +parameters: - radosgw-admin ratelimit set --ratelimit-scope=user --uid=<uid> <[--max-read-ops=<num ops>] [--max-read-bytes=<num bytes>] - [--max-write-ops=<num ops>] [--max-write-bytes=<num bytes>]> +.. prompt:: bash + + radosgw-admin ratelimit set --ratelimit-scope=user --uid=<uid> + <[--max-read-ops=<num ops>] [--max-read-bytes=<num bytes>] + [--max-write-ops=<num ops>] [--max-write-bytes=<num bytes>]> -For example:: +An example of using ``radosgw-admin ratelimit set`` to set a rate limit might +look like this: - radosgw-admin ratelimit set --ratelimit-scope=user --uid=johndoe --max-read-ops=1024 --max-write-bytes=10240 +.. prompt:: bash + radosgw-admin ratelimit set --ratelimit-scope=user --uid=johndoe --max-read-ops=1024 --max-write-bytes=10240 -A 0 value for num ops and / or num bytes means that the -specific rate limit attribute check is disabled. + +A value of ``0`` assigned to ``--max-read-ops``, ``--max-read-bytes``, +``--max-write-ops``, or ``--max-write-bytes`` disables the specified rate +limit. Get User Rate Limit ------------------- -Get the current configured rate limit parameters -For example:: +The ``radosgw-admin ratelimit get`` command returns the currently configured +rate limit parameters. + +The following is the general form of the command that returns the current +configured limit parameters: + +.. prompt:: bash + + radosgw-admin ratelimit get --ratelimit-scope=user --uid=<uid> - radosgw-admin ratelimit get --ratelimit-scope=user --uid=<uid> +An example of using ``radosgw-admin ratelimit get`` to return the rate limit +parameters might look like this: -For example:: +.. prompt:: bash - radosgw-admin ratelimit get --ratelimit-scope=user --uid=johndoe + radosgw-admin ratelimit get --ratelimit-scope=user --uid=johndoe +A value of ``0`` assigned to ``--max-read-ops``, ``--max-read-bytes``, +``--max-write-ops``, or ``--max-write-bytes`` disables the specified rate +limit. -A 0 value for num ops and / or num bytes means that the -specific rate limit attribute check is disabled. +Enable and Disable User Rate Limit +---------------------------------- -Enable/Disable User Rate Limit ------------------------------- +After you have set a user rate limit, you must enable it in order for it to +take effect. Run a command of the following form to enable a user rate limit: -Once you set a user rate limit, you may enable it. For example:: +.. prompt:: bash - radosgw-admin ratelimit enable --ratelimit-scope=user --uid=<uid> + radosgw-admin ratelimit enable --ratelimit-scope=user --uid=<uid> -You may disable an enabled user rate limit. For example:: +To disable an enabled user rate limit, run a command of the following form: - radosgw-admin ratelimit disable --ratelimit-scope=user --uid=johndoe +.. prompt:: bash + + radosgw-admin ratelimit disable --ratelimit-scope=user --uid=johndoe Set Bucket Rate Limit --------------------- Before you enable a rate limit, you must first set the rate limit parameters. -For example:: +The following is the general form of commands that set rate limit parameters: + +.. prompt:: bash - radosgw-admin ratelimit set --ratelimit-scope=bucket --bucket=<bucket> <[--max-read-ops=<num ops>] [--max-read-bytes=<num bytes>] + radosgw-admin ratelimit set --ratelimit-scope=bucket --bucket=<bucket> <[--max-read-ops=<num ops>] [--max-read-bytes=<num bytes>] [--max-write-ops=<num ops>] [--max-write-bytes=<num bytes>]> -For example:: +An example of using ``radosgw-admin ratelimit set`` to set a rate limit for a +bucket might look like this: + +.. prompt:: bash - radosgw-admin ratelimit set --ratelimit-scope=bucket --bucket=mybucket --max-read-ops=1024 --max-write-bytes=10240 + radosgw-admin ratelimit set --ratelimit-scope=bucket --bucket=mybucket --max-read-ops=1024 --max-write-bytes=10240 -A 0 value for num ops and / or num bytes means that the -specific rate limit attribute check is disabled. +A value of ``0`` assigned to ``--max-read-ops``, ``--max-read-bytes``, +``--max-write-ops``, or ``-max-write-bytes`` disables the specified bucket rate +limit. Get Bucket Rate Limit --------------------- -Get the current configured rate limit parameters -For example:: +The ``radosgw-admin ratelimit get`` command returns the current configured rate +limit parameters. - radosgw-admin ratelimit set --ratelimit-scope=bucket --bucket=<bucket> +The following is the general form of the command that returns the current +configured limit parameters: -For example:: +.. prompt:: bash - radosgw-admin ratelimit get --ratelimit-scope=bucket --bucket=mybucket + radosgw-admin ratelimit get --ratelimit-scope=bucket --bucket=<bucket> +An example of using ``radosgw-admin ratelimit get`` to return the rate limit +parameters for a bucket might look like this: -A 0 value for num ops and / or num bytes means that the -specific rate limit attribute check is disabled. +.. prompt:: bash + radosgw-admin ratelimit get --ratelimit-scope=bucket --bucket=mybucket + +A value of ``0`` assigned to ``--max-read-ops``, ``--max-read-bytes``, +``--max-write-ops``, or ``--max-write-bytes`` disables the specified rate +limit. -Enable/Disable Bucket Rate Limit --------------------------------- -Once you set a bucket rate limit, you may enable it. For example:: +Enable and Disable Bucket Rate Limit +------------------------------------ - radosgw-admin ratelimit enable --ratelimit-scope=bucket --bucket=<bucket> +After you set a bucket rate limit, you can enable it. The following is the +general form of the ``radosgw-admin ratelimit enable`` command that enables +bucket rate limits: -You may disable an enabled bucket rate limit. For example:: +.. prompt:: bash - radosgw-admin ratelimit disable --ratelimit-scope=bucket --uid=mybucket + radosgw-admin ratelimit enable --ratelimit-scope=bucket --bucket=<bucket> +An enabled bucket rate limit can be disabled by running a command of the following form: -Reading / Writing Global Rate Limit Configuration -------------------------------------------------- +.. prompt:: bash -You can read and write global rate limit settings in the period configuration. To -view the global rate limit settings:: + radosgw-admin ratelimit disable --ratelimit-scope=bucket --uid=mybucket - radosgw-admin global ratelimit get +Reading and Writing Global Rate Limit Configuration +--------------------------------------------------- + +You can read and write global rate limit settings in the period's configuration. +To view the global rate limit settings, run the following command: + +.. prompt:: bash + + radosgw-admin global ratelimit get The global rate limit settings can be manipulated with the ``global ratelimit`` -counterparts of the ``ratelimit set``, ``ratelimit enable``, and ``ratelimit disable`` -commands. Per user and per bucket ratelimit configuration is overriding the global configuration:: +counterparts of the ``ratelimit set``, ``ratelimit enable``, and ``ratelimit +disable`` commands. Per-user and per-bucket ratelimit configurations override +the global configuration: + +.. prompt:: bash - radosgw-admin global ratelimit set --ratelimit-scope bucket --max-read-ops=1024 - radosgw-admin global ratelimit enable --ratelimit-scope bucket + radosgw-admin global ratelimit set --ratelimit-scope bucket --max-read-ops=1024 + radosgw-admin global ratelimit enable --ratelimit-scope bucket -The global rate limit can configure rate limit scope for all authenticated users:: +The global rate limit can be used to configure the scope of the rate limit for +all authenticated users: - radosgw-admin global ratelimit set --ratelimit-scope user --max-read-ops=1024 - radosgw-admin global ratelimit enable --ratelimit-scope user +.. prompt:: bash -The global rate limit can configure rate limit scope for all unauthenticated users:: + radosgw-admin global ratelimit set --ratelimit-scope user --max-read-ops=1024 + radosgw-admin global ratelimit enable --ratelimit-scope user + +The global rate limit can be used to configure the scope of the rate limit for +all unauthenticated users: + +.. prompt:: bash - radosgw-admin global ratelimit set --ratelimit-scope=anonymous --max-read-ops=1024 - radosgw-admin global ratelimit enable --ratelimit-scope=anonymous + radosgw-admin global ratelimit set --ratelimit-scope=anonymous --max-read-ops=1024 + radosgw-admin global ratelimit enable --ratelimit-scope=anonymous -.. note:: In a multisite configuration, where there is a realm and period - present, changes to the global rate limit must be committed using ``period - update --commit``. If there is no period present, the rados gateway(s) must - be restarted for the changes to take effect. +.. note:: In a multisite configuration where a realm and a period are present, + any changes to the global rate limit must be committed using ``period update + --commit``. If no period is present, the rados gateway(s) must be restarted + for the changes to take effect. Usage ===== -The Ceph Object Gateway logs usage for each user. You can track -user usage within date ranges too. +The Ceph Object Gateway logs the usage of each user. You can track the usage of +each user within a specified date range. + +- Add ``rgw_enable_usage_log = true`` in the ``[client.rgw]`` section of + ``ceph.conf`` and restart the ``radosgw`` service. + + .. note:: Until Ceph has a linkable macro that handles all the many ways that options can be set, we advise that you set ``rgw_enable_usage_log = true`` in central config or in ``ceph.conf`` and restart all RGWs. -- Add ``rgw enable usage log = true`` in [client.rgw] section of ceph.conf and restart the radosgw service. Options include: - **Start Date:** The ``--start-date`` option allows you to filter usage - stats from a particular start date and an optional start time + stats from a specified start date and an optional start time (**format:** ``yyyy-mm-dd [HH:MM:SS]``). - **End Date:** The ``--end-date`` option allows you to filter usage up - to a particular date and an optional end time + to a particular end date and an optional end time (**format:** ``yyyy-mm-dd [HH:MM:SS]``). - **Log Entries:** The ``--show-log-entries`` option allows you to specify - whether or not to include log entries with the usage stats + whether to include log entries with the usage stats (options: ``true`` | ``false``). -.. note:: You may specify time with minutes and seconds, but it is stored - with 1 hour resolution. +.. note:: You can specify time to a precision of minutes and seconds, but the + specified time is stored only with a one-hour resolution. Show Usage ---------- -To show usage statistics, specify the ``usage show``. To show usage for a -particular user, you must specify a user ID. You may also specify a start date, -end date, and whether or not to show log entries.:: +To show usage statistics, use the ``radosgw-admin usage show`` command. To show +usage for a particular user, you must specify a user ID. You can also specify a +start date, end date, and whether to show log entries. The following is an example +of such a command: + +.. prompt:: bash $ - radosgw-admin usage show --uid=johndoe --start-date=2012-03-01 --end-date=2012-04-01 + radosgw-admin usage show --uid=johndoe --start-date=2012-03-01 --end-date=2012-04-01 -You may also show a summary of usage information for all users by omitting a user ID. :: +You can show a summary of usage information for all users by omitting the user +ID, as in the following example command: - radosgw-admin usage show --show-log-entries=false +.. prompt:: bash $ + + radosgw-admin usage show --show-log-entries=false Trim Usage ---------- -With heavy use, usage logs can begin to take up storage space. You can trim -usage logs for all users and for specific users. You may also specify date -ranges for trim operations. :: +Usage logs can consume significant storage space, especially over time and with +heavy use. You can trim the usage logs for all users and for specific users. +You can also specify date ranges for trim operations, as in the following +example commands: + +.. prompt:: bash $ - radosgw-admin usage trim --start-date=2010-01-01 --end-date=2010-12-31 - radosgw-admin usage trim --uid=johndoe - radosgw-admin usage trim --uid=johndoe --end-date=2013-12-31 + radosgw-admin usage trim --start-date=2010-01-01 --end-date=2010-12-31 + radosgw-admin usage trim --uid=johndoe + radosgw-admin usage trim --uid=johndoe --end-date=2013-12-31 .. _radosgw-admin: ../../man/8/radosgw-admin/ diff --git a/doc/radosgw/adminops.rst b/doc/radosgw/adminops.rst index 0974b95c5..f1faac6b1 100644 --- a/doc/radosgw/adminops.rst +++ b/doc/radosgw/adminops.rst @@ -275,6 +275,9 @@ Get User Info Get user information. +Either a ``uid`` or ``access-key`` must be supplied as a request parameter. We recommend supplying uid. +If both are provided but correspond to different users, the info for the user specified with ``uid`` will be returned. + :caps: users=read @@ -297,6 +300,13 @@ Request Parameters :Example: ``foo_user`` :Required: Yes +``access-key`` + +:Description: The S3 access key of the user for which the information is requested. +:Type: String +:Example: ``ABCD0EF12GHIJ2K34LMN`` +:Required: No + Response Entities ~~~~~~~~~~~~~~~~~ diff --git a/doc/radosgw/compression.rst b/doc/radosgw/compression.rst index fba0681da..429dde91c 100644 --- a/doc/radosgw/compression.rst +++ b/doc/radosgw/compression.rst @@ -4,12 +4,18 @@ Compression .. versionadded:: Kraken -The Ceph Object Gateway supports server-side compression of uploaded objects, -using any of Ceph's existing compression plugins. +The Ceph Object Gateway supports server-side compression of uploaded objects. +using any of the existing compression plugins. .. note:: The Reef release added a :ref:`feature_compress_encrypted` zonegroup feature to enable compression with `Server-Side Encryption`_. +Supported compression plugins include the following: + +* lz4 +* snappy +* zlib +* zstd Configuration ============= @@ -18,14 +24,15 @@ Compression can be enabled on a storage class in the Zone's placement target by providing the ``--compression=<type>`` option to the command ``radosgw-admin zone placement modify``. -The compression ``type`` refers to the name of the compression plugin to use -when writing new object data. Each compressed object remembers which plugin -was used, so changing this setting does not hinder the ability to decompress -existing objects, nor does it force existing objects to be recompressed. +The compression ``type`` refers to the name of the compression plugin that will +be used when writing new object data. Each compressed object remembers which +plugin was used, so any change to this setting will neither affect Ceph's +ability to decompress existing objects nor require existing objects to be +recompressed. -This compression setting applies to all new objects uploaded to buckets using -this placement target. Compression can be disabled by setting the ``type`` to -an empty string or ``none``. +Compression settings apply to all new objects uploaded to buckets using this +placement target. Compression can be disabled by setting the ``type`` to an +empty string or ``none``. For example:: @@ -62,11 +69,15 @@ For example:: Statistics ========== -While all existing commands and APIs continue to report object and bucket -sizes based their uncompressed data, compression statistics for a given bucket -are included in its ``bucket stats``:: +Run the ``radosgw-admin bucket stats`` command to see compression statistics +for a given bucket: + +.. prompt:: bash + + radosgw-admin bucket stats --bucket=<name> + +:: - $ radosgw-admin bucket stats --bucket=<name> { ... "usage": { @@ -83,6 +94,9 @@ are included in its ``bucket stats``:: ... } +Other commands and APIs will report object and bucket sizes based on their +uncompressed data. + The ``size_utilized`` and ``size_kb_utilized`` fields represent the total size of compressed data, in bytes and kilobytes respectively. diff --git a/doc/radosgw/index.rst b/doc/radosgw/index.rst index 704436202..536bfbb55 100644 --- a/doc/radosgw/index.rst +++ b/doc/radosgw/index.rst @@ -15,13 +15,13 @@ Storage Clusters. :term:`Ceph Object Storage` supports two interfaces: that is compatible with a large subset of the OpenStack Swift API. Ceph Object Storage uses the Ceph Object Gateway daemon (``radosgw``), an HTTP -server designed for interacting with a Ceph Storage Cluster. The Ceph Object +server designed to interact with a Ceph Storage Cluster. The Ceph Object Gateway provides interfaces that are compatible with both Amazon S3 and OpenStack Swift, and it has its own user management. Ceph Object Gateway can -store data in the same Ceph Storage Cluster in which data from Ceph File System -clients and Ceph Block Device clients is stored. The S3 API and the Swift API -share a common namespace, which makes it possible to write data to a Ceph -Storage Cluster with one API and then retrieve that data with the other API. +use a single Ceph Storage cluster to store data from Ceph File System and from +Ceph Block device clients. The S3 API and the Swift API share a common +namespace, which means that it is possible to write data to a Ceph Storage +Cluster with one API and then retrieve that data with the other API. .. ditaa:: diff --git a/doc/radosgw/multisite.rst b/doc/radosgw/multisite.rst index c7627371d..7c03a4d14 100644 --- a/doc/radosgw/multisite.rst +++ b/doc/radosgw/multisite.rst @@ -24,49 +24,48 @@ Varieties of Multi-site Configuration .. versionadded:: Jewel -Beginning with the Kraken release, Ceph supports several multi-site -configurations for the Ceph Object Gateway: +Since the Kraken release, Ceph has supported several multi-site configurations +for the Ceph Object Gateway: -- **Multi-zone:** A more advanced topology, the "multi-zone" configuration, is - possible. A multi-zone configuration consists of one zonegroup and - multiple zones, with each zone consisting of one or more `ceph-radosgw` - instances. **Each zone is backed by its own Ceph Storage Cluster.** +- **Multi-zone:** The "multi-zone" configuration has a complex topology. A + multi-zone configuration consists of one zonegroup and multiple zones. Each + zone consists of one or more `ceph-radosgw` instances. **Each zone is backed + by its own Ceph Storage Cluster.** The presence of multiple zones in a given zonegroup provides disaster recovery for that zonegroup in the event that one of the zones experiences a - significant failure. Beginning with the Kraken release, each zone is active - and can receive write operations. A multi-zone configuration that contains - multiple active zones enhances disaster recovery and can also be used as a - foundation for content delivery networks. + significant failure. Each zone is active and can receive write operations. A + multi-zone configuration that contains multiple active zones enhances + disaster recovery and can be used as a foundation for content-delivery + networks. - **Multi-zonegroups:** Ceph Object Gateway supports multiple zonegroups (which were formerly called "regions"). Each zonegroup contains one or more zones. - If two zones are in the same zonegroup, and if that zonegroup is in the same - realm as a second zonegroup, then the objects stored in the two zones share - a global object namespace. This global object namespace ensures unique - object IDs across zonegroups and zones. + If two zones are in the same zonegroup and that zonegroup is in the same + realm as a second zonegroup, then the objects stored in the two zones share a + global object namespace. This global object namespace ensures unique object + IDs across zonegroups and zones. Each bucket is owned by the zonegroup where it was created (except where overridden by the :ref:`LocationConstraint<s3_bucket_placement>` on - bucket creation), and its object data will only replicate to other zones in - that zonegroup. Any request for data in that bucket that are sent to other + bucket creation), and its object data will replicate only to other zones in + that zonegroup. Any request for data in that bucket that is sent to other zonegroups will redirect to the zonegroup where the bucket resides. It can be useful to create multiple zonegroups when you want to share a - namespace of users and buckets across many zones, but isolate the object data - to a subset of those zones. It might be that you have several connected sites - that share storage, but only require a single backup for purposes of disaster - recovery. In such a case, it could make sense to create several zonegroups - with only two zones each to avoid replicating all objects to all zones. - - In other cases, it might make more sense to isolate things in separate - realms, with each realm having a single zonegroup. Zonegroups provide - flexibility by making it possible to control the isolation of data and - metadata separately. - -- **Multiple Realms:** Beginning with the Kraken release, the Ceph Object - Gateway supports "realms", which are containers for zonegroups. Realms make - it possible to set policies that apply to multiple zonegroups. Realms have a + namespace of users and buckets across many zones and isolate the object data + to a subset of those zones. Maybe you have several connected sites that share + storage but require only a single backup for purposes of disaster recovery. + In such a case, you could create several zonegroups with only two zones each + to avoid replicating all objects to all zones. + + In other cases, you might isolate data in separate realms, with each realm + having a single zonegroup. Zonegroups provide flexibility by making it + possible to control the isolation of data and metadata separately. + +- **Multiple Realms:** Since the Kraken release, the Ceph Object Gateway + supports "realms", which are containers for zonegroups. Realms make it + possible to set policies that apply to multiple zonegroups. Realms have a globally unique namespace and can contain either a single zonegroup or multiple zonegroups. If you choose to make use of multiple realms, you can define multiple namespaces and multiple configurations (this means that each @@ -464,8 +463,8 @@ For example: .. important:: The following steps assume a multi-site configuration that uses newly installed systems that have not yet begun storing data. **DO NOT - DELETE the ``default`` zone or its pools** if you are already using it to - store data, or the data will be irretrievably lost. + DELETE the** ``default`` **zone or its pools** if you are already using it + to store data, or the data will be irretrievably lost. Delete the default zone if needed: @@ -528,6 +527,17 @@ running the following commands on the object gateway host: systemctl start ceph-radosgw@rgw.`hostname -s` systemctl enable ceph-radosgw@rgw.`hostname -s` +If the ``cephadm`` command was used to deploy the cluster, you will not be able +to use ``systemctl`` to start the gateway because no services will exist on +which ``systemctl`` could operate. This is due to the containerized nature of +the ``cephadm``-deployed Ceph cluster. If you have used the ``cephadm`` command +and you have a containerized cluster, you must run a command of the following +form to start the gateway: + +.. prompt:: bash # + + ceph orch apply rgw <name> --realm=<realm> --zone=<zone> --placement --port + Checking Synchronization Status ------------------------------- diff --git a/doc/radosgw/notifications.rst b/doc/radosgw/notifications.rst index 1d18772b2..c93f34b3f 100644 --- a/doc/radosgw/notifications.rst +++ b/doc/radosgw/notifications.rst @@ -154,6 +154,10 @@ updating, use the name of an existing topic and different endpoint values). [&Attributes.entry.9.key=persistent&Attributes.entry.9.value=true|false] [&Attributes.entry.10.key=cloudevents&Attributes.entry.10.value=true|false] [&Attributes.entry.11.key=mechanism&Attributes.entry.11.value=<mechanism>] + [&Attributes.entry.12.key=time_to_live&Attributes.entry.12.value=<seconds to live>] + [&Attributes.entry.13.key=max_retries&Attributes.entry.13.value=<retries number>] + [&Attributes.entry.14.key=retry_sleep_duration&Attributes.entry.14.value=<sleep seconds>] + [&Attributes.entry.15.key=Policy&Attributes.entry.15.value=<policy-JSON-string>] Request parameters: diff --git a/doc/radosgw/pools.rst b/doc/radosgw/pools.rst index bb1246c1f..acd6a6321 100644 --- a/doc/radosgw/pools.rst +++ b/doc/radosgw/pools.rst @@ -11,16 +11,13 @@ multiple zones. Tuning ====== -When ``radosgw`` first tries to operate on a zone pool that does not -exist, it will create that pool with the default values from -``osd pool default pg num`` and ``osd pool default pgp num``. These defaults -are sufficient for some pools, but others (especially those listed in -``placement_pools`` for the bucket index and data) will require additional -tuning. We recommend using the `Ceph Placement Group’s per Pool -Calculator <https://old.ceph.com/pgcalc/>`__ to calculate a suitable number of -placement groups for these pools. See -`Pools <http://docs.ceph.com/en/latest/rados/operations/pools/#pools>`__ -for details on pool creation. +When ``radosgw`` first tries to operate on a zone pool that does not exist, it +will create that pool with the default values from ``osd pool default pg num`` +and ``osd pool default pgp num``. These defaults are sufficient for some pools, +but others (especially those listed in ``placement_pools`` for the bucket index +and data) will require additional tuning. See `Pools +<http://docs.ceph.com/en/latest/rados/operations/pools/#pools>`__ for details +on pool creation. .. _radosgw-pool-namespaces: diff --git a/doc/radosgw/rgw-cache.rst b/doc/radosgw/rgw-cache.rst index 116db8ed4..fb6486405 100644 --- a/doc/radosgw/rgw-cache.rst +++ b/doc/radosgw/rgw-cache.rst @@ -90,7 +90,8 @@ $ sudo ln -sf /usr/local/openresty/bin/openresty /usr/bin/nginx Put in-place your Nginx configuration files and edit them according to your environment: -All Nginx conf files are under: https://github.com/ceph/ceph/tree/main/examples/rgw/rgw-cache +All Nginx conf files are under: +https://github.com/ceph/ceph/tree/main/examples/rgw/rgw-cache `nginx.conf` should go to `/etc/nginx/nginx.conf` diff --git a/doc/radosgw/role.rst b/doc/radosgw/role.rst index e97449872..514f17d5c 100644 --- a/doc/radosgw/role.rst +++ b/doc/radosgw/role.rst @@ -2,14 +2,20 @@ Role ====== -A role is similar to a user and has permission policies attached to it, that determine what a role can or can not do. A role can be assumed by any identity that needs it. If a user assumes a role, a set of dynamically created temporary credentials are returned to the user. A role can be used to delegate access to users, applications, services that do not have permissions to access some s3 resources. +A role is similar to a user. It has permission policies attached to it that +determine what it can do and what it cannot do. A role can be assumed by any +identity that needs it. When a user assumes a role, a set of +dynamically-created temporary credentials are provided to the user. A role can +be used to delegate access to users, to applications, and to services that do +not have permissions to access certain S3 resources. -The following radosgw-admin commands can be used to create/ delete/ update a role and permissions associated with a role. +The following ``radosgw-admin`` commands can be used to create or delete or +update a role and the permissions associated with it. Create a Role ------------- -To create a role, execute the following:: +To create a role, run a command of the following form:: radosgw-admin role create --role-name={role-name} [--path=="{path to the role}"] [--assume-role-policy-doc={trust-policy-document}] @@ -23,15 +29,16 @@ Request Parameters ``path`` -:Description: Path to the role. The default value is a slash(/). +:Description: Path to the role. The default value is a slash(``/``). :Type: String ``assume-role-policy-doc`` -:Description: The trust relationship policy document that grants an entity permission to assume the role. +:Description: The trust relationship policy document that grants an entity + permission to assume the role. :Type: String -For example:: +For example:: radosgw-admin role create --role-name=S3Access1 --path=/application_abc/component_xyz/ --assume-role-policy-doc=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Principal\":\{\"AWS\":\[\"arn:aws:iam:::user/TESTER\"\]\},\"Action\":\[\"sts:AssumeRole\"\]\}\]\} @@ -51,9 +58,11 @@ For example:: Delete a Role ------------- -To delete a role, execute the following:: +To delete a role, run a command of the following form: - radosgw-admin role delete --role-name={role-name} +.. prompt:: bash + + radosgw-admin role delete --role-name={role-name} Request Parameters ~~~~~~~~~~~~~~~~~~ @@ -63,18 +72,23 @@ Request Parameters :Description: Name of the role. :Type: String -For example:: +For example: + +.. prompt:: bash - radosgw-admin role delete --role-name=S3Access1 + radosgw-admin role delete --role-name=S3Access1 -Note: A role can be deleted only when it doesn't have any permission policy attached to it. +Note: A role can be deleted only when it has no permission policy attached to +it. Get a Role ---------- -To get information about a role, execute the following:: +To get information about a role, run a command of the following form: - radosgw-admin role get --role-name={role-name} +.. prompt:: bash + + radosgw-admin role get --role-name={role-name} Request Parameters ~~~~~~~~~~~~~~~~~~ @@ -84,9 +98,11 @@ Request Parameters :Description: Name of the role. :Type: String -For example:: +For example: + +.. prompt:: bash - radosgw-admin role get --role-name=S3Access1 + radosgw-admin role get --role-name=S3Access1 .. code-block:: javascript @@ -104,21 +120,26 @@ For example:: List Roles ---------- -To list roles with a specified path prefix, execute the following:: +To list roles with a specified path prefix, run a command of the following form: + +.. prompt:: bash - radosgw-admin role list [--path-prefix ={path prefix}] + radosgw-admin role list [--path-prefix ={path prefix}] Request Parameters ~~~~~~~~~~~~~~~~~~ ``path-prefix`` -:Description: Path prefix for filtering roles. If this is not specified, all roles are listed. +:Description: Path prefix for filtering roles. If this is not specified, all + roles are listed. :Type: String -For example:: +For example: + +.. prompt:: bash - radosgw-admin role list --path-prefix="/application" + radosgw-admin role list --path-prefix="/application" .. code-block:: javascript @@ -134,7 +155,6 @@ For example:: } ] - Update Assume Role Policy Document of a role -------------------------------------------- @@ -334,6 +354,7 @@ Create a Role ------------- Example:: + POST "<hostname>?Action=CreateRole&RoleName=S3Access&Path=/application_abc/component_xyz/&AssumeRolePolicyDocument=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Principal\":\{\"AWS\":\[\"arn:aws:iam:::user/TESTER\"\]\},\"Action\":\[\"sts:AssumeRole\"\]\}\]\}" .. code-block:: XML @@ -353,14 +374,18 @@ Delete a Role ------------- Example:: + POST "<hostname>?Action=DeleteRole&RoleName=S3Access" -Note: A role can be deleted only when it doesn't have any permission policy attached to it. +Note: A role can be deleted only when it doesn't have any permission policy +attached to it. If you intend to delete a role, you must first delete any +policies attached to it. Get a Role ---------- Example:: + POST "<hostname>?Action=GetRole&RoleName=S3Access" .. code-block:: XML @@ -380,6 +405,7 @@ List Roles ---------- Example:: + POST "<hostname>?Action=ListRoles&RoleName=S3Access&PathPrefix=/application" .. code-block:: XML @@ -399,18 +425,21 @@ Update Assume Role Policy Document ---------------------------------- Example:: + POST "<hostname>?Action=UpdateAssumeRolePolicy&RoleName=S3Access&PolicyDocument=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Principal\":\{\"AWS\":\[\"arn:aws:iam:::user/TESTER2\"\]\},\"Action\":\[\"sts:AssumeRole\"\]\}\]\}" Add/ Update a Policy attached to a Role --------------------------------------- Example:: + POST "<hostname>?Action=PutRolePolicy&RoleName=S3Access&PolicyName=Policy1&PolicyDocument=\{\"Version\":\"2012-10-17\",\"Statement\":\[\{\"Effect\":\"Allow\",\"Action\":\[\"s3:CreateBucket\"\],\"Resource\":\"arn:aws:s3:::example_bucket\"\}\]\}" List Permission Policy Names attached to a Role ----------------------------------------------- Example:: + POST "<hostname>?Action=ListRolePolicies&RoleName=S3Access" .. code-block:: XML @@ -424,6 +453,7 @@ Get Permission Policy attached to a Role ---------------------------------------- Example:: + POST "<hostname>?Action=GetRolePolicy&RoleName=S3Access&PolicyName=Policy1" .. code-block:: XML @@ -439,6 +469,7 @@ Delete Policy attached to a Role -------------------------------- Example:: + POST "<hostname>?Action=DeleteRolePolicy&RoleName=S3Access&PolicyName=Policy1" Tag a role @@ -447,6 +478,7 @@ A role can have multivalued tags attached to it. These tags can be passed in as AWS does not support multi-valued role tags. Example:: + POST "<hostname>?Action=TagRole&RoleName=S3Access&Tags.member.1.Key=Department&Tags.member.1.Value=Engineering" .. code-block:: XML @@ -463,6 +495,7 @@ List role tags Lists the tags attached to a role. Example:: + POST "<hostname>?Action=ListRoleTags&RoleName=S3Access" .. code-block:: XML @@ -486,6 +519,7 @@ Delete role tags Delete a tag/ tags attached to a role. Example:: + POST "<hostname>?Action=UntagRoles&RoleName=S3Access&TagKeys.member.1=Department" .. code-block:: XML @@ -500,6 +534,7 @@ Update Role ----------- Example:: + POST "<hostname>?Action=UpdateRole&RoleName=S3Access&MaxSessionDuration=43200" .. code-block:: XML @@ -565,6 +600,3 @@ The following is sample code for adding tags to role, listing tags and untagging 'Department', ] ) - - - diff --git a/doc/radosgw/session-tags.rst b/doc/radosgw/session-tags.rst index 46722c382..67a853895 100644 --- a/doc/radosgw/session-tags.rst +++ b/doc/radosgw/session-tags.rst @@ -104,7 +104,7 @@ An example of a role permission policy that uses aws:PrincipalTag is as follows: { "Effect":"Allow", "Action":["s3:*"], - "Resource":["arn:aws:s3::t1tenant:my-test-bucket","arn:aws:s3::t1tenant:my-test-bucket/*],"+ + "Resource":["arn:aws:s3::t1tenant:my-test-bucket","arn:aws:s3::t1tenant:my-test-bucket/*"], "Condition":{"StringEquals":{"aws:PrincipalTag/Department":"Engineering"}} }] } diff --git a/doc/rbd/index.rst b/doc/rbd/index.rst index 4a8029bba..96f1e1389 100644 --- a/doc/rbd/index.rst +++ b/doc/rbd/index.rst @@ -32,9 +32,9 @@ the ``librbd`` library. Ceph's block devices deliver high performance with vast scalability to `kernel modules`_, or to :abbr:`KVMs (kernel virtual machines)` such as `QEMU`_, and -cloud-based computing systems like `OpenStack`_ and `CloudStack`_ that rely on -libvirt and QEMU to integrate with Ceph block devices. You can use the same cluster -to operate the :ref:`Ceph RADOS Gateway <object-gateway>`, the +cloud-based computing systems like `OpenStack`_, `OpenNebula`_ and `CloudStack`_ +that rely on libvirt and QEMU to integrate with Ceph block devices. You can use +the same cluster to operate the :ref:`Ceph RADOS Gateway <object-gateway>`, the :ref:`Ceph File System <ceph-file-system>`, and Ceph block devices simultaneously. .. important:: To use Ceph Block Devices, you must have access to a running @@ -69,4 +69,5 @@ to operate the :ref:`Ceph RADOS Gateway <object-gateway>`, the .. _kernel modules: ./rbd-ko/ .. _QEMU: ./qemu-rbd/ .. _OpenStack: ./rbd-openstack +.. _OpenNebula: https://docs.opennebula.io/stable/open_cluster_deployment/storage_setup/ceph_ds.html .. _CloudStack: ./rbd-cloudstack diff --git a/doc/rbd/libvirt.rst b/doc/rbd/libvirt.rst index e3523f8a8..a55a4f95b 100644 --- a/doc/rbd/libvirt.rst +++ b/doc/rbd/libvirt.rst @@ -4,11 +4,11 @@ .. index:: Ceph Block Device; livirt -The ``libvirt`` library creates a virtual machine abstraction layer between -hypervisor interfaces and the software applications that use them. With -``libvirt``, developers and system administrators can focus on a common +The ``libvirt`` library creates a virtual machine abstraction layer between +hypervisor interfaces and the software applications that use them. With +``libvirt``, developers and system administrators can focus on a common management framework, common API, and common shell interface (i.e., ``virsh``) -to many different hypervisors, including: +to many different hypervisors, including: - QEMU/KVM - XEN @@ -18,7 +18,7 @@ to many different hypervisors, including: Ceph block devices support QEMU/KVM. You can use Ceph block devices with software that interfaces with ``libvirt``. The following stack diagram -illustrates how ``libvirt`` and QEMU use Ceph block devices via ``librbd``. +illustrates how ``libvirt`` and QEMU use Ceph block devices via ``librbd``. .. ditaa:: @@ -41,10 +41,11 @@ illustrates how ``libvirt`` and QEMU use Ceph block devices via ``librbd``. The most common ``libvirt`` use case involves providing Ceph block devices to -cloud solutions like OpenStack or CloudStack. The cloud solution uses +cloud solutions like OpenStack, OpenNebula or CloudStack. The cloud solution uses ``libvirt`` to interact with QEMU/KVM, and QEMU/KVM interacts with Ceph block -devices via ``librbd``. See `Block Devices and OpenStack`_ and `Block Devices -and CloudStack`_ for details. See `Installation`_ for installation details. +devices via ``librbd``. See `Block Devices and OpenStack`_, +`Block Devices and OpenNebula`_ and `Block Devices and CloudStack`_ for details. +See `Installation`_ for installation details. You can also use Ceph block devices with ``libvirt``, ``virsh`` and the ``libvirt`` API. See `libvirt Virtualization API`_ for details. @@ -62,12 +63,12 @@ Configuring Ceph To configure Ceph for use with ``libvirt``, perform the following steps: -#. `Create a pool`_. The following example uses the +#. `Create a pool`_. The following example uses the pool name ``libvirt-pool``.:: ceph osd pool create libvirt-pool - Verify the pool exists. :: + Verify the pool exists. :: ceph osd lspools @@ -80,23 +81,23 @@ To configure Ceph for use with ``libvirt``, perform the following steps: and references ``libvirt-pool``. :: ceph auth get-or-create client.libvirt mon 'profile rbd' osd 'profile rbd pool=libvirt-pool' - - Verify the name exists. :: - + + Verify the name exists. :: + ceph auth ls - **NOTE**: ``libvirt`` will access Ceph using the ID ``libvirt``, - not the Ceph name ``client.libvirt``. See `User Management - User`_ and - `User Management - CLI`_ for a detailed explanation of the difference - between ID and name. + **NOTE**: ``libvirt`` will access Ceph using the ID ``libvirt``, + not the Ceph name ``client.libvirt``. See `User Management - User`_ and + `User Management - CLI`_ for a detailed explanation of the difference + between ID and name. -#. Use QEMU to `create an image`_ in your RBD pool. +#. Use QEMU to `create an image`_ in your RBD pool. The following example uses the image name ``new-libvirt-image`` and references ``libvirt-pool``. :: qemu-img create -f rbd rbd:libvirt-pool/new-libvirt-image 2G - Verify the image exists. :: + Verify the image exists. :: rbd -p libvirt-pool ls @@ -111,7 +112,7 @@ To configure Ceph for use with ``libvirt``, perform the following steps: admin socket = /var/run/ceph/$cluster-$type.$id.$pid.$cctid.asok The ``client.libvirt`` section name should match the cephx user you created - above. + above. If SELinux or AppArmor is enabled, note that this could prevent the client process (qemu via libvirt) from doing some operations, such as writing logs or operate the images or admin socket to the destination locations (``/var/ @@ -123,7 +124,7 @@ Preparing the VM Manager ======================== You may use ``libvirt`` without a VM manager, but you may find it simpler to -create your first domain with ``virt-manager``. +create your first domain with ``virt-manager``. #. Install a virtual machine manager. See `KVM/VirtManager`_ for details. :: @@ -131,7 +132,7 @@ create your first domain with ``virt-manager``. #. Download an OS image (if necessary). -#. Launch the virtual machine manager. :: +#. Launch the virtual machine manager. :: sudo virt-manager @@ -142,12 +143,12 @@ Creating a VM To create a VM with ``virt-manager``, perform the following steps: -#. Press the **Create New Virtual Machine** button. +#. Press the **Create New Virtual Machine** button. #. Name the new virtual machine domain. In the exemplary embodiment, we use the name ``libvirt-virtual-machine``. You may use any name you wish, - but ensure you replace ``libvirt-virtual-machine`` with the name you - choose in subsequent commandline and configuration examples. :: + but ensure you replace ``libvirt-virtual-machine`` with the name you + choose in subsequent commandline and configuration examples. :: libvirt-virtual-machine @@ -155,9 +156,9 @@ To create a VM with ``virt-manager``, perform the following steps: /path/to/image/recent-linux.img - **NOTE:** Import a recent image. Some older images may not rescan for + **NOTE:** Import a recent image. Some older images may not rescan for virtual devices properly. - + #. Configure and start the VM. #. You may use ``virsh list`` to verify the VM domain exists. :: @@ -179,11 +180,11 @@ you that root privileges are required. For a reference of ``virsh`` commands, refer to `Virsh Command Reference`_. -#. Open the configuration file with ``virsh edit``. :: +#. Open the configuration file with ``virsh edit``. :: sudo virsh edit {vm-domain-name} - Under ``<devices>`` there should be a ``<disk>`` entry. :: + Under ``<devices>`` there should be a ``<disk>`` entry. :: <devices> <emulator>/usr/bin/kvm</emulator> @@ -196,18 +197,18 @@ commands, refer to `Virsh Command Reference`_. Replace ``/path/to/image/recent-linux.img`` with the path to the OS image. - The minimum kernel for using the faster ``virtio`` bus is 2.6.25. See + The minimum kernel for using the faster ``virtio`` bus is 2.6.25. See `Virtio`_ for details. - **IMPORTANT:** Use ``sudo virsh edit`` instead of a text editor. If you edit - the configuration file under ``/etc/libvirt/qemu`` with a text editor, - ``libvirt`` may not recognize the change. If there is a discrepancy between - the contents of the XML file under ``/etc/libvirt/qemu`` and the result of - ``sudo virsh dumpxml {vm-domain-name}``, then your VM may not work + **IMPORTANT:** Use ``sudo virsh edit`` instead of a text editor. If you edit + the configuration file under ``/etc/libvirt/qemu`` with a text editor, + ``libvirt`` may not recognize the change. If there is a discrepancy between + the contents of the XML file under ``/etc/libvirt/qemu`` and the result of + ``sudo virsh dumpxml {vm-domain-name}``, then your VM may not work properly. - -#. Add the Ceph RBD image you created as a ``<disk>`` entry. :: + +#. Add the Ceph RBD image you created as a ``<disk>`` entry. :: <disk type='network' device='disk'> <source protocol='rbd' name='libvirt-pool/new-libvirt-image'> @@ -216,21 +217,21 @@ commands, refer to `Virsh Command Reference`_. <target dev='vdb' bus='virtio'/> </disk> - Replace ``{monitor-host}`` with the name of your host, and replace the - pool and/or image name as necessary. You may add multiple ``<host>`` + Replace ``{monitor-host}`` with the name of your host, and replace the + pool and/or image name as necessary. You may add multiple ``<host>`` entries for your Ceph monitors. The ``dev`` attribute is the logical - device name that will appear under the ``/dev`` directory of your - VM. The optional ``bus`` attribute indicates the type of disk device to - emulate. The valid settings are driver specific (e.g., "ide", "scsi", + device name that will appear under the ``/dev`` directory of your + VM. The optional ``bus`` attribute indicates the type of disk device to + emulate. The valid settings are driver specific (e.g., "ide", "scsi", "virtio", "xen", "usb" or "sata"). - + See `Disks`_ for details of the ``<disk>`` element, and its child elements and attributes. - + #. Save the file. -#. If your Ceph Storage Cluster has `Ceph Authentication`_ enabled (it does by - default), you must generate a secret. :: +#. If your Ceph Storage Cluster has `Ceph Authentication`_ enabled (it does by + default), you must generate a secret. :: cat > secret.xml <<EOF <secret ephemeral='no' private='no'> @@ -249,11 +250,11 @@ commands, refer to `Virsh Command Reference`_. ceph auth get-key client.libvirt | sudo tee client.libvirt.key -#. Set the UUID of the secret. :: +#. Set the UUID of the secret. :: sudo virsh secret-set-value --secret {uuid of secret} --base64 $(cat client.libvirt.key) && rm client.libvirt.key secret.xml - You must also set the secret manually by adding the following ``<auth>`` + You must also set the secret manually by adding the following ``<auth>`` entry to the ``<disk>`` element you entered earlier (replacing the ``uuid`` value with the result from the command line example above). :: @@ -266,14 +267,14 @@ commands, refer to `Virsh Command Reference`_. <auth username='libvirt'> <secret type='ceph' uuid='{uuid of secret}'/> </auth> - <target ... + <target ... - **NOTE:** The exemplary ID is ``libvirt``, not the Ceph name - ``client.libvirt`` as generated at step 2 of `Configuring Ceph`_. Ensure - you use the ID component of the Ceph name you generated. If for some reason - you need to regenerate the secret, you will have to execute - ``sudo virsh secret-undefine {uuid}`` before executing + **NOTE:** The exemplary ID is ``libvirt``, not the Ceph name + ``client.libvirt`` as generated at step 2 of `Configuring Ceph`_. Ensure + you use the ID component of the Ceph name you generated. If for some reason + you need to regenerate the secret, you will have to execute + ``sudo virsh secret-undefine {uuid}`` before executing ``sudo virsh secret-set-value`` again. @@ -285,30 +286,31 @@ To verify that the VM and Ceph are communicating, you may perform the following procedures. -#. Check to see if Ceph is running:: +#. Check to see if Ceph is running:: ceph health -#. Check to see if the VM is running. :: +#. Check to see if the VM is running. :: sudo virsh list -#. Check to see if the VM is communicating with Ceph. Replace - ``{vm-domain-name}`` with the name of your VM domain:: +#. Check to see if the VM is communicating with Ceph. Replace + ``{vm-domain-name}`` with the name of your VM domain:: sudo virsh qemu-monitor-command --hmp {vm-domain-name} 'info block' #. Check to see if the device from ``<target dev='vdb' bus='virtio'/>`` exists:: - + virsh domblklist {vm-domain-name} --details -If everything looks okay, you may begin using the Ceph block device +If everything looks okay, you may begin using the Ceph block device within your VM. .. _Installation: ../../install .. _libvirt Virtualization API: http://www.libvirt.org .. _Block Devices and OpenStack: ../rbd-openstack +.. _Block Devices and OpenNebula: https://docs.opennebula.io/stable/open_cluster_deployment/storage_setup/ceph_ds.html#datastore-internals .. _Block Devices and CloudStack: ../rbd-cloudstack .. _Create a pool: ../../rados/operations/pools#create-a-pool .. _Create a Ceph User: ../../rados/operations/user-management#add-a-user diff --git a/doc/rbd/nvmeof-initiator-esx.rst b/doc/rbd/nvmeof-initiator-esx.rst new file mode 100644 index 000000000..6afa29f1e --- /dev/null +++ b/doc/rbd/nvmeof-initiator-esx.rst @@ -0,0 +1,70 @@ +--------------------------------- +NVMe/TCP Initiator for VMware ESX +--------------------------------- + +Prerequisites +============= + +- A VMware ESXi host running VMware vSphere Hypervisor (ESXi) 7.0U3 version or later. +- Deployed Ceph NVMe-oF gateway. +- Ceph cluster with NVMe-oF configuration. +- Subsystem defined in the gateway. + +Configuration +============= + +The following instructions will use the default vSphere web client and esxcli. + +1. Enable NVMe/TCP on a NIC: + + .. prompt:: bash # + + esxcli nvme fabric enable --protocol TCP --device vmnicN + + Replace ``N`` with the number of the NIC. + +2. Tag a VMKernel NIC to permit NVMe/TCP traffic: + + .. prompt:: bash # + + esxcli network uip interface tag add --interface-nme vmkN --tagname NVMeTCP + + Replace ``N`` with the ID of the VMkernel. + +3. Configure the VMware ESXi host for NVMe/TCP: + + #. List the NVMe-oF adapter: + + .. prompt:: bash # + + esxcli nvme adapter list + + #. Discover NVMe-oF subsystems: + + .. prompt:: bash # + + esxcli nvme fabric discover -a NVME_TCP_ADAPTER -i GATEWAY_IP -p 4420 + + #. Connect to NVME-oF gateway subsystem: + + .. prompt:: bash # + + esxcli nvme connect -a NVME_TCP_ADAPTER -i GATEWAY_IP -p 4420 -s SUBSYSTEM_NQN + + #. List the NVMe/TCP controllers: + + .. prompt:: bash # + + esxcli nvme controller list + + #. List the NVMe-oF namespaces in the subsystem: + + .. prompt:: bash # + + esxcli nvme namespace list + +4. Verify that the initiator has been set up correctly: + + #. From the vSphere client go to the ESXi host. + #. On the Storage page go to the Devices tab. + #. Verify that the NVME/TCP disks are listed in the table. diff --git a/doc/rbd/nvmeof-initiator-linux.rst b/doc/rbd/nvmeof-initiator-linux.rst new file mode 100644 index 000000000..4889e4132 --- /dev/null +++ b/doc/rbd/nvmeof-initiator-linux.rst @@ -0,0 +1,83 @@ +============================== + NVMe/TCP Initiator for Linux +============================== + +Prerequisites +============= + +- Kernel 5.0 or later +- RHEL 9.2 or later +- Ubuntu 24.04 or later +- SLES 15 SP3 or later + +Installation +============ + +1. Install the nvme-cli: + + .. prompt:: bash # + + yum install nvme-cli + +2. Load the NVMe-oF module: + + .. prompt:: bash # + + modprobe nvme-fabrics + +3. Verify the NVMe/TCP target is reachable: + + .. prompt:: bash # + + nvme discover -t tcp -a GATEWAY_IP -s 4420 + +4. Connect to the NVMe/TCP target: + + .. prompt:: bash # + + nvme connect -t tcp -a GATEWAY_IP -n SUBSYSTEM_NQN + +Next steps +========== + +Verify that the initiator is set up correctly: + +1. List the NVMe block devices: + + .. prompt:: bash # + + nvme list + +2. Create a filesystem on the desired device: + + .. prompt:: bash # + + mkfs.ext4 NVME_NODE_PATH + +3. Mount the filesystem: + + .. prompt:: bash # + + mkdir /mnt/nvmeof + + .. prompt:: bash # + + mount NVME_NODE_PATH /mnt/nvmeof + +4. List the NVME-oF files: + + .. prompt:: bash # + + ls /mnt/nvmeof + +5. Create a text file in the ``/mnt/nvmeof`` directory: + + .. prompt:: bash # + + echo "Hello NVME-oF" > /mnt/nvmeof/hello.text + +6. Verify that the file can be accessed: + + .. prompt:: bash # + + cat /mnt/nvmeof/hello.text diff --git a/doc/rbd/nvmeof-initiators.rst b/doc/rbd/nvmeof-initiators.rst new file mode 100644 index 000000000..8fa4a5b9d --- /dev/null +++ b/doc/rbd/nvmeof-initiators.rst @@ -0,0 +1,16 @@ +.. _configuring-the-nvmeof-initiators: + +==================================== + Configuring the NVMe-oF Initiators +==================================== + +- `NVMe/TCP Initiator for Linux <../nvmeof-initiator-linux>`_ + +- `NVMe/TCP Initiator for VMware ESX <../nvmeof-initiator-esx>`_ + +.. toctree:: + :maxdepth: 1 + :hidden: + + Linux <nvmeof-initiator-linux> + VMware ESX <nvmeof-initiator-esx> diff --git a/doc/rbd/nvmeof-overview.rst b/doc/rbd/nvmeof-overview.rst new file mode 100644 index 000000000..070024a3a --- /dev/null +++ b/doc/rbd/nvmeof-overview.rst @@ -0,0 +1,48 @@ +.. _ceph-nvmeof: + +====================== + Ceph NVMe-oF Gateway +====================== + +The NVMe-oF Gateway presents an NVMe-oF target that exports +RADOS Block Device (RBD) images as NVMe namespaces. The NVMe-oF protocol allows +clients (initiators) to send NVMe commands to storage devices (targets) over a +TCP/IP network, enabling clients without native Ceph client support to access +Ceph block storage. + +Each NVMe-oF gateway consists of an `SPDK <https://spdk.io/>`_ NVMe-oF target +with ``bdev_rbd`` and a control daemon. Ceph’s NVMe-oF gateway can be used to +provision a fully integrated block-storage infrastructure with all the features +and benefits of a conventional Storage Area Network (SAN). + +.. ditaa:: + Cluster Network (optional) + +-------------------------------------------+ + | | | | + +-------+ +-------+ +-------+ +-------+ + | | | | | | | | + | OSD 1 | | OSD 2 | | OSD 3 | | OSD N | + | {s}| | {s}| | {s}| | {s}| + +-------+ +-------+ +-------+ +-------+ + | | | | + +--------->| | +---------+ | |<----------+ + : | | | RBD | | | : + | +----------------| Image |----------------+ | + | Public Network | {d} | | + | +---------+ | + | | + | +--------------------+ | + | +--------------+ | NVMeoF Initiators | +--------------+ | + | | NVMe‐oF GW | | +-----------+ | | NVMe‐oF GW | | + +-->| RBD Module |<--+ | Various | +-->| RBD Module |<--+ + | | | | Operating | | | | + +--------------+ | | Systems | | +--------------+ + | +-----------+ | + +--------------------+ + +.. toctree:: + :maxdepth: 1 + + Requirements <nvmeof-requirements> + Configuring the NVME-oF Target <nvmeof-target-configure> + Configuring the NVMe-oF Initiators <nvmeof-initiators> diff --git a/doc/rbd/nvmeof-requirements.rst b/doc/rbd/nvmeof-requirements.rst new file mode 100644 index 000000000..a53d1c2d7 --- /dev/null +++ b/doc/rbd/nvmeof-requirements.rst @@ -0,0 +1,14 @@ +============================ +NVME-oF Gateway Requirements +============================ + +We recommend that you provision at least two NVMe/TCP gateways on different +nodes to implement a highly-available Ceph NVMe/TCP solution. + +We recommend at a minimum a single 10Gb Ethernet link in the Ceph public +network for the gateway. For hardware recommendations, see +:ref:`hardware-recommendations` . + +.. note:: On the NVMe-oF gateway, the memory footprint is a function of the + number of mapped RBD images and can grow to be large. Plan memory + requirements accordingly based on the number RBD images to be mapped. diff --git a/doc/rbd/nvmeof-target-configure.rst b/doc/rbd/nvmeof-target-configure.rst new file mode 100644 index 000000000..4aa7d6ab7 --- /dev/null +++ b/doc/rbd/nvmeof-target-configure.rst @@ -0,0 +1,122 @@ +========================================== +Installing and Configuring NVMe-oF Targets +========================================== + +Traditionally, block-level access to a Ceph storage cluster has been limited to +(1) QEMU and ``librbd`` (which is a key enabler for adoption within OpenStack +environments), and (2) the Linux kernel client. Starting with the Ceph Reef +release, block-level access has been expanded to offer standard NVMe/TCP +support, allowing wider platform usage and potentially opening new use cases. + +Prerequisites +============= + +- Red Hat Enterprise Linux/CentOS 8.0 (or newer); Linux kernel v4.16 (or newer) + +- A working Ceph Reef or later storage cluster, deployed with ``cephadm`` + +- NVMe-oF gateways, which can either be colocated with OSD nodes or on dedicated nodes + +- Separate network subnets for NVME-oF front-end traffic and Ceph back-end traffic + +Explanation +=========== + +The Ceph NVMe-oF gateway is both an NVMe-oF target and a Ceph client. Think of +it as a "translator" between Ceph's RBD interface and the NVME-oF protocol. The +Ceph NVMe-oF gateway can run on a standalone node or be colocated with other +daemons, for example on a Ceph Object Store Disk (OSD) node. When colocating +the Ceph NVMe-oF gateway with other daemons, ensure that sufficient CPU and +memory are available. The steps below explain how to install and configure the +Ceph NVMe/TCP gateway for basic operation. + + +Installation +============ + +Complete the following steps to install the Ceph NVME-oF gateway: + +#. Create a pool in which the gateways configuration can be managed: + + .. prompt:: bash # + + ceph osd pool create NVME-OF_POOL_NAME + +#. Enable RBD on the NVMe-oF pool: + + .. prompt:: bash # + + rbd pool init NVME-OF_POOL_NAME + +#. Deploy the NVMe-oF gateway daemons on a specific set of nodes: + + .. prompt:: bash # + + ceph orch apply nvmeof NVME-OF_POOL_NAME --placment="host01, host02" + +Configuration +============= + +Download the ``nvmeof-cli`` container before first use. +To download it use the following command: + +.. prompt:: bash # + + podman pull quay.io/ceph/nvmeof-cli:latest + +#. Create an NVMe subsystem: + + .. prompt:: bash # + + podman run -it quay.io/ceph/nvmeof-cli:latest --server-address GATEWAY_IP --server-port GATEWAY_PORT 5500 subsystem add --subsystem SUSYSTEM_NQN + + The subsystem NQN is a user defined string, for example ``nqn.2016-06.io.spdk:cnode1``. + +#. Define the IP port on the gateway that will process the NVME/TCP commands and I/O: + + a. On the install node, get the NVME-oF Gateway name: + + .. prompt:: bash # + + ceph orch ps | grep nvme + + b. Define the IP port for the gateway: + + .. prompt:: bash # + + podman run -it quay.io/ceph/nvmeof-cli:latest --server-address GATEWAY_IP --server-port GATEWAY_PORT 5500 listener add --subsystem SUBSYSTEM_NQN --gateway-name GATEWAY_NAME --traddr GATEWAY_IP --trsvcid 4420 + +#. Get the host NQN (NVME Qualified Name) for each host: + + .. prompt:: bash # + + cat /etc/nvme/hostnqn + + .. prompt:: bash # + + esxcli nvme info get + +#. Allow the initiator host to connect to the newly-created NVMe subsystem: + + .. prompt:: bash # + + podman run -it quay.io/ceph/nvmeof-cli:latest --server-address GATEWAY_IP --server-port GATEWAY_PORT 5500 host add --subsystem SUBSYSTEM_NQN --host "HOST_NQN1, HOST_NQN2" + +#. List all subsystems configured in the gateway: + + .. prompt:: bash # + + podman run -it quay.io/ceph/nvmeof-cli:latest --server-address GATEWAY_IP --server-port GATEWAY_PORT 5500 subsystem list + +#. Create a new NVMe namespace: + + .. prompt:: bash # + + podman run -it quay.io/ceph/nvmeof-cli:latest --server-address GATEWAY_IP --server-port GATEWAY_PORT 5500 namespace add --subsystem SUBSYSTEM_NQN --rbd-pool POOL_NAME --rbd-image IMAGE_NAME + +#. List all namespaces in the subsystem: + + .. prompt:: bash # + + podman run -it quay.io/ceph/nvmeof-cli:latest --server-address GATEWAY_IP --server-port GATEWAY_PORT 5500 namespace list --subsystem SUBSYSTEM_NQN + diff --git a/doc/rbd/rados-rbd-cmds.rst b/doc/rbd/rados-rbd-cmds.rst index 0bbcb2611..a290dc1e5 100644 --- a/doc/rbd/rados-rbd-cmds.rst +++ b/doc/rbd/rados-rbd-cmds.rst @@ -4,7 +4,7 @@ .. index:: Ceph Block Device; image management -The ``rbd`` command enables you to create, list, introspect and remove block +The ``rbd`` command enables you to create, list, inspect and remove block device images. You can also use it to clone images, create snapshots, rollback an image to a snapshot, view a snapshot, etc. For details on using the ``rbd`` command, see `RBD – Manage RADOS Block Device (RBD) Images`_ for @@ -139,7 +139,7 @@ Retrieving Image Information ============================ To retrieve information from a particular image, run the following command, but -replace ``{image-name}`` with the name for the image: +replace ``{image-name}`` with the name of the image: .. prompt:: bash $ @@ -250,13 +250,13 @@ Removing a Deferred Block Device from a Pool -------------------------------------------- To remove a deferred block device from a pool, run the following command but -replace ``{image-}`` with the ID of the image to be removed, and replace +replace ``{image-id}`` with the ID of the image to be removed, and replace ``{pool-name}`` with the name of the pool from which the image is to be removed: .. prompt:: bash $ - rbd trash rm {pool-name}/{image-} + rbd trash rm {pool-name}/{image-id} For example: diff --git a/doc/rbd/rbd-encryption.rst b/doc/rbd/rbd-encryption.rst index 3f37a8b1c..e9c788ecb 100644 --- a/doc/rbd/rbd-encryption.rst +++ b/doc/rbd/rbd-encryption.rst @@ -240,6 +240,18 @@ The same applies to creating a formatted clone of an unformatted (plaintext) image since an unformatted image does not have a header at all. +To map a formatted clone, provide encryption formats and passphrases +for the clone itself and all of its explicitly formatted parent images. +The order in which ``encryption-format`` and ``encryption-passphrase-file`` +options should be provided is based on the image hierarchy: start with +that of the cloned image, then its parent and so on. + +Here is an example of a command that maps a formatted clone: + +.. prompt:: bash # + + rbd device map -t nbd -o encryption-passphrase-file=clone-passphrase.bin,encryption-passphrase-file=passphrase.bin mypool/myclone + .. _journal feature: ../rbd-mirroring/#enable-image-journaling-feature .. _Supported Formats: #supported-formats .. _rbd-nbd: ../../man/8/rbd-nbd diff --git a/doc/rbd/rbd-integrations.rst b/doc/rbd/rbd-integrations.rst index f55604a6f..3c4afe38f 100644 --- a/doc/rbd/rbd-integrations.rst +++ b/doc/rbd/rbd-integrations.rst @@ -14,3 +14,4 @@ CloudStack <rbd-cloudstack> LIO iSCSI Gateway <iscsi-overview> Windows <rbd-windows> + NVMe-oF Gateway <nvmeof-overview> diff --git a/doc/rbd/rbd-nomad.rst b/doc/rbd/rbd-nomad.rst index 66d87d6ce..747bc3aca 100644 --- a/doc/rbd/rbd-nomad.rst +++ b/doc/rbd/rbd-nomad.rst @@ -372,6 +372,7 @@ using the newly created nomad user id and cephx key:: clusterID = "b9127830-b0cc-4e34-aa47-9d1a2e9949a8" pool = "nomad" imageFeatures = "layering" + mkfsOptions = "-t ext4" } After the ``ceph-volume.hcl`` file has been generated, create the volume: diff --git a/doc/rbd/rbd-snapshot.rst b/doc/rbd/rbd-snapshot.rst index 120dd8ec1..4a4309f8e 100644 --- a/doc/rbd/rbd-snapshot.rst +++ b/doc/rbd/rbd-snapshot.rst @@ -10,7 +10,7 @@ you can create snapshots of images to retain point-in-time state history. Ceph also supports snapshot layering, which allows you to clone images (for example, VM images) quickly and easily. Ceph block device snapshots are managed using the ``rbd`` command and several higher-level interfaces, including `QEMU`_, -`libvirt`_, `OpenStack`_, and `CloudStack`_. +`libvirt`_, `OpenStack`_, `OpenNebula`_ and `CloudStack`_. .. important:: To use RBD snapshots, you must have a running Ceph cluster. @@ -18,14 +18,14 @@ the ``rbd`` command and several higher-level interfaces, including `QEMU`_, .. note:: Because RBD is unaware of any file system within an image (volume), snapshots are merely `crash-consistent` unless they are coordinated within the mounting (attaching) operating system. We therefore recommend that you - pause or stop I/O before taking a snapshot. - + pause or stop I/O before taking a snapshot. + If the volume contains a file system, the file system should be in an internally consistent state before a snapshot is taken. Snapshots taken without write quiescing could need an `fsck` pass before they are mounted again. To quiesce I/O you can use `fsfreeze` command. See the `fsfreeze(8)` - man page for more details. - + man page for more details. + For virtual machines, `qemu-guest-agent` can be used to automatically freeze file systems when creating a snapshot. @@ -44,7 +44,7 @@ Cephx Notes When `cephx`_ authentication is enabled (it is by default), you must specify a user name or ID and a path to the keyring containing the corresponding key. See -:ref:`User Management <user-management>` for details. +:ref:`User Management <user-management>` for details. .. prompt:: bash $ @@ -83,7 +83,7 @@ For example: .. prompt:: bash $ rbd snap create rbd/foo@snapname - + List Snapshots -------------- @@ -135,7 +135,7 @@ name, the image name, and the snap name: .. prompt:: bash $ rbd snap rm {pool-name}/{image-name}@{snap-name} - + For example: .. prompt:: bash $ @@ -186,20 +186,20 @@ snapshot simplifies semantics, making it possible to create clones rapidly. | | to Parent | | | (read only) | | (writable) | +-------------+ +-------------+ - + Parent Child .. note:: The terms "parent" and "child" refer to a Ceph block device snapshot (parent) and the corresponding image cloned from the snapshot (child). These terms are important for the command line usage below. - + Each cloned image (child) stores a reference to its parent image, which enables the cloned image to open the parent snapshot and read it. A copy-on-write clone of a snapshot behaves exactly like any other Ceph block device image. You can read to, write from, clone, and resize cloned images. There are no special restrictions with cloned images. However, the -copy-on-write clone of a snapshot depends on the snapshot, so you must +copy-on-write clone of a snapshot depends on the snapshot, so you must protect the snapshot before you clone it. The diagram below depicts this process. @@ -222,7 +222,7 @@ have performed these steps, you can begin cloning the snapshot. | | | | +----------------------------+ +-----------------------------+ | - +--------------------------------------+ + +--------------------------------------+ | v +----------------------------+ +-----------------------------+ @@ -265,7 +265,7 @@ Protecting a Snapshot --------------------- Clones access the parent snapshots. All clones would break if a user -inadvertently deleted the parent snapshot. To prevent data loss, you must +inadvertently deleted the parent snapshot. To prevent data loss, you must protect the snapshot before you can clone it: .. prompt:: bash $ @@ -290,13 +290,13 @@ protect the snapshot before you can clone it: .. prompt:: bash $ rbd clone {pool-name}/{parent-image-name}@{snap-name} {pool-name}/{child-image-name} - + For example: .. prompt:: bash $ rbd clone rbd/foo@snapname rbd/bar - + .. note:: You may clone a snapshot from one pool to an image in another pool. For example, you may maintain read-only images and snapshots as templates in @@ -364,5 +364,6 @@ For example: .. _cephx: ../../rados/configuration/auth-config-ref/ .. _QEMU: ../qemu-rbd/ .. _OpenStack: ../rbd-openstack/ +.. _OpenNebula: https://docs.opennebula.io/stable/management_and_operations/vm_management/vm_instances.html?highlight=ceph#managing-disk-snapshots .. _CloudStack: ../rbd-cloudstack/ .. _libvirt: ../libvirt/ diff --git a/doc/releases/argonaut.rst b/doc/releases/argonaut.rst deleted file mode 100644 index 409d1af91..000000000 --- a/doc/releases/argonaut.rst +++ /dev/null @@ -1,185 +0,0 @@ -======== -Argonaut -======== - -Argonaut is the first stable release of Ceph. It is named after a -genus of octopuses, sometimes also referred to as paper nautiluses. - - -v0.48.3 "argonaut" -================== - -This release contains a critical fix that can prevent data loss or -corruption after a power loss or kernel panic event. Please upgrade -immediately. - -Upgrading ---------- - -* If you are using the undocumented ``ceph-disk-prepare`` and - ``ceph-disk-activate`` tools, they have several new features and - some additional functionality. Please review the changes in - behavior carefully before upgrading. -* The .deb packages now require xfsprogs. - -Notable changes ---------------- - -* filestore: fix op_seq write order (fixes journal replay after power loss) -* osd: fix occasional indefinitely hung "slow" request -* osd: fix encoding for pool_snap_info_t when talking to pre-v0.48 clients -* osd: fix heartbeat check -* osd: reduce log noise about rbd watch -* log: fixes for deadlocks in the internal logging code -* log: make log buffer size adjustable -* init script: fix for 'ceph status' across machines -* radosgw: fix swift error handling -* radosgw: fix swift authentication concurrency bug -* radosgw: don't cache large objects -* radosgw: fix some memory leaks -* radosgw: fix timezone conversion on read -* radosgw: relax date format restrictions -* radosgw: fix multipart overwrite -* radosgw: stop processing requests on client disconnect -* radosgw: avoid adding port to url that already has a port -* radosgw: fix copy to not override ETAG -* common: make parsing of ip address lists more forgiving -* common: fix admin socket compatibility with old protocol (for collectd plugin) -* mon: drop dup commands on paxos reset -* mds: fix loner selection for multiclient workloads -* mds: fix compat bit checks -* ceph-fuse: fix segfault on startup when keyring is missing -* ceph-authtool: fix usage -* ceph-disk-activate: misc backports -* ceph-disk-prepare: misc backports -* debian: depend on xfsprogs (we use xfs by default) -* rpm: build rpms, some related Makefile changes - -For more detailed information, see :download:`the complete changelog <../changelog/v0.48.3argonaut.txt>`. - -v0.48.2 "argonaut" -================== - -Upgrading ---------- - -* The default search path for keyring files now includes /etc/ceph/ceph.$name.keyring. If such files are present on your cluster, be aware that by default they may now be used. - -* There are several changes to the upstart init files. These have not been previously documented or recommended. Any existing users should review the changes before upgrading. - -* The ceph-disk-prepare and ceph-disk-active scripts have been updated significantly. These have not been previously documented or recommended. Any existing users should review the changes before upgrading. - -Notable changes ---------------- - -* mkcephfs: fix keyring generation for mds, osd when default paths are used -* radosgw: fix bug causing occasional corruption of per-bucket stats -* radosgw: workaround to avoid previously corrupted stats from going negative -* radosgw: fix bug in usage stats reporting on busy buckets -* radosgw: fix Content-Range: header for objects bigger than 2 GB. -* rbd: avoid leaving watch acting when command line tool errors out (avoids 30s delay on subsequent operations) -* rbd: friendlier use of --pool/--image options for import (old calling convention still works) -* librbd: fix rare snapshot creation race (could "lose" a snap when creation is concurrent) -* librbd: fix discard handling when spanning holes -* librbd: fix memory leak on discard when caching is enabled -* objecter: misc fixes for op reordering -* objecter: fix for rare startup-time deadlock waiting for osdmap -* ceph: fix usage -* mon: reduce log noise about "check_sub" -* ceph-disk-activate: misc fixes, improvements -* ceph-disk-prepare: partition and format osd disks automatically -* upstart: start everyone on a reboot -* upstart: always update the osd crush location on start if specified in the config -* config: add /etc/ceph/ceph.$name.keyring to default keyring search path -* ceph.spec: don't package crush headers - -For more detailed information, see :download:`the complete changelog <../changelog/v0.48.2argonaut.txt>`. - -v0.48.1 "argonaut" -================== - -Upgrading ---------- - -* The radosgw usage trim function was effectively broken in v0.48. Earlier it would remove more usage data than what was requested. This is fixed in v0.48.1, but the fix is incompatible. The v0.48 radosgw-admin tool cannot be used to initiate the trimming; please use the v0.48.1 version. - -* v0.48.1 now explicitly indicates support for the CRUSH_TUNABLES feature. No other version of Ceph requires this, yet, but future versions will when the tunables are adjusted from their historical defaults. - -* There are no other compatibility changes between v0.48.1 and v0.48. - -Notable changes ---------------- - -* mkcephfs: use default 'keyring', 'osd data', 'osd journal' paths when not specified in conf -* msgr: various fixes to socket error handling -* osd: reduce scrub overhead -* osd: misc peering fixes (past_interval sharing, pgs stuck in 'peering' states) -* osd: fail on EIO in read path (do not silently ignore read errors from failing disks) -* osd: avoid internal heartbeat errors by breaking some large transactions into pieces -* osd: fix osdmap catch-up during startup (catch up and then add daemon to osdmap) -* osd: fix spurious 'misdirected op' messages -* osd: report scrub status via 'pg ... query' -* rbd: fix race when watch registrations are resent -* rbd: fix rbd image id assignment scheme (new image data objects have slightly different names) -* rbd: fix perf stats for cache hit rate -* rbd tool: fix off-by-one in key name (crash when empty key specified) -* rbd: more robust udev rules -* rados tool: copy object, pool commands -* radosgw: fix in usage stats trimming -* radosgw: misc API compatibility fixes (date strings, ETag quoting, swift headers, etc.) -* ceph-fuse: fix locking in read/write paths -* mon: fix rare race corrupting on-disk data -* config: fix admin socket 'config set' command -* log: fix in-memory log event gathering -* debian: remove crush headers, include librados-config -* rpm: add ceph-disk-{activate, prepare} - -For more detailed information, see :download:`the complete changelog <../changelog/v0.48.1argonaut.txt>`. - -v0.48 "argonaut" -================ - -Upgrading ---------- - -* This release includes a disk format upgrade. Each ceph-osd daemon, upon startup, will migrate its locally stored data to the new format. This process can take a while (for large object counts, even hours), especially on non-btrfs file systems. - -* To keep the cluster available while the upgrade is in progress, we recommend you upgrade a storage node or rack at a time, and wait for the cluster to recover each time. To prevent the cluster from moving data around in response to the OSD daemons being down for minutes or hours, you may want to:: - - ceph osd set noout - - This will prevent the cluster from marking down OSDs as "out" and re-replicating the data elsewhere. If you do this, be sure to clear the flag when the upgrade is complete:: - - ceph osd unset noout - -* There is a encoding format change internal to the monitor cluster. The monitor daemons are careful to switch to the new format only when all members of the quorum support it. However, that means that a partial quorum with new code may move to the new format, and a recovering monitor running old code will be unable to join (it will crash). If this occurs, simply upgrading the remaining monitor will resolve the problem. - -* The ceph tool's -s and -w commands from previous versions are incompatible with this version. Upgrade your client tools at the same time you upgrade the monitors if you rely on those commands. - -* It is not possible to downgrade from v0.48 to a previous version. - -Notable changes ---------------- - -* osd: stability improvements -* osd: capability model simplification -* osd: simpler/safer --mkfs (no longer removes all files; safe to re-run on active osd) -* osd: potentially buggy FIEMAP behavior disabled by default -* rbd: caching improvements -* rbd: improved instrumentation -* rbd: bug fixes -* radosgw: new, scalable usage logging infrastructure -* radosgw: per-user bucket limits -* mon: streamlined process for setting up authentication keys -* mon: stability improvements -* mon: log message throttling -* doc: improved documentation (ceph, rbd, radosgw, chef, etc.) -* config: new default locations for daemon keyrings -* config: arbitrary variable substitutions -* improved 'admin socket' daemon admin interface (ceph --admin-daemon ...) -* chef: support for multiple monitor clusters -* upstart: basic support for monitors, mds, radosgw; osd support still a work in progress. - -The new default keyring locations mean that when enabling authentication (``auth supported = cephx``), keyring locations do not need to be specified if the keyring file is located inside the daemon's data directory (``/var/lib/ceph/$type/ceph-$id`` by default). - -There is also a lot of librbd code in this release that is laying the groundwork for the upcoming layering functionality, but is not actually used. Likewise, the upstart support is still incomplete and not recommended; we will backport that functionality later if it turns out to be non-disruptive. diff --git a/doc/releases/bobtail.rst b/doc/releases/bobtail.rst deleted file mode 100644 index 9cca4f19e..000000000 --- a/doc/releases/bobtail.rst +++ /dev/null @@ -1,546 +0,0 @@ -======= -Bobtail -======= - -Bobtail is the second stable release of Ceph. It is named after the -bobtail squid (order Sepiolida), a group of cephalopods closely related to cuttlefish. - -v0.56.7 "bobtail" -================= - -This bobtail update fixes a range of radosgw bugs (including an easily -triggered crash from multi-delete), a possible data corruption issue -with power failure on XFS, and several OSD problems, including a -memory "leak" that will affect aged clusters. - -Notable changes ---------------- - -* ceph-fuse: create finisher flags after fork() -* debian: fix prerm/postinst hooks; do not restart daemons on upgrade -* librados: fix async aio completion wakeup (manifests as rbd hang) -* librados: fix hang when osd becomes full and then not full -* librados: fix locking for aio completion refcounting -* librbd python bindings: fix stripe_unit, stripe_count -* librbd: make image creation default configurable -* mon: fix validation of mds ids in mon commands -* osd: avoid excessive disk updates during peering -* osd: avoid excessive memory usage on scrub -* osd: avoid heartbeat failure/suicide when scrubbing -* osd: misc minor bug fixes -* osd: use fdatasync instead of sync_file_range (may avoid xfs power-loss corruption) -* rgw: escape prefix correctly when listing objects -* rgw: fix copy attrs -* rgw: fix crash on multi delete -* rgw: fix locking/crash when using ops log socket -* rgw: fix usage logging -* rgw: handle deep uri resources - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.7.txt>`. - - -v0.56.6 "bobtail" -================= - -Notable changes ---------------- - -* rgw: fix garbage collection -* rpm: fix package dependencies - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.6.txt>`. - - -v0.56.5 "bobtail" -================= - -Upgrading ---------- - -* ceph-disk[-prepare,-activate] behavior has changed in various ways. - There should not be any compatibility issues, but chef users should - be aware. - -Notable changes ---------------- - -* mon: fix recording of quorum feature set (important for argonaut -> bobtail -> cuttlefish mon upgrades) -* osd: minor peering bug fixes -* osd: fix a few bugs when pools are renamed -* osd: fix occasionally corrupted pg stats -* osd: fix behavior when broken v0.56[.0] clients connect -* rbd: avoid FIEMAP ioctl on import (it is broken on some kernels) -* librbd: fixes for several request/reply ordering bugs -* librbd: only set STRIPINGV2 feature on new images when needed -* librbd: new async flush method to resolve qemu hangs (requires QEMU update as well) -* librbd: a few fixes to flatten -* ceph-disk: support for dm-crypt -* ceph-disk: many backports to allow bobtail deployments with ceph-deploy, chef -* sysvinit: do not stop starting daemons on first failure -* udev: fixed rules for redhat-based distros -* build fixes for raring - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.5.txt>`. - -v0.56.4 "bobtail" -================= - -Upgrading ---------- - -* There is a fix in the syntax for the output of 'ceph osd tree --format=json'. - -* The MDS disk format has changed from prior releases *and* from v0.57. In particular, - upgrades to v0.56.4 are safe, but you cannot move from v0.56.4 to v0.57 if you are using - the MDS for CephFS; you must upgrade directly to v0.58 (or later) instead. - -Notable changes ---------------- - -* mon: fix bug in bringup with IPv6 -* reduce default memory utilization by internal logging (all daemons) -* rgw: fix for bucket removal -* rgw: reopen logs after log rotation -* rgw: fix multipat upload listing -* rgw: don't copy object when copied onto self -* osd: fix caps parsing for pools with - or _ -* osd: allow pg log trimming when degraded, scrubbing, recoverying (reducing memory consumption) -* osd: fix potential deadlock when 'journal aio = true' -* osd: various fixes for collection creation/removal, rename, temp collections -* osd: various fixes for PG split -* osd: deep-scrub omap key/value data -* osd: fix rare bug in journal replay -* osd: misc fixes for snapshot tracking -* osd: fix leak in recovery reservations on pool deletion -* osd: fix bug in connection management -* osd: fix for op ordering when rebalancing -* ceph-fuse: report file system size with correct units -* mds: get and set directory layout policies via virtual xattrs -* mds: on-disk format revision (see upgrading note above) -* mkcephfs, init-ceph: close potential security issues with predictable filenames - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.4.txt>`. - -v0.56.3 "bobtail" -================= - -This release has several bug fixes surrounding OSD stability. Most -significantly, an issue with OSDs being unresponsive shortly after -startup (and occasionally crashing due to an internal heartbeat check) -is resolved. Please upgrade. - -Upgrading ---------- - -* A bug was fixed in which the OSDMap epoch for PGs without any IO - requests was not recorded. If there are pools in the cluster that - are completely idle (for example, the ``data`` and ``metadata`` - pools normally used by CephFS), and a large number of OSDMap epochs - have elapsed since the ``ceph-osd`` daemon was last restarted, those - maps will get reprocessed when the daemon restarts. This process - can take a while if there are a lot of maps. A workaround is to - 'touch' any idle pools with IO prior to restarting the daemons after - packages are upgraded:: - - rados bench 10 write -t 1 -b 4096 -p {POOLNAME} - - This will typically generate enough IO to touch every PG in the pool - without generating significant cluster load, and also cleans up any - temporary objects it creates. - -Notable changes ---------------- - -* osd: flush peering work queue prior to start -* osd: persist osdmap epoch for idle PGs -* osd: fix and simplify connection handling for heartbeats -* osd: avoid crash on invalid admin command -* mon: fix rare races with monitor elections and commands -* mon: enforce that OSD reweights be between 0 and 1 (NOTE: not CRUSH weights) -* mon: approximate client, recovery bandwidth logging -* radosgw: fixed some XML formatting to conform to Swift API inconsistency -* radosgw: fix usage accounting bug; add repair tool -* radosgw: make fallback URI configurable (necessary on some web servers) -* librbd: fix handling for interrupted 'unprotect' operations -* mds, ceph-fuse: allow file and directory layouts to be modified via virtual xattrs - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.3.txt>`. - - -v0.56.2 "bobtail" -================= - -This release has a wide range of bug fixes, stability improvements, and some performance improvements. Please upgrade. - -Upgrading ---------- - -* The meaning of the 'osd scrub min interval' and 'osd scrub max - interval' has changed slightly. The min interval used to be - meaningless, while the max interval would only trigger a scrub if - the load was sufficiently low. Now, the min interval option works - the way the old max interval did (it will trigger a scrub after this - amount of time if the load is low), while the max interval will - force a scrub regardless of load. The default options have been - adjusted accordingly. If you have customized these in ceph.conf, - please review their values when upgrading. - -* CRUSH maps that are generated by default when calling ``ceph-mon - --mkfs`` directly now distribute replicas across hosts instead of - across OSDs. Any provisioning tools that are being used by Ceph may - be affected, although probably for the better, as distributing across - hosts is a much more commonly sought behavior. If you use - ``mkcephfs`` to create the cluster, the default CRUSH rule is still - inferred by the number of hosts and/or racks in the initial ceph.conf. - -Notable changes ---------------- - -* osd: snapshot trimming fixes -* osd: scrub snapshot metadata -* osd: fix osdmap trimming -* osd: misc peering fixes -* osd: stop heartbeating with peers if internal threads are stuck/hung -* osd: PG removal is friendlier to other workloads -* osd: fix recovery start delay (was causing very slow recovery) -* osd: fix scheduling of explicitly requested scrubs -* osd: fix scrub interval config options -* osd: improve recovery vs client io tuning -* osd: improve 'slow request' warning detail for better diagnosis -* osd: default CRUSH map now distributes across hosts, not OSDs -* osd: fix crash on 32-bit hosts triggered by librbd clients -* librbd: fix error handling when talking to older OSDs -* mon: fix a few rare crashes -* ceph command: ability to easily adjust CRUSH tunables -* radosgw: object copy does not copy source ACLs -* rados command: fix omap command usage -* sysvinit script: set ulimit -n properly on remote hosts -* msgr: fix narrow race with message queuing -* fixed compilation on some old distros (e.g., RHEL 5.x) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.2.txt>`. - - -v0.56.1 "bobtail" -================= - -This release has two critical fixes. Please upgrade. - -Upgrading ---------- - -* There is a protocol compatibility problem between v0.56 and any - other version that is now fixed. If your radosgw or RBD clients are - running v0.56, they will need to be upgraded too. If they are - running a version prior to v0.56, they can be left as is. - -Notable changes ---------------- -* osd: fix commit sequence for XFS, ext4 (or any other non-btrfs) to prevent data loss on power cycle or kernel panic -* osd: fix compatibility for CALL operation -* osd: process old osdmaps prior to joining cluster (fixes slow startup) -* osd: fix a couple of recovery-related crashes -* osd: fix large io requests when journal is in (non-default) aio mode -* log: fix possible deadlock in logging code - -For more detailed information, see :download:`the complete changelog <../changelog/v0.56.1.txt>`. - -v0.56 "bobtail" -=============== - -Bobtail is the second stable release of Ceph, named in honor of the -`Bobtail Squid`: https://en.wikipedia.org/wiki/Bobtail_squid. - -Key features since v0.48 "argonaut" ------------------------------------ - -* Object Storage Daemon (OSD): improved threading, small-io performance, and performance during recovery -* Object Storage Daemon (OSD): regular "deep" scrubbing of all stored data to detect latent disk errors -* RADOS Block Device (RBD): support for copy-on-write clones of images. -* RADOS Block Device (RBD): better client-side caching. -* RADOS Block Device (RBD): advisory image locking -* Rados Gateway (RGW): support for efficient usage logging/scraping (for billing purposes) -* Rados Gateway (RGW): expanded S3 and Swift API coverage (e.g., POST, multi-object delete) -* Rados Gateway (RGW): improved striping for large objects -* Rados Gateway (RGW): OpenStack Keystone integration -* RPM packages for Fedora, RHEL/CentOS, OpenSUSE, and SLES -* mkcephfs: support for automatically formatting and mounting XFS and ext4 (in addition to btrfs) - -Upgrading ---------- - -Please refer to the document `Upgrading from Argonaut to Bobtail`_ for details. - -.. _Upgrading from Argonaut to Bobtail: ../install/upgrading-ceph/#upgrading-from-argonaut-to-bobtail - -* Cephx authentication is now enabled by default (since v0.55). - Upgrading a cluster without adjusting the Ceph configuration will - likely prevent the system from starting up on its own. We recommend - first modifying the configuration to indicate that authentication is - disabled, and only then upgrading to the latest version:: - - auth client required = none - auth service required = none - auth cluster required = none - -* Ceph daemons can be upgraded one-by-one while the cluster is online - and in service. - -* The ``ceph-osd`` daemons must be upgraded and restarted *before* any - ``radosgw`` daemons are restarted, as they depend on some new - ceph-osd functionality. (The ``ceph-mon``, ``ceph-osd``, and - ``ceph-mds`` daemons can be upgraded and restarted in any order.) - -* Once each individual daemon has been upgraded and restarted, it - cannot be downgraded. - -* The cluster of ``ceph-mon`` daemons will migrate to a new internal - on-wire protocol once all daemons in the quorum have been upgraded. - Upgrading only a majority of the nodes (e.g., two out of three) may - expose the cluster to a situation where a single additional failure - may compromise availability (because the non-upgraded daemon cannot - participate in the new protocol). We recommend not waiting for an - extended period of time between ``ceph-mon`` upgrades. - -* The ops log and usage log for radosgw are now off by default. If - you need these logs (e.g., for billing purposes), you must enable - them explicitly. For logging of all operations to objects in the - ``.log`` pool (see ``radosgw-admin log ...``):: - - rgw enable ops log = true - - For usage logging of aggregated bandwidth usage (see ``radosgw-admin - usage ...``):: - - rgw enable usage log = true - -* You should not create or use "format 2" RBD images until after all - ``ceph-osd`` daemons have been upgraded. Note that "format 1" is - still the default. You can use the new ``ceph osd ls`` and - ``ceph tell osd.N version`` commands to doublecheck your cluster. - ``ceph osd ls`` will give a list of all OSD IDs that are part of the - cluster, and you can use that to write a simple shell loop to display - all the OSD version strings: :: - - for i in $(ceph osd ls); do - ceph tell osd.${i} version - done - - -Compatibility changes ---------------------- - -* The 'ceph osd create [<uuid>]' command now rejects an argument that - is not a UUID. (Previously it would take an optional integer - OSD id.) This correct syntax has been 'ceph osd create [<uuid>]' - since v0.47, but the older calling convention was being silently - ignored. - -* The CRUSH map root nodes now have type ``root`` instead of type - ``pool``. This avoids confusion with RADOS pools, which are not - directly related. Any scripts or tools that use the ``ceph osd - crush ...`` commands may need to be adjusted accordingly. - -* The ``ceph osd pool create <poolname> <pgnum>`` command now requires - the ``pgnum`` argument. Previously this was optional, and would - default to 8, which was almost never a good number. - -* Degraded mode (when there fewer than the desired number of replicas) - is now more configurable on a per-pool basis, with the min_size - parameter. By default, with min_size 0, this allows I/O to objects - with N - floor(N/2) replicas, where N is the total number of - expected copies. Argonaut behavior was equivalent to having min_size - = 1, so I/O would always be possible if any completely up to date - copy remained. min_size = 1 could result in lower overall - availability in certain cases, such as flapping network partitions. - -* The sysvinit start/stop script now defaults to adjusting the max - open files ulimit to 16384. On most systems the default is 1024, so - this is an increase and won't break anything. If some system has a - higher initial value, however, this change will lower the limit. - The value can be adjusted explicitly by adding an entry to the - ``ceph.conf`` file in the appropriate section. For example:: - - [global] - max open files = 32768 - -* 'rbd lock list' and 'rbd showmapped' no longer use tabs as - separators in their output. - -* There is configurable limit on the number of PGs when creating a new - pool, to prevent a user from accidentally specifying a ridiculous - number for pg_num. It can be adjusted via the 'mon max pool pg num' - option on the monitor, and defaults to 65536 (the current max - supported by the Linux kernel client). - -* The osd capabilities associated with a rados user have changed - syntax since 0.48 argonaut. The new format is mostly backwards - compatible, but there are two backwards-incompatible changes: - - * specifying a list of pools in one grant, i.e. - 'allow r pool=foo,bar' is now done in separate grants, i.e. - 'allow r pool=foo, allow r pool=bar'. - - * restricting pool access by pool owner ('allow r uid=foo') is - removed. This feature was not very useful and unused in practice. - - The new format is documented in the ceph-authtool man page. - -* 'rbd cp' and 'rbd rename' use rbd as the default destination pool, - regardless of what pool the source image is in. Previously they - would default to the same pool as the source image. - -* 'rbd export' no longer prints a message for each object written. It - just reports percent complete like other long-lasting operations. - -* 'ceph osd tree' now uses 4 decimal places for weight so output is - nicer for humans - -* Several monitor operations are now idempotent: - - * ceph osd pool create - * ceph osd pool delete - * ceph osd pool mksnap - * ceph osd rm - * ceph pg <pgid> revert - -Notable changes ---------------- - -* auth: enable cephx by default -* auth: expanded authentication settings for greater flexibility -* auth: sign messages when using cephx -* build fixes for Fedora 18, CentOS/RHEL 6 -* ceph: new 'osd ls' and 'osd tell <osd.N> version' commands -* ceph-debugpack: misc improvements -* ceph-disk-prepare: creates and labels GPT partitions -* ceph-disk-prepare: support for external journals, default mount/mkfs options, etc. -* ceph-fuse/libcephfs: many misc fixes, admin socket debugging -* ceph-fuse: fix handling for .. in root directory -* ceph-fuse: many fixes (including memory leaks, hangs) -* ceph-fuse: mount helper (mount.fuse.ceph) for use with /etc/fstab -* ceph.spec: misc packaging fixes -* common: thread pool sizes can now be adjusted at runtime -* config: $pid is now available as a metavariable -* crush: default root of tree type is now 'root' instead of 'pool' (to avoid confusiong wrt rados pools) -* crush: fixed retry behavior with chooseleaf via tunable -* crush: tunables documented; feature bit now present and enforced -* libcephfs: java wrapper -* librados: several bug fixes (rare races, locking errors) -* librados: some locking fixes -* librados: watch/notify fixes, misc memory leaks -* librbd: a few fixes to 'discard' support -* librbd: fine-grained striping feature -* librbd: fixed memory leaks -* librbd: fully functional and documented image cloning -* librbd: image (advisory) locking -* librbd: improved caching (of object non-existence) -* librbd: 'flatten' command to sever clone parent relationship -* librbd: 'protect'/'unprotect' commands to prevent clone parent from being deleted -* librbd: clip requests past end-of-image. -* librbd: fixes an issue with some windows guests running in qemu (remove floating point usage) -* log: fix in-memory buffering behavior (to only write log messages on crash) -* mds: fix ino release on abort session close, relative getattr path, mds shutdown, other misc items -* mds: misc fixes -* mkcephfs: fix for default keyring, osd data/journal locations -* mkcephfs: support for formatting xfs, ext4 (as well as btrfs) -* init: support for automatically mounting xfs and ext4 osd data directories -* mon, radosgw, ceph-fuse: fixed memory leaks -* mon: improved ENOSPC, fs error checking -* mon: less-destructive ceph-mon --mkfs behavior -* mon: misc fixes -* mon: more informative info about stuck PGs in 'health detail' -* mon: information about recovery and backfill in 'pg <pgid> query' -* mon: new 'osd crush create-or-move ...' command -* mon: new 'osd crush move ...' command lets you rearrange your CRUSH hierarchy -* mon: optionally dump 'osd tree' in json -* mon: configurable cap on maximum osd number (mon max osd) -* mon: many bug fixes (various races causing ceph-mon crashes) -* mon: new on-disk metadata to facilitate future mon changes (post-bobtail) -* mon: election bug fixes -* mon: throttle client messages (limit memory consumption) -* mon: throttle osd flapping based on osd history (limits osdmap ΄thrashing' on overloaded or unhappy clusters) -* mon: 'report' command for dumping detailed cluster status (e.g., for use when reporting bugs) -* mon: osdmap flags like noup, noin now cause a health warning -* msgr: improved failure handling code -* msgr: many bug fixes -* osd, mon: honor new 'nobackfill' and 'norecover' osdmap flags -* osd, mon: use feature bits to lock out clients lacking CRUSH tunables when they are in use -* osd: backfill reservation framework (to avoid flooding new osds with backfill data) -* osd: backfill target reservations (improve performance during recovery) -* osd: better tracking of recent slow operations -* osd: capability grammar improvements, bug fixes -* osd: client vs recovery io prioritization -* osd: crush performance improvements -* osd: default journal size to 5 GB -* osd: experimental support for PG "splitting" (pg_num adjustment for existing pools) -* osd: fix memory leak on certain error paths -* osd: fixed detection of EIO errors from fs on read -* osd: major refactor of PG peering and threading -* osd: many bug fixes -* osd: more/better dump info about in-progress operations -* osd: new caps structure (see compatibility notes) -* osd: new 'deep scrub' will compare object content across replicas (once per week by default) -* osd: new 'lock' rados class for generic object locking -* osd: optional 'min' pg size -* osd: recovery reservations -* osd: scrub efficiency improvement -* osd: several out of order reply bug fixes -* osd: several rare peering cases fixed -* osd: some performance improvements related to request queuing -* osd: use entire device if journal is a block device -* osd: use syncfs(2) when kernel supports it, even if glibc does not -* osd: various fixes for out-of-order op replies -* rados: ability to copy, rename pools -* rados: bench command now cleans up after itself -* rados: 'cppool' command to copy rados pools -* rados: 'rm' now accepts a list of objects to be removed -* radosgw: POST support -* radosgw: REST API for managing usage stats -* radosgw: fix bug in bucket stat updates -* radosgw: fix copy-object vs attributes -* radosgw: fix range header for large objects, ETag quoting, GMT dates, other compatibility fixes -* radosgw: improved garbage collection framework -* radosgw: many small fixes, cleanups -* radosgw: openstack keystone integration -* radosgw: stripe large (non-multipart) objects -* radosgw: support for multi-object deletes -* radosgw: support for swift manifest objects -* radosgw: vanity bucket dns names -* radosgw: various API compatibility fixes -* rbd: import from stdin, export to stdout -* rbd: new 'ls -l' option to view images with metadata -* rbd: use generic id and keyring options for 'rbd map' -* rbd: don't issue usage on errors -* udev: fix symlink creation for rbd images containing partitions -* upstart: job files for all daemon types (not enabled by default) -* wireshark: ceph protocol dissector patch updated - - -v0.54 -===== - -Upgrading ---------- - -* The osd capabilities associated with a rados user have changed - syntax since 0.48 argonaut. The new format is mostly backwards - compatible, but there are two backwards-incompatible changes: - - * specifying a list of pools in one grant, i.e. - 'allow r pool=foo,bar' is now done in separate grants, i.e. - 'allow r pool=foo, allow r pool=bar'. - - * restricting pool access by pool owner ('allow r uid=foo') is - removed. This feature was not very useful and unused in practice. - - The new format is documented in the ceph-authtool man page. - -* Bug fixes to the new osd capability format parsing properly validate - the allowed operations. If an existing rados user gets permissions - errors after upgrading, its capabilities were probably - misconfigured. See the ceph-authtool man page for details on osd - capabilities. - -* 'rbd lock list' and 'rbd showmapped' no longer use tabs as - separators in their output. diff --git a/doc/releases/cuttlefish.rst b/doc/releases/cuttlefish.rst deleted file mode 100644 index a7ebaa3d8..000000000 --- a/doc/releases/cuttlefish.rst +++ /dev/null @@ -1,720 +0,0 @@ -========== -Cuttlefish -========== - -Cuttlefish is the 3rd stable release of Ceph. It is named after a type -of cephalopod (order Sepiida) characterized by a unique internal shell, the -cuttlebone, which is used for control of buoyancy. - -v0.61.9 "Cuttlefish" -==================== - -This point release resolves several low to medium-impact bugs across -the code base, and fixes a performance problem (CPU utilization) with -radosgw. We recommend that all production cuttlefish users upgrade. - -Notable Changes ---------------- - -* ceph, ceph-authtool: fix help (Danny Al-Gaaf) -* ceph-disk: partprobe after creating journal partition -* ceph-disk: specific fs type when mounting (Alfredo Deza) -* ceph-fuse: fix bug when compiled against old versions -* ceph-fuse: fix use-after-free in caching code (Yan, Zheng) -* ceph-fuse: misc caching bugs -* ceph.spec: remove incorrect mod_fcgi dependency (Gary Lowell) -* crush: fix name caching -* librbd: fix bug when unpausing cluster (Josh Durgin) -* mds: fix LAZYIO lock hang -* mds: fix bug in file size recovery (after client crash) -* mon: fix paxos recovery corner case -* osd: fix exponential backoff for slow request warnings (Loic Dachary) -* osd: fix readdir_r usage -* osd: fix startup for long-stopped OSDs -* rgw: avoid std::list::size() to avoid wasting CPU cycles (Yehuda Sadeh) -* rgw: drain pending requests during write (fixes data safety issue) (Yehuda Sadeh) -* rgw: fix authenticated users group ACL check (Yehuda Sadeh) -* rgw: fix bug in POST (Yehuda Sadeh) -* rgw: fix sysvinit script 'status' command, return value (Danny Al-Gaaf) -* rgw: reduce default log level (Yehuda Sadeh) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.9.txt>`. - -v0.61.8 "Cuttlefish" -==================== - -This release includes a number of important issues, including rare -race conditions in the OSD, a few monitor bugs, and fixes for RBD -flush behavior. We recommend that production users upgrade at their -convenience. - -Notable Changes ---------------- - -* librados: fix async aio completion wakeup -* librados: fix aio completion locking -* librados: fix rare deadlock during shutdown -* osd: fix race when queueing recovery operations -* osd: fix possible race during recovery -* osd: optionally preload rados classes on startup (disabled by default) -* osd: fix journal replay corner condition -* osd: limit size of peering work queue batch (to speed up peering) -* mon: fix paxos recovery corner case -* mon: fix rare hang when monmap updates during an election -* mon: make 'osd pool mksnap ...' avoid exposing uncommitted state -* mon: make 'osd pool rmsnap ...' not racy, avoid exposing uncommitted state -* mon: fix bug during mon cluster expansion -* rgw: fix crash during multi delete operation -* msgr: fix race conditions during osd network reinitialization -* ceph-disk: apply mount options when remounting - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.8.txt>`. - - -v0.61.7 "Cuttlefish" -==================== - -This release fixes another regression preventing monitors to start after -undergoing certain upgrade sequences, as well as some corner cases with -Paxos and support for unusual device names in ceph-disk/ceph-deploy. - -Notable Changes ---------------- - -* mon: fix regression in latest full osdmap retrieval -* mon: fix a long-standing bug in a paxos corner case -* ceph-disk: improved support for unusual device names (e.g., /dev/cciss/c0d0) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.7.txt>`. - - -v0.61.6 "Cuttlefish" -==================== - -This release fixes a regression in v0.61.5 that could prevent monitors -from restarting. This affects any cluster that was upgraded from a -previous version of Ceph (and not freshly created with v0.61.5). - -All users are strongly recommended to upgrade. - -Notable Changes ---------------- - -* mon: record latest full osdmap -* mon: work around previous bug in which latest full osdmap is not recorded -* mon: avoid scrub while updating - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.6.txt>`. - - -v0.61.5 "Cuttlefish" -==================== - -This release most improves stability of the monitor and fixes a few -bugs with the ceph-disk utility (used by ceph-deploy). We recommend -that all v0.61.x users upgrade. - -Upgrading ---------- - -* This release fixes a 32-bit vs 64-bit arithmetic bug with the - feature bits. An unfortunate consequence of the fix is that 0.61.4 - (or earlier) ceph-mon daemons can't form a quorum with 0.61.5 (or - later) monitors. To avoid the possibility of service disruption, we - recommend you upgrade all monitors at once. - -Notable Changes ---------------- - -* mon: misc sync improvements (faster, more reliable, better tuning) -* mon: enable leveldb cache by default (big performance improvement) -* mon: new scrub feature (primarily for diagnostic, testing purposes) -* mon: fix occasional leveldb assertion on startup -* mon: prevent reads until initial state is committed -* mon: improved logic for trimming old osdmaps -* mon: fix pick_addresses bug when expanding mon cluster -* mon: several small paxos fixes, improvements -* mon: fix bug osdmap trim behavior -* osd: fix several bugs with PG stat reporting -* osd: limit number of maps shared with peers (which could cause domino failures) -* rgw: fix radosgw-admin buckets list (for all buckets) -* mds: fix occasional client failure to reconnect -* mds: fix bad list traversal after unlink -* mds: fix underwater dentry cleanup (occasional crash after mds restart) -* libcephfs, ceph-fuse: fix occasional hangs on umount -* libcephfs, ceph-fuse: fix old bug with O_LAZY vs O_NOATIME confusion -* ceph-disk: more robust journal device detection on RHEL/CentOS -* ceph-disk: better, simpler locking -* ceph-disk: do not inadvertantely mount over existing osd mounts -* ceph-disk: better handling for unusual device names -* sysvinit, upstart: handle symlinks in /var/lib/ceph/* - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.5.txt>`. - - -v0.61.4 "Cuttlefish" -==================== - -This release resolves a possible data corruption on power-cycle when -using XFS, a few outstanding problems with monitor sync, several -problems with ceph-disk and ceph-deploy operation, and a problem with -OSD memory usage during scrub. - -Upgrading ---------- - -* No issues. - -Notable Changes ---------------- - -* mon: fix daemon exit behavior when error is encountered on startup -* mon: more robust sync behavior -* osd: do not use sync_file_range(2), posix_fadvise(...DONTNEED) (can cause data corruption on power loss on XFS) -* osd: avoid unnecessary log rewrite (improves peering speed) -* osd: fix scrub efficiency bug (problematic on old clusters) -* rgw: fix listing objects that start with underscore -* rgw: fix deep URI resource, CORS bugs -* librados python binding: fix truncate on 32-bit architectures -* ceph-disk: fix udev rules -* rpm: install sysvinit script on package install -* ceph-disk: fix OSD start on machine reboot on Debian wheezy -* ceph-disk: activate OSD when journal device appears second -* ceph-disk: fix various bugs on RHEL/CentOS 6.3 -* ceph-disk: add 'zap' command -* ceph-disk: add '[un]suppress-activate' command for preparing spare disks -* upstart: start on runlevel [2345] (instead of after the first network interface starts) -* ceph-fuse, libcephfs: handle mds session reset during session open -* ceph-fuse, libcephfs: fix two capability revocation bugs -* ceph-fuse: fix thread creation on startup -* all daemons: create /var/run/ceph directory on startup if missing - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.4.txt>`. - - -v0.61.3 "Cuttlefish" -==================== - -This release resolves a number of problems with the monitors and leveldb that users have -been seeing. Please upgrade. - -Upgrading ---------- - -* There is one known problem with mon upgrades from bobtail. If the - ceph-mon conversion on startup is aborted or fails for some reason, we - do not correctly error out, but instead continue with (in certain cases) - odd results. Please be careful if you have to restart the mons during - the upgrade. A 0.61.4 release with a fix will be out shortly. - -* In the meantime, for current cuttlefish users, v0.61.3 is safe to use. - - -Notable Changes ---------------- - -* mon: paxos state trimming fix (resolves runaway disk usage) -* mon: finer-grained compaction on trim -* mon: discard messages from disconnected clients (lowers load) -* mon: leveldb compaction and other stats available via admin socket -* mon: async compaction (lower overhead) -* mon: fix bug incorrectly marking osds down with insufficient failure reports -* osd: fixed small bug in pg request map -* osd: avoid rewriting pg info on every osdmap -* osd: avoid internal heartbeta timeouts when scrubbing very large objects -* osd: fix narrow race with journal replay -* mon: fixed narrow pg split race -* rgw: fix leaked space when copying object -* rgw: fix iteration over large/untrimmed usage logs -* rgw: fix locking issue with ops log socket -* rgw: require matching version of librados -* librbd: make image creation defaults configurable (e.g., create format 2 images via qemu-img) -* fix units in 'ceph df' output -* debian: fix prerm/postinst hooks to start/stop daemons appropriately -* upstart: allow uppercase daemons names (and thus hostnames) -* sysvinit: fix enumeration of local daemons by type -* sysvinit: fix osd weight calcuation when using -a -* fix build on unsigned char platforms (e.g., arm) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.3.txt>`. - - -v0.61.2 "Cuttlefish" -==================== - -This release disables a monitor debug log that consumes disk space and -fixes a bug when upgrade some monitors from bobtail to cuttlefish. - -Notable Changes ---------------- - -* mon: fix conversion of stores with duplicated GV values -* mon: disable 'mon debug dump transactions' by default - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.2.txt>`. - - -v0.61.1 "Cuttlefish" -==================== - -This release fixes a problem when upgrading a bobtail cluster that had -snapshots to cuttlefish. - -Notable Changes ---------------- - -* osd: handle upgrade when legacy snap collections are present; repair from previous failed restart -* ceph-create-keys: fix race with ceph-mon startup (which broke 'ceph-deploy gatherkeys ...') -* ceph-create-keys: gracefully handle bad response from ceph-osd -* sysvinit: do not assume default osd_data when automatically weighting OSD -* osd: avoid crash from ill-behaved classes using getomapvals -* debian: fix squeeze dependency -* mon: debug options to log or dump leveldb transactions - -For more detailed information, see :download:`the complete changelog <../changelog/v0.61.1.txt>`. - -v0.61 "Cuttlefish" -================== - -Upgrading from v0.60 --------------------- - -* The ceph-deploy tool is now the preferred method of provisioning - new clusters. For existing clusters created via mkcephfs that - would like to transition to the new tool, there is a migration - path, documented at `Transitioning to ceph-deploy`_. - - -* The sysvinit script (/etc/init.d/ceph) will now verify (and, if - necessary, update) the OSD's position in the CRUSH map on startup. - (The upstart script has always worked this way.) By default, this - ensures that the OSD is under a 'host' with a name that matches the - hostname (``hostname -s``). Legacy clusters create with mkcephfs do - this by default, so this should not cause any problems, but legacy - clusters with customized CRUSH maps with an alternate structure - should set ``osd crush update on start = false``. - -* radosgw-admin now uses the term zone instead of cluster to describe - each instance of the radosgw data store (and corresponding - collection of radosgw daemons). The usage for the radosgw-admin - command and the 'rgw zone root pool' config options have changed - accordingly. - -* rbd progress indicators now go to standard error instead of standard - out. (You can disable progress with --no-progress.) - -* The 'rbd resize ...' command now requires the --allow-shrink option - when resizing to a smaller size. Expanding images to a larger size - is unchanged. - -* Please review the changes going back to 0.56.4 if you are upgrading - all the way from bobtail. - -* The old 'ceph stop_cluster' command has been removed. - -* The sysvinit script now uses the ceph.conf file on the remote host - when starting remote daemons via the '-a' option. Note that if '-a' - is used in conjunction with '-c path', the path must also be present - on the remote host (it is not copied to a temporary file, as it was - previously). - - -Upgrading from v0.56.4 "Bobtail" --------------------------------- - -Please see `Upgrading from Bobtail to Cuttlefish`_ for details. - -.. _Upgrading from Bobtail to Cuttlefish: ../install/upgrading-ceph/#upgrading-from-bobtail-to-cuttlefish - -* The ceph-deploy tool is now the preferred method of provisioning - new clusters. For existing clusters created via mkcephfs that - would like to transition to the new tool, there is a migration - path, documented at `Transitioning to ceph-deploy`_. - -.. _Transitioning to ceph-deploy: ../rados/deployment/ceph-deploy-transition - -* The sysvinit script (/etc/init.d/ceph) will now verify (and, if - necessary, update) the OSD's position in the CRUSH map on startup. - (The upstart script has always worked this way.) By default, this - ensures that the OSD is under a 'host' with a name that matches the - hostname (``hostname -s``). Legacy clusters create with mkcephfs do - this by default, so this should not cause any problems, but legacy - clusters with customized CRUSH maps with an alternate structure - should set ``osd crush update on start = false``. - -* radosgw-admin now uses the term zone instead of cluster to describe - each instance of the radosgw data store (and corresponding - collection of radosgw daemons). The usage for the radosgw-admin - command and the 'rgw zone root pool' config options have changed - accordingly. - -* rbd progress indicators now go to standard error instead of standard - out. (You can disable progress with --no-progress.) - -* The 'rbd resize ...' command now requires the --allow-shrink option - when resizing to a smaller size. Expanding images to a larger size - is unchanged. - -* Please review the changes going back to 0.56.4 if you are upgrading - all the way from bobtail. - -* The old 'ceph stop_cluster' command has been removed. - -* The sysvinit script now uses the ceph.conf file on the remote host - when starting remote daemons via the '-a' option. Note that if '-a' - is used in conjunction with '-c path', the path must also be present - on the remote host (it is not copied to a temporary file, as it was - previously). - -* The monitor is using a completely new storage strategy and - intra-cluster protocol. This means that cuttlefish and bobtail - monitors do not talk to each other. When you upgrade each one, it - will convert its local data store to the new format. Once you - upgrade a majority, the quorum will be formed using the new protocol - and the old monitors will be blocked out until they too get - upgraded. For this reason, we recommend not running a mixed-version - cluster for very long. - -* ceph-mon now requires the creation of its data directory prior to - --mkfs, similarly to what happens on ceph-osd. This directory is no - longer automatically created, and custom scripts should be adjusted to - reflect just that. - -* The monitor now enforces that MDS names be unique. If you have - multiple daemons start with the same id (e.g., ``mds.a``) the - second one will implicitly mark the first as failed. This makes - things less confusing and makes a daemon restart faster (we no - longer wait for the stopped daemon to time out) but existing - multi-mds configurations may need to be adjusted accordingly to give - daemons unique names. - -* The 'ceph osd pool delete <poolname>' and 'rados rmpool <poolname>' - now have safety interlocks with loud warnings that make you confirm - pool removal. Any scripts currently rely on these functions zapping - data without confirmation need to be adjusted accordingly. - - -Notable Changes from v0.60 --------------------------- - -* rbd: incremental backups -* rbd: only set STRIPINGV2 feature if striping parameters are incompatible with old versions -* rbd: require --allow-shrink for resizing images down -* librbd: many bug fixes -* rgw: management REST API -* rgw: fix object corruption on COPY to self -* rgw: new sysvinit script for rpm-based systems -* rgw: allow buckets with '_' -* rgw: CORS support -* mon: many fixes -* mon: improved trimming behavior -* mon: fix data conversion/upgrade problem (from bobtail) -* mon: ability to tune leveldb -* mon: config-keys service to store arbitrary data on monitor -* mon: 'osd crush add|link|unlink|add-bucket ...' commands -* mon: trigger leveldb compaction on trim -* osd: per-rados pool quotas (objects, bytes) -* osd: tool to export, import, and delete PGs from an individual OSD data store -* osd: notify mon on clean shutdown to avoid IO stall -* osd: improved detection of corrupted journals -* osd: ability to tune leveldb -* osd: improve client request throttling -* osd, librados: fixes to the LIST_SNAPS operation -* osd: improvements to scrub error repair -* osd: better prevention of wedging OSDs with ENOSPC -* osd: many small fixes -* mds: fix xattr handling on root inode -* mds: fixed bugs in journal replay -* mds: many fixes -* librados: clean up snapshot constant definitions -* libcephfs: calls to query CRUSH topology (used by Hadoop) -* ceph-fuse, libcephfs: misc fixes to mds session management -* ceph-fuse: disabled cache invalidation (again) due to potential deadlock with kernel -* sysvinit: try to start all daemons despite early failures -* ceph-disk: new 'list' command -* ceph-disk: hotplug fixes for RHEL/CentOS -* ceph-disk: fix creation of OSD data partitions on >2TB disks -* osd: fix udev rules for RHEL/CentOS systems -* fix daemon logging during initial startup - -Notable changes from v0.56 "Bobtail" ------------------------------------- -* always use installed system leveldb (Gary Lowell) -* auth: ability to require new cephx signatures on messages (still off by default) -* buffer unit testing (Loic Dachary) -* ceph tool: some CLI interface cleanups -* ceph-disk: improve multicluster support, error handling (Sage Weil) -* ceph-disk: support for dm-crypt (Alexandre Marangone) -* ceph-disk: support for sysvinit, directories or partitions (not full disks) -* ceph-disk: fix mkfs args on old distros (Alexandre Marangone) -* ceph-disk: fix creation of OSD data partitions on >2TB disks -* ceph-disk: hotplug fixes for RHEL/CentOS -* ceph-disk: new 'list' command -* ceph-fuse, libcephfs: misc fixes to mds session management -* ceph-fuse: disabled cache invalidation (again) due to potential deadlock with kernel -* ceph-fuse: enable kernel cache invalidation (Sam Lang) -* ceph-fuse: fix statfs(2) reporting -* ceph-fuse: session handling cleanup, bug fixes (Sage Weil) -* crush: ability to create, remove rules via CLI -* crush: update weights for all instances of an item, not just the first (Sage Weil) -* fix daemon logging during initial startup -* fixed log rotation (Gary Lowell) -* init-ceph, mkcephfs: close a few security holes with -a (Sage Weil) -* libcephfs: calls to query CRUSH topology (used by Hadoop) -* libcephfs: many fixes, cleanups with the Java bindings -* libcephfs: new topo API requests for Hadoop (Noah Watkins) -* librados: clean up snapshot constant definitions -* librados: fix linger bugs (Josh Durgin) -* librbd: fixed flatten deadlock (Josh Durgin) -* librbd: fixed some locking issues with flatten (Josh Durgin) -* librbd: many bug fixes -* librbd: optionally wait for flush before enabling writeback (Josh Durgin) -* many many cleanups (Danny Al-Gaaf) -* mds, ceph-fuse: fix bugs with replayed requests after MDS restart (Sage Weil) -* mds, ceph-fuse: manage layouts via xattrs -* mds: allow xattrs on root -* mds: fast failover between MDSs (enforce unique mds names) -* mds: fix xattr handling on root inode -* mds: fixed bugs in journal replay -* mds: improve session cleanup (Sage Weil) -* mds: many fixes (Yan Zheng) -* mds: misc bug fixes with clustered MDSs and failure recovery -* mds: misc bug fixes with readdir -* mds: new encoding for all data types (to allow forward/backward compatibility) (Greg Farnum) -* mds: store and update backpointers/traces on directory, file objects (Sam Lang) -* mon: 'osd crush add|link|unlink|add-bucket ...' commands -* mon: ability to tune leveldb -* mon: approximate recovery, IO workload stats -* mon: avoid marking entire CRUSH subtrees out (e.g., if an entire rack goes offline) -* mon: config-keys service to store arbitrary data on monitor -* mon: easy adjustment of crush tunables via 'ceph osd crush tunables ...' -* mon: easy creation of crush rules vai 'ceph osd rule ...' -* mon: fix data conversion/upgrade problem (from bobtail) -* mon: improved trimming behavior -* mon: many fixes -* mon: new 'ceph df [detail]' command -* mon: new checks for identifying and reporting clock drift -* mon: rearchitected to utilize single instance of paxos and a key/value store (Joao Luis) -* mon: safety check for pool deletion -* mon: shut down safely if disk approaches full (Joao Luis) -* mon: trigger leveldb compaction on trim -* msgr: fix comparison of IPv6 addresses (fixes monitor bringup via ceph-deploy, chef) -* msgr: fixed race in connection reset -* msgr: optionally tune TCP buffer size to avoid throughput collapse (Jim Schutt) -* much code cleanup and optimization (Danny Al-Gaaf) -* osd, librados: ability to list watchers (David Zafman) -* osd, librados: fixes to the LIST_SNAPS operation -* osd, librados: new listsnaps command (David Zafman) -* osd: a few journaling bug fixes -* osd: ability to tune leveldb -* osd: add 'noscrub', 'nodeepscrub' osdmap flags (David Zafman) -* osd: better prevention of wedging OSDs with ENOSPC -* osd: ceph-filestore-dump tool for debugging -* osd: connection handling bug fixes -* osd: deep-scrub omap keys/values -* osd: default to libaio for the journal (some performance boost) -* osd: fix hang in 'journal aio = true' mode (Sage Weil) -* osd: fix pg log trimming (avoids memory bloat on degraded clusters) -* osd: fix udev rules for RHEL/CentOS systems -* osd: fixed bug in journal checksums (Sam Just) -* osd: improved client request throttling -* osd: improved handling when disk fills up (David Zafman) -* osd: improved journal corruption detection (Sam Just) -* osd: improved detection of corrupted journals -* osd: improvements to scrub error repair -* osd: make tracking of object snapshot metadata more efficient (Sam Just) -* osd: many small fixes -* osd: misc fixes to PG split (Sam Just) -* osd: move pg info, log into leveldb (== better performance) (David Zafman) -* osd: notify mon on clean shutdown to avoid IO stall -* osd: per-rados pool quotas (objects, bytes) -* osd: refactored watch/notify infrastructure (fixes protocol, removes many bugs) (Sam Just) -* osd: support for improved hashing of PGs across OSDs via HASHPSPOOL pool flag and feature -* osd: tool to export, import, and delete PGs from an individual OSD data store -* osd: trim log more aggressively, avoid appearance of leak memory -* osd: validate snap collections on startup -* osd: verify snap collections on startup (Sam Just) -* radosgw: ACL grants in headers (Caleb Miles) -* radosgw: ability to listen to fastcgi via a port (Guilhem Lettron) -* radosgw: fix object copy onto self (Yehuda Sadeh) -* radosgw: misc fixes -* rbd-fuse: new tool, package -* rbd: avoid FIEMAP when importing from file (it can be buggy) -* rbd: incremental backups -* rbd: only set STRIPINGV2 feature if striping parameters are incompatible with old versions -* rbd: require --allow-shrink for resizing images down -* rbd: udevadm settle on map/unmap to avoid various races (Dan Mick) -* rbd: wait for udev to settle in strategic places (avoid spurious errors, failures) -* rgw: CORS support -* rgw: allow buckets with '_' -* rgw: fix Content-Length on 32-bit machines (Jan Harkes) -* rgw: fix log rotation -* rgw: fix object corruption on COPY to self -* rgw: fixed >4MB range requests (Jan Harkes) -* rgw: new sysvinit script for rpm-based systems -* rpm/deb: do not remove /var/lib/ceph on purge (v0.59 was the only release to do so) -* sysvinit: try to start all daemons despite early failures -* upstart: automatically set osd weight based on df (Guilhem Lettron) -* use less memory for logging by default - - -v0.60 -===== - -Upgrading ---------- - -* Please note that the recently added librados 'list_snaps' function - call is in a state of flux and is changing slightly in v0.61. You - are advised not to make use of it in v0.59 or v0.60. - -Notable Changes ---------------- - -* osd: make tracking of object snapshot metadata more efficient (Sam Just) -* osd: misc fixes to PG split (Sam Just) -* osd: improve journal corruption detection (Sam Just) -* osd: improve handling when disk fills up (David Zafman) -* osd: add 'noscrub', 'nodeepscrub' osdmap flags (David Zafman) -* osd: fix hang in 'journal aio = true' mode (Sage Weil) -* ceph-disk-prepare: fix mkfs args on old distros (Alexandre Marangone) -* ceph-disk-activate: improve multicluster support, error handling (Sage Weil) -* librbd: optionally wait for flush before enabling writeback (Josh Durgin) -* crush: update weights for all instances of an item, not just the first (Sage Weil) -* mon: shut down safely if disk approaches full (Joao Luis) -* rgw: fix Content-Length on 32-bit machines (Jan Harkes) -* mds: store and update backpointers/traces on directory, file objects (Sam Lang) -* mds: improve session cleanup (Sage Weil) -* mds, ceph-fuse: fix bugs with replayed requests after MDS restart (Sage Weil) -* ceph-fuse: enable kernel cache invalidation (Sam Lang) -* libcephfs: new topo API requests for Hadoop (Noah Watkins) -* ceph-fuse: session handling cleanup, bug fixes (Sage Weil) -* much code cleanup and optimization (Danny Al-Gaaf) -* use less memory for logging by default -* upstart: automatically set osd weight based on df (Guilhem Lettron) -* init-ceph, mkcephfs: close a few security holes with -a (Sage Weil) -* rpm/deb: do not remove /var/lib/ceph on purge (v0.59 was the only release to do so) - - -v0.59 -===== - -Upgrading ---------- - -* The monitor is using a completely new storage strategy and - intra-cluster protocol. This means that v0.59 and pre-v0.59 - monitors do not talk to each other. When you upgrade each one, it - will convert its local data store to the new format. Once you - upgrade a majority, the quorum will be formed using the new protocol - and the old monitors will be blocked out until they too get - upgraded. For this reason, we recommend not running a mixed-version - cluster for very long. - -* ceph-mon now requires the creation of its data directory prior to - --mkfs, similarly to what happens on ceph-osd. This directory is no - longer automatically created, and custom scripts should be adjusted to - reflect just that. - - -Notable Changes ---------------- - - * mon: rearchitected to utilize single instance of paxos and a key/value store (Joao Luis) - * mon: new 'ceph df [detail]' command - * osd: support for improved hashing of PGs across OSDs via HASHPSPOOL pool flag and feature - * osd: refactored watch/notify infrastructure (fixes protocol, removes many bugs) (Sam Just) - * osd, librados: ability to list watchers (David Zafman) - * osd, librados: new listsnaps command (David Zafman) - * osd: trim log more aggressively, avoid appearance of leak memory - * osd: misc split fixes - * osd: a few journaling bug fixes - * osd: connection handling bug fixes - * rbd: avoid FIEMAP when importing from file (it can be buggy) - * librados: fix linger bugs (Josh Durgin) - * librbd: fixed flatten deadlock (Josh Durgin) - * rgw: fixed >4MB range requests (Jan Harkes) - * rgw: fix log rotation - * mds: allow xattrs on root - * ceph-fuse: fix statfs(2) reporting - * msgr: optionally tune TCP buffer size to avoid throughput collapse (Jim Schutt) - * consume less memory for logging by default - * always use system leveldb (Gary Lowell) - - - -v0.58 -===== - -Upgrading ---------- - -* The monitor now enforces that MDS names be unique. If you have - multiple daemons start with the same id (e.g., ``mds.a``) the - second one will implicitly mark the first as failed. This makes - things less confusing and makes a daemon restart faster (we no - longer wait for the stopped daemon to time out) but existing - multi-mds configurations may need to be adjusted accordingly to give - daemons unique names. - -Notable Changes ---------------- - - * librbd: fixed some locking issues with flatten (Josh Durgin) - * rbd: udevadm settle on map/unmap to avoid various races (Dan Mick) - * osd: move pg info, log into leveldb (== better performance) (David Zafman) - * osd: fix pg log trimming (avoids memory bloat on degraded clusters) - * osd: fixed bug in journal checksums (Sam Just) - * osd: verify snap collections on startup (Sam Just) - * ceph-disk-prepare/activate: support for dm-crypt (Alexandre Marangone) - * ceph-disk-prepare/activate: support for sysvinit, directories or partitions (not full disks) - * msgr: fixed race in connection reset - * msgr: fix comparison of IPv6 addresses (fixes monitor bringup via ceph-deploy, chef) - * radosgw: fix object copy onto self (Yehuda Sadeh) - * radosgw: ACL grants in headers (Caleb Miles) - * radosgw: ability to listen to fastcgi via a port (Guilhem Lettron) - * mds: new encoding for all data types (to allow forward/backward compatibility) (Greg Farnum) - * mds: fast failover between MDSs (enforce unique mds names) - * crush: ability to create, remove rules via CLI - * many many cleanups (Danny Al-Gaaf) - * buffer unit testing (Loic Dachary) - * fixed log rotation (Gary Lowell) - -v0.57 -===== - -This development release has a lot of additional functionality -accumulated over the last couple months. Most of the bug fixes (with -the notable exception of the MDS related work) has already been -backported to v0.56.x, and is not mentioned here. - -Upgrading ---------- - -* The 'ceph osd pool delete <poolname>' and 'rados rmpool <poolname>' - now have safety interlocks with loud warnings that make you confirm - pool removal. Any scripts currently rely on these functions zapping - data without confirmation need to be adjusted accordingly. - -Notable Changes ---------------- - -* osd: default to libaio for the journal (some performance boost) -* osd: validate snap collections on startup -* osd: ceph-filestore-dump tool for debugging -* osd: deep-scrub omap keys/values -* ceph tool: some CLI interface cleanups -* mon: easy adjustment of crush tunables via 'ceph osd crush tunables ...' -* mon: easy creation of crush rules vai 'ceph osd rule ...' -* mon: approximate recovery, IO workload stats -* mon: avoid marking entire CRUSH subtrees out (e.g., if an entire rack goes offline) -* mon: safety check for pool deletion -* mon: new checks for identifying and reporting clock drift -* radosgw: misc fixes -* rbd: wait for udev to settle in strategic places (avoid spurious errors, failures) -* rbd-fuse: new tool, package -* mds, ceph-fuse: manage layouts via xattrs -* mds: misc bug fixes with clustered MDSs and failure recovery -* mds: misc bug fixes with readdir -* libcephfs: many fixes, cleanups with the Java bindings -* auth: ability to require new cephx signatures on messages (still off by default) diff --git a/doc/releases/dumpling.rst b/doc/releases/dumpling.rst deleted file mode 100644 index b9946546e..000000000 --- a/doc/releases/dumpling.rst +++ /dev/null @@ -1,947 +0,0 @@ -======== -Dumpling -======== - -Dumpling is the 4th stable release of Ceph. It is named after the -dumpling squid (Euprymna tasmanica). - -v0.67.12 "Dumpling" (draft) -=========================== - -This stable update for Dumpling fixes a few longstanding issues with -backfill in the OSD that can lead to stalled IOs. There is also a fix -for memory utilization for reads in librbd when caching is enabled, -and then several other small fixes across the rest of the system. - -Dumpling users who have encountered IO stalls during backfill and who -do not expect to upgrade to Firefly soon should upgrade. Everyone -else should upgrade to Firefly already. This is likely to be the last stable -release for the 0.67.x Dumpling series. - - -Notable Changes ---------------- - -* buffer: fix buffer rebuild alignment corner case (#6614 #6003 Loic Dachary, Samuel Just) -* ceph-disk: reprobe partitions after zap (#9665 #9721 Loic Dachary) -* ceph-disk: use partx instead of partprobe when appropriate (Loic Dachary) -* common: add $cctid meta variable (#6228 Adam Crume) -* crush: fix get_full_location_ordered (Sage Weil) -* crush: pick ruleset id that matches rule_id (#9675 Xiaoxi Chen) -* libcephfs: fix tid wrap bug (#9869 Greg Farnum) -* libcephfs: get osd location on -1 should return EINVAL (Sage Weil) -* librados: fix race condition with C API and op timeouts (#9582 Sage Weil) -* librbd: constrain max number of in-flight read requests (#9854 Jason Dillaman) -* librbd: enforce cache size on read requests (Jason Dillaman) -* librbd: fix invalid close in image open failure path (#10030 Jason Dillaman) -* librbd: fix read hang on sparse files (Jason Dillaman) -* librbd: gracefully handle deleted/renamed pools (#10270 #10122 Jason Dillaman) -* librbd: protect list_children from invalid child pool ioctxs (#10123 Jason Dillaman) -* mds: fix ctime updates from clients without dirty caps (#9514 Greg Farnum) -* mds: fix rare NULL dereference in cap update path (Greg Farnum) -* mds: fix assertion caused by system clock backwards (#11053 Yan, Zheng) -* mds: store backtrace on straydir (Yan, Zheng) -* osd: fix journal committed_thru update after replay (#6756 Samuel Just) -* osd: fix memory leak, busy loop on snap trim (#9113 Samuel Just) -* osd: fix misc peering, recovery bugs (#10168 Samuel Just) -* osd: fix purged_snap field on backfill start (#9487 Sage Weil, Samuel Just) -* osd: handle no-op write with snapshot corner case (#10262 Sage Weil, Loic Dachary) -* osd: respect RWORDERED rados flag (Sage Weil) -* osd: several backfill fixes and refactors (Samuel Just, David Zafman) -* rgw: send http status reason explicitly in fastcgi (Yehuda Sadeh) - -v0.67.11 "Dumpling" -=================== - -This stable update for Dumpling fixes several important bugs that -affect a small set of users. - -We recommend that all Dumpling users upgrade at their convenience. If -none of these issues are affecting your deployment there is no -urgency. - - -Notable Changes ---------------- - -* common: fix sending dup cluster log items (#9080 Sage Weil) -* doc: several doc updates (Alfredo Deza) -* libcephfs-java: fix build against older JNI headesr (Greg Farnum) -* librados: fix crash in op timeout path (#9362 Matthias Kiefer, Sage Weil) -* librbd: fix crash using clone of flattened image (#8845 Josh Durgin) -* librbd: fix error path cleanup when failing to open image (#8912 Josh Durgin) -* mon: fix crash when adjusting pg_num before any OSDs are added (#9052 Sage Weil) -* mon: reduce log noise from paxos (Aanchal Agrawal, Sage Weil) -* osd: allow scrub and snap trim thread pool IO priority to be adjusted (Sage Weil) -* osd: fix mount/remount sync race (#9144 Sage Weil) - - -v0.67.10 "Dumpling" -=================== - -This stable update release for Dumpling includes primarily fixes for -RGW, including several issues with bucket listings and a potential -data corruption problem when multiple multi-part uploads race. There is also -some throttling capability added in the OSD for scrub that can mitigate the -performance impact on production clusters. - -We recommend that all Dumpling users upgrade at their convenience. - -Notable Changes ---------------- - -* ceph-disk: partprobe befoere settle, fixing dm-crypt (#6966, Eric Eastman) -* librbd: add invalidate cache interface (Josh Durgin) -* librbd: close image if remove_child fails (Ilya Dryomov) -* librbd: fix potential null pointer dereference (Danny Al-Gaaf) -* librbd: improve writeback checks, performance (Haomai Wang) -* librbd: skip zeroes when copying image (#6257, Josh Durgin) -* mon: fix rule(set) check on 'ceph pool set ... crush_ruleset ...' (#8599, John Spray) -* mon: shut down if mon is removed from cluster (#6789, Joao Eduardo Luis) -* osd: fix filestore perf reports to mon (Sage Weil) -* osd: force any new or updated xattr into leveldb if E2BIG from XFS (#7779, Sage Weil) -* osd: lock snapdir object during write to fix race with backfill (Samuel Just) -* osd: option sleep during scrub (Sage Weil) -* osd: set io priority on scrub and snap trim threads (Sage Weil) -* osd: 'status' admin socket command (Sage Weil) -* rbd: tolerate missing NULL terminator on block_name_prefix (#7577, Dan Mick) -* rgw: calculate user manifest (#8169, Yehuda Sadeh) -* rgw: fix abort on chunk read error, avoid using extra memory (#8289, Yehuda Sadeh) -* rgw: fix buffer overflow on bucket instance id (#8608, Yehuda Sadeh) -* rgw: fix crash in swift CORS preflight request (#8586, Yehuda Sadeh) -* rgw: fix implicit removal of old objects on object creation (#8972, Patrycja Szablowska, Yehuda Sadeh) -* rgw: fix MaxKeys in bucket listing (Yehuda Sadeh) -* rgw: fix race with multiple updates to a single multipart object (#8269, Yehuda Sadeh) -* rgw: improve bucket listing with delimiter (Yehuda Sadeh) -* rgw: include NextMarker in bucket listing (#8858, Yehuda Sadeh) -* rgw: return error early on non-existent bucket (#7064, Yehuda Sadeh) -* rgw: set truncation flag correctly in bucket listing (Yehuda Sadeh) -* sysvinit: continue starting daemons after pre-mount error (#8554, Sage Weil) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.10.txt>`. - - -v0.67.9 "Dumpling" -================== - -This Dumpling point release fixes several minor bugs. The most -prevalent in the field is one that occasionally prevents OSDs from -starting on recently created clusters. - -We recommend that all Dumpling users upgrade at their convenience. - -Notable Changes ---------------- - -* ceph-fuse, libcephfs: client admin socket command to kick and inspect MDS sessions (#8021, Zheng Yan) -* monclient: fix failure detection during mon handshake (#8278, Sage Weil) -* mon: set tid on no-op PGStatsAck messages (#8280, Sage Weil) -* msgr: fix a rare bug with connection negotiation between OSDs (Guang Yang) -* osd: allow snap trim throttling with simple delay (#6278, Sage Weil) -* osd: check for splitting when processing recover/backfill reservations (#6565, Samuel Just) -* osd: fix backfill position tracking (#8162, Samuel Just) -* osd: fix bug in backfill stats (Samuel Just) -* osd: fix bug preventing OSD startup for infant clusters (#8162, Greg Farnum) -* osd: fix rare PG resurrection race causing an incomplete PG (#7740, Samuel Just) -* osd: only complete replicas count toward min_size (#7805, Samuel Just) -* rgw: allow setting ACLs with empty owner (#6892, Yehuda Sadeh) -* rgw: send user manifest header field (#8170, Yehuda Sadeh) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.9.txt>`. - - -v0.67.8 "Dumpling" -================== - -This Dumpling point release fixes several non-critical issues since -v0.67.7. The most notable bug fixes are an auth fix in librbd -(observed as an occasional crash from KVM), an improvement in the -network failure detection with the monitor, and several hard to hit -OSD crashes or hangs. - -We recommend that all users upgrade at their convenience. - -Upgrading ---------- - -* The 'rbd ls' function now returns success and returns an empty when a pool - does not store any rbd images. Previously it would return an ENOENT error. - -* Ceph will now issue a health warning if the 'mon osd down out - interval' config option is set to zero. This warning can be - disabled by adding 'mon warn on osd down out interval zero = false' - to ceph.conf. - -Notable Changes ---------------- - -* all: improve keepalive detection of failed monitor connections (#7888, Sage Weil) -* ceph-fuse, libcephfs: pin inodes during readahead, fixing rare crash (#7867, Sage Weil) -* librbd: make cache writeback a bit less aggressive (Sage Weil) -* librbd: make symlink for qemu to detect librbd in RPM (#7293, Josh Durgin) -* mon: allow 'hashpspool' pool flag to be set and unset (Loic Dachary) -* mon: commit paxos state only after entire quorum acks, fixing rare race where prior round state is readable (#7736, Sage Weil) -* mon: make elections and timeouts a bit more robust (#7212, Sage Weil) -* mon: prevent extreme pool split operations (Greg Farnum) -* mon: wait for quorum for get_version requests to close rare pool creation race (#7997, Sage Weil) -* mon: warn on 'mon osd down out interval = 0' (#7784, Joao Luis) -* msgr: fix byte-order for auth challenge, fixing auth errors on big-endian clients (#7977, Dan Mick) -* msgr: fix occasional crash in authentication code (usually triggered by librbd) (#6840, Josh Durgin) -* msgr: fix rebind() race (#6992, Xihui He) -* osd: avoid timeouts during slow PG deletion (#6528, Samuel Just) -* osd: fix bug in pool listing during recovery (#6633, Samuel Just) -* osd: fix queue limits, fixing recovery stalls (#7706, Samuel Just) -* osd: fix rare peering crashes (#6722, #6910, Samuel Just) -* osd: fix rare recovery hang (#6681, Samuel Just) -* osd: improve error handling on journal errors (#7738, Sage Weil) -* osd: reduce load on the monitor from OSDMap subscriptions (Greg Farnum) -* osd: rery GetLog on peer osd startup, fixing some rare peering stalls (#6909, Samuel Just) -* osd: reset journal state on remount to fix occasional crash on OSD startup (#8019, Sage Weil) -* osd: share maps with peers more aggressively (Greg Farnum) -* rbd: make it harder to delete an rbd image that is currently in use (#7076, Ilya Drymov) -* rgw: deny writes to secondary zone by non-system users (#6678, Yehuda Sadeh) -* rgw: do'nt log system requests in usage log (#6889, Yehuda Sadeh) -* rgw: fix bucket recreation (#6951, Yehuda Sadeh) -* rgw: fix Swift range response (#7099, Julien Calvet, Yehuda Sadeh) -* rgw: fix URL escaping (#8202, Yehuda Sadeh) -* rgw: fix whitespace trimming in http headers (#7543, Yehuda Sadeh) -* rgw: make multi-object deletion idempotent (#7346, Yehuda Sadeh) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.8.txt>`. - -v0.67.7 "Dumpling" -================== - -This Dumpling point release fixes a few critical issues in v0.67.6. - -All v0.67.6 users are urgently encouraged to upgrade. We also -recommend that all v0.67.5 (or older) users upgrade. - -Upgrading ---------- - -* Once you have upgraded a radosgw instance or OSD to v0.67.7, you should not - downgrade to a previous version. - -Notable Changes ---------------- - -* ceph-disk: additional unit tests -* librbd: revert caching behavior change in v0.67.6 -* osd: fix problem reading xattrs due to incomplete backport in v0.67.6 -* radosgw-admin: fix reading object policy - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.7.txt>`. - - -v0.67.6 "Dumpling" -================== - -.. note: This release contains a librbd bug that is fixed in v0.67.7. Please upgrade to v0.67.7 and do not use v0.67.6. - -This Dumpling point release contains a number of important fixed for -the OSD, monitor, and radosgw. Most significantly, a change that -forces large object attributes to spill over into leveldb has been -backported that can prevent objects and the cluster from being damaged -by large attributes (which can be induced via the radosgw). There is -also a set of fixes that improves data safety and RADOS semantics when -the cluster becomes full and then non-full. - -We recommend that all 0.67.x Dumpling users skip this release and upgrade to v0.67.7. - -Upgrading ---------- - -* The OSD has long contained a feature that allows large xattrs to - spill over into the leveldb backing store in situations where not - all local file systems are able to store them reliably. This option - is now enabled unconditionally in order to avoid rare cases where - storing large xattrs renders the object unreadable. This is known to - be triggered by very large multipart objects, but could be caused by - other workloads as well. Although there is some small risk that - performance for certain workloads will degrade, it is more important - that data be retrievable. Note that newer versions of Ceph (e.g., - firefly) do some additional work to avoid the potential performance - regression in this case, but that is current considered too complex - for backport to the Dumpling stable series. - -* It is very dangerous to downgrade from v0.67.6 to a prior version of - Dumpling. If the old version does not have 'filestore xattr use - omap = true' it may not be able to read all xattrs for an object and - can cause undefined behavior. - -Notable changes ---------------- - -* ceph-disk: misc bug fixes, particularly on RHEL (Loic Dachary, Alfredo Deza, various) -* ceph-fuse, libcephfs: fix crash from read over certain sparseness patterns (Sage Weil) -* ceph-fuse, libcephfs: fix integer overflow for sync reads racing with appends (Sage Weil) -* ceph.spec: fix udev rule when building RPM under RHEL (Derek Yarnell) -* common: fix crash from bad format from admin socket (Loic Dachary) -* librados: add optional timeouts (Josh Durgin) -* librados: do not leak budget when resending localized or redirected ops (Josh Durgin) -* librados, osd: fix and improve full cluster handling (Josh Durgin) -* librbd: fix use-after-free when updating perfcounters during image close (Josh Durgin) -* librbd: remove limit on objects in cache (Josh Durgin) -* mon: avoid on-disk full OSDMap corruption from pg_temp removal (Sage Weil) -* mon: avoid stray pg_temp entries from pool deletion race (Joao Eduardo Luis) -* mon: do not generate spurious MDSMaps from laggy daemons (Joao Eduardo Luis) -* mon: fix error code from 'osd rm|down|out|in ...' commands (Loic Dachary) -* mon: include all health items in summary output (John Spray) -* osd: fix occasional race/crash during startup (Sage Weil) -* osd: ignore stray OSDMap messages during init (Sage Weil) -* osd: unconditionally let xattrs overflow into leveldb (David Zafman) -* rados: fix a few error checks for the CLI (Josh Durgin) -* rgw: convert legacy bucket info objects on demand (Yehuda Sadeh) -* rgw: fix bug causing system users to lose privileges (Yehuda Sadeh) -* rgw: fix CORS bugs related to headers and case sensitivity (Robin H. Johnson) -* rgw: fix multipart object listing (Yehuda Sadeh) -* rgw: fix racing object creations (Yehuda Sadeh) -* rgw: fix racing object put and delete (Yehuda Sadeh) -* rgw: fix S3 auth when using response-* query string params (Sylvain Munaut) -* rgw: use correct secret key for POST authentication (Robin H. Johnson) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.6.txt>`. - - -v0.67.5 "Dumpling" -================== - -This release includes a few critical bug fixes for the radosgw, -including a fix for hanging operations on large objects. There are also -several bug fixes for radosgw multi-site replications, and a few -backported features. Also, notably, the 'osd perf' command (which dumps -recent performance information about active OSDs) has been backported. - -We recommend that all 0.67.x Dumpling users upgrade. - -Notable changes ---------------- - -* ceph-fuse: fix crash in caching code -* mds: fix looping in populate_mydir() -* mds: fix standby-replay race -* mon: accept 'osd pool set ...' as string -* mon: backport: 'osd perf' command to dump recent OSD performance stats -* osd: add feature compat check for upcoming object sharding -* osd: fix osd bench block size argument -* rbd.py: increase parent name size limit -* rgw: backport: allow wildcard in supported keystone roles -* rgw: backport: improve swift COPY behavior -* rgw: backport: log and open admin socket by default -* rgw: backport: validate S3 tokens against keystone -* rgw: fix bucket removal -* rgw: fix client error code for chunked PUT failure -* rgw: fix hang on large object GET -* rgw: fix rare use-after-free -* rgw: various DR bug fixes -* sysvinit, upstart: prevent starting daemons using both init systems - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.5.txt>`. - - -v0.67.4 "Dumpling" -================== - -This point release fixes an important performance issue with radosgw, -keystone authentication token caching, and CORS. All users -(especially those of rgw) are encouraged to upgrade. - -Notable changes ---------------- - -* crush: fix invalidation of cached names -* crushtool: do not crash on non-unique bucket ids -* mds: be more careful when decoding LogEvents -* mds: fix heap check debugging commands -* mon: avoid rebuilding old full osdmaps -* mon: fix 'ceph crush move ...' -* mon: fix 'ceph osd crush reweight ...' -* mon: fix writeout of full osdmaps during trim -* mon: limit size of transactions -* mon: prevent both unmanaged and pool snaps -* osd: disable xattr size limit (prevents upload of large rgw objects) -* osd: fix recovery op throttling -* osd: fix throttling of log messages for very slow requests -* rgw: drain pending requests before completing write -* rgw: fix CORS -* rgw: fix inefficient list::size() usage -* rgw: fix keystone token expiration -* rgw: fix minor memory leaks -* rgw: fix null termination of buffer - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.4.txt>`. - - -v0.67.3 "Dumpling" -================== - -This point release fixes a few important performance regressions with -the OSD (both with CPU and disk utilization), as well as several other -important but less common problems. We recommend that all production users -upgrade. - -Notable Changes ---------------- - -* ceph-disk: partprobe after creation journal partition -* ceph-disk: specify fs type when mounting -* ceph-post-file: new utility to help share logs and other files with ceph developers -* libcephfs: fix truncate vs readahead race (crash) -* mds: fix flock/fcntl lock deadlock -* mds: fix rejoin loop when encountering pre-dumpling backpointers -* mon: allow name and addr discovery during election stage -* mon: always refresh after Paxos store_state (fixes recovery corner case) -* mon: fix off-by-4x bug with osd byte counts -* osd: add and disable 'pg log keys debug' by default -* osd: add option to disable throttling -* osd: avoid leveldb iterators for pg log append and trim -* osd: fix readdir_r invocations -* osd: use fdatasync instead of sync -* radosgw: fix sysvinit script return status -* rbd: relicense as LGPL2 -* rgw: flush pending data on multipart upload -* rgw: recheck object name during S3 POST -* rgw: reorder init/startup -* rpm: fix debuginfo package build - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.3.txt>`. - - -v0.67.2 "Dumpling" -================== - -This is an important point release for Dumpling. Most notably, it -fixes a problem when upgrading directly from v0.56.x Bobtail to -v0.67.x Dumpling (without stopping at v0.61.x Cuttlefish along the -way). It also fixes a problem with the CLI parsing of the CEPH_ARGS -environment variable, high CPU utilization by the ceph-osd daemons, -and cleans up the radosgw shutdown sequence. - -Notable Changes ---------------- - -* objecter: resend linger requests when cluster goes from full to non-full -* ceph: parse CEPH_ARGS environment variable -* librados: fix small memory leak -* osd: remove old log objects on upgrade (fixes bobtail -> dumpling jump) -* osd: disable PGLog::check() via config option (fixes CPU burn) -* rgw: drain requests on shutdown -* rgw: misc memory leaks on shutdown - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.2.txt>`. - - -v0.67.1 "Dumpling" -================== - -This is a minor point release for Dumpling that fixes problems with -OpenStack and librbd hangs when caching is disabled. - -Notable changes ---------------- - -* librados, librbd: fix constructor for python bindings with certain - usages (in particular, that used by OpenStack) -* librados, librbd: fix aio_flush wakeup when cache is disabled -* librados: fix locking for aio completion refcounting -* fixes 'ceph --admin-daemon ...' command error code on error -* fixes 'ceph daemon ... config set ...' command for boolean config - options. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.67.1.txt>`. - -v0.67 "Dumpling" -================ - -This is the fourth major release of Ceph, code-named "Dumpling." The -headline features for this release include: - -* Multi-site support for radosgw. This includes the ability to set up - separate "regions" in the same or different Ceph clusters that share - a single S3/Swift bucket/container namespace. - -* RESTful API endpoint for Ceph cluster administration. - ceph-rest-api, a wrapper around ceph_rest_api.py, can be used to - start up a test single-threaded HTTP server that provides access to - cluster information and administration in very similar ways to the - ceph commandline tool. ceph_rest_api.py can be used as a WSGI - application for deployment in a more-capable web server. See - ceph-rest-api.8 for more. - -* Object namespaces in librados. - - -.. _dumpling-upgrade: - -Upgrade Sequencing ------------------- - -It is possible to do a rolling upgrade from Cuttlefish to Dumpling. - -#. Upgrade ceph-common on all nodes that will use the command line - 'ceph' utility. -#. Upgrade all monitors (upgrade ceph package, restart ceph-mon - daemons). This can happen one daemon or host at a time. Note that - because cuttlefish and dumpling monitors can't talk to each other, - all monitors should be upgraded in relatively short succession to - minimize the risk that an a untimely failure will reduce - availability. -#. Upgrade all osds (upgrade ceph package, restart ceph-osd daemons). - This can happen one daemon or host at a time. -#. Upgrade radosgw (upgrade radosgw package, restart radosgw daemons). - - -Upgrading from v0.66 --------------------- - -* There is monitor internal protocol change, which means that v0.67 - ceph-mon daemons cannot talk to v0.66 or older daemons. We - recommend upgrading all monitors at once (or in relatively quick - succession) to minimize the possibility of downtime. - -* The output of 'ceph status --format=json' or 'ceph -s --format=json' - has changed to return status information in a more structured and - usable format. - -* The 'ceph pg dump_stuck [threshold]' command used to require a - --threshold or -t prefix to the threshold argument, but now does - not. - -* Many more ceph commands now output formatted information; select - with '--format=<format>', where <format> can be 'json', 'json-pretty', - 'xml', or 'xml-pretty'. - -* The 'ceph pg <pgid> ...' commands (like 'ceph pg <pgid> query') are - deprecated in favor of 'ceph tell <pgid> ...'. This makes the - distinction between 'ceph pg <command> <pgid>' and 'ceph pg <pgid> - <command>' less awkward by making it clearer that the 'tell' - commands are talking to the OSD serving the placement group, not the - monitor. - -* The 'ceph --admin-daemon <path> <command ...>' used to accept the - command and arguments as either a single string or as separate - arguments. It will now only accept the command spread across - multiple arguments. This means that any script which does something - like:: - - ceph --admin-daemon /var/run/ceph/ceph-osd.0.asok 'config set debug_ms 1' - - needs to remove the quotes. Also, note that the above can now be - shortened to:: - - ceph daemon osd.0 config set debug_ms 1 - -* The radosgw caps were inconsistently documented to be either 'mon = - allow r' or 'mon = allow rw'. The 'mon = allow rw' is required for - radosgw to create its own pools. All documentation has been updated - accordingly. - -* The radosgw copy object operation may return extra progress info - during the operation. At this point it will only happen when doing - cross zone copy operations. The S3 response will now return extra - <Progress> field under the <CopyResult> container. The Swift - response will now send the progress as a json array. - -* In v0.66 and v0.65 the HASHPSPOOL pool flag was enabled by default - for new pools, but has been disabled again until Linux kernel client - support reaches more distributions and users. - -* ceph-osd now requires a max file descriptor limit (e.g., ``ulimit -n - ...``) of at least - filestore_wbthrottle_(xfs|btrfs)_inodes_hard_limit (5000 by default) - in order to accommodate the new write back throttle system. On - Ubuntu, upstart now sets the fd limit to 32k. On other platforms, - the sysvinit script will set it to 32k by default (still - overridable via max_open_files). If this field has been customized - in ceph.conf it should likely be adjusted upwards. - -Upgrading from v0.61 "Cuttlefish" ---------------------------------- - -In addition to the above notes about upgrading from v0.66: - -* There has been a huge revamp of the 'ceph' command-line interface - implementation. The ``ceph-common`` client library needs to be - upgrade before ``ceph-mon`` is restarted in order to avoid problems - using the CLI (the old ``ceph`` client utility cannot talk to the - new ``ceph-mon``). - -* The CLI is now very careful about sending the 'status' one-liner - output to stderr and command output to stdout. Scripts relying on - output should take care. - -* The 'ceph osd tell ...' and 'ceph mon tell ...' commands are no - longer supported. Any callers should use:: - - ceph tell osd.<id or *> ... - ceph tell mon.<id or name or *> ... - - The 'ceph mds tell ...' command is still there, but will soon also - transition to 'ceph tell mds.<id or name or \*> ...' - -* The 'ceph osd crush add ...' command used to take one of two forms:: - - ceph osd crush add 123 osd.123 <weight> <location ...> - ceph osd crush add osd.123 <weight> <location ...> - - This is because the id and crush name are redundant. Now only the - simple form is supported, where the osd name/id can either be a bare - id (integer) or name (osd.<id>):: - - ceph osd crush add osd.123 <weight> <location ...> - ceph osd crush add 123 <weight> <location ...> - -* There is now a maximum RADOS object size, configurable via 'osd max - object size', defaulting to 100 GB. Note that this has no effect on - RBD, CephFS, or radosgw, which all stripe over objects. If you are - using librados and storing objects larger than that, you will need - to adjust 'osd max object size', and should consider using smaller - objects instead. - -* The 'osd min down {reporters|reports}' config options have been - renamed to 'mon osd min down {reporters|reports}', and the - documentation has been updated to reflect that these options apply - to the monitors (who process failure reports) and not OSDs. If you - have adjusted these settings, please update your ``ceph.conf`` - accordingly. - - -Notable changes since v0.66 ---------------------------- - -* mon: sync improvements (performance and robustness) -* mon: many bug fixes (paxos and services) -* mon: fixed bugs in recovery and io rate reporting (negative/large values) -* mon: collect metadata on osd performance -* mon: generate health warnings from slow or stuck requests -* mon: expanded --format=<json|xml|...> support for monitor commands -* mon: scrub function for verifying data integrity -* mon, osd: fix old osdmap trimming logic -* mon: enable leveldb caching by default -* mon: more efficient storage of PG metadata -* ceph-rest-api: RESTful endpoint for administer cluster (mirrors CLI) -* rgw: multi-region support -* rgw: infrastructure to support georeplication of bucket and user metadata -* rgw: infrastructure to support georeplication of bucket data -* rgw: COPY object support between regions -* rbd: /etc/ceph/rbdmap file for mapping rbd images on startup -* osd: many bug fixes -* osd: limit number of incremental osdmaps sent to peers (could cause osds to be wrongly marked down) -* osd: more efficient small object recovery -* osd, librados: support for object namespaces -* osd: automatically enable xattrs on leveldb as necessary -* mds: fix bug in LOOKUPINO (used by nfs reexport) -* mds: fix O_TRUNC locking -* msgr: fixed race condition in inter-osd network communication -* msgr: fixed various memory leaks related to network sessions -* ceph-disk: fixes for unusual device names, partition detection -* hypertable: fixes for hypertable CephBroker bindings -* use SSE4.2 crc32c instruction if present - - -Notable changes since v0.61 "Cuttlefish" ----------------------------------------- - -* add 'config get' admin socket command -* ceph-conf: --show-config-value now reflects daemon defaults -* ceph-disk: add '[un]suppress-active DEV' command -* ceph-disk: avoid mounting over an existing osd in /var/lib/ceph/osd/* -* ceph-disk: fixes for unusual device names, partition detection -* ceph-disk: improved handling of odd device names -* ceph-disk: many fixes for RHEL/CentOS, Fedora, wheezy -* ceph-disk: simpler, more robust locking -* ceph-fuse, libcephfs: fix a few caps revocation bugs -* ceph-fuse, libcephfs: fix read zeroing at EOF -* ceph-fuse, libcephfs: fix request refcounting bug (hang on shutdown) -* ceph-fuse, libcephfs: fix truncatation bug on >4MB files (Yan, Zheng) -* ceph-fuse, libcephfs: fix for cap release/hang -* ceph-fuse: add ioctl support -* ceph-fuse: fixed long-standing O_NOATIME vs O_LAZY bug -* ceph-rest-api: RESTful endpoint for administer cluster (mirrors CLI) -* ceph, librados: fix resending of commands on mon reconnect -* daemons: create /var/run/ceph as needed -* debian wheezy: fix udev rules -* debian, specfile: packaging cleanups -* debian: fix upstart behavior with upgrades -* debian: rgw: stop daemon on uninstall -* debian: stop daemons on uninstall; fix dependencies -* hypertable: fixes for hypertable CephBroker bindings -* librados python binding cleanups -* librados python: fix xattrs > 4KB (Josh Durgin) -* librados: configurable max object size (default 100 GB) -* librados: new calls to administer the cluster -* librbd: ability to read from local replicas -* librbd: locking tests (Josh Durgin) -* librbd: make default options/features for newly created images (e.g., via qemu-img) configurable -* librbd: parallelize delete, rollback, flatten, copy, resize -* many many fixes from static code analysis (Danny Al-Gaaf) -* mds: fix O_TRUNC locking -* mds: fix bug in LOOKUPINO (used by nfs reexport) -* mds: fix rare hang after client restart -* mds: fix several bugs (Yan, Zheng) -* mds: many backpointer improvements (Yan, Zheng) -* mds: many fixes for mds clustering -* mds: misc stability fixes (Yan, Zheng, Greg Farnum) -* mds: new robust open-by-ino support (Yan, Zheng) -* mds: support robust lookup by ino number (good for NFS) (Yan, Zheng) -* mon, ceph: huge revamp of CLI and internal admin API. (Dan Mick) -* mon, osd: fix old osdmap trimming logic -* mon, osd: many memory leaks fixed -* mon: better trim/compaction behavior -* mon: collect metadata on osd performance -* mon: enable leveldb caching by default -* mon: expanded --format=<json|xml|...> support for monitor commands -* mon: fix election timeout -* mon: fix leveldb compression, trimming -* mon: fix start fork behavior -* mon: fix units in 'ceph df' output -* mon: fix validation of mds ids from CLI commands -* mon: fixed bugs in recovery and io rate reporting (negative/large values) -* mon: generate health warnings from slow or stuck requests -* mon: many bug fixes (paxos and services, sync) -* mon: many stability fixes (Joao Luis) -* mon: more efficient storage of PG metadata -* mon: new --extract-monmap to aid disaster recovery -* mon: new capability syntax -* mon: scrub function for verifying data integrity -* mon: simplify PaxosService vs Paxos interaction, fix readable/writeable checks -* mon: sync improvements (performance and robustness) -* mon: tuning, performance improvements -* msgr: fix various memory leaks -* msgr: fixed race condition in inter-osd network communication -* msgr: fixed various memory leaks related to network sessions -* osd, librados: support for object namespaces -* osd, mon: optionally dump leveldb transactions to a log -* osd: automatically enable xattrs on leveldb as necessary -* osd: avoid osd flapping from asymmetric network failure -* osd: break blacklisted client watches (David Zafman) -* osd: close narrow journal race -* osd: do not use fadvise(DONTNEED) on XFS (data corruption on power cycle) -* osd: fix for an op ordering bug -* osd: fix handling for split after upgrade from bobtail -* osd: fix incorrect mark-down of osds -* osd: fix internal heartbeart timeouts when scrubbing very large objects -* osd: fix memory/network inefficiency during deep scrub -* osd: fixed problem with front-side heartbeats and mixed clusters (David Zafman) -* osd: limit number of incremental osdmaps sent to peers (could cause osds to be wrongly marked down) -* osd: many bug fixes -* osd: monitor both front and back interfaces -* osd: more efficient small object recovery -* osd: new writeback throttling (for less bursty write performance) (Sam Just) -* osd: pg log (re)writes are now vastly more efficient (faster peering) (Sam Just) -* osd: ping/heartbeat on public and private interfaces -* osd: prioritize recovery for degraded PGs -* osd: re-use partially deleted PG contents when present (Sam Just) -* osd: recovery and peering performance improvements -* osd: resurrect partially deleted PGs -* osd: verify both front and back network are working before rejoining cluster -* rados: clonedata command for cli -* radosgw-admin: create keys for new users by default -* rbd: /etc/ceph/rbdmap file for mapping rbd images on startup -* rgw: COPY object support between regions -* rgw: fix CORS bugs -* rgw: fix locking issue, user operation mask, -* rgw: fix radosgw-admin buckets list (Yehuda Sadeh) -* rgw: fix usage log scanning for large, untrimmed logs -* rgw: handle deep uri resources -* rgw: infrastructure to support georeplication of bucket and user metadata -* rgw: infrastructure to support georeplication of bucket data -* rgw: multi-region support -* sysvinit: fix enumeration of local daemons -* sysvinit: fix osd crush weight calculation when using -a -* sysvinit: handle symlinks in /var/lib/ceph/osd/* -* use SSE4.2 crc32c instruction if present - - -v0.66 -===== - -Upgrading ---------- - -* There is now a configurable maximum rados object size, defaulting to 100 GB. If you - are using librados and storing objects larger than that, you will need to adjust - 'osd max object size', and should consider using smaller objects instead. - -Notable changes ---------------- - -* osd: pg log (re)writes are now vastly more efficient (faster peering) (Sam Just) -* osd: fixed problem with front-side heartbeats and mixed clusters (David Zafman) -* mon: tuning, performance improvements -* mon: simplify PaxosService vs Paxos interaction, fix readable/writeable checks -* rgw: fix radosgw-admin buckets list (Yehuda Sadeh) -* mds: support robust lookup by ino number (good for NFS) (Yan, Zheng) -* mds: fix several bugs (Yan, Zheng) -* ceph-fuse, libcephfs: fix truncatation bug on >4MB files (Yan, Zheng) -* ceph/librados: fix resending of commands on mon reconnect -* librados python: fix xattrs > 4KB (Josh Durgin) -* librados: configurable max object size (default 100 GB) -* msgr: fix various memory leaks -* ceph-fuse: fixed long-standing O_NOATIME vs O_LAZY bug -* ceph-fuse, libcephfs: fix request refcounting bug (hang on shutdown) -* ceph-fuse, libcephfs: fix read zeroing at EOF -* ceph-conf: --show-config-value now reflects daemon defaults -* ceph-disk: simpler, more robust locking -* ceph-disk: avoid mounting over an existing osd in /var/lib/ceph/osd/* -* sysvinit: handle symlinks in /var/lib/ceph/osd/* - - -v0.65 -===== - -Upgrading ---------- - -* Huge revamp of the 'ceph' command-line interface implementation. - The ``ceph-common`` client library needs to be upgrade before - ``ceph-mon`` is restarted in order to avoid problems using the CLI - (the old ``ceph`` client utility cannot talk to the new - ``ceph-mon``). - -* The CLI is now very careful about sending the 'status' one-liner - output to stderr and command output to stdout. Scripts relying on - output should take care. - -* The 'ceph osd tell ...' and 'ceph mon tell ...' commands are no - longer supported. Any callers should use:: - - ceph tell osd.<id or *> ... - ceph tell mon.<id or name or *> ... - - The 'ceph mds tell ...' command is still there, but will soon also - transition to 'ceph tell mds.<id or name or \*> ...' - -* The 'ceph osd crush add ...' command used to take one of two forms:: - - ceph osd crush add 123 osd.123 <weight> <location ...> - ceph osd crush add osd.123 <weight> <location ...> - - This is because the id and crush name are redundant. Now only the - simple form is supported, where the osd name/id can either be a bare - id (integer) or name (osd.<id>):: - - ceph osd crush add osd.123 <weight> <location ...> - ceph osd crush add 123 <weight> <location ...> - -* There is now a maximum RADOS object size, configurable via 'osd max - object size', defaulting to 100 GB. Note that this has no effect on - RBD, CephFS, or radosgw, which all stripe over objects. - - -Notable changes ---------------- - -* mon, ceph: huge revamp of CLI and internal admin API. (Dan Mick) -* mon: new capability syntax -* osd: do not use fadvise(DONTNEED) on XFS (data corruption on power cycle) -* osd: recovery and peering performance improvements -* osd: new writeback throttling (for less bursty write performance) (Sam Just) -* osd: ping/heartbeat on public and private interfaces -* osd: avoid osd flapping from asymmetric network failure -* osd: re-use partially deleted PG contents when present (Sam Just) -* osd: break blacklisted client watches (David Zafman) -* mon: many stability fixes (Joao Luis) -* mon, osd: many memory leaks fixed -* mds: misc stability fixes (Yan, Zheng, Greg Farnum) -* mds: many backpointer improvements (Yan, Zheng) -* mds: new robust open-by-ino support (Yan, Zheng) -* ceph-fuse, libcephfs: fix a few caps revocation bugs -* librados: new calls to administer the cluster -* librbd: locking tests (Josh Durgin) -* ceph-disk: improved handling of odd device names -* ceph-disk: many fixes for RHEL/CentOS, Fedora, wheezy -* many many fixes from static code analysis (Danny Al-Gaaf) -* daemons: create /var/run/ceph as needed - - -v0.64 -===== - -Upgrading ---------- - -* New pools now have the HASHPSPOOL flag set by default to provide - better distribution over OSDs. Support for this feature was - introduced in v0.59 and Linux kernel version v3.9. If you wish to - access the cluster from an older kernel, set the 'osd pool default - flag hashpspool = false' option in your ceph.conf prior to creating - the cluster or creating new pools. Note that the presence of any - pool in the cluster with the flag enabled will make the OSD require - support from all clients. - -Notable changes ---------------- - -* osd: monitor both front and back interfaces -* osd: verify both front and back network are working before rejoining cluster -* osd: fix memory/network inefficiency during deep scrub -* osd: fix incorrect mark-down of osds -* mon: fix start fork behavior -* mon: fix election timeout -* mon: better trim/compaction behavior -* mon: fix units in 'ceph df' output -* mon, osd: misc memory leaks -* librbd: make default options/features for newly created images (e.g., via qemu-img) configurable -* mds: many fixes for mds clustering -* mds: fix rare hang after client restart -* ceph-fuse: add ioctl support -* ceph-fuse/libcephfs: fix for cap release/hang -* rgw: handle deep uri resources -* rgw: fix CORS bugs -* ceph-disk: add '[un]suppress-active DEV' command -* debian: rgw: stop daemon on uninstall -* debian: fix upstart behavior with upgrades - - -v0.63 -===== - -Upgrading ---------- - -* The 'osd min down {reporters|reports}' config options have been - renamed to 'mon osd min down {reporters|reports}', and the - documentation has been updated to reflect that these options apply - to the monitors (who process failure reports) and not OSDs. If you - have adjusted these settings, please update your ``ceph.conf`` - accordingly. - -Notable Changes ---------------- - -* librbd: parallelize delete, rollback, flatten, copy, resize -* librbd: ability to read from local replicas -* osd: resurrect partially deleted PGs -* osd: prioritize recovery for degraded PGs -* osd: fix internal heartbeart timeouts when scrubbing very large objects -* osd: close narrow journal race -* rgw: fix usage log scanning for large, untrimmed logs -* rgw: fix locking issue, user operation mask, -* initscript: fix osd crush weight calculation when using -a -* initscript: fix enumeration of local daemons -* mon: several fixes to paxos, sync -* mon: new --extract-monmap to aid disaster recovery -* mon: fix leveldb compression, trimming -* add 'config get' admin socket command -* rados: clonedata command for cli -* debian: stop daemons on uninstall; fix dependencies -* debian wheezy: fix udev rules -* many many small fixes from coverity scan - - -v0.62 -===== - -Notable Changes ---------------- - -* mon: fix validation of mds ids from CLI commands -* osd: fix for an op ordering bug -* osd, mon: optionally dump leveldb transactions to a log -* osd: fix handling for split after upgrade from bobtail -* debian, specfile: packaging cleanups -* radosgw-admin: create keys for new users by default -* librados python binding cleanups -* misc code cleanups diff --git a/doc/releases/emperor.rst b/doc/releases/emperor.rst deleted file mode 100644 index 3c0bcb782..000000000 --- a/doc/releases/emperor.rst +++ /dev/null @@ -1,654 +0,0 @@ -======= -Emperor -======= - -Emperor is the 5th stable release of Ceph. It is named after the emperor squid. - - -v0.72.3 Emperor (pending release) -================================= - -Upgrading ---------- - -* Monitor 'auth' read-only commands now expect the user to have 'rx' caps. - This is the same behavior that was present in dumpling, but in emperor - and more recent development releases the 'r' cap was sufficient. Note that - this backported security fix will break mon keys that are using the following - commands but do not have the 'x' bit in the mon capability:: - - ceph auth export - ceph auth get - ceph auth get-key - ceph auth print-key - ceph auth list - - -v0.72.2 Emperor -=============== - -This is the second bugfix release for the v0.72.x Emperor series. We -have fixed a hang in radosgw, and fixed (again) a problem with monitor -CLI compatibility with mixed version monitors. (In the future this -will no longer be a problem.) - -Upgrading ---------- - -* The JSON schema for the 'osd pool set ...' command changed slightly. Please - avoid issuing this particular command via the CLI while there is a mix of - v0.72.1 and v0.72.2 monitor daemons running. - -* As part of fix for #6796, 'ceph osd pool set <pool> <var> <arg>' now - receives <arg> as an integer instead of a string. This affects how - 'hashpspool' flag is set/unset: instead of 'true' or 'false', it now - must be '0' or '1'. - - -Changes -------- - -* mon: 'osd pool set ...' syntax change -* osd: added test for missing on-disk HEAD object -* osd: fix osd bench block size argument -* rgw: fix hang on large object GET -* rgw: fix rare use-after-free -* rgw: various DR bug fixes -* rgw: do not return error on empty owner when setting ACL -* sysvinit, upstart: prevent starting daemons using both init systems - -For more detailed information, see :download:`the complete changelog <../changelog/v0.72.2.txt>`. - -v0.72.1 Emperor -=============== - -Important Note --------------- - -When you are upgrading from Dumpling to Emperor, do not run any of the -"ceph osd pool set" commands while your monitors are running separate versions. -Doing so could result in inadvertently changing cluster configuration settings -that exhaust compute resources in your OSDs. - -Changes -------- - -* osd: fix upgrade bug #6761 -* ceph_filestore_tool: introduced tool to repair errors caused by #6761 - -This release addresses issue #6761. Upgrading to Emperor can cause -reads to begin returning ENFILE (too many open files). v0.72.1 fixes -that upgrade issue and adds a tool ceph_filestore_tool to repair osd -stores affected by this bug. - -To repair a cluster affected by this bug: - -#. Upgrade all osd machines to v0.72.1 -#. Install the ceph-test package on each osd machine to get ceph_filestore_tool -#. Stop all osd processes -#. To see all lost objects, run the following on each osd with the osd stopped and - the osd data directory mounted:: - - ceph_filestore_tool --list-lost-objects=true --filestore-path=<path-to-osd-filestore> --journal-path=<path-to-osd-journal> - -#. To fix all lost objects, run the following on each osd with the - osd stopped and the osd data directory mounted:: - - ceph_filestore_tool --fix-lost-objects=true --list-lost-objects=true --filestore-path=<path-to-osd-filestore> --journal-path=<path-to-osd-journal> - -#. Once lost objects have been repaired on each osd, you can restart - the cluster. - -Note, the ceph_filestore_tool performs a scan of all objects on the -osd and may take some time. - - -v0.72 Emperor -============= - -This is the fifth major release of Ceph, the fourth since adopting a -3-month development cycle. This release brings several new features, -including multi-datacenter replication for the radosgw, improved -usability, and lands a lot of incremental performance and internal -refactoring work to support upcoming features in Firefly. - -Important Note --------------- - -When you are upgrading from Dumpling to Emperor, do not run any of the -"ceph osd pool set" commands while your monitors are running separate versions. -Doing so could result in inadvertently changing cluster configuration settings -that exhaust compute resources in your OSDs. - -Highlights ----------- - -* common: improved crc32c performance -* librados: new example client and class code -* mds: many bug fixes and stability improvements -* mon: health warnings when pool pg_num values are not reasonable -* mon: per-pool performance stats -* osd, librados: new object copy primitives -* osd: improved interaction with backend file system to reduce latency -* osd: much internal refactoring to support ongoing erasure coding and tiering support -* rgw: bucket quotas -* rgw: improved CORS support -* rgw: performance improvements -* rgw: validate S3 tokens against Keystone - -Coincident with core Ceph, the Emperor release also brings: - -* radosgw-agent: support for multi-datacenter replication for disaster recovery -* tgt: improved support for iSCSI via upstream tgt - -Packages for both are available on ceph.com. - -Upgrade sequencing ------------------- - -There are no specific upgrade restrictions on the order or sequence of -upgrading from 0.67.x Dumpling. However, you cannot run any of the -"ceph osd pool set" commands while your monitors are running separate versions. -Doing so could result in inadvertently changing cluster configuration settings -and exhausting compute resources in your OSDs. - -It is also possible to do a rolling upgrade from 0.61.x Cuttlefish, -but there are ordering restrictions. (This is the same set of -restrictions for Cuttlefish to Dumpling.) - -#. Upgrade ceph-common on all nodes that will use the command line 'ceph' utility. -#. Upgrade all monitors (upgrade ceph package, restart ceph-mon - daemons). This can happen one daemon or host at a time. Note that - because cuttlefish and dumpling monitors can't talk to each other, - all monitors should be upgraded in relatively short succession to - minimize the risk that an a untimely failure will reduce - availability. -#. Upgrade all osds (upgrade ceph package, restart ceph-osd daemons). - This can happen one daemon or host at a time. -#. Upgrade radosgw (upgrade radosgw package, restart radosgw daemons). - - -Upgrading from v0.71 --------------------- - -* ceph-fuse and radosgw now use the same default values for the admin - socket and log file paths that the other daemons (ceph-osd, - ceph-mon, etc.) do. If you run these daemons as non-root, you may - need to adjust your ceph.conf to disable these options or to adjust - the permissions on /var/run/ceph and /var/log/ceph. - -Upgrading from v0.67 Dumpling ------------------------------ - -* ceph-fuse and radosgw now use the same default values for the admin - socket and log file paths that the other daemons (ceph-osd, - ceph-mon, etc.) do. If you run these daemons as non-root, you may - need to adjust your ceph.conf to disable these options or to adjust - the permissions on /var/run/ceph and /var/log/ceph. - -* The MDS now disallows snapshots by default as they are not - considered stable. The command 'ceph mds set allow_snaps' will - enable them. - -* For clusters that were created before v0.44 (pre-argonaut, Spring - 2012) and store radosgw data, the auto-upgrade from TMAP to OMAP - objects has been disabled. Before upgrading, make sure that any - buckets created on pre-argonaut releases have been modified (e.g., - by PUTing and then DELETEing an object from each bucket). Any - cluster created with argonaut (v0.48) or a later release or not - using radosgw never relied on the automatic conversion and is not - affected by this change. - -* Any direct users of the 'tmap' portion of the librados API should be - aware that the automatic tmap -> omap conversion functionality has - been removed. - -* Most output that used K or KB (e.g., for kilobyte) now uses a - lower-case k to match the official SI convention. Any scripts that - parse output and check for an upper-case K will need to be modified. - -* librados::Rados::pool_create_async() and librados::Rados::pool_delete_async() - don't drop a reference to the completion object on error, caller needs to take - care of that. This has never really worked correctly and we were leaking an - object - -* 'ceph osd crush set <id> <weight> <loc..>' no longer adds the osd to the - specified location, as that's a job for 'ceph osd crush add'. It will - however continue to work just the same as long as the osd already exists - in the crush map. - -* The OSD now enforces that class write methods cannot both mutate an - object and return data. The rbd.assign_bid method, the lone - offender, has been removed. This breaks compatibility with - pre-bobtail librbd clients by preventing them from creating new - images. - -* librados now returns on commit instead of ack for synchronous calls. - This is a bit safer in the case where both OSDs and the client crash, and - is probably how it should have been acting from the beginning. Users are - unlikely to notice but it could result in lower performance in some - circumstances. Those who care should switch to using the async interfaces, - which let you specify safety semantics precisely. - -* The C++ librados AioComplete::get_version() method was incorrectly - returning an int (usually 32-bits). To avoid breaking library - compatibility, a get_version64() method is added that returns the - full-width value. The old method is deprecated and will be removed - in a future release. Users of the C++ librados API that make use of - the get_version() method should modify their code to avoid getting a - value that is truncated from 64 to to 32 bits. - - -Notable Changes since v0.71 ---------------------------- - -* build: fix [/usr]/sbin locations (Alan Somers) -* ceph-fuse, radosgw: enable admin socket and logging by default -* ceph: make -h behave when monitors are down -* common: cache crc32c values where possible -* common: fix looping on BSD (Alan Somers) -* librados, mon: ability to query/ping out-of-quorum monitor status (Joao Luis) -* librbd python bindings: fix parent image name limit (Josh Durgin) -* mds: avoid leaking objects when deleting truncated files (Yan, Zheng) -* mds: fix F_GETLK (Yan, Zheng) -* mds: fix many bugs with stray (unlinked) inodes (Yan, Zheng) -* mds: fix many directory fragmentation bugs (Yan, Zheng) -* mon: allow (un)setting HASHPSPOOL flag on existing pools (Joao Luis) -* mon: make 'osd pool rename' idempotent (Joao Luis) -* osd: COPY_GET on-wire encoding improvements (Greg Farnum) -* osd: bloom_filter encodability, fixes, cleanups (Loic Dachary, Sage Weil) -* osd: fix handling of racing read vs write (Samuel Just) -* osd: reduce blocking on backing fs (Samuel Just) -* radosgw-agent: multi-region replication/DR -* rgw: fix/improve swift COPY support (Yehuda Sadeh) -* rgw: misc fixes to support DR (Josh Durgin, Yehuda Sadeh) -* rgw: per-bucket quota (Yehuda Sadeh) -* rpm: fix junit dependencies (Alan Grosskurth) - -Notable Changes since v0.67 Dumpling ------------------------------------- - -* build cleanly under clang (Christophe Courtaut) -* build: Makefile refactor (Roald J. van Loon) -* build: fix [/usr]/sbin locations (Alan Somers) -* ceph-disk: fix journal preallocation -* ceph-fuse, radosgw: enable admin socket and logging by default -* ceph-fuse: fix problem with readahead vs truncate race (Yan, Zheng) -* ceph-fuse: trim deleted inodes from cache (Yan, Zheng) -* ceph-fuse: use newer fuse api (Jianpeng Ma) -* ceph-kvstore-tool: new tool for working with leveldb (copy, crc) (Joao Luis) -* ceph-post-file: new command to easily share logs or other files with ceph devs -* ceph: improve parsing of CEPH_ARGS (Benoit Knecht) -* ceph: make -h behave when monitors are down -* ceph: parse CEPH_ARGS env variable -* common: bloom_filter improvements, cleanups -* common: cache crc32c values where possible -* common: correct SI is kB not KB (Dan Mick) -* common: fix looping on BSD (Alan Somers) -* common: migrate SharedPtrRegistry to use boost::shared_ptr<> (Loic Dachary) -* common: misc portability fixes (Noah Watkins) -* crc32c: fix optimized crc32c code (it now detects arch support properly) -* crc32c: improved intel-optimized crc32c support (~8x faster on my laptop!) -* crush: fix name caching -* doc: erasure coding design notes (Loic Dachary) -* hadoop: removed old version of shim to avoid confusing users (Noah Watkins) -* librados, mon: ability to query/ping out-of-quorum monitor status (Joao Luis) -* librados: fix async aio completion wakeup -* librados: fix installed header #includes (Dan Mick) -* librados: get_version64() method for C++ API -* librados: hello_world example (Greg Farnum) -* librados: sync calls now return on commit (instead of ack) (Greg Farnum) -* librbd python bindings: fix parent image name limit (Josh Durgin) -* librbd, ceph-fuse: avoid some sources of ceph-fuse, rbd cache stalls -* mds: avoid leaking objects when deleting truncated files (Yan, Zheng) -* mds: fix F_GETLK (Yan, Zheng) -* mds: fix LOOKUPSNAP bug -* mds: fix heap profiler commands (Joao Luis) -* mds: fix locking deadlock (David Disseldorp) -* mds: fix many bugs with stray (unlinked) inodes (Yan, Zheng) -* mds: fix many directory fragmentation bugs (Yan, Zheng) -* mds: fix mds rejoin with legacy parent backpointer xattrs (Alexandre Oliva) -* mds: fix rare restart/failure race during fs creation -* mds: fix standby-replay when we fall behind (Yan, Zheng) -* mds: fix stray directory purging (Yan, Zheng) -* mds: notify clients about deleted files (so they can release from their cache) (Yan, Zheng) -* mds: several bug fixes with clustered mds (Yan, Zheng) -* mon, osd: improve osdmap trimming logic (Samuel Just) -* mon, osd: initial CLI for configuring tiering -* mon: a few 'ceph mon add' races fixed (command is now idempotent) (Joao Luis) -* mon: allow (un)setting HASHPSPOOL flag on existing pools (Joao Luis) -* mon: allow cap strings with . to be unquoted -* mon: allow logging level of cluster log (/var/log/ceph/ceph.log) to be adjusted -* mon: avoid rewriting full osdmaps on restart (Joao Luis) -* mon: continue to discover peer addr info during election phase -* mon: disallow CephFS snapshots until 'ceph mds set allow_new_snaps' (Greg Farnum) -* mon: do not expose uncommitted state from 'osd crush {add,set} ...' (Joao Luis) -* mon: fix 'ceph osd crush reweight ...' (Joao Luis) -* mon: fix 'osd crush move ...' command for buckets (Joao Luis) -* mon: fix byte counts (off by factor of 4) (Dan Mick, Joao Luis) -* mon: fix paxos corner case -* mon: kv properties for pools to support EC (Loic Dachary) -* mon: make 'osd pool rename' idempotent (Joao Luis) -* mon: modify 'auth add' semantics to make a bit more sense (Joao Luis) -* mon: new 'osd perf' command to dump recent performance information (Samuel Just) -* mon: new and improved 'ceph -s' or 'ceph status' command (more info, easier to read) -* mon: some auth check cleanups (Joao Luis) -* mon: track per-pool stats (Joao Luis) -* mon: warn about pools with bad pg_num -* mon: warn when mon data stores grow very large (Joao Luis) -* monc: fix small memory leak -* new wireshark patches pulled into the tree (Kevin Jones) -* objecter, librados: redirect requests based on cache tier config -* objecter: fix possible hang when cluster is unpaused (Josh Durgin) -* osd, librados: add new COPY_FROM rados operation -* osd, librados: add new COPY_GET rados operations (used by COPY_FROM) -* osd: 'osd recover clone overlap limit' option to limit cloning during recovery (Samuel Just) -* osd: COPY_GET on-wire encoding improvements (Greg Farnum) -* osd: add 'osd heartbeat min healthy ratio' configurable (was hard-coded at 33%) -* osd: add option to disable pg log debug code (which burns CPU) -* osd: allow cap strings with . to be unquoted -* osd: automatically detect proper xattr limits (David Zafman) -* osd: avoid extra copy in erasure coding reference implementation (Loic Dachary) -* osd: basic cache pool redirects (Greg Farnum) -* osd: basic whiteout, dirty flag support (not yet used) -* osd: bloom_filter encodability, fixes, cleanups (Loic Dachary, Sage Weil) -* osd: clean up and generalize copy-from code (Greg Farnum) -* osd: cls_hello OSD class example -* osd: erasure coding doc updates (Loic Dachary) -* osd: erasure coding plugin infrastructure, tests (Loic Dachary) -* osd: experiemental support for ZFS (zfsonlinux.org) (Yan, Zheng) -* osd: fix RWORDER flags -* osd: fix exponential backoff of slow request warnings (Loic Dachary) -* osd: fix handling of racing read vs write (Samuel Just) -* osd: fix version value returned by various operations (Greg Farnum) -* osd: generalized temp object infrastructure -* osd: ghobject_t infrastructure for EC (David Zafman) -* osd: improvements for compatset support and storage (David Zafman) -* osd: infrastructure to copy objects from other OSDs -* osd: instrument peering states (David Zafman) -* osd: misc copy-from improvements -* osd: opportunistic crc checking on stored data (off by default) -* osd: properly enforce RD/WR flags for rados classes -* osd: reduce blocking on backing fs (Samuel Just) -* osd: refactor recovery using PGBackend (Samuel Just) -* osd: remove old magical tmap->omap conversion -* osd: remove old pg log on upgrade (Samuel Just) -* osd: revert xattr size limit (fixes large rgw uploads) -* osd: use fdatasync(2) instead of fsync(2) to improve performance (Sam Just) -* pybind: fix blacklisting nonce (Loic Dachary) -* radosgw-agent: multi-region replication/DR -* rgw: complete in-progress requests before shutting down -* rgw: default log level is now more reasonable (Yehuda Sadeh) -* rgw: fix S3 auth with response-* query string params (Sylvain Munaut, Yehuda Sadeh) -* rgw: fix a few minor memory leaks (Yehuda Sadeh) -* rgw: fix acl group check (Yehuda Sadeh) -* rgw: fix inefficient use of std::list::size() (Yehuda Sadeh) -* rgw: fix major CPU utilization bug with internal caching (Yehuda Sadeh, Mark Nelson) -* rgw: fix ordering of write operations (preventing data loss on crash) (Yehuda Sadeh) -* rgw: fix ordering of writes for mulitpart upload (Yehuda Sadeh) -* rgw: fix various CORS bugs (Yehuda Sadeh) -* rgw: fix/improve swift COPY support (Yehuda Sadeh) -* rgw: improve help output (Christophe Courtaut) -* rgw: misc fixes to support DR (Josh Durgin, Yehuda Sadeh) -* rgw: per-bucket quota (Yehuda Sadeh) -* rgw: validate S3 tokens against keystone (Roald J. van Loon) -* rgw: wildcard support for keystone roles (Christophe Courtaut) -* rpm: fix junit dependencies (Alan Grosskurth) -* sysvinit radosgw: fix status return code (Danny Al-Gaaf) -* sysvinit rbdmap: fix error 'service rbdmap stop' (Laurent Barbe) -* sysvinit: add condrestart command (Dan van der Ster) -* sysvinit: fix shutdown order (mons last) (Alfredo Deza) - - - -v0.71 -===== - -This development release includes a significant amount of new code and -refactoring, as well as a lot of preliminary functionality that will be needed -for erasure coding and tiering support. There are also several significant -patch sets improving this with the MDS. - -Upgrading ---------- - -* The MDS now disallows snapshots by default as they are not - considered stable. The command 'ceph mds set allow_snaps' will - enable them. - -* For clusters that were created before v0.44 (pre-argonaut, Spring - 2012) and store radosgw data, the auto-upgrade from TMAP to OMAP - objects has been disabled. Before upgrading, make sure that any - buckets created on pre-argonaut releases have been modified (e.g., - by PUTing and then DELETEing an object from each bucket). Any - cluster created with argonaut (v0.48) or a later release or not - using radosgw never relied on the automatic conversion and is not - affected by this change. - -* Any direct users of the 'tmap' portion of the librados API should be - aware that the automatic tmap -> omap conversion functionality has - been removed. - -* Most output that used K or KB (e.g., for kilobyte) now uses a - lower-case k to match the official SI convention. Any scripts that - parse output and check for an upper-case K will need to be modified. - -Notable Changes ---------------- - -* build: Makefile refactor (Roald J. van Loon) -* ceph-disk: fix journal preallocation -* ceph-fuse: trim deleted inodes from cache (Yan, Zheng) -* ceph-fuse: use newer fuse api (Jianpeng Ma) -* ceph-kvstore-tool: new tool for working with leveldb (copy, crc) (Joao Luis) -* common: bloom_filter improvements, cleanups -* common: correct SI is kB not KB (Dan Mick) -* common: misc portability fixes (Noah Watkins) -* hadoop: removed old version of shim to avoid confusing users (Noah Watkins) -* librados: fix installed header #includes (Dan Mick) -* librbd, ceph-fuse: avoid some sources of ceph-fuse, rbd cache stalls -* mds: fix LOOKUPSNAP bug -* mds: fix standby-replay when we fall behind (Yan, Zheng) -* mds: fix stray directory purging (Yan, Zheng) -* mon: disallow CephFS snapshots until 'ceph mds set allow_new_snaps' (Greg Farnum) -* mon, osd: improve osdmap trimming logic (Samuel Just) -* mon: kv properties for pools to support EC (Loic Dachary) -* mon: some auth check cleanups (Joao Luis) -* mon: track per-pool stats (Joao Luis) -* mon: warn about pools with bad pg_num -* osd: automatically detect proper xattr limits (David Zafman) -* osd: avoid extra copy in erasure coding reference implementation (Loic Dachary) -* osd: basic cache pool redirects (Greg Farnum) -* osd: basic whiteout, dirty flag support (not yet used) -* osd: clean up and generalize copy-from code (Greg Farnum) -* osd: erasure coding doc updates (Loic Dachary) -* osd: erasure coding plugin infrastructure, tests (Loic Dachary) -* osd: fix RWORDER flags -* osd: fix exponential backoff of slow request warnings (Loic Dachary) -* osd: generalized temp object infrastructure -* osd: ghobject_t infrastructure for EC (David Zafman) -* osd: improvements for compatset support and storage (David Zafman) -* osd: misc copy-from improvements -* osd: opportunistic crc checking on stored data (off by default) -* osd: refactor recovery using PGBackend (Samuel Just) -* osd: remove old magical tmap->omap conversion -* pybind: fix blacklisting nonce (Loic Dachary) -* rgw: default log level is now more reasonable (Yehuda Sadeh) -* rgw: fix acl group check (Yehuda Sadeh) -* sysvinit: fix shutdown order (mons last) (Alfredo Deza) - -v0.70 -===== - -Upgrading ---------- - -* librados::Rados::pool_create_async() and librados::Rados::pool_delete_async() - don't drop a reference to the completion object on error, caller needs to take - care of that. This has never really worked correctly and we were leaking an - object - -* 'ceph osd crush set <id> <weight> <loc..>' no longer adds the osd to the - specified location, as that's a job for 'ceph osd crush add'. It will - however continue to work just the same as long as the osd already exists - in the crush map. - -Notable Changes ---------------- - -* mon: a few 'ceph mon add' races fixed (command is now idempotent) (Joao Luis) -* crush: fix name caching -* rgw: fix a few minor memory leaks (Yehuda Sadeh) -* ceph: improve parsing of CEPH_ARGS (Benoit Knecht) -* mon: avoid rewriting full osdmaps on restart (Joao Luis) -* crc32c: fix optimized crc32c code (it now detects arch support properly) -* mon: fix 'ceph osd crush reweight ...' (Joao Luis) -* osd: revert xattr size limit (fixes large rgw uploads) -* mds: fix heap profiler commands (Joao Luis) -* rgw: fix inefficient use of std::list::size() (Yehuda Sadeh) - - -v0.69 -===== - -Upgrading ---------- - -* The sysvinit /etc/init.d/ceph script will, by default, update the - CRUSH location of an OSD when it starts. Previously, if the - monitors were not available, this command would hang indefinitely. - Now, that step will time out after 10 seconds and the ceph-osd daemon - will not be started. - -* Users of the librados C++ API should replace users of get_version() - with get_version64() as the old method only returns a 32-bit value - for a 64-bit field. The existing 32-bit get_version() method is now - deprecated. - -* The OSDs are now more picky that request payload match their - declared size. A write operation across N bytes that includes M - bytes of data will now be rejected. No known clients do this, but - the because the server-side behavior has changed it is possible that - an application misusing the interface may now get errors. - -* The OSD now enforces that class write methods cannot both mutate an - object and return data. The rbd.assign_bid method, the lone - offender, has been removed. This breaks compatibility with - pre-bobtail librbd clients by preventing them from creating new - images. - -* librados now returns on commit instead of ack for synchronous calls. - This is a bit safer in the case where both OSDs and the client crash, and - is probably how it should have been acting from the beginning. Users are - unlikely to notice but it could result in lower performance in some - circumstances. Those who care should switch to using the async interfaces, - which let you specify safety semantics precisely. - -* The C++ librados AioComplete::get_version() method was incorrectly - returning an int (usually 32-bits). To avoid breaking library - compatibility, a get_version64() method is added that returns the - full-width value. The old method is deprecated and will be removed - in a future release. Users of the C++ librados API that make use of - the get_version() method should modify their code to avoid getting a - value that is truncated from 64 to to 32 bits. - - -Notable Changes ---------------- - -* build cleanly under clang (Christophe Courtaut) -* common: migrate SharedPtrRegistry to use boost::shared_ptr<> (Loic Dachary) -* doc: erasure coding design notes (Loic Dachary) -* improved intel-optimized crc32c support (~8x faster on my laptop!) -* librados: get_version64() method for C++ API -* mds: fix locking deadlock (David Disseldorp) -* mon, osd: initial CLI for configuring tiering -* mon: allow cap strings with . to be unquoted -* mon: continue to discover peer addr info during election phase -* mon: fix 'osd crush move ...' command for buckets (Joao Luis) -* mon: warn when mon data stores grow very large (Joao Luis) -* objecter, librados: redirect requests based on cache tier config -* osd, librados: add new COPY_FROM rados operation -* osd, librados: add new COPY_GET rados operations (used by COPY_FROM) -* osd: add 'osd heartbeat min healthy ratio' configurable (was hard-coded at 33%) -* osd: add option to disable pg log debug code (which burns CPU) -* osd: allow cap strings with . to be unquoted -* osd: fix version value returned by various operations (Greg Farnum) -* osd: infrastructure to copy objects from other OSDs -* osd: use fdatasync(2) instead of fsync(2) to improve performance (Sam Just) -* rgw: fix major CPU utilization bug with internal caching (Yehuda Sadeh, Mark Nelson) -* rgw: fix ordering of write operations (preventing data loss on crash) (Yehuda Sadeh) -* rgw: fix ordering of writes for mulitpart upload (Yehuda Sadeh) -* rgw: fix various CORS bugs (Yehuda Sadeh) -* rgw: improve help output (Christophe Courtaut) -* rgw: validate S3 tokens against keystone (Roald J. van Loon) -* rgw: wildcard support for keystone roles (Christophe Courtaut) -* sysvinit radosgw: fix status return code (Danny Al-Gaaf) -* sysvinit rbdmap: fix error 'service rbdmap stop' (Laurent Barbe) - -v0.68 -===== - -Upgrading ---------- - -* 'ceph osd crush set <id> <weight> <loc..>' no longer adds the osd to the - specified location, as that's a job for 'ceph osd crush add'. It will - however continue to work just the same as long as the osd already exists - in the crush map. - -* The OSD now enforces that class write methods cannot both mutate an - object and return data. The rbd.assign_bid method, the lone - offender, has been removed. This breaks compatibility with - pre-bobtail librbd clients by preventing them from creating new - images. - -* librados now returns on commit instead of ack for synchronous calls. - This is a bit safer in the case where both OSDs and the client crash, and - is probably how it should have been acting from the beginning. Users are - unlikely to notice but it could result in lower performance in some - circumstances. Those who care should switch to using the async interfaces, - which let you specify safety semantics precisely. - -* The C++ librados AioComplete::get_version() method was incorrectly - returning an int (usually 32-bits). To avoid breaking library - compatibility, a get_version64() method is added that returns the - full-width value. The old method is deprecated and will be removed - in a future release. Users of the C++ librados API that make use of - the get_version() method should modify their code to avoid getting a - value that is truncated from 64 to to 32 bits. - - - -Notable Changes ---------------- - -* ceph-fuse: fix problem with readahead vs truncate race (Yan, Zheng) -* ceph-post-file: new command to easily share logs or other files with ceph devs -* ceph: parse CEPH_ARGS env variable -* librados: fix async aio completion wakeup -* librados: hello_world example (Greg Farnum) -* librados: sync calls now return on commit (instead of ack) (Greg Farnum) -* mds: fix mds rejoin with legacy parent backpointer xattrs (Alexandre Oliva) -* mds: fix rare restart/failure race during fs creation -* mds: notify clients about deleted files (so they can release from their cache) (Yan, Zheng) -* mds: several bug fixes with clustered mds (Yan, Zheng) -* mon: allow logging level of cluster log (/var/log/ceph/ceph.log) to be adjusted -* mon: do not expose uncommitted state from 'osd crush {add,set} ...' (Joao Luis) -* mon: fix byte counts (off by factor of 4) (Dan Mick, Joao Luis) -* mon: fix paxos corner case -* mon: modify 'auth add' semantics to make a bit more sense (Joao Luis) -* mon: new 'osd perf' command to dump recent performance information (Samuel Just) -* mon: new and improved 'ceph -s' or 'ceph status' command (more info, easier to read) -* monc: fix small memory leak -* new wireshark patches pulled into the tree (Kevin Jones) -* objecter: fix possible hang when cluster is unpaused (Josh Durgin) -* osd: 'osd recover clone overlap limit' option to limit cloning during recovery (Samuel Just) -* osd: cls_hello OSD class example -* osd: experiemental support for ZFS (zfsonlinux.org) (Yan, Zheng) -* osd: instrument peering states (David Zafman) -* osd: properly enforce RD/WR flags for rados classes -* osd: remove old pg log on upgrade (Samuel Just) -* rgw: complete in-progress requests before shutting down -* rgw: fix S3 auth with response-* query string params (Sylvain Munaut, Yehuda Sadeh) -* sysvinit: add condrestart command (Dan van der Ster) diff --git a/doc/releases/firefly.rst b/doc/releases/firefly.rst deleted file mode 100644 index 0b2d943b8..000000000 --- a/doc/releases/firefly.rst +++ /dev/null @@ -1,1787 +0,0 @@ -======= -Firefly -======= - -Firefly is the 6th stable release of Ceph. It is named after the -firefly squid (Watasenia scintillans). - -v0.80.11 Firefly -================ - -This is a bugfix release for Firefly. This Firefly 0.80.x is nearing -its planned end of life in January 2016 it may also be the last. - -We recommend that all Firefly users upgrade. - -For more detailed information, see :download:`the complete changelog -<../changelog/v0.80.11.txt>`. - -Notable Changes ---------------- - -* build/ops: /etc/init.d/radosgw restart does not work correctly (`issue#11140 <http://tracker.ceph.com/issues/11140>`_, `pr#5831 <http://github.com/ceph/ceph/pull/5831>`_, Dmitry Yatsushkevich) -* build/ops: Fix -Wno-format and -Werror=format-security options clash (`issue#13417 <http://tracker.ceph.com/issues/13417>`_, `pr#6207 <http://github.com/ceph/ceph/pull/6207>`_, Boris Ranto) -* build/ops: ceph-common needs python-argparse on older distros, but doesn't require it (`issue#12034 <http://tracker.ceph.com/issues/12034>`_, `pr#5217 <http://github.com/ceph/ceph/pull/5217>`_, Nathan Cutler) -* build/ops: ceph.spec.in running fdupes unnecessarily (`issue#12301 <http://tracker.ceph.com/issues/12301>`_, `pr#5224 <http://github.com/ceph/ceph/pull/5224>`_, Nathan Cutler) -* build/ops: ceph.spec.in: 50-rbd.rules conditional is wrong (`issue#12166 <http://tracker.ceph.com/issues/12166>`_, `pr#5225 <http://github.com/ceph/ceph/pull/5225>`_, Nathan Cutler) -* build/ops: ceph.spec.in: useless %py_requires breaks SLE11-SP3 build (`issue#12351 <http://tracker.ceph.com/issues/12351>`_, `pr#5394 <http://github.com/ceph/ceph/pull/5394>`_, Nathan Cutler) -* build/ops: fedora21 has junit, not junit4 (`issue#10728 <http://tracker.ceph.com/issues/10728>`_, `pr#6203 <http://github.com/ceph/ceph/pull/6203>`_, Ken Dreyer, Loic Dachary) -* build/ops: upstart: configuration is too generous on restarts (`issue#11798 <http://tracker.ceph.com/issues/11798>`_, `pr#5992 <http://github.com/ceph/ceph/pull/5992>`_, Sage Weil) -* common: Client admin socket leaks file descriptors (`issue#11535 <http://tracker.ceph.com/issues/11535>`_, `pr#4633 <http://github.com/ceph/ceph/pull/4633>`_, Jon Bernard) -* common: FileStore calls syncfs(2) even it is not supported (`issue#12512 <http://tracker.ceph.com/issues/12512>`_, `pr#5529 <http://github.com/ceph/ceph/pull/5529>`_, Danny Al-Gaaf, Kefu Chai, Jianpeng Ma) -* common: HeartBeat: include types (`issue#13088 <http://tracker.ceph.com/issues/13088>`_, `pr#6038 <http://github.com/ceph/ceph/pull/6038>`_, Sage Weil) -* common: Malformed JSON command output when non-ASCII strings are present (`issue#7387 <http://tracker.ceph.com/issues/7387>`_, `pr#4635 <http://github.com/ceph/ceph/pull/4635>`_, Kefu Chai, Tim Serong) -* common: Memory leak in Mutex.cc, pthread_mutexattr_init without pthread_mutexattr_destroy (`issue#11762 <http://tracker.ceph.com/issues/11762>`_, `pr#5403 <http://github.com/ceph/ceph/pull/5403>`_, Ketor Meng) -* common: Thread:pthread_attr_destroy(thread_attr) when done with it (`issue#12570 <http://tracker.ceph.com/issues/12570>`_, `pr#6325 <http://github.com/ceph/ceph/pull/6325>`_, Piotr Dałek, Zheng Qiankun) -* common: ThreadPool add/remove work queue methods not thread safe (`issue#12662 <http://tracker.ceph.com/issues/12662>`_, `pr#5991 <http://github.com/ceph/ceph/pull/5991>`_, Jason Dillaman) -* common: buffer: critical bufferlist::zero bug (`issue#12252 <http://tracker.ceph.com/issues/12252>`_, `pr#5388 <http://github.com/ceph/ceph/pull/5388>`_, Haomai Wang) -* common: log: take mutex while opening fd (`issue#12465 <http://tracker.ceph.com/issues/12465>`_, `pr#5406 <http://github.com/ceph/ceph/pull/5406>`_, Samuel Just) -* common: recursive lock of md_config_t (0) (`issue#12614 <http://tracker.ceph.com/issues/12614>`_, `pr#5814 <http://github.com/ceph/ceph/pull/5814>`_, Josh Durgin) -* crush: take crashes due to invalid arg (`issue#11602 <http://tracker.ceph.com/issues/11602>`_, `pr#4769 <http://github.com/ceph/ceph/pull/4769>`_, Sage Weil) -* doc: backport v0.80.10 release notes to firefly (`issue#11090 <http://tracker.ceph.com/issues/11090>`_, `pr#5307 <http://github.com/ceph/ceph/pull/5307>`_, Loic Dachary, Sage Weil) -* doc: update docs to point to download.ceph.com (`issue#13162 <http://tracker.ceph.com/issues/13162>`_, `pr#5993 <http://github.com/ceph/ceph/pull/5993>`_, Alfredo Deza) -* fs: MDSMonitor: handle MDSBeacon messages properly (`issue#11590 <http://tracker.ceph.com/issues/11590>`_, `pr#5199 <http://github.com/ceph/ceph/pull/5199>`_, Kefu Chai) -* fs: client nonce collision due to unshared pid namespaces (`issue#13032 <http://tracker.ceph.com/issues/13032>`_, `pr#6087 <http://github.com/ceph/ceph/pull/6087>`_, Josh Durgin, Sage Weil) -* librbd: Objectcacher setting max object counts too low (`issue#7385 <http://tracker.ceph.com/issues/7385>`_, `pr#4639 <http://github.com/ceph/ceph/pull/4639>`_, Jason Dillaman) -* librbd: aio calls may block (`issue#11056 <http://tracker.ceph.com/issues/11056>`_, `pr#4854 <http://github.com/ceph/ceph/pull/4854>`_, Haomai Wang, Sage Weil, Jason Dillaman) -* librbd: internal.cc: 1967: FAILED assert(watchers.size() == 1) (`issue#12176 <http://tracker.ceph.com/issues/12176>`_, `pr#5171 <http://github.com/ceph/ceph/pull/5171>`_, Jason Dillaman) -* mon: Clock skew causes missing summary and confuses Calamari (`issue#11877 <http://tracker.ceph.com/issues/11877>`_, `pr#4867 <http://github.com/ceph/ceph/pull/4867>`_, Thorsten Behrens) -* mon: EC pools are not allowed as cache pools, disallow in the mon (`issue#11650 <http://tracker.ceph.com/issues/11650>`_, `pr#5389 <http://github.com/ceph/ceph/pull/5389>`_, Samuel Just) -* mon: Make it more difficult to delete pools in firefly (`issue#11800 <http://tracker.ceph.com/issues/11800>`_, `pr#4788 <http://github.com/ceph/ceph/pull/4788>`_, Sage Weil) -* mon: MonitorDBStore: get_next_key() only if prefix matches (`issue#11786 <http://tracker.ceph.com/issues/11786>`_, `pr#5360 <http://github.com/ceph/ceph/pull/5360>`_, Joao Eduardo Luis) -* mon: PaxosService: call post_refresh() instead of post_paxos_update() (`issue#11470 <http://tracker.ceph.com/issues/11470>`_, `pr#5358 <http://github.com/ceph/ceph/pull/5358>`_, Joao Eduardo Luis) -* mon: add a cache layer over MonitorDBStore (`issue#12638 <http://tracker.ceph.com/issues/12638>`_, `pr#5698 <http://github.com/ceph/ceph/pull/5698>`_, Kefu Chai) -* mon: adding exsting pool as tier with --force-nonempty clobbers removed_snaps (`issue#11493 <http://tracker.ceph.com/issues/11493>`_, `pr#5236 <http://github.com/ceph/ceph/pull/5236>`_, Sage Weil, Samuel Just) -* mon: ceph fails to compile with boost 1.58 (`issue#11576 <http://tracker.ceph.com/issues/11576>`_, `pr#5129 <http://github.com/ceph/ceph/pull/5129>`_, Kefu Chai) -* mon: does not check for IO errors on every transaction (`issue#13089 <http://tracker.ceph.com/issues/13089>`_, `pr#6091 <http://github.com/ceph/ceph/pull/6091>`_, Sage Weil) -* mon: get pools health'info have error (`issue#12402 <http://tracker.ceph.com/issues/12402>`_, `pr#5410 <http://github.com/ceph/ceph/pull/5410>`_, renhwztetecs) -* mon: increase globalid default for firefly (`issue#13255 <http://tracker.ceph.com/issues/13255>`_, `pr#6010 <http://github.com/ceph/ceph/pull/6010>`_, Sage Weil) -* mon: pgmonitor: wrong at/near target max“ reporting (`issue#12401 <http://tracker.ceph.com/issues/12401>`_, `pr#5409 <http://github.com/ceph/ceph/pull/5409>`_, huangjun) -* mon: register_new_pgs() should check ruleno instead of its index (`issue#12210 <http://tracker.ceph.com/issues/12210>`_, `pr#5404 <http://github.com/ceph/ceph/pull/5404>`_, Xinze Chi) -* mon: scrub error (osdmap encoding mismatch?) upgrading from 0.80 to ~0.80.2 (`issue#8815 <http://tracker.ceph.com/issues/8815>`_, `issue#8674 <http://tracker.ceph.com/issues/8674>`_, `issue#9064 <http://tracker.ceph.com/issues/9064>`_, `pr#5200 <http://github.com/ceph/ceph/pull/5200>`_, Sage Weil, Zhiqiang Wang, Samuel Just) -* mon: the output is wrong when runing ceph osd reweight (`issue#12251 <http://tracker.ceph.com/issues/12251>`_, `pr#5408 <http://github.com/ceph/ceph/pull/5408>`_, Joao Eduardo Luis) -* objecter: can get stuck in redirect loop if osdmap epoch == last_force_op_resend (`issue#11026 <http://tracker.ceph.com/issues/11026>`_, `pr#4597 <http://github.com/ceph/ceph/pull/4597>`_, Jianpeng Ma, Sage Weil) -* objecter: pg listing can deadlock when throttling is in use (`issue#9008 <http://tracker.ceph.com/issues/9008>`_, `pr#5043 <http://github.com/ceph/ceph/pull/5043>`_, Guang Yang) -* objecter: resend linger ops on split (`issue#9806 <http://tracker.ceph.com/issues/9806>`_, `pr#5062 <http://github.com/ceph/ceph/pull/5062>`_, Josh Durgin, Samuel Just) -* osd: Cleanup boost optionals for boost 1.56 (`issue#9983 <http://tracker.ceph.com/issues/9983>`_, `pr#5039 <http://github.com/ceph/ceph/pull/5039>`_, William A. Kennington III) -* osd: LibRadosTwoPools[EC]PP.PromoteSnap failure (`issue#10052 <http://tracker.ceph.com/issues/10052>`_, `pr#5050 <http://github.com/ceph/ceph/pull/5050>`_, Sage Weil) -* osd: Mutex Assert from PipeConnection::try_get_pipe (`issue#12437 <http://tracker.ceph.com/issues/12437>`_, `pr#5815 <http://github.com/ceph/ceph/pull/5815>`_, David Zafman) -* osd: PG stuck with remapped (`issue#9614 <http://tracker.ceph.com/issues/9614>`_, `pr#5044 <http://github.com/ceph/ceph/pull/5044>`_, Guang Yang) -* osd: PG::handle_advance_map: on_pool_change after handling the map change (`issue#12809 <http://tracker.ceph.com/issues/12809>`_, `pr#5988 <http://github.com/ceph/ceph/pull/5988>`_, Samuel Just) -* osd: PGLog: split divergent priors as well (`issue#11069 <http://tracker.ceph.com/issues/11069>`_, `pr#4631 <http://github.com/ceph/ceph/pull/4631>`_, Samuel Just) -* osd: PGLog::proc_replica_log: correctly handle case where entries between olog.head and log.tail were split out (`issue#11358 <http://tracker.ceph.com/issues/11358>`_, `pr#5287 <http://github.com/ceph/ceph/pull/5287>`_, Samuel Just) -* osd: WBThrottle::clear_object: signal on cond when we reduce throttle values (`issue#12223 <http://tracker.ceph.com/issues/12223>`_, `pr#5822 <http://github.com/ceph/ceph/pull/5822>`_, Samuel Just) -* osd: cache full mode still skips young objects (`issue#10006 <http://tracker.ceph.com/issues/10006>`_, `pr#5051 <http://github.com/ceph/ceph/pull/5051>`_, Xinze Chi, Zhiqiang Wang) -* osd: crash creating/deleting pools (`issue#12429 <http://tracker.ceph.com/issues/12429>`_, `pr#5526 <http://github.com/ceph/ceph/pull/5526>`_, John Spray) -* osd: explicitly specify OSD features in MOSDBoot (`issue#10911 <http://tracker.ceph.com/issues/10911>`_, `pr#4960 <http://github.com/ceph/ceph/pull/4960>`_, Sage Weil) -* osd: is_new_interval() fixes (`issue#11771 <http://tracker.ceph.com/issues/11771>`_, `issue#10399 <http://tracker.ceph.com/issues/10399>`_, `pr#5726 <http://github.com/ceph/ceph/pull/5726>`_, Samuel Just, Jason Dillaman) -* osd: make the all osd/filestore thread pool suicide timeouts separately configurable (`issue#11439 <http://tracker.ceph.com/issues/11439>`_, `pr#5823 <http://github.com/ceph/ceph/pull/5823>`_, Samuel Just) -* osd: object creation by write cannot use an offset on an erasure coded pool (`issue#11507 <http://tracker.ceph.com/issues/11507>`_, `pr#4632 <http://github.com/ceph/ceph/pull/4632>`_, Jianpeng Ma, Loic Dachary) -* osd: os/FileJournal: Fix journal write fail, align for direct io (`issue#12943 <http://tracker.ceph.com/issues/12943>`_, `pr#5619 <http://github.com/ceph/ceph/pull/5619>`_, Xie Rui) -* osd: osd/PGLog.cc: 732: FAILED assert(log.log.size() == log_keys_debug.size()) (`issue#12652 <http://tracker.ceph.com/issues/12652>`_, `pr#5820 <http://github.com/ceph/ceph/pull/5820>`_, Sage Weil) -* osd: read on chunk-aligned xattr not handled (`issue#12309 <http://tracker.ceph.com/issues/12309>`_, `pr#5235 <http://github.com/ceph/ceph/pull/5235>`_, Sage Weil) -* rgw: Change variable length array of std::strings (not legal in C++) to std::vector<std::string> (`issue#12467 <http://tracker.ceph.com/issues/12467>`_, `pr#4583 <http://github.com/ceph/ceph/pull/4583>`_, Daniel J. Hofmann) -* rgw: Civetweb RGW appears to report full size of object as downloaded when only partially downloaded (`issue#11851 <http://tracker.ceph.com/issues/11851>`_, `pr#5234 <http://github.com/ceph/ceph/pull/5234>`_, Yehuda Sadeh) -* rgw: Keystone PKI token expiration is not enforced (`issue#11367 <http://tracker.ceph.com/issues/11367>`_, `pr#4765 <http://github.com/ceph/ceph/pull/4765>`_, Anton Aksola) -* rgw: Object copy bug (`issue#11639 <http://tracker.ceph.com/issues/11639>`_, `pr#4762 <http://github.com/ceph/ceph/pull/4762>`_, Javier M. Mellid) -* rgw: RGW returns requested bucket name raw in "Bucket" response header (`issue#11860 <http://tracker.ceph.com/issues/11860>`_, `issue#12537 <http://tracker.ceph.com/issues/12537>`_, `pr#5730 <http://github.com/ceph/ceph/pull/5730>`_, Yehuda Sadeh, Wido den Hollander) -* rgw: Swift API: response for PUT on /container does not contain the mandatory Content-Length header when FCGI is used (`issue#11036 <http://tracker.ceph.com/issues/11036>`_, `pr#5170 <http://github.com/ceph/ceph/pull/5170>`_, Radoslaw Zarzynski) -* rgw: content length parsing calls strtol() instead of strtoll() (`issue#10701 <http://tracker.ceph.com/issues/10701>`_, `pr#5997 <http://github.com/ceph/ceph/pull/5997>`_, Yehuda Sadeh) -* rgw: delete bucket does not remove .bucket.meta file (`issue#11149 <http://tracker.ceph.com/issues/11149>`_, `pr#4641 <http://github.com/ceph/ceph/pull/4641>`_, Orit Wasserman) -* rgw: doesn't return 'x-timestamp' in header which is used by 'View Details' of OpenStack (`issue#8911 <http://tracker.ceph.com/issues/8911>`_, `pr#4584 <http://github.com/ceph/ceph/pull/4584>`_, Yehuda Sadeh) -* rgw: init some manifest fields when handling explicit objs (`issue#11455 <http://tracker.ceph.com/issues/11455>`_, `pr#5729 <http://github.com/ceph/ceph/pull/5729>`_, Yehuda Sadeh) -* rgw: logfile does not get chowned properly (`issue#12073 <http://tracker.ceph.com/issues/12073>`_, `pr#5233 <http://github.com/ceph/ceph/pull/5233>`_, Thorsten Behrens) -* rgw: logrotate.conf calls service with wrong init script name (`issue#12043 <http://tracker.ceph.com/issues/12043>`_, `pr#5390 <http://github.com/ceph/ceph/pull/5390>`_, wuxingyi) -* rgw: quota not respected in POST object (`issue#11323 <http://tracker.ceph.com/issues/11323>`_, `pr#4642 <http://github.com/ceph/ceph/pull/4642>`_, Sergey Arkhipov) -* rgw: swift smoke test fails on TestAccountUTF8 (`issue#11091 <http://tracker.ceph.com/issues/11091>`_, `issue#11438 <http://tracker.ceph.com/issues/11438>`_, `issue#12939 <http://tracker.ceph.com/issues/12939>`_, `issue#12157 <http://tracker.ceph.com/issues/12157>`_, `issue#12158 <http://tracker.ceph.com/issues/12158>`_, `issue#12363 <http://tracker.ceph.com/issues/12363>`_, `pr#5532 <http://github.com/ceph/ceph/pull/5532>`_, Radoslaw Zarzynski, Orit Wasserman, Robin H. Johnson) -* rgw: use correct objv_tracker for bucket instance (`issue#11416 <http://tracker.ceph.com/issues/11416>`_, `pr#4535 <http://github.com/ceph/ceph/pull/4535>`_, Yehuda Sadeh) -* tests: ceph-fuse crash in test_client_recovery (`issue#12673 <http://tracker.ceph.com/issues/12673>`_, `pr#5813 <http://github.com/ceph/ceph/pull/5813>`_, Loic Dachary) -* tests: kernel_untar_build fails on EL7 (`issue#11758 <http://tracker.ceph.com/issues/11758>`_, `pr#6000 <http://github.com/ceph/ceph/pull/6000>`_, Greg Farnum) -* tests: qemu workunit refers to apt-mirror.front.sepia.ceph.com (`issue#13420 <http://tracker.ceph.com/issues/13420>`_, `pr#6328 <http://github.com/ceph/ceph/pull/6328>`_, Yuan Zhou, Sage Weil) -* tools: src/ceph-disk : disk zap sgdisk invocation (`issue#11143 <http://tracker.ceph.com/issues/11143>`_, `pr#4636 <http://github.com/ceph/ceph/pull/4636>`_, Thorsten Behrens, Owen Synge) -* tools: ceph-disk: sometimes the journal symlink is not created (`issue#10146 <http://tracker.ceph.com/issues/10146>`_, `pr#5541 <http://github.com/ceph/ceph/pull/5541>`_, Dan van der Ster) -* tools: ceph-disk: support NVMe device partitions (`issue#11612 <http://tracker.ceph.com/issues/11612>`_, `pr#4771 <http://github.com/ceph/ceph/pull/4771>`_, Ilja Slepnev) -* tools: ceph-post-file fails on rhel7 (`issue#11836 <http://tracker.ceph.com/issues/11836>`_, `pr#5037 <http://github.com/ceph/ceph/pull/5037>`_, Joseph McDonald, Sage Weil) -* tools: ceph_argparse_flag has no regular 3rd parameter (`issue#11543 <http://tracker.ceph.com/issues/11543>`_, `pr#4582 <http://github.com/ceph/ceph/pull/4582>`_, Thorsten Behrens) -* tools: use a new disk as journal disk,ceph-disk prepare fail (`issue#10983 <http://tracker.ceph.com/issues/10983>`_, `pr#4630 <http://github.com/ceph/ceph/pull/4630>`_, Loic Dachary) - - -v0.80.10 Firefly -================ - -This is a bugfix release for Firefly. - -We recommend that all Firefly users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.10.txt>`. - -Notable Changes ---------------- - -* build/ops: ceph.spec.in: package mkcephfs on EL6 (`issue#11955 <http://tracker.ceph.com/issues/11955>`_, `pr#4924 <http://github.com/ceph/ceph/pull/4924>`_, Ken Dreyer) -* build/ops: debian: ceph-test and rest-bench debug packages should require their respective binary packages (`issue#11673 <http://tracker.ceph.com/issues/11673>`_, `pr#4766 <http://github.com/ceph/ceph/pull/4766>`_, Ken Dreyer) -* build/ops: run RGW as root (`issue#11453 <http://tracker.ceph.com/issues/11453>`_, `pr#4638 <http://github.com/ceph/ceph/pull/4638>`_, Ken Dreyer) -* common: messages/MWatchNotify: include an error code in the message (`issue#9193 <http://tracker.ceph.com/issues/9193>`_, `pr#3944 <http://github.com/ceph/ceph/pull/3944>`_, Sage Weil) -* common: Rados.shutdown() dies with Illegal instruction (core dumped) (`issue#10153 <http://tracker.ceph.com/issues/10153>`_, `pr#3963 <http://github.com/ceph/ceph/pull/3963>`_, Federico Simoncelli) -* common: SimpleMessenger: allow RESETSESSION whenever we forget an endpoint (`issue#10080 <http://tracker.ceph.com/issues/10080>`_, `pr#3915 <http://github.com/ceph/ceph/pull/3915>`_, Greg Farnum) -* common: WorkQueue: make wait timeout on empty queue configurable (`issue#10817 <http://tracker.ceph.com/issues/10817>`_, `pr#3941 <http://github.com/ceph/ceph/pull/3941>`_, Samuel Just) -* crush: set_choose_tries = 100 for erasure code rulesets (`issue#10353 <http://tracker.ceph.com/issues/10353>`_, `pr#3824 <http://github.com/ceph/ceph/pull/3824>`_, Loic Dachary) -* doc: backport ceph-disk man page to Firefly (`issue#10724 <http://tracker.ceph.com/issues/10724>`_, `pr#3936 <http://github.com/ceph/ceph/pull/3936>`_, Nilamdyuti Goswami) -* doc: Fix ceph command manpage to match ceph -h (`issue#10676 <http://tracker.ceph.com/issues/10676>`_, `pr#3996 <http://github.com/ceph/ceph/pull/3996>`_, David Zafman) -* fs: mount.ceph: avoid spurious error message (`issue#10351 <http://tracker.ceph.com/issues/10351>`_, `pr#3927 <http://github.com/ceph/ceph/pull/3927>`_, Yan, Zheng) -* librados: Fix memory leak in python rados bindings (`issue#10723 <http://tracker.ceph.com/issues/10723>`_, `pr#3935 <http://github.com/ceph/ceph/pull/3935>`_, Josh Durgin) -* librados: fix resources leakage in RadosClient::connect() (`issue#10425 <http://tracker.ceph.com/issues/10425>`_, `pr#3828 <http://github.com/ceph/ceph/pull/3828>`_, Radoslaw Zarzynski) -* librados: Translate operation flags from C APIs (`issue#10497 <http://tracker.ceph.com/issues/10497>`_, `pr#3930 <http://github.com/ceph/ceph/pull/3930>`_, Matt Richards) -* librbd: acquire cache_lock before refreshing parent (`issue#5488 <http://tracker.ceph.com/issues/5488>`_, `pr#4206 <http://github.com/ceph/ceph/pull/4206>`_, Jason Dillaman) -* librbd: snap_remove should ignore -ENOENT errors (`issue#11113 <http://tracker.ceph.com/issues/11113>`_, `pr#4245 <http://github.com/ceph/ceph/pull/4245>`_, Jason Dillaman) -* mds: fix assertion caused by system clock backwards (`issue#11053 <http://tracker.ceph.com/issues/11053>`_, `pr#3970 <http://github.com/ceph/ceph/pull/3970>`_, Yan, Zheng) -* mon: ignore osd failures from before up_from (`issue#10762 <http://tracker.ceph.com/issues/10762>`_, `pr#3937 <http://github.com/ceph/ceph/pull/3937>`_, Sage Weil) -* mon: MonCap: take EntityName instead when expanding profiles (`issue#10844 <http://tracker.ceph.com/issues/10844>`_, `pr#3942 <http://github.com/ceph/ceph/pull/3942>`_, Joao Eduardo Luis) -* mon: Monitor: fix timecheck rounds period (`issue#10546 <http://tracker.ceph.com/issues/10546>`_, `pr#3932 <http://github.com/ceph/ceph/pull/3932>`_, Joao Eduardo Luis) -* mon: OSDMonitor: do not trust small values in osd epoch cache (`issue#10787 <http://tracker.ceph.com/issues/10787>`_, `pr#3823 <http://github.com/ceph/ceph/pull/3823>`_, Sage Weil) -* mon: OSDMonitor: fallback to json-pretty in case of invalid formatter (`issue#9538 <http://tracker.ceph.com/issues/9538>`_, `pr#4475 <http://github.com/ceph/ceph/pull/4475>`_, Loic Dachary) -* mon: PGMonitor: several stats output error fixes (`issue#10257 <http://tracker.ceph.com/issues/10257>`_, `pr#3826 <http://github.com/ceph/ceph/pull/3826>`_, Joao Eduardo Luis) -* objecter: fix map skipping (`issue#9986 <http://tracker.ceph.com/issues/9986>`_, `pr#3952 <http://github.com/ceph/ceph/pull/3952>`_, Ding Dinghua) -* osd: cache tiering: fix the atime logic of the eviction (`issue#9915 <http://tracker.ceph.com/issues/9915>`_, `pr#3949 <http://github.com/ceph/ceph/pull/3949>`_, Zhiqiang Wang) -* osd: cancel_pull: requeue waiters (`issue#11244 <http://tracker.ceph.com/issues/11244>`_, `pr#4415 <http://github.com/ceph/ceph/pull/4415>`_, Samuel Just) -* osd: check that source OSD is valid for MOSDRepScrub (`issue#9555 <http://tracker.ceph.com/issues/9555>`_, `pr#3947 <http://github.com/ceph/ceph/pull/3947>`_, Sage Weil) -* osd: DBObjectMap: lock header_lock on sync() (`issue#9891 <http://tracker.ceph.com/issues/9891>`_, `pr#3948 <http://github.com/ceph/ceph/pull/3948>`_, Samuel Just) -* osd: do not ignore deleted pgs on startup (`issue#10617 <http://tracker.ceph.com/issues/10617>`_, `pr#3933 <http://github.com/ceph/ceph/pull/3933>`_, Sage Weil) -* osd: ENOENT on clone (`issue#11199 <http://tracker.ceph.com/issues/11199>`_, `pr#4385 <http://github.com/ceph/ceph/pull/4385>`_, Samuel Just) -* osd: erasure-code-profile set races with erasure-code-profile rm (`issue#11144 <http://tracker.ceph.com/issues/11144>`_, `pr#4383 <http://github.com/ceph/ceph/pull/4383>`_, Loic Dachary) -* osd: FAILED assert(soid < scrubber.start || soid >= scrubber.end) (`issue#11156 <http://tracker.ceph.com/issues/11156>`_, `pr#4185 <http://github.com/ceph/ceph/pull/4185>`_, Samuel Just) -* osd: FileJournal: fix journalq population in do_read_entry() (`issue#6003 <http://tracker.ceph.com/issues/6003>`_, `pr#3960 <http://github.com/ceph/ceph/pull/3960>`_, Samuel Just) -* osd: fix negative degraded objects during backfilling (`issue#7737 <http://tracker.ceph.com/issues/7737>`_, `pr#4021 <http://github.com/ceph/ceph/pull/4021>`_, Guang Yang) -* osd: get the currently atime of the object in cache pool for eviction (`issue#9985 <http://tracker.ceph.com/issues/9985>`_, `pr#3950 <http://github.com/ceph/ceph/pull/3950>`_, Sage Weil) -* osd: load_pgs: we need to handle the case where an upgrade from earlier versions which ignored non-existent pgs resurrects a pg with a prehistoric osdmap (`issue#11429 <http://tracker.ceph.com/issues/11429>`_, `pr#4556 <http://github.com/ceph/ceph/pull/4556>`_, Samuel Just) -* osd: ObjectStore: Don't use largest_data_off to calc data_align. (`issue#10014 <http://tracker.ceph.com/issues/10014>`_, `pr#3954 <http://github.com/ceph/ceph/pull/3954>`_, Jianpeng Ma) -* osd: osd_types: op_queue_age_hist and fs_perf_stat should be in osd_stat_t::o... (`issue#10259 <http://tracker.ceph.com/issues/10259>`_, `pr#3827 <http://github.com/ceph/ceph/pull/3827>`_, Samuel Just) -* osd: PG::actingset should be used when checking the number of acting OSDs for... (`issue#11454 <http://tracker.ceph.com/issues/11454>`_, `pr#4453 <http://github.com/ceph/ceph/pull/4453>`_, Guang Yang) -* osd: PG::all_unfound_are_queried_or_lost for non-existent osds (`issue#10976 <http://tracker.ceph.com/issues/10976>`_, `pr#4416 <http://github.com/ceph/ceph/pull/4416>`_, Mykola Golub) -* osd: PG: always clear_primary_state (`issue#10059 <http://tracker.ceph.com/issues/10059>`_, `pr#3955 <http://github.com/ceph/ceph/pull/3955>`_, Samuel Just) -* osd: PGLog.h: 279: FAILED assert(log.log.size() == log_keys_debug.size()) (`issue#10718 <http://tracker.ceph.com/issues/10718>`_, `pr#4382 <http://github.com/ceph/ceph/pull/4382>`_, Samuel Just) -* osd: PGLog: include rollback_info_trimmed_to in (read|write)_log (`issue#10157 <http://tracker.ceph.com/issues/10157>`_, `pr#3964 <http://github.com/ceph/ceph/pull/3964>`_, Samuel Just) -* osd: pg stuck stale after create with activation delay (`issue#11197 <http://tracker.ceph.com/issues/11197>`_, `pr#4384 <http://github.com/ceph/ceph/pull/4384>`_, Samuel Just) -* osd: ReplicatedPG: fail a non-blocking flush if the object is being scrubbed (`issue#8011 <http://tracker.ceph.com/issues/8011>`_, `pr#3943 <http://github.com/ceph/ceph/pull/3943>`_, Samuel Just) -* osd: ReplicatedPG::on_change: clean up callbacks_for_degraded_object (`issue#8753 <http://tracker.ceph.com/issues/8753>`_, `pr#3940 <http://github.com/ceph/ceph/pull/3940>`_, Samuel Just) -* osd: ReplicatedPG::scan_range: an object can disappear between the list and t... (`issue#10150 <http://tracker.ceph.com/issues/10150>`_, `pr#3962 <http://github.com/ceph/ceph/pull/3962>`_, Samuel Just) -* osd: requeue blocked op before flush it was blocked on (`issue#10512 <http://tracker.ceph.com/issues/10512>`_, `pr#3931 <http://github.com/ceph/ceph/pull/3931>`_, Sage Weil) -* rgw: check for timestamp for s3 keystone auth (`issue#10062 <http://tracker.ceph.com/issues/10062>`_, `pr#3958 <http://github.com/ceph/ceph/pull/3958>`_, Abhishek Lekshmanan) -* rgw: civetweb should use unique request id (`issue#11720 <http://tracker.ceph.com/issues/11720>`_, `pr#4780 <http://github.com/ceph/ceph/pull/4780>`_, Orit Wasserman) -* rgw: don't allow negative / invalid content length (`issue#11890 <http://tracker.ceph.com/issues/11890>`_, `pr#4829 <http://github.com/ceph/ceph/pull/4829>`_, Yehuda Sadeh) -* rgw: fail s3 POST auth if keystone not configured (`issue#10698 <http://tracker.ceph.com/issues/10698>`_, `pr#3966 <http://github.com/ceph/ceph/pull/3966>`_, Yehuda Sadeh) -* rgw: flush xml header on get acl request (`issue#10106 <http://tracker.ceph.com/issues/10106>`_, `pr#3961 <http://github.com/ceph/ceph/pull/3961>`_, Yehuda Sadeh) -* rgw: generate new tag for object when setting object attrs (`issue#11256 <http://tracker.ceph.com/issues/11256>`_, `pr#4571 <http://github.com/ceph/ceph/pull/4571>`_, Yehuda Sadeh) -* rgw: generate the "Date" HTTP header for civetweb. (`issue#11871,11891 <http://tracker.ceph.com/issues/11871,11891>`_, `pr#4851 <http://github.com/ceph/ceph/pull/4851>`_, Radoslaw Zarzynski) -* rgw: keystone token cache does not work correctly (`issue#11125 <http://tracker.ceph.com/issues/11125>`_, `pr#4414 <http://github.com/ceph/ceph/pull/4414>`_, Yehuda Sadeh) -* rgw: merge manifests correctly when there's prefix override (`issue#11622 <http://tracker.ceph.com/issues/11622>`_, `pr#4697 <http://github.com/ceph/ceph/pull/4697>`_, Yehuda Sadeh) -* rgw: send appropriate op to cancel bucket index pending operation (`issue#10770 <http://tracker.ceph.com/issues/10770>`_, `pr#3938 <http://github.com/ceph/ceph/pull/3938>`_, Yehuda Sadeh) -* rgw: shouldn't need to disable rgw_socket_path if frontend is configured (`issue#11160 <http://tracker.ceph.com/issues/11160>`_, `pr#4275 <http://github.com/ceph/ceph/pull/4275>`_, Yehuda Sadeh) -* rgw: Swift API. Dump container's custom metadata. (`issue#10665 <http://tracker.ceph.com/issues/10665>`_, `pr#3934 <http://github.com/ceph/ceph/pull/3934>`_, Dmytro Iurchenko) -* rgw: Swift API. Support for X-Remove-Container-Meta-{key} header. (`issue#10475 <http://tracker.ceph.com/issues/10475>`_, `pr#3929 <http://github.com/ceph/ceph/pull/3929>`_, Dmytro Iurchenko) -* rgw: use correct objv_tracker for bucket instance (`issue#11416 <http://tracker.ceph.com/issues/11416>`_, `pr#4379 <http://github.com/ceph/ceph/pull/4379>`_, Yehuda Sadeh) -* tests: force checkout of submodules (`issue#11157 <http://tracker.ceph.com/issues/11157>`_, `pr#4079 <http://github.com/ceph/ceph/pull/4079>`_, Loic Dachary) -* tools: Backport ceph-objectstore-tool changes to firefly (`issue#12327 <http://tracker.ceph.com/issues/12327>`_, `pr#3866 <http://github.com/ceph/ceph/pull/3866>`_, David Zafman) -* tools: ceph-objectstore-tool: Output only unsupported features when incomatible (`issue#11176 <http://tracker.ceph.com/issues/11176>`_, `pr#4126 <http://github.com/ceph/ceph/pull/4126>`_, David Zafman) -* tools: ceph-objectstore-tool: Use exit status 11 for incompatible import attemp... (`issue#11139 <http://tracker.ceph.com/issues/11139>`_, `pr#4129 <http://github.com/ceph/ceph/pull/4129>`_, David Zafman) -* tools: Fix do_autogen.sh so that -L is allowed (`issue#11303 <http://tracker.ceph.com/issues/11303>`_, `pr#4247 <http://github.com/ceph/ceph/pull/4247>`_, Alfredo Deza) - -v0.80.9 Firefly -=============== - -This is a bugfix release for firefly. It fixes a performance -regression in librbd, an important CRUSH misbehavior (see below), and -several RGW bugs. We have also backported support for flock/fcntl -locks to ceph-fuse and libcephfs. - -We recommend that all Firefly users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.9.txt>`. - -Adjusting CRUSH maps --------------------- - -* This point release fixes several issues with CRUSH that trigger - excessive data migration when adjusting OSD weights. These are most - obvious when a very small weight change (e.g., a change from 0 to - .01) triggers a large amount of movement, but the same set of bugs - can also lead to excessive (though less noticeable) movement in - other cases. - - However, because the bug may already have affected your cluster, - fixing it may trigger movement *back* to the more correct location. - For this reason, you must manually opt-in to the fixed behavior. - - In order to set the new tunable to correct the behavior:: - - ceph osd crush set-tunable straw_calc_version 1 - - Note that this change will have no immediate effect. However, from - this point forward, any 'straw' bucket in your CRUSH map that is - adjusted will get non-buggy internal weights, and that transition - may trigger some rebalancing. - - You can estimate how much rebalancing will eventually be necessary - on your cluster with:: - - ceph osd getcrushmap -o /tmp/cm - crushtool -i /tmp/cm --num-rep 3 --test --show-mappings > /tmp/a 2>&1 - crushtool -i /tmp/cm --set-straw-calc-version 1 -o /tmp/cm2 - crushtool -i /tmp/cm2 --reweight -o /tmp/cm2 - crushtool -i /tmp/cm2 --num-rep 3 --test --show-mappings > /tmp/b 2>&1 - wc -l /tmp/a # num total mappings - diff -u /tmp/a /tmp/b | grep -c ^+ # num changed mappings - - Divide the number of changed lines by the total number of lines in - /tmp/a. We've found that most clusters are under 10%. - - You can force all of this rebalancing to happen at once with:: - - ceph osd crush reweight-all - - Otherwise, it will happen at some unknown point in the future when - CRUSH weights are next adjusted. - -Notable Changes ---------------- - -* ceph-fuse: flock, fcntl lock support (Yan, Zheng, Greg Farnum) -* crush: fix straw bucket weight calculation, add straw_calc_version tunable (#10095 Sage Weil) -* crush: fix tree bucket (Rongzu Zhu) -* crush: fix underflow of tree weights (Loic Dachary, Sage Weil) -* crushtool: add --reweight (Sage Weil) -* librbd: complete pending operations before losing image (#10299 Jason Dillaman) -* librbd: fix read caching performance regression (#9854 Jason Dillaman) -* librbd: gracefully handle deleted/renamed pools (#10270 Jason Dillaman) -* mon: fix dump of chooseleaf_vary_r tunable (Sage Weil) -* osd: fix PG ref leak in snaptrimmer on peering (#10421 Kefu Chai) -* osd: handle no-op write with snapshot (#10262 Sage Weil) -* radosgw-admin: create subuser when creating user (#10103 Yehuda Sadeh) -* rgw: change multipart uplaod id magic (#10271 Georgio Dimitrakakis, Yehuda Sadeh) -* rgw: don't overwrite bucket/object owner when setting ACLs (#10978 Yehuda Sadeh) -* rgw: enable IPv6 for embedded civetweb (#10965 Yehuda Sadeh) -* rgw: fix partial swift GET (#10553 Yehuda Sadeh) -* rgw: fix quota disable (#9907 Dong Lei) -* rgw: index swift keys appropriately (#10471 Hemant Burman, Yehuda Sadeh) -* rgw: make setattrs update bucket index (#5595 Yehuda Sadeh) -* rgw: pass civetweb configurables (#10907 Yehuda Sadeh) -* rgw: remove swift user manifest (DLO) hash calculation (#9973 Yehuda Sadeh) -* rgw: return correct len for 0-len objects (#9877 Yehuda Sadeh) -* rgw: S3 object copy content-type fix (#9478 Yehuda Sadeh) -* rgw: send ETag on S3 object copy (#9479 Yehuda Sadeh) -* rgw: send HTTP status reason explicitly in fastcgi (Yehuda Sadeh) -* rgw: set ulimit -n from sysvinit (el6) init script (#9587 Sage Weil) -* rgw: update swift subuser permission masks when authenticating (#9918 Yehuda Sadeh) -* rgw: URL decode query params correctly (#10271 Georgio Dimitrakakis, Yehuda Sadeh) -* rgw: use attrs when reading object attrs (#10307 Yehuda Sadeh) -* rgw: use \r\n for http headers (#9254 Benedikt Fraunhofer, Yehuda Sadeh) - - -v0.80.8 Firefly -=============== - -This is a long-awaited bugfix release for firefly. It has several -important (but relatively rare) OSD peering fixes, performance issues -when snapshots are trimmed, several RGW fixes, a paxos corner case -fix, and some packaging updates. - -We recommend that all users for v0.80.x firefly upgrade when it is -convenient to do so. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.8.txt>`. - -Notable Changes ---------------- - -* build: remove stack-execute bit from assembled code sections (#10114 Dan Mick) -* ceph-disk: fix dmcrypt key permissions (#9785 Loic Dachary) -* ceph-disk: fix keyring location (#9653 Loic Dachary) -* ceph-disk: make partition checks more robust (#9721 #9665 Loic Dachary) -* ceph: cleanly shut down librados context on shutdown (#8797 Dan Mick) -* common: add $cctid config metavariable (#6228 Adam Crume) -* crush: align rule and ruleset ids (#9675 Xiaoxi Chen) -* crush: fix negative weight bug during create_or_move_item (#9998 Pawel Sadowski) -* crush: fix potential buffer overflow in erasure rules (#9492 Johnu George) -* debian: fix python-ceph -> ceph file movement (Sage Weil) -* libcephfs,ceph-fuse: fix flush tid wraparound bug (#9869 Greg Farnum, Yan, Zheng) -* libcephfs: close fd befure umount (#10415 Yan, Zheng) -* librados: fix crash from C API when read timeout is enabled (#9582 Sage Weil) -* librados: handle reply race with pool deletion (#10372 Sage Weil) -* librbd: cap memory utilization for read requests (Jason Dillaman) -* librbd: do not close a closed parent image on failure (#10030 Jason Dillaman) -* librbd: fix diff tests (#10002 Josh Durgin) -* librbd: protect list_children from invalid pools (#10123 Jason Dillaman) -* make check improvemens (Loic Dachary) -* mds: fix ctime updates (#9514 Greg Farnum) -* mds: fix journal import tool (#10025 John Spray) -* mds: fix rare NULL deref in cap flush handler (Greg Farnum) -* mds: handle unknown lock messages (Yan, Zheng) -* mds: store backtrace for straydir (Yan, Zheng) -* mon: abort startup if disk is full (#9502 Joao Eduardo Luis) -* mon: add paxos instrumentation (Sage Weil) -* mon: fix double-free in rare OSD startup path (Sage Weil) -* mon: fix osdmap trimming (#9987 Sage Weil) -* mon: fix paxos corner cases (#9301 #9053 Sage Weil) -* osd: cancel callback on blacklisted watchers (#8315 Samuel Just) -* osd: cleanly abort set-alloc-hint operations during upgrade (#9419 David Zafman) -* osd: clear rollback PG metadata on PG deletion (#9293 Samuel Just) -* osd: do not abort deep scrub if hinfo is missing (#10018 Loic Dachary) -* osd: erasure-code regression tests (Loic Dachary) -* osd: fix distro metadata reporting for SUSE (#8654 Danny Al-Gaaf) -* osd: fix full OSD checks during backfill (#9574 Samuel Just) -* osd: fix ioprio parsing (#9677 Loic Dachary) -* osd: fix journal direct-io shutdown (#9073 Mark Kirkwood, Ma Jianpeng, Somnath Roy) -* osd: fix journal dump (Ma Jianpeng) -* osd: fix occasional stall during peering or activation (Sage Weil) -* osd: fix past_interval display bug (#9752 Loic Dachary) -* osd: fix rare crash triggered by admin socket dump_ops_in_filght (#9916 Dong Lei) -* osd: fix snap trimming performance issues (#9487 #9113 Samuel Just, Sage Weil, Dan van der Ster, Florian Haas) -* osd: fix snapdir handling on cache eviction (#8629 Sage Weil) -* osd: handle map gaps in map advance code (Sage Weil) -* osd: handle undefined CRUSH results in interval check (#9718 Samuel Just) -* osd: include shard in JSON dump of ghobject (#10063 Loic Dachary) -* osd: make backfill reservation denial handling more robust (#9626 Samuel Just) -* osd: make misdirected op checks handle EC + primary affinity (#9835 Samuel Just, Sage Weil) -* osd: mount XFS with inode64 by default (Sage Weil) -* osd: other misc bugs (#9821 #9875 Samuel Just) -* rgw: add .log to default log path (#9353 Alexandre Marangone) -* rgw: clean up fcgi request context (#10194 Yehuda Sadeh) -* rgw: convet header underscores to dashes (#9206 Yehuda Sadeh) -* rgw: copy object data if copy target is in different pool (#9039 Yehuda Sadeh) -* rgw: don't try to authenticate CORS peflight request (#8718 Robert Hubbard, Yehuda Sadeh) -* rgw: fix civetweb URL decoding (#8621 Yehuda Sadeh) -* rgw: fix hash calculation during PUT (Yehuda Sadeh) -* rgw: fix misc bugs (#9089 #9201 Yehuda Sadeh) -* rgw: fix object tail test (#9226 Sylvain Munaut, Yehuda Sadeh) -* rgw: make sysvinit script run rgw under systemd context as needed (#10125 Loic Dachary) -* rgw: separate civetweb log from rgw log (Yehuda Sadeh) -* rgw: set length for keystone token validations (#7796 Mark Kirkwood, Yehuda Sadeh) -* rgw: subuser creation fixes (#8587 Yehuda Sadeh) -* rpm: misc packaging improvements (Sandon Van Ness, Dan Mick, Erik Logthenberg, Boris Ranto) -* rpm: use standard udev rules for CentOS7/RHEL7 (#9747 Loic Dachary) - - -v0.80.7 Firefly -=============== - -This release fixes a few critical issues with v0.80.6, particularly -with clusters running mixed versions. - -We recommend that all v0.80.x Firefly users upgrade to this release. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.7.txt>`. - -Notable Changes ---------------- - -* osd: fix invalid memory reference in log trimming (#9731 Samuel Just) -* osd: fix use-after-free in cache tiering code (#7588 Sage Weil) -* osd: remove bad backfill assertion for mixed-version clusters (#9696 Samuel Just) - - - -v0.80.6 Firefly -=============== - -This is a major bugfix release for firefly, fixing a range of issues -in the OSD and monitor, particularly with cache tiering. There are -also important fixes in librados, with the watch/notify mechanism used -by librbd, and in radosgw. - -A few pieces of new functionality of been backported, including improved -'ceph df' output (view amount of writeable space per pool), support for -non-default cluster names when using sysvinit or systemd, and improved -(and fixed) support for dmcrypt. - -We recommend that all v0.80.x Firefly users upgrade to this release. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.6.txt>`. - -Notable Changes ---------------- - -* build: fix atomic64_t on i386 (#8969 Sage Weil) -* build: fix build on alpha (Michael Cree, Dmitry Smirnov) -* build: fix build on hppa (Dmitry Smirnov) -* build: fix yasm detection on x32 arch (Sage Weil) -* ceph-disk: fix 'list' function with dmcrypt (Sage Weil) -* ceph-disk: fix dmcrypt support (Alfredo Deza) -* ceph: allow non-default cluster to be specified (#8944) -* common: fix dup log messages to mon (#9080 Sage Weil) -* global: write pid file when -f is used (systemd, upstart) (Alexandre Oliva) -* librados: fix crash when read timeout is enabled (#9362 Matthias Kiefer, Sage Weil) -* librados: fix lock leaks in error paths (#9022 Pavan Rallabhandi) -* librados: fix watch resend on PG acting set change (#9220 Samuel Just) -* librados: python: fix aio_read handling with \0 (Mohammad Salehe) -* librbd: add interface to invalidate cached data (Josh Durgin) -* librbd: fix crash when using clone of flattened image (#8845 Josh Durgin) -* librbd: fix error path cleanup on open (#8912 Josh Durgin) -* librbd: fix null pointer check (Danny Al-Gaaf) -* librbd: limit dirty object count (Haomai Wang) -* mds: fix rstats for root and mdsdir (Yan, Zheng) -* mon: add 'get' command for new cache tier pool properties (Joao Eduardo Luis) -* mon: add 'osd pool get-quota' (#8523 Joao Eduardo Luis) -* mon: add cluster fingerprint (Sage Weil) -* mon: disallow nonsensical cache-mode transitions (#8155 Joao Eduardo Luis) -* mon: fix cache tier rounding error on i386 (Sage Weil) -* mon: fix occasional memory leak (#9176 Sage Weil) -* mon: fix reported latency for 'osd perf' (#9269 Samuel Just) -* mon: include 'max avail' in 'ceph df' output (Sage Weil, Xioaxi Chen) -* mon: persistently mark pools where scrub may find incomplete clones (#8882 Sage Weil) -* mon: preload erasure plugins (Loic Dachary) -* mon: prevent cache-specific settings on non-tier pools (#8696 Joao Eduardo Luis) -* mon: reduce log spam (Aanchal Agrawal, Sage Weil) -* mon: warn when cache pools have no hit_sets enabled (Sage Weil) -* msgr: fix trivial memory leak (Sage Weil) -* osd: automatically scrub PGs with invalid stats (#8147 Sage Weil) -* osd: avoid sharing PG metadata that is not durable (Samuel Just) -* osd: cap hit_set size (#9339 Samuel Just) -* osd: create default erasure profile if needed (#8601 Loic Dachary) -* osd: dump tid as JSON int (not string) where appropriate (Joao Eduardo Luis) -* osd: encode blacklist in deterministic order (#9211 Sage Weil) -* osd: fix behavior when cache tier has no hit_sets enabled (#8982 Sage Weil) -* osd: fix cache tier flushing of snapshots (#9054 Samuel Just) -* osd: fix cache tier op ordering when going from full to non-full (#8931 Sage Weil) -* osd: fix crash on dup recovery reservation (#8863 Sage Weil) -* osd: fix division by zero when pg_num adjusted with no OSDs (#9052 Sage Weil) -* osd: fix hint crash in experimental keyvaluestore_dev backend (Hoamai Wang) -* osd: fix leak in copyfrom cancellation (#8894 Samuel Just) -* osd: fix locking for copyfrom finish (#8889 Sage Weil) -* osd: fix long filename handling in backend (#8701 Sage Weil) -* osd: fix min_size check with backfill (#9497 Samuel Just) -* osd: fix mount/remount sync race (#9144 Sage Weil) -* osd: fix object listing + erasure code bug (Guang Yang) -* osd: fix race on reconnect to failed OSD (#8944 Greg Farnum) -* osd: fix recovery reservation deadlock (Samuel Just) -* osd: fix tiering agent arithmetic for negative values (#9082 Karan Singh) -* osd: improve shutdown order (#9218 Sage Weil) -* osd: improve subop discard logic (#9259 Samuel Just) -* osd: introduce optional sleep, io priority for scrub and snap trim (Sage Weil) -* osd: make scrub check for and remove stale erasure-coded objects (Samuel Just) -* osd: misc fixes (#9481 #9482 #9179 Sameul Just) -* osd: mix keyvaluestore_dev improvements (Haomai Wang) -* osd: only require CRUSH features for rules that are used (#8963 Sage Weil) -* osd: preload erasure plugins on startup (Loic Dachary) -* osd: prevent PGs from falling behind when consuming OSDMaps (#7576 Sage Weil) -* osd: prevent old clients from using tiered pools (#8714 Sage Weil) -* osd: set min_size on erasure pools to data chunk count (Sage Weil) -* osd: trim old erasure-coded objects more aggressively (Samuel Just) -* rados: enforce erasure code alignment (Lluis Pamies-Juarez) -* rgw: align object stripes with erasure pool alignment (#8442 Yehuda Sadeh) -* rgw: don't send error body on HEAD for civetweb (#8539 Yehuda Sadeh) -* rgw: fix crash in CORS preflight request (Yehuda Sadeh) -* rgw: fix decoding of + in URL (#8702 Brian Rak) -* rgw: fix object removal on object create (#8972 Patrycja Szabowska, Yehuda Sadeh) -* systemd: use systemd-run when starting radosgw (JuanJose Galvez) -* sysvinit: support non-default cluster name (Alfredo Deza) - - -v0.80.5 Firefly -=============== - -This release fixes a few important bugs in the radosgw and fixes -several packaging and environment issues, including OSD log rotation, -systemd environments, and daemon restarts on upgrade. - -We recommend that all v0.80.x Firefly users upgrade, particularly if they -are using upstart, systemd, or radosgw. - -Notable Changes ---------------- - -* ceph-dencoder: do not needlessly link to librgw, librados, etc. (Sage Weil) -* do not needlessly link binaries to leveldb (Sage Weil) -* mon: fix mon crash when no auth keys are present (#8851, Joao Eduardo Luis) -* osd: fix cleanup (and avoid occasional crash) during shutdown (#7981, Sage Weil) -* osd: fix log rotation under upstart (Sage Weil) -* rgw: fix multipart upload when object has irregular size (#8846, Yehuda Sadeh, Sylvain Munaut) -* rgw: improve bucket listing S3 compatibility (#8858, Yehuda Sadeh) -* rgw: improve delimited bucket listing (Yehuda Sadeh) -* rpm: do not restart daemons on upgrade (#8849, Alfredo Deza) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.5.txt>`. - -v0.80.4 Firefly -=============== - -This Firefly point release fixes an potential data corruption problem -when ceph-osd daemons run on top of XFS and service Firefly librbd -clients. A recently added allocation hint that RBD utilizes triggers -an XFS bug on some kernels (Linux 3.2, and likely others) that leads -to data corruption and deep-scrub errors (and inconsistent PGs). This -release avoids the situation by disabling the allocation hint until we -can validate which kernels are affected and/or are known to be safe to -use the hint on. - -We recommend that all v0.80.x Firefly users urgently upgrade, -especially if they are using RBD. - -Notable Changes ---------------- - -* osd: disable XFS extsize hint by default (#8830, Samuel Just) -* rgw: fix extra data pool default name (Yehuda Sadeh) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.4.txt>`. - - -v0.80.3 Firefly -=============== - -This is the third Firefly point release. It includes a single fix -for a radosgw regression that was discovered in v0.80.2 right after it -was released. - -We recommend that all v0.80.x Firefly users upgrade. - -Notable Changes ---------------- - -* radosgw: fix regression in manifest decoding (#8804, Sage Weil) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.3.txt>`. - - -v0.80.2 Firefly -=============== - -This is the second Firefly point release. It contains a range of -important fixes, including several bugs in the OSD cache tiering, some -compatibility checks that affect upgrade situations, several radosgw -bugs, and an irritating and unnecessary feature bit check that -prevents older clients from communicating with a cluster with any -erasure coded pools. - -One someone large change in this point release is that the ceph RPM -package is separated into a ceph and ceph-common package, similar to -Debian. The ceph-common package contains just the client libraries -without any of the server-side daemons. - -We recommend that all v0.80.x Firefly users skip this release and use -v0.80.3. - -Notable Changes ---------------- - -* ceph-disk: better debug logging (Alfredo Deza) -* ceph-disk: fix preparation of OSDs with dmcrypt (#6700, Stephen F Taylor) -* ceph-disk: partprobe on prepare to fix dm-crypt (#6966, Eric Eastman) -* do not require ERASURE_CODE feature from clients (#8556, Sage Weil) -* libcephfs-java: build with older JNI headers (Greg Farnum) -* libcephfs-java: fix build with gcj-jdk (Dmitry Smirnov) -* librados: fix osd op tid for redirected ops (#7588, Samuel Just) -* librados: fix rados_pool_list buffer bounds checks (#8447, Sage Weil) -* librados: resend ops when pool overlay changes (#8305, Sage Weil) -* librbd, ceph-fuse: reduce CPU overhead for clean object check in cache (Haomai Wang) -* mon: allow deletion of cephfs pools (John Spray) -* mon: fix default pool ruleset choice (#8373, John Spray) -* mon: fix health summary for mon low disk warning (Sage Weil) -* mon: fix 'osd pool set <pool> cache_target_full_ratio' (Geoffrey Hartz) -* mon: fix quorum feature check (Greg Farnum) -* mon: fix request forwarding in mixed firefly+dumpling clusters 9#8727, Joao Eduardo Luis) -* mon: fix rule vs ruleset check in 'osd pool set ... crush_ruleset' command (John Spray) -* mon: make osd 'down' count accurate (Sage Weil) -* mon: set 'next commit' in primary-affinity reply (Ilya Dryomov) -* mon: verify CRUSH features are supported by all mons (#8738, Greg Farnum) -* msgr: fix sequence negotiation during connection reset (Guang Yang) -* osd: block scrub on blocked objects (#8011, Samuel Just) -* osd: call XFS hint ioctl less often (#8241, Ilya Dryomov) -* osd: copy xattr spill out marker on clone (Haomai Wang) -* osd: fix flush of snapped objects (#8334, Samuel Just) -* osd: fix hashindex restart of merge operation (#8332, Samuel Just) -* osd: fix osdmap subscription bug causing startup hang (Greg Farnum) -* osd: fix potential null deref (#8328, Sage Weil) -* osd: fix shutdown race (#8319, Sage Weil) -* osd: handle 'none' in CRUSH results properly during peering (#8507, Samuel Just) -* osd: set no spill out marker on new objects (Greg Farnum) -* osd: skip op ordering debug checks on tiered pools (#8380, Sage Weil) -* rados: enforce 'put' alignment (Lluis Pamies-Juarez) -* rest-api: fix for 'rx' commands (Ailing Zhang) -* rgw: calc user manifest etag and fix check (#8169, #8436, Yehuda Sadeh) -* rgw: fetch attrs on multipart completion (#8452, Yehuda Sadeh, Sylvain Munaut) -* rgw: fix buffer overflow for long instance ids (#8608, Yehuda Sadeh) -* rgw: fix entity permission check on metadata put (#8428, Yehuda Sadeh) -* rgw: fix multipart retry race (#8269, Yehuda Sadeh) -* rpm: split ceph into ceph and ceph-common RPMs (Sandon Van Ness, Dan Mick) -* sysvinit: continue startin daemons after failure doing mount (#8554, Sage Weil) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.2.txt>`. - -v0.80.1 Firefly -=============== - -This first Firefly point release fixes a few bugs, the most visible -being a problem that prevents scrub from completing in some cases. - -Notable Changes ---------------- - -* osd: revert incomplete scrub fix (Samuel Just) -* rgw: fix stripe calculation for manifest objects (Yehuda Sadeh) -* rgw: improve handling, memory usage for abort reads (Yehuda Sadeh) -* rgw: send Swift user manifest HTTP header (Yehuda Sadeh) -* libcephfs, ceph-fuse: expose MDS session state via admin socket (Yan, Zheng) -* osd: add simple throttle for snap trimming (Sage Weil) -* monclient: fix possible hang from ill-timed monitor connection failure (Sage Weil) -* osd: fix trimming of past HitSets (Sage Weil) -* osd: fix whiteouts for non-writeback cache modes (Sage Weil) -* osd: prevent divide by zero in tiering agent (David Zafman) -* osd: prevent busy loop when tiering agent can do no work (David Zafman) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.80.1.txt>`. - - -v0.80 Firefly -============= - -This release will form the basis for our long-term supported release -Firefly, v0.80.x. The big new features are support for erasure coding -and cache tiering, although a broad range of other features, fixes, -and improvements have been made across the code base. Highlights include: - -* *Erasure coding*: support for a broad range of erasure codes for lower - storage overhead and better data durability. -* *Cache tiering*: support for creating 'cache pools' that store hot, - recently accessed objects with automatic demotion of colder data to - a base tier. Typically the cache pool is backed by faster storage - devices like SSDs. -* *Primary affinity*: Ceph now has the ability to skew selection of - OSDs as the "primary" copy, which allows the read workload to be - cheaply skewed away from parts of the cluster without migrating any - data. -* *Key/value OSD backend* (experimental): An alternative storage backend - for Ceph OSD processes that puts all data in a key/value database like - leveldb. This provides better performance for workloads dominated by - key/value operations (like radosgw bucket indices). -* *Standalone radosgw* (experimental): The radosgw process can now run - in a standalone mode without an apache (or similar) web server or - fastcgi. This simplifies deployment and can improve performance. - -We expect to maintain a series of stable releases based on v0.80 -Firefly for as much as a year. In the meantime, development of Ceph -continues with the next release, Giant, which will feature work on the -CephFS distributed file system, more alternative storage backends -(like RocksDB and f2fs), RDMA support, support for pyramid erasure -codes, and additional functionality in the block device (RBD) like -copy-on-read and multisite mirroring. - - -Upgrade Sequencing ------------------- - -* If your existing cluster is running a version older than v0.67 - Dumpling, please first upgrade to the latest Dumpling release before - upgrading to v0.80 Firefly. Please refer to the :ref:`dumpling-upgrade` - documentation. - -* We recommend adding the following to the [mon] section of your - ceph.conf prior to upgrade:: - - mon warn on legacy crush tunables = false - - This will prevent health warnings due to the use of legacy CRUSH - placement. Although it is possible to rebalance existing data - across your cluster (see the upgrade notes below), we do not - normally recommend it for production environments as a large amount - of data will move and there is a significant performance impact from - the rebalancing. - -* Upgrade daemons in the following order: - - #. Monitors - #. OSDs - #. MDSs and/or radosgw - - If the ceph-mds daemon is restarted first, it will wait until all - OSDs have been upgraded before finishing its startup sequence. If - the ceph-mon daemons are not restarted prior to the ceph-osd - daemons, they will not correctly register their new capabilities - with the cluster and new features may not be usable until they are - restarted a second time. - -* Upgrade radosgw daemons together. There is a subtle change in behavior - for multipart uploads that prevents a multipart request that was initiated - with a new radosgw from being completed by an old radosgw. - - -Upgrading from v0.79 --------------------- - -* OSDMap's json-formatted dump changed for keys 'full' and 'nearfull'. - What was previously being outputted as 'true' or 'false' strings are - now being outputted 'true' and 'false' booleans according to json syntax. - -* HEALTH_WARN on 'mon osd down out interval == 0'. Having this option set - to zero on the leader acts much like having the 'noout' flag set. This - warning will only be reported if the monitor getting the 'health' or - 'status' request has this option set to zero. - -* Monitor 'auth' commands now require the mon 'x' capability. This matches - dumpling v0.67.x and earlier, but differs from emperor v0.72.x. - -* A librados WATCH operation on a non-existent object now returns ENOENT; - previously it did not. - -* Librados interface change: As there are no partial writes, the rados_write() - and rados_append() operations now return 0 on success like rados_write_full() - always has. This includes the C++ interface equivalents and AIO return - values for the aio variants. - -* The radosgw init script (sysvinit) how requires that the 'host = ...' line in - ceph.conf, if present, match the short hostname (the output of 'hostname -s'), - not the fully qualified hostname or the (occasionally non-short) output of - 'hostname'. Failure to adjust this when upgrading from emperor or dumpling - may prevent the radosgw daemon from starting. - -Upgrading from v0.72 Emperor ----------------------------- - -* See notes above. - -* The 'ceph -s' or 'ceph status' command's 'num_in_osds' field in the - JSON and XML output has been changed from a string to an int. - -* The recently added 'ceph mds set allow_new_snaps' command's syntax - has changed slightly; it is now 'ceph mds set allow_new_snaps true'. - The 'unset' command has been removed; instead, set the value to - 'false'. - -* The syntax for allowing snapshots is now 'mds set allow_new_snaps - <true|false>' instead of 'mds <set,unset> allow_new_snaps'. - -* 'rbd ls' on a pool which never held rbd images now exits with code - 0. It outputs nothing in plain format, or an empty list in - non-plain format. This is consistent with the behavior for a pool - which used to hold images, but contains none. Scripts relying on - this behavior should be updated. - -* The MDS requires a new OSD operation TMAP2OMAP, added in this release. When - upgrading, be sure to upgrade and restart the ceph-osd daemons before the - ceph-mds daemon. The MDS will refuse to start if any up OSDs do not support - the new feature. - -* The 'ceph mds set_max_mds N' command is now deprecated in favor of - 'ceph mds set max_mds N'. - -* The 'osd pool create ...' syntax has changed for erasure pools. - -* The default CRUSH rules and layouts are now using the 'bobtail' - tunables and defaults. Upgraded clusters using the old values will - now present with a health WARN state. This can be disabled by - adding 'mon warn on legacy crush tunables = false' to ceph.conf and - restarting the monitors. Alternatively, you can switch to the new - tunables with 'ceph osd crush tunables firefly,' but keep in mind - that this will involve moving a *significant* portion of the data - already stored in the cluster and in a large cluster may take - several days to complete. We do not recommend adjusting tunables on a - production cluster. - -* We now default to the 'bobtail' CRUSH tunable values that are first supported - by Ceph clients in bobtail (v0.56) and Linux kernel version v3.9. If you - plan to access a newly created Ceph cluster with an older kernel client, you - should use 'ceph osd crush tunables legacy' to switch back to the legacy - behavior. Note that making that change will likely result in some data - movement in the system, so adjust the setting before populating the new - cluster with data. - -* We now set the HASHPSPOOL flag on newly created pools (and new - clusters) by default. Support for this flag first appeared in - v0.64; v0.67 Dumpling is the first major release that supports it. - It is first supported by the Linux kernel version v3.9. If you plan - to access a newly created Ceph cluster with an older kernel or - clients (e.g, librados, librbd) from a pre-dumpling Ceph release, - you should add 'osd pool default flag hashpspool = false' to the - '[global]' section of your 'ceph.conf' prior to creating your - monitors (e.g., after 'ceph-deploy new' but before 'ceph-deploy mon - create ...'). - -* The configuration option 'osd pool default crush rule' is deprecated - and replaced with 'osd pool default crush replicated ruleset'. 'osd - pool default crush rule' takes precedence for backward compatibility - and a deprecation warning is displayed when it is used. - -* As part of fix for #6796, 'ceph osd pool set <pool> <var> <arg>' now - receives <arg> as an integer instead of a string. This affects how - 'hashpspool' flag is set/unset: instead of 'true' or 'false', it now - must be '0' or '1'. - -* The behavior of the CRUSH 'indep' choose mode has been changed. No - ceph cluster should have been using this behavior unless someone has - manually extracted a crush map, modified a CRUSH rule to replace - 'firstn' with 'indep', recompiled, and reinjected the new map into - the cluster. If the 'indep' mode is currently in use on a cluster, - the rule should be modified to use 'firstn' instead, and the - administrator should wait until any data movement completes before - upgrading. - -* The 'osd dump' command now dumps pool snaps as an array instead of an - object. - - -Upgrading from v0.67 Dumpling ------------------------------ - -* See notes above. - -* ceph-fuse and radosgw now use the same default values for the admin - socket and log file paths that the other daemons (ceph-osd, - ceph-mon, etc.) do. If you run these daemons as non-root, you may - need to adjust your ceph.conf to disable these options or to adjust - the permissions on /var/run/ceph and /var/log/ceph. - -* The MDS now disallows snapshots by default as they are not - considered stable. The command 'ceph mds set allow_snaps' will - enable them. - -* For clusters that were created before v0.44 (pre-argonaut, Spring - 2012) and store radosgw data, the auto-upgrade from TMAP to OMAP - objects has been disabled. Before upgrading, make sure that any - buckets created on pre-argonaut releases have been modified (e.g., - by PUTing and then DELETEing an object from each bucket). Any - cluster created with argonaut (v0.48) or a later release or not - using radosgw never relied on the automatic conversion and is not - affected by this change. - -* Any direct users of the 'tmap' portion of the librados API should be - aware that the automatic tmap -> omap conversion functionality has - been removed. - -* Most output that used K or KB (e.g., for kilobyte) now uses a - lower-case k to match the official SI convention. Any scripts that - parse output and check for an upper-case K will need to be modified. - -* librados::Rados::pool_create_async() and librados::Rados::pool_delete_async() - don't drop a reference to the completion object on error, caller needs to take - care of that. This has never really worked correctly and we were leaking an - object - -* 'ceph osd crush set <id> <weight> <loc..>' no longer adds the osd to the - specified location, as that's a job for 'ceph osd crush add'. It will - however continue to work just the same as long as the osd already exists - in the crush map. - -* The OSD now enforces that class write methods cannot both mutate an - object and return data. The rbd.assign_bid method, the lone - offender, has been removed. This breaks compatibility with - pre-bobtail librbd clients by preventing them from creating new - images. - -* librados now returns on commit instead of ack for synchronous calls. - This is a bit safer in the case where both OSDs and the client crash, and - is probably how it should have been acting from the beginning. Users are - unlikely to notice but it could result in lower performance in some - circumstances. Those who care should switch to using the async interfaces, - which let you specify safety semantics precisely. - -* The C++ librados AioComplete::get_version() method was incorrectly - returning an int (usually 32-bits). To avoid breaking library - compatibility, a get_version64() method is added that returns the - full-width value. The old method is deprecated and will be removed - in a future release. Users of the C++ librados API that make use of - the get_version() method should modify their code to avoid getting a - value that is truncated from 64 to to 32 bits. - - -Notable changes since v0.79 ---------------------------- - -* ceph-fuse, libcephfs: fix several caching bugs (Yan, Zheng) -* ceph-fuse: trim inodes in response to mds memory pressure (Yan, Zheng) -* librados: fix inconsistencies in API error values (David Zafman) -* librados: fix watch operations with cache pools (Sage Weil) -* librados: new snap rollback operation (David Zafman) -* mds: fix respawn (John Spray) -* mds: misc bugs (Yan, Zheng) -* mds: misc multi-mds fixes (Yan, Zheng) -* mds: use shared_ptr for requests (Greg Farnum) -* mon: fix peer feature checks (Sage Weil) -* mon: require 'x' mon caps for auth operations (Joao Luis) -* mon: shutdown when removed from mon cluster (Joao Luis) -* msgr: fix locking bug in authentication (Josh Durgin) -* osd: fix bug in journal replay/restart (Sage Weil) -* osd: many many many bug fixes with cache tiering (Samuel Just) -* osd: track omap and hit_set objects in pg stats (Samuel Just) -* osd: warn if agent cannot enable due to invalid (post-split) stats (Sage Weil) -* rados bench: track metadata for multiple runs separately (Guang Yang) -* rgw: fixed subuser modify (Yehuda Sadeh) -* rpm: fix redhat-lsb dependency (Sage Weil, Alfredo Deza) - - -Notable changes since v0.72 Emperor ------------------------------------ - -* buffer: some zero-copy groundwork (Josh Durgin) -* build: misc improvements (Ken Dreyer) -* ceph-conf: stop creating bogus log files (Josh Durgin, Sage Weil) -* ceph-crush-location: new hook for setting CRUSH location of osd daemons on start) -* ceph-disk: avoid fd0 (Loic Dachary) -* ceph-disk: generalize path names, add tests (Loic Dachary) -* ceph-disk: misc improvements for puppet (Loic Dachary) -* ceph-disk: several bug fixes (Loic Dachary) -* ceph-fuse: fix race for sync reads (Sage Weil) -* ceph-fuse, libcephfs: fix several caching bugs (Yan, Zheng) -* ceph-fuse: trim inodes in response to mds memory pressure (Yan, Zheng) -* ceph-kvstore-tool: expanded command set and capabilities (Joao Eduardo Luis) -* ceph.spec: fix build dependency (Loic Dachary) -* common: bloom filter improvements (Sage Weil) -* common: check preexisting admin socket for active daemon before removing (Loic Dachary) -* common: fix aligned buffer allocation (Loic Dachary) -* common: fix authentication on big-endian architectures (Dan Mick) -* common: fix config variable substitution (Loic Dachary) -* common: portability changes to support libc++ (Noah Watkins) -* common: switch to unordered_map from hash_map (Noah Watkins) -* config: recursive metavariable expansion (Loic Dachary) -* crush: default to bobtail tunables (Sage Weil) -* crush: fix off-by-one error in recent refactor (Sage Weil) -* crush: many additional tests (Loic Dachary) -* crush: misc fixes, cleanups (Loic Dachary) -* crush: new rule steps to adjust retry attempts (Sage Weil) -* crush, osd: s/rep/replicated/ for less confusion (Loic Dachary) -* crush: refactor descend_once behavior; support set_choose*_tries for replicated rules (Sage Weil) -* crush: usability and test improvements (Loic Dachary) -* debian: change directory ownership between ceph and ceph-common (Sage Weil) -* debian: integrate misc fixes from downstream packaging (James Page) -* doc: big update to install docs (John Wilkins) -* doc: many many install doc improvements (John Wilkins) -* doc: many many updates (John Wilkins) -* doc: misc fixes (David Moreau Simard, Kun Huang) -* erasure-code: improve buffer alignment (Loic Dachary) -* erasure-code: rewrite region-xor using vector operations (Andreas Peters) -* init: fix startup ordering/timeout problem with OSDs (Dmitry Smirnov) -* libcephfs: fix resource leak (Zheng Yan) -* librados: add C API coverage for atomic write operations (Christian Marie) -* librados: fix inconsistencies in API error values (David Zafman) -* librados: fix throttle leak (and eventual deadlock) (Josh Durgin) -* librados: fix watch operations with cache pools (Sage Weil) -* librados: new snap rollback operation (David Zafman) -* librados, osd: new TMAP2OMAP operation (Yan, Zheng) -* librados: read directly into user buffer (Rutger ter Borg) -* librbd: fix use-after-free aio completion bug #5426 (Josh Durgin) -* librbd: localize/distribute parent reads (Sage Weil) -* librbd: skip zeroes/holes when copying sparse images (Josh Durgin) -* mailmap: affiliation updates (Loic Dachary) -* mailmap updates (Loic Dachary) -* many portability improvements (Noah Watkins) -* many unit test improvements (Loic Dachary) -* mds: always store backtrace in default pool (Yan, Zheng) -* mds: cope with MDS failure during creation (John Spray) -* mds: fix cap migration behavior (Yan, Zheng) -* mds: fix client session flushing (Yan, Zheng) -* mds: fix crash from client sleep/resume (Zheng Yan) -* mds: fix many many multi-mds bugs (Yan, Zheng) -* mds: fix readdir end check (Zheng Yan) -* mds: fix Resetter locking (Alexandre Oliva) -* mds: fix respawn (John Spray) -* mds: inline data support (Li Wang, Yunchuan Wen) -* mds: misc bugs (Yan, Zheng) -* mds: misc fixes for directory fragments (Zheng Yan) -* mds: misc fixes for larger directories (Zheng Yan) -* mds: misc fixes for multiple MDSs (Zheng Yan) -* mds: misc multi-mds fixes (Yan, Zheng) -* mds: remove .ceph directory (John Spray) -* mds: store directories in omap instead of tmap (Yan, Zheng) -* mds: update old-format backtraces opportunistically (Zheng Yan) -* mds: use shared_ptr for requests (Greg Farnum) -* misc cleanups from coverity (Xing Lin) -* misc coverity fixes, cleanups (Danny Al-Gaaf) -* misc coverity fixes (Xing Lin, Li Wang, Danny Al-Gaaf) -* misc portability fixes (Noah Watkins, Alan Somers) -* misc portability fixes (Noah Watkins, Christophe Courtaut, Alan Somers, huanjun) -* misc portability work (Noah Watkins) -* mon: add erasure profiles and improve erasure pool creation (Loic Dachary) -* mon: add 'mon getmap EPOCH' (Joao Eduardo Luis) -* mon: allow adjustment of cephfs max file size via 'ceph mds set max_file_size' (Sage Weil) -* mon: allow debug quorum_{enter,exit} commands via admin socket -* mon: 'ceph osd pg-temp ...' and primary-temp commands (Ilya Dryomov) -* mon: change mds allow_new_snaps syntax to be more consistent (Sage Weil) -* mon: clean up initial crush rule creation (Loic Dachary) -* mon: collect misc metadata about osd (os, kernel, etc.), new 'osd metadata' command (Sage Weil) -* mon: do not create erasure rules by default (Sage Weil) -* mon: do not generate spurious MDSMaps in certain cases (Sage Weil) -* mon: do not use keyring if auth = none (Loic Dachary) -* mon: fix peer feature checks (Sage Weil) -* mon: fix pg_temp leaks (Joao Eduardo Luis) -* mon: fix pool count in 'ceph -s' output (Sage Weil) -* mon: handle more whitespace (newline, tab) in mon capabilities (Sage Weil) -* mon: improve (replicate or erasure) pool creation UX (Loic Dachary) -* mon: infrastructure to handle mixed-version mon cluster and cli/rest API (Greg Farnum) -* mon: MForward tests (Loic Dachary) -* mon: mkfs now idempotent (Loic Dachary) -* mon: only seed new osdmaps to current OSDs (Sage Weil) -* mon, osd: create erasure style crush rules (Loic Dachary, Sage Weil) -* mon: 'osd crush show-tunables' (Sage Weil) -* mon: 'osd dump' dumps pool snaps as array, not object (Dan Mick) -* mon, osd: new 'erasure' pool type (still not fully supported) -* mon: persist quorum features to disk (Greg Farnum) -* mon: prevent extreme changes in pool pg_num (Greg Farnum) -* mon: require 'x' mon caps for auth operations (Joao Luis) -* mon: shutdown when removed from mon cluster (Joao Luis) -* mon: take 'osd pool set ...' value as an int, not string (Joao Eduardo Luis) -* mon: track osd features in OSDMap (Joao Luis, David Zafman) -* mon: trim MDSMaps (Joao Eduardo Luis) -* mon: warn if crush has non-optimal tunables (Sage Weil) -* mount.ceph: add -n for autofs support (Steve Stock) -* msgr: fix locking bug in authentication (Josh Durgin) -* msgr: fix messenger restart race (Xihui He) -* msgr: improve connection error detection between clients and monitors (Greg Farnum, Sage Weil) -* osd: add/fix CPU feature detection for jerasure (Loic Dachary) -* osd: add HitSet tracking for read ops (Sage Weil, Greg Farnum) -* osd: avoid touching leveldb for some xattrs (Haomai Wang, Sage Weil) -* osd: backfill to multiple targets (David Zafman) -* osd: backfill to osds not in acting set (David Zafman) -* osd: cache pool support for snapshots (Sage Weil) -* osd: client IO path changes for EC (Samuel Just) -* osd: default to 3x replication -* osd: do not include backfill targets in acting set (David Zafman) -* osd: enable new hashpspool layout by default (Sage Weil) -* osd: erasure plugin benchmarking tool (Loic Dachary) -* osd: fix and cleanup misc backfill issues (David Zafman) -* osd: fix bug in journal replay/restart (Sage Weil) -* osd: fix copy-get omap bug (Sage Weil) -* osd: fix linux kernel version detection (Ilya Dryomov) -* osd: fix memstore segv (Haomai Wang) -* osd: fix object_info_t encoding bug from emperor (Sam Just) -* osd: fix omap_clear operation to not zap xattrs (Sam Just, Yan, Zheng) -* osd: fix several bugs with tier infrastructure -* osd: fix throttle thread (Haomai Wang) -* osd: fix XFS detection (Greg Farnum, Sushma Gurram) -* osd: generalize scrubbing infrastructure to allow EC (David Zafman) -* osd: handle more whitespace (newline, tab) in osd capabilities (Sage Weil) -* osd: ignore num_objects_dirty on scrub for old pools (Sage Weil) -* osd: improved scrub checks on clones (Sage Weil, Sam Just) -* osd: improve locking in fd lookup cache (Samuel Just, Greg Farnum) -* osd: include more info in pg query result (Sage Weil) -* osd, librados: fix full cluster handling (Josh Durgin) -* osd: many erasure fixes (Sam Just) -* osd: many many many bug fixes with cache tiering (Samuel Just) -* osd: move to jerasure2 library (Loic Dachary) -* osd: new 'chassis' type in default crush hierarchy (Sage Weil) -* osd: new keyvaluestore-dev backend based on leveldb (Haomai Wang) -* osd: new OSDMap encoding (Greg Farnum) -* osd: new tests for erasure pools (David Zafman) -* osd: preliminary cache pool support (no snaps) (Greg Farnum, Sage Weil) -* osd: reduce scrub lock contention (Guang Yang) -* osd: requery unfound on stray notify (#6909) (Samuel Just) -* osd: some PGBackend infrastructure (Samuel Just) -* osd: support for new 'memstore' (memory-backed) backend (Sage Weil) -* osd: track erasure compatibility (David Zafman) -* osd: track omap and hit_set objects in pg stats (Samuel Just) -* osd: warn if agent cannot enable due to invalid (post-split) stats (Sage Weil) -* rados: add 'crush location', smart replica selection/balancing (Sage Weil) -* rados bench: track metadata for multiple runs separately (Guang Yang) -* rados: some performance optimizations (Yehuda Sadeh) -* rados tool: fix listomapvals (Josh Durgin) -* rbd: add 'rbdmap' init script for mapping rbd images on book (Adam Twardowski) -* rbd: add rbdmap support for upstart (Laurent Barbe) -* rbd: expose kernel rbd client options via 'rbd map' (Ilya Dryomov) -* rbd: fix bench-write command (Hoamai Wang) -* rbd: make 'rbd list' return empty list and success on empty pool (Josh Durgin) -* rbd: prevent deletion of images with watchers (Ilya Dryomov) -* rbd: support for 4096 mapped devices, up from ~250 (Ilya Dryomov) -* rest-api: do not fail when no OSDs yet exist (Dan Mick) -* rgw: add 'status' command to sysvinit script (David Moreau Simard) -* rgw: allow multiple frontends (Yehuda Sadeh) -* rgw: allow use of an erasure data pool (Yehuda Sadeh) -* rgw: convert bucket info to new format on demand (Yehuda Sadeh) -* rgw: fixed subuser modify (Yehuda Sadeh) -* rgw: fix error setting empty owner on ACLs (Yehuda Sadeh) -* rgw: fix fastcgi deadlock (do not return data from librados callback) (Yehuda Sadeh) -* rgw: fix many-part multipart uploads (Yehuda Sadeh) -* rgw: fix misc CORS bugs (Robin H. Johnson) -* rgw: fix object placement read op (Yehuda Sadeh) -* rgw: fix reading bucket policy (#6940) -* rgw: fix read_user_buckets 'max' behavior (Yehuda Sadeh) -* rgw: fix several CORS bugs (Robin H. Johnson) -* rgw: fix use-after-free when releasing completion handle (Yehuda Sadeh) -* rgw: improve swift temp URL support (Yehuda Sadeh) -* rgw: make multi-object delete idempotent (Yehuda Sadeh) -* rgw: optionally defer to bucket ACLs instead of object ACLs (Liam Monahan) -* rgw: prototype mongoose frontend (Yehuda Sadeh) -* rgw: several doc fixes (Alexandre Marangone) -* rgw: support for password (instead of admin token) for keystone authentication (Christophe Courtaut) -* rgw: switch from mongoose to civetweb (Yehuda Sadeh) -* rgw: user quotas (Yehuda Sadeh) -* rpm: fix redhat-lsb dependency (Sage Weil, Alfredo Deza) -* specfile: fix RPM build on RHEL6 (Ken Dreyer, Derek Yarnell) -* specfile: ship libdir/ceph (Key Dreyer) -* sysvinit, upstart: prevent both init systems from starting the same daemons (Josh Durgin) - - -Notable changes since v0.67 Dumpling ------------------------------------- - -* build cleanly under clang (Christophe Courtaut) -* build: Makefile refactor (Roald J. van Loon) -* build: fix [/usr]/sbin locations (Alan Somers) -* ceph-disk: fix journal preallocation -* ceph-fuse, radosgw: enable admin socket and logging by default -* ceph-fuse: fix problem with readahead vs truncate race (Yan, Zheng) -* ceph-fuse: trim deleted inodes from cache (Yan, Zheng) -* ceph-fuse: use newer fuse api (Jianpeng Ma) -* ceph-kvstore-tool: new tool for working with leveldb (copy, crc) (Joao Luis) -* ceph-post-file: new command to easily share logs or other files with ceph devs -* ceph: improve parsing of CEPH_ARGS (Benoit Knecht) -* ceph: make -h behave when monitors are down -* ceph: parse CEPH_ARGS env variable -* common: bloom_filter improvements, cleanups -* common: cache crc32c values where possible -* common: correct SI is kB not KB (Dan Mick) -* common: fix looping on BSD (Alan Somers) -* common: migrate SharedPtrRegistry to use boost::shared_ptr<> (Loic Dachary) -* common: misc portability fixes (Noah Watkins) -* crc32c: fix optimized crc32c code (it now detects arch support properly) -* crc32c: improved intel-optimized crc32c support (~8x faster on my laptop!) -* crush: fix name caching -* doc: erasure coding design notes (Loic Dachary) -* hadoop: removed old version of shim to avoid confusing users (Noah Watkins) -* librados, mon: ability to query/ping out-of-quorum monitor status (Joao Luis) -* librados: fix async aio completion wakeup -* librados: fix installed header #includes (Dan Mick) -* librados: get_version64() method for C++ API -* librados: hello_world example (Greg Farnum) -* librados: sync calls now return on commit (instead of ack) (Greg Farnum) -* librbd python bindings: fix parent image name limit (Josh Durgin) -* librbd, ceph-fuse: avoid some sources of ceph-fuse, rbd cache stalls -* mds: avoid leaking objects when deleting truncated files (Yan, Zheng) -* mds: fix F_GETLK (Yan, Zheng) -* mds: fix LOOKUPSNAP bug -* mds: fix heap profiler commands (Joao Luis) -* mds: fix locking deadlock (David Disseldorp) -* mds: fix many bugs with stray (unlinked) inodes (Yan, Zheng) -* mds: fix many directory fragmentation bugs (Yan, Zheng) -* mds: fix mds rejoin with legacy parent backpointer xattrs (Alexandre Oliva) -* mds: fix rare restart/failure race during fs creation -* mds: fix standby-replay when we fall behind (Yan, Zheng) -* mds: fix stray directory purging (Yan, Zheng) -* mds: notify clients about deleted files (so they can release from their cache) (Yan, Zheng) -* mds: several bug fixes with clustered mds (Yan, Zheng) -* mon, osd: improve osdmap trimming logic (Samuel Just) -* mon, osd: initial CLI for configuring tiering -* mon: a few 'ceph mon add' races fixed (command is now idempotent) (Joao Luis) -* mon: allow (un)setting HASHPSPOOL flag on existing pools (Joao Luis) -* mon: allow cap strings with . to be unquoted -* mon: allow logging level of cluster log (/var/log/ceph/ceph.log) to be adjusted -* mon: avoid rewriting full osdmaps on restart (Joao Luis) -* mon: continue to discover peer addr info during election phase -* mon: disallow CephFS snapshots until 'ceph mds set allow_new_snaps' (Greg Farnum) -* mon: do not expose uncommitted state from 'osd crush {add,set} ...' (Joao Luis) -* mon: fix 'ceph osd crush reweight ...' (Joao Luis) -* mon: fix 'osd crush move ...' command for buckets (Joao Luis) -* mon: fix byte counts (off by factor of 4) (Dan Mick, Joao Luis) -* mon: fix paxos corner case -* mon: kv properties for pools to support EC (Loic Dachary) -* mon: make 'osd pool rename' idempotent (Joao Luis) -* mon: modify 'auth add' semantics to make a bit more sense (Joao Luis) -* mon: new 'osd perf' command to dump recent performance information (Samuel Just) -* mon: new and improved 'ceph -s' or 'ceph status' command (more info, easier to read) -* mon: some auth check cleanups (Joao Luis) -* mon: track per-pool stats (Joao Luis) -* mon: warn about pools with bad pg_num -* mon: warn when mon data stores grow very large (Joao Luis) -* monc: fix small memory leak -* new wireshark patches pulled into the tree (Kevin Jones) -* objecter, librados: redirect requests based on cache tier config -* objecter: fix possible hang when cluster is unpaused (Josh Durgin) -* osd, librados: add new COPY_FROM rados operation -* osd, librados: add new COPY_GET rados operations (used by COPY_FROM) -* osd: 'osd recover clone overlap limit' option to limit cloning during recovery (Samuel Just) -* osd: COPY_GET on-wire encoding improvements (Greg Farnum) -* osd: add 'osd heartbeat min healthy ratio' configurable (was hard-coded at 33%) -* osd: add option to disable pg log debug code (which burns CPU) -* osd: allow cap strings with . to be unquoted -* osd: automatically detect proper xattr limits (David Zafman) -* osd: avoid extra copy in erasure coding reference implementation (Loic Dachary) -* osd: basic cache pool redirects (Greg Farnum) -* osd: basic whiteout, dirty flag support (not yet used) -* osd: bloom_filter encodability, fixes, cleanups (Loic Dachary, Sage Weil) -* osd: clean up and generalize copy-from code (Greg Farnum) -* osd: cls_hello OSD class example -* osd: erasure coding doc updates (Loic Dachary) -* osd: erasure coding plugin infrastructure, tests (Loic Dachary) -* osd: experiemental support for ZFS (zfsonlinux.org) (Yan, Zheng) -* osd: fix RWORDER flags -* osd: fix exponential backoff of slow request warnings (Loic Dachary) -* osd: fix handling of racing read vs write (Samuel Just) -* osd: fix version value returned by various operations (Greg Farnum) -* osd: generalized temp object infrastructure -* osd: ghobject_t infrastructure for EC (David Zafman) -* osd: improvements for compatset support and storage (David Zafman) -* osd: infrastructure to copy objects from other OSDs -* osd: instrument peering states (David Zafman) -* osd: misc copy-from improvements -* osd: opportunistic crc checking on stored data (off by default) -* osd: properly enforce RD/WR flags for rados classes -* osd: reduce blocking on backing fs (Samuel Just) -* osd: refactor recovery using PGBackend (Samuel Just) -* osd: remove old magical tmap->omap conversion -* osd: remove old pg log on upgrade (Samuel Just) -* osd: revert xattr size limit (fixes large rgw uploads) -* osd: use fdatasync(2) instead of fsync(2) to improve performance (Sam Just) -* pybind: fix blacklisting nonce (Loic Dachary) -* radosgw-agent: multi-region replication/DR -* rgw: complete in-progress requests before shutting down -* rgw: default log level is now more reasonable (Yehuda Sadeh) -* rgw: fix S3 auth with response-* query string params (Sylvain Munaut, Yehuda Sadeh) -* rgw: fix a few minor memory leaks (Yehuda Sadeh) -* rgw: fix acl group check (Yehuda Sadeh) -* rgw: fix inefficient use of std::list::size() (Yehuda Sadeh) -* rgw: fix major CPU utilization bug with internal caching (Yehuda Sadeh, Mark Nelson) -* rgw: fix ordering of write operations (preventing data loss on crash) (Yehuda Sadeh) -* rgw: fix ordering of writes for mulitpart upload (Yehuda Sadeh) -* rgw: fix various CORS bugs (Yehuda Sadeh) -* rgw: fix/improve swift COPY support (Yehuda Sadeh) -* rgw: improve help output (Christophe Courtaut) -* rgw: misc fixes to support DR (Josh Durgin, Yehuda Sadeh) -* rgw: per-bucket quota (Yehuda Sadeh) -* rgw: validate S3 tokens against keystone (Roald J. van Loon) -* rgw: wildcard support for keystone roles (Christophe Courtaut) -* rpm: fix junit dependencies (Alan Grosskurth) -* sysvinit radosgw: fix status return code (Danny Al-Gaaf) -* sysvinit rbdmap: fix error 'service rbdmap stop' (Laurent Barbe) -* sysvinit: add condrestart command (Dan van der Ster) -* sysvinit: fix shutdown order (mons last) (Alfredo Deza) - - -v0.79 -===== - -This release is intended to serve as a release candidate for firefly, -which will hopefully be v0.80. No changes are being made to the code -base at this point except those that fix bugs. Please test this -release if you intend to make use of the new erasure-coded pools or -cache tiers in firefly. - -This release fixes a range of bugs found in v0.78 and streamlines the -user experience when creating erasure-coded pools. There is also a -raft of fixes for the MDS (multi-mds, directory fragmentation, and -large directories). The main notable new piece of functionality is a -small change to allow radosgw to use an erasure-coded pool for object -data. - - -Upgrading ---------- -* Erasure pools created with v0.78 will no longer function with v0.79. You - will need to delete the old pool and create a new one. - -* A bug was fixed in the authentication handshake with big-endian - architectures that prevent authentication between big- and - little-endian machines in the same cluster. If you have a cluster - that consists entirely of big-endian machines, you will need to - upgrade all daemons and clients and restart. - -* The 'ceph.file.layout' and 'ceph.dir.layout' extended attributes are - no longer included in the listxattr(2) results to prevent problems with - 'cp -a' and similar tools. - -* Monitor 'auth' read-only commands now expect the user to have 'rx' caps. - This is the same behavior that was present in dumpling, but in emperor - and more recent development releases the 'r' cap was sufficient. The - affected commands are:: - - ceph auth export - ceph auth get - ceph auth get-key - ceph auth print-key - ceph auth list - -Notable Changes ---------------- -* ceph-conf: stop creating bogus log files (Josh Durgin, Sage Weil) -* common: fix authentication on big-endian architectures (Dan Mick) -* debian: change directory ownership between ceph and ceph-common (Sage Weil) -* init: fix startup ordering/timeout problem with OSDs (Dmitry Smirnov) -* librbd: skip zeroes/holes when copying sparse images (Josh Durgin) -* mds: cope with MDS failure during creation (John Spray) -* mds: fix crash from client sleep/resume (Zheng Yan) -* mds: misc fixes for directory fragments (Zheng Yan) -* mds: misc fixes for larger directories (Zheng Yan) -* mds: misc fixes for multiple MDSs (Zheng Yan) -* mds: remove .ceph directory (John Spray) -* misc coverity fixes, cleanups (Danny Al-Gaaf) -* mon: add erasure profiles and improve erasure pool creation (Loic Dachary) -* mon: 'ceph osd pg-temp ...' and primary-temp commands (Ilya Dryomov) -* mon: fix pool count in 'ceph -s' output (Sage Weil) -* msgr: improve connection error detection between clients and monitors (Greg Farnum, Sage Weil) -* osd: add/fix CPU feature detection for jerasure (Loic Dachary) -* osd: improved scrub checks on clones (Sage Weil, Sam Just) -* osd: many erasure fixes (Sam Just) -* osd: move to jerasure2 library (Loic Dachary) -* osd: new tests for erasure pools (David Zafman) -* osd: reduce scrub lock contention (Guang Yang) -* rgw: allow use of an erasure data pool (Yehuda Sadeh) - - -v0.78 -===== - -This development release includes two key features: erasure coding and -cache tiering. A huge amount of code was merged for this release and -several additional weeks were spent stabilizing the code base, and it -is now in a state where it is ready to be tested by a broader user -base. - -This is *not* the firefly release. Firefly will be delayed for at -least another sprint so that we can get some operational experience -with the new code and do some additional testing before committing to -long term support. - -.. note:: Please note that while it is possible to create and test - erasure coded pools in this release, the pools will not be - usable when you upgrade to v0.79 as the OSDMap encoding will - subtlely change. Please do not populate your test pools - with important data that can't be reloaded. - -Upgrading ---------- - -* Upgrade daemons in the following order: - - #. Monitors - #. OSDs - #. MDSs and/or radosgw - - If the ceph-mds daemon is restarted first, it will wait until all - OSDs have been upgraded before finishing its startup sequence. If - the ceph-mon daemons are not restarted prior to the ceph-osd - daemons, they will not correctly register their new capabilities - with the cluster and new features may not be usable until they are - restarted a second time. - -* Upgrade radosgw daemons together. There is a subtle change in behavior - for multipart uploads that prevents a multipart request that was initiated - with a new radosgw from being completed by an old radosgw. - -* CephFS recently added support for a new 'backtrace' attribute on - file data objects that is used for lookup by inode number (i.e., NFS - reexport and hard links), and will later be used by fsck repair. - This replaces the existing anchor table mechanism that is used for - hard link resolution. In order to completely phase that out, any - inode that has an outdated backtrace attribute will get updated when - the inode itself is modified. This will result in some extra workload - after a legacy CephFS file system is upgraded. - -* The per-op return code in librados' ObjectWriteOperation interface - is now filled in. - -* The librados cmpxattr operation now handles xattrs containing null bytes as - data rather than null-terminated strings. - -* Compound operations in librados that create and then delete the same object - are now explicitly disallowed (they fail with -EINVAL). - -* The default leveldb cache size for the ceph-osd daemon has been - increased from 4 MB to 128 MB. This will increase the memory - footprint of that process but tends to increase performance of omap - (key/value) objects (used for CephFS and the radosgw). If memory in your - deployment is tight, you can preserve the old behavior by adding:: - - leveldb write buffer size = 0 - leveldb cache size = 0 - - to your ceph.conf to get back the (leveldb) defaults. - -Notable Changes ---------------- -* ceph-brag: new client and server tools (Sebastien Han, Babu Shanmugam) -* ceph-disk: use partx on RHEL or CentOS instead of partprobe (Alfredo Deza) -* ceph: fix combination of 'tell' and interactive mode (Joao Eduardo Luis) -* ceph-fuse: fix bugs with inline data and multiple MDSs (Zheng Yan) -* client: fix getcwd() to use new LOOKUPPARENT operation (Zheng Yan) -* common: fall back to json-pretty for admin socket (Loic Dachary) -* common: fix 'config dump' debug prefix (Danny Al-Gaaf) -* common: misc coverity fixes (Danny Al-Gaaf) -* common: throtller, shared_cache performance improvements, TrackedOp (Greg Farnum, Samuel Just) -* crush: fix JSON schema for dump (John Spray) -* crush: misc cleanups, tests (Loic Dachary) -* crush: new vary_r tunable (Sage Weil) -* crush: prevent invalid buckets of type 0 (Sage Weil) -* keyvaluestore: add perfcounters, misc bug fixes (Haomai Wang) -* keyvaluestore: portability improvements (Noah Watkins) -* libcephfs: API changes to better support NFS reexport via Ganesha (Matt Benjamin, Adam Emerson, Andrey Kuznetsov, Casey Bodley, David Zafman) -* librados: API documentation improvements (John Wilkins, Josh Durgin) -* librados: fix object enumeration bugs; allow iterator assignment (Josh Durgin) -* librados: streamline tests (Josh Durgin) -* librados: support for atomic read and omap operations for C API (Josh Durgin) -* librados: support for osd and mon command timeouts (Josh Durgin) -* librbd: pass allocation hints to OSD (Ilya Dryomov) -* logrotate: fix bug that prevented rotation for some daemons (Loic Dachary) -* mds: avoid duplicated discovers during recovery (Zheng Yan) -* mds: fix file lock owner checks (Zheng Yan) -* mds: fix LOOKUPPARENT, new LOOKUPNAME ops for reliable NFS reexport (Zheng Yan) -* mds: fix xattr handling on setxattr (Zheng Yan) -* mds: fix xattrs in getattr replies (Sage Weil) -* mds: force backtrace updates for old inodes on update (Zheng Yan) -* mds: several multi-mds and dirfrag bug fixes (Zheng Yan) -* mon: encode erasure stripe width in pool metadata (Loic Dachary) -* mon: erasure code crush rule creation (Loic Dachary) -* mon: erasure code plugin support (Loic Dachary) -* mon: fix bugs in initial post-mkfs quorum creation (Sage Weil) -* mon: fix error output to terminal during startup (Joao Eduardo Luis) -* mon: fix legacy CRUSH tunables warning (Sage Weil) -* mon: fix osd_epochs lower bound tracking for map trimming (Sage Weil) -* mon: fix OSDMap encoding features (Sage Weil, Aaron Ten Clay) -* mon: fix 'pg dump' JSON output (John Spray) -* mon: include dirty stats in 'ceph df detail' (Sage Weil) -* mon: list quorum member names in quorum order (Sage Weil) -* mon: prevent addition of non-empty cache tier (Sage Weil) -* mon: prevent deletion of CephFS pools (John Spray) -* mon: warn when cache tier approaches 'full' (Sage Weil) -* osd: allocation hint, with XFS support (Ilya Dryomov) -* osd: erasure coded pool support (Samuel Just) -* osd: fix bug causing slow/stalled recovery (#7706) (Samuel Just) -* osd: fix bugs in log merging (Samuel Just) -* osd: fix/clarify end-of-object handling on read (Loic Dachary) -* osd: fix impolite mon session backoff, reconnect behavior (Greg Farnum) -* osd: fix SnapContext cache id bug (Samuel Just) -* osd: increase default leveldb cache size and write buffer (Sage Weil, Dmitry Smirnov) -* osd: limit size of 'osd bench ...' arguments (Joao Eduardo Luis) -* osdmaptool: new --test-map-pgs mode (Sage Weil, Ilya Dryomov) -* osd, mon: add primary-affinity to adjust selection of primaries (Sage Weil) -* osd: new 'status' admin socket command (Sage Weil) -* osd: simple tiering agent (Sage Weil) -* osd: store checksums for erasure coded object stripes (Samuel Just) -* osd: tests for objectstore backends (Haomai Wang) -* osd: various refactoring and bug fixes (Samuel Just, David Zafman) -* rados: add 'set-alloc-hint' command (Ilya Dryomov) -* rbd-fuse: fix enumerate_images overflow, memory leak (Ilya Dryomov) -* rbdmap: fix upstart script (Stephan Renatus) -* rgw: avoid logging system events to usage log (Yehuda Sadeh) -* rgw: fix Swift range reponse (Yehuda Sadeh) -* rgw: improve scalability for manifest objects (Yehuda Sadeh) -* rgw: misc fixes for multipart objects, policies (Yehuda Sadeh) -* rgw: support non-standard MultipartUpload command (Yehuda Sadeh) - - - -v0.77 -===== - -This is the final development release before the Firefly feature -freeze. The main items in this release include some additional -refactoring work in the OSD IO path (include some locking -improvements), per-user quotas for the radosgw, a switch to civetweb -from mongoose for the prototype radosgw standalone mode, and a -prototype leveldb-based backend for the OSD. The C librados API also -got support for atomic write operations (read side transactions will -appear in v0.78). - -Upgrading ---------- - -* The 'ceph -s' or 'ceph status' command's 'num_in_osds' field in the - JSON and XML output has been changed from a string to an int. - -* The recently added 'ceph mds set allow_new_snaps' command's syntax - has changed slightly; it is now 'ceph mds set allow_new_snaps true'. - The 'unset' command has been removed; instead, set the value to - 'false'. - -* The syntax for allowing snapshots is now 'mds set allow_new_snaps - <true|false>' instead of 'mds <set,unset> allow_new_snaps'. - -Notable Changes ---------------- - -* osd: client IO path changes for EC (Samuel Just) -* common: portability changes to support libc++ (Noah Watkins) -* common: switch to unordered_map from hash_map (Noah Watkins) -* rgw: switch from mongoose to civetweb (Yehuda Sadeh) -* osd: improve locking in fd lookup cache (Samuel Just, Greg Farnum) -* doc: many many updates (John Wilkins) -* rgw: user quotas (Yehuda Sadeh) -* mon: persist quorum features to disk (Greg Farnum) -* mon: MForward tests (Loic Dachary) -* mds: inline data support (Li Wang, Yunchuan Wen) -* rgw: fix many-part multipart uploads (Yehuda Sadeh) -* osd: new keyvaluestore-dev backend based on leveldb (Haomai Wang) -* rbd: prevent deletion of images with watchers (Ilya Dryomov) -* osd: avoid touching leveldb for some xattrs (Haomai Wang, Sage Weil) -* mailmap: affiliation updates (Loic Dachary) -* osd: new OSDMap encoding (Greg Farnum) -* osd: generalize scrubbing infrastructure to allow EC (David Zafman) -* rgw: several doc fixes (Alexandre Marangone) -* librados: add C API coverage for atomic write operations (Christian Marie) -* rgw: improve swift temp URL support (Yehuda Sadeh) -* rest-api: do not fail when no OSDs yet exist (Dan Mick) -* common: check preexisting admin socket for active daemon before removing (Loic Dachary) -* osd: handle more whitespace (newline, tab) in osd capabilities (Sage Weil) -* mon: handle more whitespace (newline, tab) in mon capabilities (Sage Weil) -* rgw: make multi-object delete idempotent (Yehuda Sadeh) -* crush: fix off-by-one error in recent refactor (Sage Weil) -* rgw: fix read_user_buckets 'max' behavior (Yehuda Sadeh) -* mon: change mds allow_new_snaps syntax to be more consistent (Sage Weil) - - -v0.76 -===== - -This release includes another batch of updates for firefly -functionality. Most notably, the cache pool infrastructure now -support snapshots, the OSD backfill functionality has been generalized -to include multiple targets (necessary for the coming erasure pools), -and there were performance improvements to the erasure code plugin on -capable processors. The MDS now properly utilizes (and seamlessly -migrates to) the OSD key/value interface (aka omap) for storing directory -objects. There continue to be many other fixes and improvements for -usability and code portability across the tree. - -Upgrading ---------- - -* 'rbd ls' on a pool which never held rbd images now exits with code - 0. It outputs nothing in plain format, or an empty list in - non-plain format. This is consistent with the behavior for a pool - which used to hold images, but contains none. Scripts relying on - this behavior should be updated. - -* The MDS requires a new OSD operation TMAP2OMAP, added in this release. When - upgrading, be sure to upgrade and restart the ceph-osd daemons before the - ceph-mds daemon. The MDS will refuse to start if any up OSDs do not support - the new feature. - -* The 'ceph mds set_max_mds N' command is now deprecated in favor of - 'ceph mds set max_mds N'. - -Notable Changes ---------------- - -* build: misc improvements (Ken Dreyer) -* ceph-disk: generalize path names, add tests (Loic Dachary) -* ceph-disk: misc improvements for puppet (Loic Dachary) -* ceph-disk: several bug fixes (Loic Dachary) -* ceph-fuse: fix race for sync reads (Sage Weil) -* config: recursive metavariable expansion (Loic Dachary) -* crush: usability and test improvements (Loic Dachary) -* doc: misc fixes (David Moreau Simard, Kun Huang) -* erasure-code: improve buffer alignment (Loic Dachary) -* erasure-code: rewrite region-xor using vector operations (Andreas Peters) -* librados, osd: new TMAP2OMAP operation (Yan, Zheng) -* mailmap updates (Loic Dachary) -* many portability improvements (Noah Watkins) -* many unit test improvements (Loic Dachary) -* mds: always store backtrace in default pool (Yan, Zheng) -* mds: store directories in omap instead of tmap (Yan, Zheng) -* mon: allow adjustment of cephfs max file size via 'ceph mds set max_file_size' (Sage Weil) -* mon: do not create erasure rules by default (Sage Weil) -* mon: do not generate spurious MDSMaps in certain cases (Sage Weil) -* mon: do not use keyring if auth = none (Loic Dachary) -* mon: fix pg_temp leaks (Joao Eduardo Luis) -* osd: backfill to multiple targets (David Zafman) -* osd: cache pool support for snapshots (Sage Weil) -* osd: fix and cleanup misc backfill issues (David Zafman) -* osd: fix omap_clear operation to not zap xattrs (Sam Just, Yan, Zheng) -* osd: ignore num_objects_dirty on scrub for old pools (Sage Weil) -* osd: include more info in pg query result (Sage Weil) -* osd: track erasure compatibility (David Zafman) -* rbd: make 'rbd list' return empty list and success on empty pool (Josh Durgin) -* rgw: fix object placement read op (Yehuda Sadeh) -* rgw: fix several CORS bugs (Robin H. Johnson) -* specfile: fix RPM build on RHEL6 (Ken Dreyer, Derek Yarnell) -* specfile: ship libdir/ceph (Key Dreyer) - - -v0.75 -===== - -This is a big release, with lots of infrastructure going in for -firefly. The big items include a prototype standalone frontend for -radosgw (which does not require apache or fastcgi), tracking for read -activity on the osds (to inform tiering decisions), preliminary cache -pool support (no snapshots yet), and lots of bug fixes and other work -across the tree to get ready for the next batch of erasure coding -patches. - -For comparison, here are the diff stats for the last few versions:: - - v0.75 291 files changed, 82713 insertions(+), 33495 deletions(-) - v0.74 192 files changed, 17980 insertions(+), 1062 deletions(-) - v0.73 148 files changed, 4464 insertions(+), 2129 deletions(-) - -Upgrading ---------- - -- The 'osd pool create ...' syntax has changed for erasure pools. - -- The default CRUSH rules and layouts are now using the latest and - greatest tunables and defaults. Clusters using the old values will - now present with a health WARN state. This can be disabled by - adding 'mon warn on legacy crush tunables = false' to ceph.conf. - - -Notable Changes ---------------- - -* common: bloom filter improvements (Sage Weil) -* common: fix config variable substitution (Loic Dachary) -* crush, osd: s/rep/replicated/ for less confusion (Loic Dachary) -* crush: refactor descend_once behavior; support set_choose*_tries for replicated rules (Sage Weil) -* librados: fix throttle leak (and eventual deadlock) (Josh Durgin) -* librados: read directly into user buffer (Rutger ter Borg) -* librbd: fix use-after-free aio completion bug #5426 (Josh Durgin) -* librbd: localize/distribute parent reads (Sage Weil) -* mds: fix Resetter locking (Alexandre Oliva) -* mds: fix cap migration behavior (Yan, Zheng) -* mds: fix client session flushing (Yan, Zheng) -* mds: fix many many multi-mds bugs (Yan, Zheng) -* misc portability work (Noah Watkins) -* mon, osd: create erasure style crush rules (Loic Dachary, Sage Weil) -* mon: 'osd crush show-tunables' (Sage Weil) -* mon: clean up initial crush rule creation (Loic Dachary) -* mon: improve (replicate or erasure) pool creation UX (Loic Dachary) -* mon: infrastructure to handle mixed-version mon cluster and cli/rest API (Greg Farnum) -* mon: mkfs now idempotent (Loic Dachary) -* mon: only seed new osdmaps to current OSDs (Sage Weil) -* mon: track osd features in OSDMap (Joao Luis, David Zafman) -* mon: warn if crush has non-optimal tunables (Sage Weil) -* mount.ceph: add -n for autofs support (Steve Stock) -* msgr: fix messenger restart race (Xihui He) -* osd, librados: fix full cluster handling (Josh Durgin) -* osd: add HitSet tracking for read ops (Sage Weil, Greg Farnum) -* osd: backfill to osds not in acting set (David Zafman) -* osd: enable new hashpspool layout by default (Sage Weil) -* osd: erasure plugin benchmarking tool (Loic Dachary) -* osd: fix XFS detection (Greg Farnum, Sushma Gurram) -* osd: fix copy-get omap bug (Sage Weil) -* osd: fix linux kernel version detection (Ilya Dryomov) -* osd: fix memstore segv (Haomai Wang) -* osd: fix several bugs with tier infrastructure -* osd: fix throttle thread (Haomai Wang) -* osd: preliminary cache pool support (no snaps) (Greg Farnum, Sage Weil) -* rados tool: fix listomapvals (Josh Durgin) -* rados: add 'crush location', smart replica selection/balancing (Sage Weil) -* rados: some performance optimizations (Yehuda Sadeh) -* rbd: add rbdmap support for upstart (Laurent Barbe) -* rbd: expose kernel rbd client options via 'rbd map' (Ilya Dryomov) -* rbd: fix bench-write command (Hoamai Wang) -* rbd: support for 4096 mapped devices, up from ~250 (Ilya Dryomov) -* rgw: allow multiple frontends (Yehuda Sadeh) -* rgw: convert bucket info to new format on demand (Yehuda Sadeh) -* rgw: fix misc CORS bugs (Robin H. Johnson) -* rgw: prototype mongoose frontend (Yehuda Sadeh) - - - -v0.74 -===== - -This release includes a few substantial pieces for Firefly, including -a long-overdue switch to 3x replication by default and a switch to the -"new" CRUSH tunables by default (supported since bobtail). There is -also a fix for a long-standing radosgw bug (stalled GET) that has -already been backported to emperor and dumpling. - -Upgrading ---------- - -* We now default to the 'bobtail' CRUSH tunable values that are first supported - by Ceph clients in bobtail (v0.56) and Linux kernel version v3.9. If you - plan to access a newly created Ceph cluster with an older kernel client, you - should use 'ceph osd crush tunables legacy' to switch back to the legacy - behavior. Note that making that change will likely result in some data - movement in the system, so adjust the setting before populating the new - cluster with data. - -* We now set the HASHPSPOOL flag on newly created pools (and new - clusters) by default. Support for this flag first appeared in - v0.64; v0.67 Dumpling is the first major release that supports it. - It is first supported by the Linux kernel version v3.9. If you plan - to access a newly created Ceph cluster with an older kernel or - clients (e.g, librados, librbd) from a pre-dumpling Ceph release, - you should add 'osd pool default flag hashpspool = false' to the - '[global]' section of your 'ceph.conf' prior to creating your - monitors (e.g., after 'ceph-deploy new' but before 'ceph-deploy mon - create ...'). - -* The configuration option 'osd pool default crush rule' is deprecated - and replaced with 'osd pool default crush replicated ruleset'. 'osd - pool default crush rule' takes precedence for backward compatibility - and a deprecation warning is displayed when it is used. - -Notable Changes ---------------- - -* buffer: some zero-copy groundwork (Josh Durgin) -* ceph-disk: avoid fd0 (Loic Dachary) -* crush: default to bobtail tunables (Sage Weil) -* crush: many additional tests (Loic Dachary) -* crush: misc fixes, cleanups (Loic Dachary) -* crush: new rule steps to adjust retry attempts (Sage Weil) -* debian: integrate misc fixes from downstream packaging (James Page) -* doc: big update to install docs (John Wilkins) -* libcephfs: fix resource leak (Zheng Yan) -* misc coverity fixes (Xing Lin, Li Wang, Danny Al-Gaaf) -* misc portability fixes (Noah Watkins, Alan Somers) -* mon, osd: new 'erasure' pool type (still not fully supported) -* mon: add 'mon getmap EPOCH' (Joao Eduardo Luis) -* mon: collect misc metadata about osd (os, kernel, etc.), new 'osd metadata' command (Sage Weil) -* osd: default to 3x replication -* osd: do not include backfill targets in acting set (David Zafman) -* osd: new 'chassis' type in default crush hierarchy (Sage Weil) -* osd: requery unfound on stray notify (#6909) (Samuel Just) -* osd: some PGBackend infrastructure (Samuel Just) -* osd: support for new 'memstore' (memory-backed) backend (Sage Weil) -* rgw: fix fastcgi deadlock (do not return data from librados callback) (Yehuda Sadeh) -* rgw: fix reading bucket policy (#6940) -* rgw: fix use-after-free when releasing completion handle (Yehuda Sadeh) - - -v0.73 -===== - -This release, the first development release after emperor, includes -many bug fixes and a few additional pieces of functionality. The -first batch of larger changes will be landing in the next version, -v0.74. - -Upgrading ---------- - -- As part of fix for #6796, 'ceph osd pool set <pool> <var> <arg>' now - receives <arg> as an integer instead of a string. This affects how - 'hashpspool' flag is set/unset: instead of 'true' or 'false', it now - must be '0' or '1'. - -- The behavior of the CRUSH 'indep' choose mode has been changed. No - ceph cluster should have been using this behavior unless someone has - manually extracted a crush map, modified a CRUSH rule to replace - 'firstn' with 'indep', recompiled, and reinjected the new map into - the cluster. If the 'indep' mode is currently in use on a cluster, - the rule should be modified to use 'firstn' instead, and the - administrator should wait until any data movement completes before - upgrading. - -- The 'osd dump' command now dumps pool snaps as an array instead of an - object. - -- The radosgw init script (sysvinit) how requires that the 'host = ...' line in - ceph.conf, if present, match the short hostname (the output of 'hostname -s'), - not the fully qualified hostname or the (occasionally non-short) output of - 'hostname'. Failure to adjust this when upgrading from emperor or dumpling - may prevent the radosgw daemon from starting. - - -Notable Changes ---------------- - -* ceph-crush-location: new hook for setting CRUSH location of osd daemons on start -* ceph-kvstore-tool: expanded command set and capabilities (Joao Eduardo Luis) -* ceph.spec: fix build dependency (Loic Dachary) -* common: fix aligned buffer allocation (Loic Dachary) -* doc: many many install doc improvements (John Wilkins) -* mds: fix readdir end check (Zheng Yan) -* mds: update old-format backtraces opportunistically (Zheng Yan) -* misc cleanups from coverity (Xing Lin) -* misc portability fixes (Noah Watkins, Christophe Courtaut, Alan Somers, huanjun) -* mon: 'osd dump' dumps pool snaps as array, not object (Dan Mick) -* mon: allow debug quorum_{enter,exit} commands via admin socket -* mon: prevent extreme changes in pool pg_num (Greg Farnum) -* mon: take 'osd pool set ...' value as an int, not string (Joao Eduardo Luis) -* mon: trim MDSMaps (Joao Eduardo Luis) -* osd: fix object_info_t encoding bug from emperor (Sam Just) -* rbd: add 'rbdmap' init script for mapping rbd images on book (Adam Twardowski) -* rgw: add 'status' command to sysvinit script (David Moreau Simard) -* rgw: fix error setting empty owner on ACLs (Yehuda Sadeh) -* rgw: optionally defer to bucket ACLs instead of object ACLs (Liam Monahan) -* rgw: support for password (instead of admin token) for keystone authentication (Christophe Courtaut) -* sysvinit, upstart: prevent both init systems from starting the same daemons (Josh Durgin) diff --git a/doc/releases/general.rst b/doc/releases/general.rst deleted file mode 100644 index b7fdbb387..000000000 --- a/doc/releases/general.rst +++ /dev/null @@ -1,78 +0,0 @@ -.. _ceph-releases-general: - -======================= -Ceph Releases (general) -======================= - -.. toctree:: - :maxdepth: 1 - -Understanding the release cycle -------------------------------- - -Starting with the Nautilus release (14.2.0), there is a new stable release cycle -every year, targeting the month of March. Each stable release series will receive a name -(e.g., 'Mimic') and a major release number (e.g., 13 for Mimic because 'M' is -the 13th letter of the alphabet). - -Releases are named after a species of cephalopod (usually the common -name, since the latin names are harder to remember or pronounce). - -Version numbers have three components, *x.y.z*. *x* identifies the release -cycle (e.g., 13 for Mimic). *y* identifies the release type: - -* x.0.z - development versions -* x.1.z - release candidates (for test clusters, brave users) -* x.2.z - stable/bugfix releases (for users) - -Release candidates (x.1.z) -^^^^^^^^^^^^^^^^^^^^^^^^^^ - -There is a feature freeze roughly two months prior to the planned -initial stable release, after which focus shifts to stabilization and -bug fixes only. - -* Release candidate release every 1-2 weeks -* Intended for final testing and validation of the upcoming stable release - -Stable releases (x.2.z) -^^^^^^^^^^^^^^^^^^^^^^^ - -Once the initial stable release is made (x.2.0), there are -semi-regular bug-fix point releases with bug fixes and (occasionally) -feature backports. Bug fixes are accumulated and included in -the next point release. - -* Stable point release every 4 to 6 weeks -* Intended for production deployments -* Bug fix backports for 2 full release cycles (2 years). -* Online, rolling upgrade support and testing from the last two (2) - stable release(s) (starting from Luminous). -* Online, rolling upgrade support and testing from prior stable point - releases - -For each stable release: - -* `Integration and upgrade tests - <https://github.com/ceph/ceph/tree/master/qa/suites/>`_ are run on a regular basis - and `their results <http://pulpito.ceph.com/>`_ analyzed by Ceph - developers. -* `Issues <http://tracker.ceph.com/projects/ceph/issues?query_id=27>`_ - fixed in the development branch (master) are scheduled to be backported. -* When an issue found in the stable release is `reported - <http://tracker.ceph.com/projects/ceph/issues/new>`_, it is - triaged by Ceph developers. -* The `stable releases and backport team <http://tracker.ceph.com/projects/ceph-releases/wiki>`_ - publishes ``point releases`` including fixes that have been backported to the stable release. - -Lifetime of stable releases ---------------------------- - -The lifetime of a stable release series is calculated to be approximately 24 -months (i.e., two 12 month release cycles) after the month of the first release. -For example, Mimic (13.2.z) will reach end of life (EOL) shortly after Octopus -(15.2.0) is released. The lifetime of a release may vary because it depends on -how quickly the stable releases are published. - -Detailed information on all releases, past and present, can be found at :ref:`ceph-releases-index` - diff --git a/doc/releases/giant.rst b/doc/releases/giant.rst deleted file mode 100644 index 6b2182adb..000000000 --- a/doc/releases/giant.rst +++ /dev/null @@ -1,1286 +0,0 @@ -===== -Giant -===== - -Giant is the 7th stable release of Ceph. It is named after the giant -squid (Architeuthis dux). - - -v0.87.2 Giant -============= - -This is the second (and possibly final) point release for Giant. - -We recommend all v0.87.x Giant users upgrade to this release. - -Notable Changes ---------------- - -* ceph-objectstore-tool: only output unsupported features when incompatible (#11176 David Zafman) -* common: do not implicitly unlock rwlock on destruction (Federico Simoncelli) -* common: make wait timeout on empty queue configurable (#10818 Samuel Just) -* crush: pick ruleset id that matches and rule id (Xiaoxi Chen) -* crush: set_choose_tries = 100 for new erasure code rulesets (#10353 Loic Dachary) -* librados: check initialized atomic safely (#9617 Josh Durgin) -* librados: fix failed tick_event assert (#11183 Zhiqiang Wang) -* librados: fix looping on skipped maps (#9986 Ding Dinghua) -* librados: fix op submit with timeout (#10340 Samuel Just) -* librados: pybind: fix memory leak (#10723 Billy Olsen) -* librados: pybind: keep reference to callbacks (#10775 Josh Durgin) -* librados: translate operation flags from C APIs (Matthew Richards) -* libradosstriper: fix write_full on ENOENT (#10758 Sebastien Ponce) -* libradosstriper: use strtoll instead of strtol (Dongmao Zhang) -* mds: fix assertion caused by system time moving backwards (#11053 Yan, Zheng) -* mon: allow injection of random delays on writes (Joao Eduardo Luis) -* mon: do not trust small osd epoch cache values (#10787 Sage Weil) -* mon: fail non-blocking flush if object is being scrubbed (#8011 Samuel Just) -* mon: fix division by zero in stats dump (Joao Eduardo Luis) -* mon: fix get_rule_avail when no osds (#10257 Joao Eduardo Luis) -* mon: fix timeout rounds period (#10546 Joao Eduardo Luis) -* mon: ignore osd failures before up_from (#10762 Dan van der Ster, Sage Weil) -* mon: paxos: reset accept timeout before writing to store (#10220 Joao Eduardo Luis) -* mon: return if fs exists on 'fs new' (Joao Eduardo Luis) -* mon: use EntityName when expanding profiles (#10844 Joao Eduardo Luis) -* mon: verify cross-service proposal preconditions (#10643 Joao Eduardo Luis) -* mon: wait for osdmon to be writeable when requesting proposal (#9794 Joao Eduardo Luis) -* mount.ceph: avoid spurious error message about /etc/mtab (#10351 Yan, Zheng) -* msg/simple: allow RESETSESSION when we forget an endpoint (#10080 Greg Farnum) -* msg/simple: discard delay queue before incoming queue (#9910 Sage Weil) -* osd: clear_primary_state when leaving Primary (#10059 Samuel Just) -* osd: do not ignore deleted pgs on startup (#10617 Sage Weil) -* osd: fix FileJournal wrap to get header out first (#10883 David Zafman) -* osd: fix PG leak in SnapTrimWQ (#10421 Kefu Chai) -* osd: fix journalq population in do_read_entry (#6003 Samuel Just) -* osd: fix operator== for op_queue_age_hit and fs_perf_stat (#10259 Samuel Just) -* osd: fix rare assert after split (#10430 David Zafman) -* osd: get pgid ancestor from last_map when building past intervals (#10430 David Zafman) -* osd: include rollback_info_trimmed_to in {read,write}_log (#10157 Samuel Just) -* osd: lock header_lock in DBObjectMap::sync (#9891 Samuel Just) -* osd: requeue blocked op before flush it was blocked on (#10512 Sage Weil) -* osd: tolerate missing object between list and attr get on backfill (#10150 Samuel Just) -* osd: use correct atime for eviction decision (Xinze Chi) -* rgw: flush XML header on get ACL request (#10106 Yehuda Sadeh) -* rgw: index swift keys appropriately (#10471 Hemant Bruman, Yehuda Sadeh) -* rgw: send cancel for bucket index pending ops (#10770 Baijiaruo, Yehuda Sadeh) -* rgw: swift: support X_Remove_Container-Meta-{key} (#01475 Dmytro Iurchenko) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.87.2.txt>`. - -v0.87.1 Giant -============= - -This is the first (and possibly final) point release for Giant. Our focus -on stability fixes will be directed towards Hammer and Firefly. - -We recommend that all v0.87 Giant users upgrade to this release. - -Upgrading ---------- - -* Due to a change in the Linux kernel version 3.18 and the limits of the FUSE - interface, ceph-fuse needs be mounted as root on at least some systems. See - issues #9997, #10277, and #10542 for details. - -Notable Changes ---------------- - -* build: disable stack-execute bit on assembler objects (#10114 Dan Mick) -* build: support boost 1.57.0 (#10688 Ken Dreyer) -* ceph-disk: fix dmcrypt file permissions (#9785 Loic Dachary) -* ceph-disk: run partprobe after zap, behave with partx or partprobe (#9665 #9721 Loic Dachary) -* cephfs-journal-tool: fix import for aged journals (#9977 John Spray) -* cephfs-journal-tool: fix journal import (#10025 John Spray) -* ceph-fuse: use remount to trim kernel dcache (#10277 Yan, Zheng) -* common: add cctid meta variable (#6228 Adam Crume) -* common: fix dump of shard for ghobject_t (#10063 Loic Dachary) -* crush: fix bucket weight underflow (#9998 Pawel Sadowski) -* erasure-code: enforce chunk size alignment (#10211 Loic Dachary) -* erasure-code: regression test suite (#9420 Loic Dachary) -* erasure-code: relax caucy w restrictions (#10325 Loic Dachary) -* libcephfs,ceph-fuse: allow xattr caps on inject_release_failure (#9800 John Spray) -* libcephfs,ceph-fuse: fix cap flush tid comparison (#9869 Greg Farnum) -* libcephfs,ceph-fuse: new flag to indicated sorted dcache (#9178 Yan, Zheng) -* libcephfs,ceph-fuse: prune cache before reconnecting to MDS (Yan, Zheng) -* librados: limit number of in-flight read requests (#9854 Jason Dillaman) -* libradospy: fix thread shutdown (#8797 Dan Mick) -* libradosstriper: fix locking issue in truncate (#10129 Sebastien Ponce) -* librbd: complete pending ops before closing mage (#10299 Jason Dillaman) -* librbd: fix error path on image open failure (#10030 Jason Dillaman) -* librbd: gracefully handle deleted/renamed pools (#10270 Jason Dillaman) -* librbd: handle errors when creating ioctx while listing children (#10123 Jason Dillaman) -* mds: fix compat version in MClientSession (#9945 John Spray) -* mds: fix journaler write error handling (#10011 John Spray) -* mds: fix locking for file size recovery (#10229 Yan, Zheng) -* mds: handle heartbeat_reset during shutdown (#10382 John Spray) -* mds: store backtrace for straydir (Yan, Zheng) -* mon: allow tiers for FS pools (#10135 John Spray) -* mon: fix caching of last_epoch_clean, osdmap trimming (#9987 Sage Weil) -* mon: fix 'fs ls' on peons (#10288 John Spray) -* mon: fix MDS health status from peons (#10151 John Spray) -* mon: fix paxos off-by-one (#9301 Sage Weil) -* msgr: simple: do not block on takeover while holding global lock (#9921 Greg Farnum) -* osd: deep scrub must not abort if hinfo is missing (#10018 Loic Dachary) -* osd: fix misdirected op detection (#9835 Sage Weil) -* osd: fix past_interval display for acting (#9752 Loic Dachary) -* osd: fix PG peering backoff when behind on osdmaps (#10431 Sage Weil) -* osd: handle no-op write with snapshot case (#10262 Ssage Weil) -* osd: use fast-dispatch (Sage Weil, Greg Farnum) -* rados: fix write to /dev/null (Loic Dachary) -* radosgw-admin: create subuser when needed (#10103 Yehuda Sadeh) -* rbd: avoid invalidating aio_write buffer during image import (#10590 Jason Dillaman) -* rbd: fix export with images > 2GB (Vicente Cheng) -* rgw: change multipart upload id magic (#10271 Georgios Dimitrakakis, Yehuda Sadeh) -* rgw: check keystone auth for S3 POST (#10062 Abhishek Lekshmanan) -* rgw: check timestamp for S3 keystone auth (#10062 Abhishek Lekshmanan) -* rgw: fix partial GET with swift (#10553 Yehuda Sadeh) -* rgw: fix quota disable (#9907 Dong Lei) -* rgw: fix rare corruption of object metadata on put (#9576 Yehuda Sadeh) -* rgw: fix S3 object copy content-type (#9478 Yehuda Sadeh) -* rgw: headers end with \r\n (#9254 Benedikt Fraunhofer, Yehuda Sadeh) -* rgw: remove swift user manifest DLO hash calculation (#9973 Yehuda Sadeh) -* rgw: return correct len when len is 0 (#9877 Yehuda Sadeh) -* rgw: return X-Timestamp field (#8911 Yehuda Sadeh) -* rgw: run radosgw as apache with systemd (#10125) -* rgw: sent ETag on S3 object copy (#9479 Yehuda Sadeh) -* rgw: sent HTTP status reason explicitly in fastcgi (Yehuda Sadeh) -* rgw: set length for keystone token validation (#7796 Mark Kirkwood, Yehuda Sadeh) -* rgw: set ulimit -n on sysvinit before starting daemon (#9587 Sage Weil) -* rgw: update bucket index on set_attrs (#5595 Yehuda Sadeh) -* rgw: update swift subuser permission masks when authenticating (#9918 Yehuda Sadeh) -* rgw: URL decode HTTP query params correction (#10271 Georgios Dimitrakakis, Yehuda Sadeh) -* rgw: use cached attrs while reading object attrs (#10307 Yehuda Sadeh) -* rgw: use strict_strtoll for content length (#10701 Axel Dunkel, Yehuda Sadeh) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.87.1.txt>`. - - - -v0.87 Giant -=========== - -This release will form the basis for the stable release Giant, -v0.87.x. Highlights for Giant include: - -* *RADOS Performance*: a range of improvements have been made in the - OSD and client-side librados code that improve the throughput on - flash backends and improve parallelism and scaling on fast machines. -* *CephFS*: we have fixed a raft of bugs in CephFS and built some - basic journal recovery and diagnostic tools. Stability and - performance of single-MDS systems is vastly improved in Giant. - Although we do not yet recommend CephFS for production deployments, - we do encourage testing for non-critical workloads so that we can - better gauge the feature, usability, performance, and stability - gaps. -* *Local Recovery Codes*: the OSDs now support an erasure-coding scheme - that stores some additional data blocks to reduce the IO required to - recover from single OSD failures. -* *Degraded vs misplaced*: the Ceph health reports from 'ceph -s' and - related commands now make a distinction between data that is - degraded (there are fewer than the desired number of copies) and - data that is misplaced (stored in the wrong location in the - cluster). The distinction is important because the latter does not - compromise data safety. -* *Tiering improvements*: we have made several improvements to the - cache tiering implementation that improve performance. Most - notably, objects are not promoted into the cache tier by a single - read; they must be found to be sufficiently hot before that happens. -* *Monitor performance*: the monitors now perform writes to the local - data store asynchronously, improving overall responsiveness. -* *Recovery tools*: the ceph_objectstore_tool is greatly expanded to - allow manipulation of an individual OSDs data store for debugging - and repair purposes. This is most heavily used by our QA - infrastructure to exercise recovery code. - -Upgrade Sequencing ------------------- - -* If your existing cluster is running a version older than v0.80.x - Firefly, please first upgrade to the latest Firefly release before - moving on to Giant. We have not tested upgrades directly from - Emperor, Dumpling, or older releases. - - We *have* tested: - - * Firefly to Giant - * Dumpling to Firefly to Giant - -* Please upgrade daemons in the following order: - - #. Monitors - #. OSDs - #. MDSs and/or radosgw - - Note that the relative ordering of OSDs and monitors should not matter, but - we primarily tested upgrading monitors first. - -Upgrading from v0.80x Firefly ------------------------------ - -* The client-side caching for librbd is now enabled by default (rbd - cache = true). A safety option (rbd cache writethrough until flush - = true) is also enabled so that writeback caching is not used until - the library observes a 'flush' command, indicating that the librbd - users is passing that operation through from the guest VM. This - avoids potential data loss when used with older versions of qemu - that do not support flush. - - leveldb_write_buffer_size = 8*1024*1024 = 33554432 // 8MB - leveldb_cache_size = 512*1024*1204 = 536870912 // 512MB - leveldb_block_size = 64*1024 = 65536 // 64KB - leveldb_compression = false - leveldb_log = "" - - OSDs will still maintain the following osd-specific defaults: - - leveldb_log = "" - -* The 'rados getxattr ...' command used to add a gratuitous newline to the attr - value; it now does not. - -* The ``*_kb perf`` counters on the monitor have been removed. These are - replaced with a new set of ``*_bytes`` counters (e.g., ``cluster_osd_kb`` is - replaced by ``cluster_osd_bytes``). - -* The ``rd_kb`` and ``wr_kb`` fields in the JSON dumps for pool stats (accessed - via the ``ceph df detail -f json-pretty`` and related commands) have been - replaced with corresponding ``*_bytes`` fields. Similarly, the - ``total_space``, ``total_used``, and ``total_avail`` fields are replaced with - ``total_bytes``, ``total_used_bytes``, and ``total_avail_bytes`` fields. - -* The ``rados df --format=json`` output ``read_bytes`` and ``write_bytes`` - fields were incorrectly reporting ops; this is now fixed. - -* The ``rados df --format=json`` output previously included ``read_kb`` and - ``write_kb`` fields; these have been removed. Please use ``read_bytes`` and - ``write_bytes`` instead (and divide by 1024 if appropriate). - -* The experimental keyvaluestore-dev OSD backend had an on-disk format - change that prevents existing OSD data from being upgraded. This - affects developers and testers only. - -* mon-specific and osd-specific leveldb options have been removed. - From this point onward users should use the `leveldb_*` generic - options and add the options in the appropriate sections of their - configuration files. Monitors will still maintain the following - monitor-specific defaults: - - leveldb_write_buffer_size = 8*1024*1024 = 33554432 // 8MB - leveldb_cache_size = 512*1024*1204 = 536870912 // 512MB - leveldb_block_size = 64*1024 = 65536 // 64KB - leveldb_compression = false - leveldb_log = "" - - OSDs will still maintain the following osd-specific defaults: - - leveldb_log = "" - -* CephFS support for the legacy anchor table has finally been removed. - Users with file systems created before firefly should ensure that inodes - with multiple hard links are modified *prior* to the upgrade to ensure that - the backtraces are written properly. For example:: - - sudo find /mnt/cephfs -type f -links +1 -exec touch \{\} \; - -* We disallow nonsensical 'tier cache-mode' transitions. From this point - onward, 'writeback' can only transition to 'forward' and 'forward' - can transition to 1) 'writeback' if there are dirty objects, or 2) any if - there are no dirty objects. - -Notable Changes since v0.86 ---------------------------- - -* ceph-disk: use new udev rules for centos7/rhel7 (#9747 Loic Dachary) -* libcephfs-java: fix fstat mode (Noah Watkins) -* librados: fix deadlock when listing PG contents (Guang Yang) -* librados: misc fixes to the new threading model (#9582 #9706 #9845 #9873 Sage Weil) -* mds: fix inotable initialization (Henry C Chang) -* mds: gracefully handle unknown lock type in flock requests (Yan, Zheng) -* mon: add read-only, read-write, and role-definer rols (Joao Eduardo Luis) -* mon: fix mon cap checks (Joao Eduardo Luis) -* mon: misc fixes for new paxos async writes (#9635 Sage Weil) -* mon: set scrub timestamps on PG creation (#9496 Joao Eduardo Luis) -* osd: erasure code: fix buffer alignment (Janne Grunau, Loic Dachary) -* osd: fix alloc hint induced crashes on mixed clusters (#9419 David Zafman) -* osd: fix backfill reservation release on rejection (#9626, Samuel Just) -* osd: fix ioprio option parsing (#9676 #9677 Loic Dachary) -* osd: fix memory leak during snap trimming (#9113 Samuel Just) -* osd: misc peering and recovery fixes (#9614 #9696 #9731 #9718 #9821 #9875 Samuel Just, Guang Yang) - -Notable Changes since v0.80.x Firefly -------------------------------------- - -* bash completion improvements (Wido den Hollander) -* brag: fixes, improvements (Loic Dachary) -* buffer: improve rebuild_page_aligned (Ma Jianpeng) -* build: fix build on alpha (Michael Cree, Dmitry Smirnov) -* build: fix CentOS 5 (Gerben Meijer) -* build: fix yasm check for x32 (Daniel Schepler, Sage Weil) -* ceph-brag: add tox tests (Alfredo Deza) -* ceph-conf: flush log on exit (Sage Weil) -* ceph.conf: update sample (Sebastien Han) -* ceph-dencoder: refactor build a bit to limit dependencies (Sage Weil, Dan Mick) -* ceph-disk: add Scientific Linux support (Dan van der Ster) -* ceph-disk: do not inadvertantly create directories (Owne Synge) -* ceph-disk: fix dmcrypt support (Sage Weil) -* ceph-disk: fix dmcrypt support (Stephen Taylor) -* ceph-disk: handle corrupt volumes (Stuart Longlang) -* ceph-disk: linter cleanup, logging improvements (Alfredo Deza) -* ceph-disk: partprobe as needed (Eric Eastman) -* ceph-disk: show information about dmcrypt in 'ceph-disk list' output (Sage Weil) -* ceph-disk: use partition type UUIDs and blkid (Sage Weil) -* ceph: fix for non-default cluster names (#8944, Dan Mick) -* ceph-fuse, libcephfs: asok hooks for handling session resets, timeouts (Yan, Zheng) -* ceph-fuse, libcephfs: fix crash in trim_caps (John Spray) -* ceph-fuse, libcephfs: improve cap trimming (John Spray) -* ceph-fuse, libcephfs: improve traceless reply handling (Sage Weil) -* ceph-fuse, libcephfs: virtual xattrs for rstat (Yan, Zheng) -* ceph_objectstore_tool: vastly improved and extended tool for working offline with OSD data stores (David Zafman) -* ceph.spec: many fixes (Erik Logtenberg, Boris Ranto, Dan Mick, Sandon Van Ness) -* ceph.spec: split out ceph-common package, other fixes (Sandon Van Ness) -* ceph_test_librbd_fsx: fix RNG, make deterministic (Ilya Dryomov) -* cephtool: fix help (Yilong Zhao) -* cephtool: refactor and improve CLI tests (Joao Eduardo Luis) -* cephtool: test cleanup (Joao Eduardo Luis) -* clang build fixes (John Spray, Danny Al-Gaaf) -* client: improved MDS session dumps (John Spray) -* common: add config diff admin socket command (Joao Eduardo Luis) -* common: add rwlock assertion checks (Yehuda Sadeh) -* common: fix dup log messages (#9080, Sage Weil) -* common: perfcounters now use atomics and go faster (Sage Weil) -* config: support G, M, K, etc. suffixes (Joao Eduardo Luis) -* coverity cleanups (Danny Al-Gaaf) -* crush: clean up CrushWrapper interface (Xioaxi Chen) -* crush: include new tunables in dump (Sage Weil) -* crush: make ruleset ids unique (Xiaoxi Chen, Loic Dachary) -* crush: only require rule features if the rule is used (#8963, Sage Weil) -* crushtool: send output to stdout, not stderr (Wido den Hollander) -* doc: cache tiering (John Wilkins) -* doc: CRUSH updates (John Wilkins) -* doc: document new upstream wireshark dissector (Kevin Cox) -* doc: improve manual install docs (Francois Lafont) -* doc: keystone integration docs (John Wilkins) -* doc: librados example fixes (Kevin Dalley) -* doc: many doc updates (John Wilkins) -* doc: many install doc updates (John Wilkins) -* doc: misc updates (John Wilkins, Loic Dachary, David Moreau Simard, Wido den Hollander. Volker Voigt, Alfredo Deza, Stephen Jahl, Dan van der Ster) -* doc: osd primary affinity (John Wilkins) -* doc: pool quotas (John Wilkins) -* doc: pre-flight doc improvements (Kevin Dalley) -* doc: switch to an unencumbered font (Ross Turk) -* doc: updated simple configuration guides (John Wilkins) -* doc: update erasure docs (Loic Dachary, Venky Shankar) -* doc: update openstack docs (Josh Durgin) -* filestore: disable use of XFS hint (buggy on old kernels) (Samuel Just) -* filestore: fix xattr spillout (Greg Farnum, Haomai Wang) -* fix hppa arch build (Dmitry Smirnov) -* fix i386 builds (Sage Weil) -* fix struct vs class inconsistencies (Thorsten Behrens) -* global: write pid file even when running in foreground (Alexandre Oliva) -* hadoop: improve tests (Huamin Chen, Greg Farnum, John Spray) -* hadoop: update hadoop tests for Hadoop 2.0 (Haumin Chen) -* init-ceph: continue starting other daemons on crush or mount failure (#8343, Sage Weil) -* journaler: fix locking (Zheng, Yan) -* keyvaluestore: fix hint crash (#8381, Haomai Wang) -* keyvaluestore: header cache (Haomai Wang) -* libcephfs-java: build against older JNI headers (Greg Farnum) -* libcephfs-java: fix gcj-jdk build (Dmitry Smirnov) -* librados: fix crash on read op timeout (#9362 Matthias Kiefer, Sage Weil) -* librados: fix lock leaks in error paths (#9022, Paval Rallabhandi) -* librados: fix pool existence check (#8835, Pavan Rallabhandi) -* librados: fix rados_pool_list bounds checks (Sage Weil) -* librados: fix shutdown race (#9130 Sage Weil) -* librados: fix watch/notify test (#7934 David Zafman) -* librados: fix watch reregistration on acting set change (#9220 Samuel Just) -* librados: give Objecter fine-grained locks (Yehuda Sadeh, Sage Weil, John Spray) -* librados: lttng tracepoitns (Adam Crume) -* librados, osd: return ETIMEDOUT on failed notify (Sage Weil) -* librados: pybind: fix reads when \0 is present (#9547 Mohammad Salehe) -* librados_striper: striping library for librados (Sebastien Ponce) -* librbd, ceph-fuse: reduce cache flush overhead (Haomai Wang) -* librbd: check error code on cache invalidate (Josh Durgin) -* librbd: enable caching by default (Sage Weil) -* librbd: enforce cache size on read requests (Jason Dillaman) -* librbd: fix crash using clone of flattened image (#8845, Josh Durgin) -* librbd: fix error path when opening image (#8912, Josh Durgin) -* librbd: handle blacklisting during shutdown (#9105 John Spray) -* librbd: lttng tracepoints (Adam Crume) -* librbd: new libkrbd library for kernel map/unmap/showmapped (Ilya Dryomov) -* librbd: store and retrieve snapshot metadata based on id (Josh Durgin) -* libs3: update to latest (Danny Al-Gaaf) -* log: fix derr level (Joao Eduardo Luis) -* logrotate: fix osd log rotation on ubuntu (Sage Weil) -* lttng: tracing infrastructure (Noah Watkins, Adam Crume) -* mailmap: many updates (Loic Dachary) -* mailmap: updates (Loic Dachary, Abhishek Lekshmanan, M Ranga Swami Reddy) -* Makefile: fix out of source builds (Stefan Eilemann) -* many many coverity fixes, cleanups (Danny Al-Gaaf) -* mds: adapt to new Objecter locking, give types to all Contexts (John Spray) -* mds: add file system name, enabled flag (John Spray) -* mds: add internal health checks (John Spray) -* mds: add min/max UID for snapshot creation/deletion (#9029, Wido den Hollander) -* mds: avoid tight mon reconnect loop (#9428 Sage Weil) -* mds: boot refactor, cleanup (John Spray) -* mds: cephfs-journal-tool (John Spray) -* mds: fix crash killing sessions (#9173 John Spray) -* mds: fix ctime updates (#9514 Greg Farnum) -* mds: fix journal conversion with standby-replay (John Spray) -* mds: fix replay locking (Yan, Zheng) -* mds: fix standby-replay cache trimming (#8648 Zheng, Yan) -* mds: fix xattr bug triggered by ACLs (Yan, Zheng) -* mds: give perfcounters meaningful names (Sage Weil) -* mds: improve health reporting to monitor (John Spray) -* mds: improve Journaler on-disk format (John Spray) -* mds: improve journal locking (Zheng, Yan) -* mds, libcephfs: use client timestamp for mtime/ctime (Sage Weil) -* mds: make max file recoveries tunable (Sage Weil) -* mds: misc encoding improvements (John Spray) -* mds: misc fixes for multi-mds (Yan, Zheng) -* mds: multi-mds fixes (Yan, Zheng) -* mds: OPTracker integration, dump_ops_in_flight (Greg Farnum) -* mds: prioritize file recovery when appropriate (Sage Weil) -* mds: refactor beacon, improve reliability (John Spray) -* mds: remove legacy anchor table (Yan, Zheng) -* mds: remove legacy discover ino (Yan, Zheng) -* mds: restart on EBLACKLISTED (John Spray) -* mds: separate inode recovery queue (John Spray) -* mds: session ls, evict commands (John Spray) -* mds: submit log events in async thread (Yan, Zheng) -* mds: track RECALL progress, report failure (#9284 John Spray) -* mds: update segment references during journal write (John Spray, Greg Farnum) -* mds: use client-provided timestamp for user-visible file metadata (Yan, Zheng) -* mds: use meaningful names for clients (John Spray) -* mds: validate journal header on load and save (John Spray) -* mds: warn clients which aren't revoking caps (Zheng, Yan, John Spray) -* misc build errors/warnings for Fedora 20 (Boris Ranto) -* misc build fixes for OS X (John Spray) -* misc cleanup (Christophe Courtaut) -* misc integer size cleanups (Kevin Cox) -* misc memory leaks, cleanups, fixes (Danny Al-Gaaf, Sahid Ferdjaoui) -* misc suse fixes (Danny Al-Gaaf) -* misc word size fixes (Kevin Cox) -* mon: add audit log for all admin commands (Joao Eduardo Luis) -* mon: add cluster fingerprint (Sage Weil) -* mon: add get-quota commands (Joao Eduardo Luis) -* mon: add 'osd blocked-by' command to easily see which OSDs are blocking peering progress (Sage Weil) -* mon: add 'osd reweight-by-pg' command (Sage Weil, Guang Yang) -* mon: add perfcounters for paxos operations (Sage Weil) -* mon: avoid creating unnecessary rule on pool create (#9304 Loic Dachary) -* monclient: fix hang (Sage Weil) -* mon: create default EC profile if needed (Loic Dachary) -* mon: do not create file system by default (John Spray) -* mon: do not spam log (Aanchal Agrawal, Sage Weil) -* mon: drop mon- and osd- specific leveldb options (Joao Eduardo Luis) -* mon: ec pool profile fixes (Loic Dachary) -* mon: fix bug when no auth keys are present (#8851, Joao Eduardo Luis) -* mon: fix 'ceph df' output for available space (Xiaoxi Chen) -* mon: fix compat version for MForward (Joao Eduardo Luis) -* mon: fix crash on loopback messages and paxos timeouts (#9062, Sage Weil) -* mon: fix default replication pool ruleset choice (#8373, John Spray) -* mon: fix divide by zero when pg_num is adjusted before OSDs are added (#9101, Sage Weil) -* mon: fix double-free of old MOSDBoot (Sage Weil) -* mon: fix health down messages (Sage Weil) -* mon: fix occasional memory leak after session reset (#9176, Sage Weil) -* mon: fix op write latency perfcounter (#9217 Xinxin Shu) -* mon: fix 'osd perf' reported latency (#9269 Samuel Just) -* mon: fix quorum feature check (#8738, Greg Farnum) -* mon: fix ruleset/ruleid bugs (#9044, Loic Dachary) -* mon: fix set cache_target_full_ratio (#8440, Geoffrey Hartz) -* mon: fix store check on startup (Joao Eduardo Luis) -* mon: include per-pool 'max avail' in df output (Sage Weil) -* mon: make paxos transaction commits asynchronous (Sage Weil) -* mon: make usage dumps in terms of bytes, not kB (Sage Weil) -* mon: 'osd crush reweight-subtree ...' (Sage Weil) -* mon, osd: relax client EC support requirements (Sage Weil) -* mon: preload erasure plugins (#9153 Loic Dachary) -* mon: prevent cache pools from being used directly by CephFS (#9435 John Spray) -* mon: prevent EC pools from being used with cephfs (Joao Eduardo Luis) -* mon: prevent implicit destruction of OSDs with 'osd setmaxosd ...' (#8865, Anand Bhat) -* mon: prevent nonsensical cache-mode transitions (Joao Eduardo Luis) -* mon: restore original weight when auto-marked out OSDs restart (Sage Weil) -* mon: restrict some pool properties to tiered pools (Joao Eduardo Luis) -* mon: some instrumentation (Sage Weil) -* mon: use msg header tid for MMonGetVersionReply (Ilya Dryomov) -* mon: use user-provided ruleset for replicated pool (Xiaoxi Chen) -* mon: verify all quorum members are contiguous at end of Paxos round (#9053, Sage Weil) -* mon: verify available disk space on startup (#9502 Joao Eduardo Luis) -* mon: verify erasure plugin version on load (Loic Dachary) -* msgr: avoid big lock when sending (most) messages (Greg Farnum) -* msgr: fix logged address (Yongyue Sun) -* msgr: misc locking fixes for fast dispatch (#8891, Sage Weil) -* msgr: refactor to cleanly separate SimpleMessenger implemenetation, move toward Connection-based calls (Matt Benjamin, Sage Wei) -* objecter: flag operations that are redirected by caching (Sage Weil) -* objectstore: clean up KeyValueDB interface for key/value backends (Sage Weil) -* osd: account for hit_set_archive bytes (Sage Weil) -* osd: add ability to prehash filestore directories (Guang Yang) -* osd: add 'dump_reservations' admin socket command (Sage Weil) -* osd: add feature bit for erasure plugins (Loic Dachary) -* osd: add header cache for KeyValueStore (Haomai Wang) -* osd: add ISA erasure plugin table cache (Andreas-Joachim Peters) -* osd: add local_mtime for use by cache agent (Zhiqiang Wang) -* osd: add local recovery code (LRC) erasure plugin (Loic Dachary) -* osd: add prototype KineticStore based on Seagate Kinetic (Josh Durgin) -* osd: add READFORWARD caching mode (Luis Pabon) -* osd: add superblock for KeyValueStore backend (Haomai Wang) -* osd: add support for Intel ISA-L erasure code library (Andreas-Joachim Peters) -* osd: allow map cache size to be adjusted at runtime (Sage Weil) -* osd: avoid refcounting overhead by passing a few things by ref (Somnath Roy) -* osd: avoid sharing PG info that is not durable (Samuel Just) -* osd: bound osdmap epoch skew between PGs (Sage Weil) -* osd: cache tier flushing fixes for snapped objects (Samuel Just) -* osd: cap hit_set size (#9339 Samuel Just) -* osd: clean up shard_id_t, shard_t (Loic Dachary) -* osd: clear FDCache on unlink (#8914 Loic Dachary) -* osd: clear slow request latency info on osd up/down (Sage Weil) -* osd: do not evict blocked objects (#9285 Zhiqiang Wang) -* osd: do not skip promote for write-ordered reads (#9064, Samuel Just) -* osd: fix agent early finish looping (David Zafman) -* osd: fix ambigous encoding order for blacklisted clients (#9211, Sage Weil) -* osd: fix bogus assert during OSD shutdown (Sage Weil) -* osd: fix bug with long object names and rename (#8701, Sage Weil) -* osd: fix cache flush corner case for snapshotted objects (#9054, Samuel Just) -* osd: fix cache full -> not full requeueing (#8931, Sage Weil) -* osd: fix clone deletion case (#8334, Sam Just) -* osd: fix clone vs cache_evict bug (#8629 Sage Weil) -* osd: fix connection reconnect race (Greg Farnum) -* osd: fix crash from duplicate backfill reservation (#8863 Sage Weil) -* osd: fix dead peer connection checks (#9295 Greg Farnum, Sage Weil) -* osd: fix discard of old/obsolete subop replies (#9259, Samuel Just) -* osd: fix discard of peer messages from previous intervals (Greg Farnum) -* osd: fix dump of open fds on EMFILE (Sage Weil) -* osd: fix dumps (Joao Eduardo Luis) -* osd: fix erasure-code lib initialization (Loic Dachary) -* osd: fix extent normalization (Adam Crume) -* osd: fix filestore removal corner case (#8332, Sam Just) -* osd: fix flush vs OpContext (Samuel Just) -* osd: fix gating of messages from old OSD instances (Greg Farnum) -* osd: fix hang waiting for osdmap (#8338, Greg Farnum) -* osd: fix interval check corner case during peering (#8104, Sam Just) -* osd: fix ISA erasure alignment (Loic Dachary, Andreas-Joachim Peters) -* osd: fix journal dump (Ma Jianpeng) -* osd: fix journal-less operation (Sage Weil) -* osd: fix keyvaluestore scrub (#8589 Haomai Wang) -* osd: fix keyvaluestore upgrade (Haomai Wang) -* osd: fix loopback msgr issue (Ma Jianpeng) -* osd: fix LSB release parsing (Danny Al-Gaaf) -* osd: fix MarkMeDown and other shutdown races (Sage Weil) -* osd: fix memstore bugs with collection_move_rename, lock ordering (Sage Weil) -* osd: fix min_read_recency_for_promote default on upgrade (Zhiqiang Wang) -* osd: fix mon feature bit requirements bug and resulting log spam (Sage Weil) -* osd: fix mount/remount sync race (#9144 Sage Weil) -* osd: fix PG object listing/ordering bug (Guang Yang) -* osd: fix PG stat errors with tiering (#9082, Sage Weil) -* osd: fix purged_snap initialization on backfill (Sage Weil, Samuel Just, Dan van der Ster, Florian Haas) -* osd: fix race condition on object deletion (#9480 Somnath Roy) -* osd: fix recovery chunk size usage during EC recovery (Ma Jianpeng) -* osd: fix recovery reservation deadlock for EC pools (Samuel Just) -* osd: fix removal of old xattrs when overwriting chained xattrs (Ma Jianpeng) -* osd: fix requesting queueing on PG split (Samuel Just) -* osd: fix scrub vs cache bugs (Samuel Just) -* osd: fix snap object writeback from cache tier (#9054 Samuel Just) -* osd: fix trim of hitsets (Sage Weil) -* osd: force new xattrs into leveldb if fs returns E2BIG (#7779, Sage Weil) -* osd: implement alignment on chunk sizes (Loic Dachary) -* osd: improved backfill priorities (Sage Weil) -* osd: improve journal shutdown (Ma Jianpeng, Mark Kirkwood) -* osd: improve locking for KeyValueStore (Haomai Wang) -* osd: improve locking in OpTracker (Pavan Rallabhandi, Somnath Roy) -* osd: improve prioritization of recovery of degraded over misplaced objects (Sage Weil) -* osd: improve tiering agent arithmetic (Zhiqiang Wang, Sage Weil, Samuel Just) -* osd: include backend information in metadata reported to mon (Sage Weil) -* osd: locking, sharding, caching improvements in FileStore's FDCache (Somnath Roy, Greg Farnum) -* osd: lttng tracepoints for filestore (Noah Watkins) -* osd: make blacklist encoding deterministic (#9211 Sage Weil) -* osd: make tiering behave if hit_sets aren't enabled (Sage Weil) -* osd: many important bug fixes (Samuel Just) -* osd: many many core fixes (Samuel Just) -* osd: many many important fixes (#8231 #8315 #9113 #9179 #9293 #9294 #9326 #9453 #9481 #9482 #9497 #9574 Samuel Just) -* osd: mark pools with incomplete clones (Sage Weil) -* osd: misc erasure code plugin fixes (Loic Dachary) -* osd: misc locking fixes for fast dispatch (Samuel Just, Ma Jianpeng) -* osd, mon: add rocksdb support (Xinxin Shu, Sage Weil) -* osd, mon: config sanity checks on start (Sage Weil, Joao Eduardo Luis) -* osd, mon: distinguish between "misplaced" and "degraded" objects in cluster health and PG state reporting (Sage Weil) -* osd, msgr: fast-dispatch of OSD ops (Greg Farnum, Samuel Just) -* osd, objecter: resend ops on last_force_op_resend barrier; fix cache overlay op ordering (Sage Weil) -* osd: preload erasure plugins (#9153 Loic Dachary) -* osd: prevent old rados clients from using tiered pools (#8714, Sage Weil) -* osd: reduce OpTracker overhead (Somnath Roy) -* osd: refactor some ErasureCode functionality into command parent class (Loic Dachary) -* osd: remove obsolete classic scrub code (David Zafman) -* osd: scrub PGs with invalid stats (Sage Weil) -* osd: set configurable hard limits on object and xattr names (Sage Weil, Haomai Wang) -* osd: set rollback_info_completed on create (#8625, Samuel Just) -* osd: sharded threadpool to improve parallelism (Somnath Roy) -* osd: shard OpTracker to improve performance (Somnath Roy) -* osd: simple io prioritization for scrub (Sage Weil) -* osd: simple scrub throttling (Sage Weil) -* osd: simple snap trimmer throttle (Sage Weil) -* osd: tests for bench command (Loic Dachary) -* osd: trim old EC objects quickly; verify on scrub (Samuel Just) -* osd: use FIEMAP to inform copy_range (Haomai Wang) -* osd: use local time for tiering decisions (Zhiqiang Wang) -* osd: use xfs hint less frequently (Ilya Dryomov) -* osd: verify erasure plugin version on load (Loic Dachary) -* osd: work around GCC 4.8 bug in journal code (Matt Benjamin) -* pybind/rados: fix small timeouts (John Spray) -* qa: xfstests updates (Ilya Dryomov) -* rados: allow setxattr value to be read from stdin (Sage Weil) -* rados bench: fix arg order (Kevin Dalley) -* rados: drop gratuitous \n from getxattr command (Sage Weil) -* rados: fix bench write arithmetic (Jiangheng) -* rados: fix {read,write}_ops values for df output (Sage Weil) -* rbd: add rbdmap pre- and post post- hooks, fix misc bugs (Dmitry Smirnov) -* rbd-fuse: allow exposing single image (Stephen Taylor) -* rbd-fuse: fix unlink (Josh Durgin) -* rbd: improve option default behavior (Josh Durgin) -* rbd: parallelize rbd import, export (Jason Dillaman) -* rbd: rbd-replay utility to replay captured rbd workload traces (Adam Crume) -* rbd: use write-back (not write-through) when caching is enabled (Jason Dillaman) -* removed mkcephfs (deprecated since dumpling) -* rest-api: fix help (Ailing Zhang) -* rgw: add civetweb as default frontent on port 7490 (#9013 Yehuda Sadeh) -* rgw: add --min-rewrite-stripe-size for object restriper (Yehuda Sadeh) -* rgw: add powerdns hook for dynamic DNS for global clusters (Wido den Hollander) -* rgw: add S3 bucket get location operation (Abhishek Lekshmanan) -* rgw: allow : in S3 access key (Roman Haritonov) -* rgw: automatically align writes to EC pool (#8442, Yehuda Sadeh) -* rgw: bucket link uses instance id (Yehuda Sadeh) -* rgw: cache bucket info (Yehuda Sadeh) -* rgw: cache decoded user info (Yehuda Sadeh) -* rgw: check entity permission for put_metadata (#8428, Yehuda Sadeh) -* rgw: copy object data is target bucket is in a different pool (#9039, Yehuda Sadeh) -* rgw: do not try to authenticate CORS preflight requests (#8718, Robert Hubbard, Yehuda Sadeh) -* rgw: fix admin create user op (#8583 Ray Lv) -* rgw: fix civetweb URL decoding (#8621, Yehuda Sadeh) -* rgw: fix crash on swift CORS preflight request (#8586, Yehuda Sadeh) -* rgw: fix log filename suffix (#9353 Alexandre Marangone) -* rgw: fix memory leak following chunk read error (Yehuda Sadeh) -* rgw: fix memory leaks (Andrey Kuznetsov) -* rgw: fix multipart object attr regression (#8452, Yehuda Sadeh) -* rgw: fix multipart upload (#8846, Silvain Munaut, Yehuda Sadeh) -* rgw: fix radosgw-admin 'show log' command (#8553, Yehuda Sadeh) -* rgw: fix removal of objects during object creation (Patrycja Szablowska, Yehuda Sadeh) -* rgw: fix striping for copied objects (#9089, Yehuda Sadeh) -* rgw: fix test for identify whether an object has a tail (#9226, Yehuda Sadeh) -* rgw: fix URL decoding (#8702, Brian Rak) -* rgw: fix URL escaping (Yehuda Sadeh) -* rgw: fix usage (Abhishek Lekshmanan) -* rgw: fix user manifest (Yehuda Sadeh) -* rgw: fix when stripe size is not a multiple of chunk size (#8937, Yehuda Sadeh) -* rgw: handle empty extra pool name (Yehuda Sadeh) -* rgw: improve civetweb logging (Yehuda Sadeh) -* rgw: improve delimited listing of bucket, misc fixes (Yehuda Sadeh) -* rgw: improve -h (Abhishek Lekshmanan) -* rgw: many fixes for civetweb (Yehuda Sadeh) -* rgw: misc civetweb fixes (Yehuda Sadeh) -* rgw: misc civetweb frontend fixes (Yehuda Sadeh) -* rgw: object and bucket rewrite functions to allow restriping old objects (Yehuda Sadeh) -* rgw: powerdns backend for global namespaces (Wido den Hollander) -* rgw: prevent multiobject PUT race (Yehuda Sadeh) -* rgw: send user manifest header (Yehuda Sadeh) -* rgw: subuser creation fixes (#8587 Yehuda Sadeh) -* rgw: use systemd-run from sysvinit script (JuanJose Galvez) -* rpm: do not restart daemons on upgrade (Alfredo Deza) -* rpm: misc packaging fixes for rhel7 (Sandon Van Ness) -* rpm: split ceph-common from ceph (Sandon Van Ness) -* systemd: initial systemd config files (Federico Simoncelli) -* systemd: wrap started daemons in new systemd environment (Sage Weil, Dan Mick) -* sysvinit: add support for non-default cluster names (Alfredo Deza) -* sysvinit: less sensitive to failures (Sage Weil) -* test_librbd_fsx: test krbd as well as librbd (Ilya Dryomov) -* unit test improvements (Loic Dachary) -* upstart: increase max open files limit (Sage Weil) -* vstart.sh: fix/improve rgw support (Luis Pabon, Abhishek Lekshmanan) - - - - -v0.86 -===== - -This is a release candidate for Giant, which will hopefully be out -in another week or two. We did a feature freeze about a month ago -and since then have been doing only stabilization and bug fixing (and -a handful on low-risk enhancements). A fair bit of new functionality -went into the final sprint, but it's baked for quite a while now and -we're feeling pretty good about it. - -Major items include: - -* librados locking refactor to improve scaling and client performance -* local recovery code (LRC) erasure code plugin to trade some - additional storage overhead for improved recovery performance -* LTTNG tracing framework, with initial tracepoints in librados, - librbd, and the OSD FileStore backend -* separate monitor audit log for all administrative commands -* asynchronous monitor transaction commits to reduce the impact on - monitor read requests while processing updates -* low-level tool for working with individual OSD data stores for - debugging, recovery, and testing -* many MDS improvements (bug fixes, health reporting) - -There are still a handful of known bugs in this release, but nothing -severe enough to prevent a release. By and large we are pretty -pleased with the stability and expect the final Giant release to be -quite reliable. - -Please try this out on your non-production clusters for a preview - -Notable Changes ---------------- - -* buffer: improve rebuild_page_aligned (Ma Jianpeng) -* build: fix CentOS 5 (Gerben Meijer) -* build: fix build on alpha (Michael Cree, Dmitry Smirnov) -* build: fix yasm check for x32 (Daniel Schepler, Sage Weil) -* ceph-disk: add Scientific Linux support (Dan van der Ster) -* ceph-fuse, libcephfs: fix crash in trim_caps (John Spray) -* ceph-fuse, libcephfs: improve cap trimming (John Spray) -* ceph-fuse, libcephfs: virtual xattrs for rstat (Yan, Zheng) -* ceph.conf: update sample (Sebastien Han) -* ceph.spec: many fixes (Erik Logtenberg, Boris Ranto, Dan Mick, Sandon Van Ness) -* ceph_objectstore_tool: vastly improved and extended tool for working offline with OSD data stores (David Zafman) -* common: add config diff admin socket command (Joao Eduardo Luis) -* common: add rwlock assertion checks (Yehuda Sadeh) -* crush: clean up CrushWrapper interface (Xioaxi Chen) -* crush: make ruleset ids unique (Xiaoxi Chen, Loic Dachary) -* doc: improve manual install docs (Francois Lafont) -* doc: misc updates (John Wilkins, Loic Dachary, David Moreau Simard, Wido den Hollander. Volker Voigt, Alfredo Deza, Stephen Jahl, Dan van der Ster) -* global: write pid file even when running in foreground (Alexandre Oliva) -* hadoop: improve tests (Huamin Chen, Greg Farnum, John Spray) -* journaler: fix locking (Zheng, Yan) -* librados, osd: return ETIMEDOUT on failed notify (Sage Weil) -* librados: fix crash on read op timeout (#9362 Matthias Kiefer, Sage Weil) -* librados: fix shutdown race (#9130 Sage Weil) -* librados: fix watch reregistration on acting set change (#9220 Samuel Just) -* librados: fix watch/notify test (#7934 David Zafman) -* librados: give Objecter fine-grained locks (Yehuda Sadeh, Sage Weil, John Spray) -* librados: lttng tracepoitns (Adam Crume) -* librados: pybind: fix reads when \0 is present (#9547 Mohammad Salehe) -* librbd: enforce cache size on read requests (Jason Dillaman) -* librbd: handle blacklisting during shutdown (#9105 John Spray) -* librbd: lttng tracepoints (Adam Crume) -* lttng: tracing infrastructure (Noah Watkins, Adam Crume) -* mailmap: updates (Loic Dachary, Abhishek Lekshmanan, M Ranga Swami Reddy) -* many many coverity fixes, cleanups (Danny Al-Gaaf) -* mds: adapt to new Objecter locking, give types to all Contexts (John Spray) -* mds: add internal health checks (John Spray) -* mds: avoid tight mon reconnect loop (#9428 Sage Weil) -* mds: fix crash killing sessions (#9173 John Spray) -* mds: fix ctime updates (#9514 Greg Farnum) -* mds: fix replay locking (Yan, Zheng) -* mds: fix standby-replay cache trimming (#8648 Zheng, Yan) -* mds: give perfcounters meaningful names (Sage Weil) -* mds: improve health reporting to monitor (John Spray) -* mds: improve journal locking (Zheng, Yan) -* mds: make max file recoveries tunable (Sage Weil) -* mds: prioritize file recovery when appropriate (Sage Weil) -* mds: refactor beacon, improve reliability (John Spray) -* mds: restart on EBLACKLISTED (John Spray) -* mds: track RECALL progress, report failure (#9284 John Spray) -* mds: update segment references during journal write (John Spray, Greg Farnum) -* mds: use meaningful names for clients (John Spray) -* mds: warn clients which aren't revoking caps (Zheng, Yan, John Spray) -* mon: add 'osd reweight-by-pg' command (Sage Weil, Guang Yang) -* mon: add audit log for all admin commands (Joao Eduardo Luis) -* mon: add cluster fingerprint (Sage Weil) -* mon: avoid creating unnecessary rule on pool create (#9304 Loic Dachary) -* mon: do not spam log (Aanchal Agrawal, Sage Weil) -* mon: fix 'osd perf' reported latency (#9269 Samuel Just) -* mon: fix double-free of old MOSDBoot (Sage Weil) -* mon: fix op write latency perfcounter (#9217 Xinxin Shu) -* mon: fix store check on startup (Joao Eduardo Luis) -* mon: make paxos transaction commits asynchronous (Sage Weil) -* mon: preload erasure plugins (#9153 Loic Dachary) -* mon: prevent cache pools from being used directly by CephFS (#9435 John Spray) -* mon: use user-provided ruleset for replicated pool (Xiaoxi Chen) -* mon: verify available disk space on startup (#9502 Joao Eduardo Luis) -* mon: verify erasure plugin version on load (Loic Dachary) -* msgr: fix logged address (Yongyue Sun) -* osd: account for hit_set_archive bytes (Sage Weil) -* osd: add ISA erasure plugin table cache (Andreas-Joachim Peters) -* osd: add ability to prehash filestore directories (Guang Yang) -* osd: add feature bit for erasure plugins (Loic Dachary) -* osd: add local recovery code (LRC) erasure plugin (Loic Dachary) -* osd: cap hit_set size (#9339 Samuel Just) -* osd: clear FDCache on unlink (#8914 Loic Dachary) -* osd: do not evict blocked objects (#9285 Zhiqiang Wang) -* osd: fix ISA erasure alignment (Loic Dachary, Andreas-Joachim Peters) -* osd: fix clone vs cache_evict bug (#8629 Sage Weil) -* osd: fix crash from duplicate backfill reservation (#8863 Sage Weil) -* osd: fix dead peer connection checks (#9295 Greg Farnum, Sage Weil) -* osd: fix keyvaluestore scrub (#8589 Haomai Wang) -* osd: fix keyvaluestore upgrade (Haomai Wang) -* osd: fix min_read_recency_for_promote default on upgrade (Zhiqiang Wang) -* osd: fix mount/remount sync race (#9144 Sage Weil) -* osd: fix purged_snap initialization on backfill (Sage Weil, Samuel Just, Dan van der Ster, Florian Haas) -* osd: fix race condition on object deletion (#9480 Somnath Roy) -* osd: fix snap object writeback from cache tier (#9054 Samuel Just) -* osd: improve journal shutdown (Ma Jianpeng, Mark Kirkwood) -* osd: improve locking in OpTracker (Pavan Rallabhandi, Somnath Roy) -* osd: improve tiering agent arithmetic (Zhiqiang Wang, Sage Weil, Samuel Just) -* osd: lttng tracepoints for filestore (Noah Watkins) -* osd: make blacklist encoding deterministic (#9211 Sage Weil) -* osd: many many important fixes (#8231 #8315 #9113 #9179 #9293 #9294 #9326 #9453 #9481 #9482 #9497 #9574 Samuel Just) -* osd: misc erasure code plugin fixes (Loic Dachary) -* osd: preload erasure plugins (#9153 Loic Dachary) -* osd: shard OpTracker to improve performance (Somnath Roy) -* osd: use local time for tiering decisions (Zhiqiang Wang) -* osd: verify erasure plugin version on load (Loic Dachary) -* rados: fix bench write arithmetic (Jiangheng) -* rbd: parallelize rbd import, export (Jason Dillaman) -* rbd: rbd-replay utility to replay captured rbd workload traces (Adam Crume) -* rbd: use write-back (not write-through) when caching is enabled (Jason Dillaman) -* rgw: add S3 bucket get location operation (Abhishek Lekshmanan) -* rgw: add civetweb as default frontent on port 7490 (#9013 Yehuda Sadeh) -* rgw: allow : in S3 access key (Roman Haritonov) -* rgw: fix admin create user op (#8583 Ray Lv) -* rgw: fix log filename suffix (#9353 Alexandre Marangone) -* rgw: fix usage (Abhishek Lekshmanan) -* rgw: many fixes for civetweb (Yehuda Sadeh) -* rgw: subuser creation fixes (#8587 Yehuda Sadeh) -* rgw: use systemd-run from sysvinit script (JuanJose Galvez) -* unit test improvements (Loic Dachary) -* vstart.sh: fix/improve rgw support (Luis Pabon, Abhishek Lekshmanan) - -v0.85 -===== - -This is the second-to-last development release before Giant that -contains new functionality. The big items to land during this cycle -are the messenger refactoring from Matt Benjamin that lays some -groundwork for RDMA support, a performance improvement series from -SanDisk that improves performance on SSDs, lots of improvements to our -new standalone civetweb-based RGW frontend, and a new 'osd blocked-by' -mon command that allows admins to easily identify which OSDs are -blocking peering progress. The other big change is that the OSDs and -Monitors now distinguish between "misplaced" and "degraded" objects: -the latter means there are fewer copies than we'd like, while the -former simply means the are not stored in the locations where we want -them to be. - -Also of note is a change to librbd that enables client-side caching by -default. This is coupled with another option that makes the cache -write-through until a "flush" operations is observed: this implies -that the librbd user (usually a VM guest OS) supports barriers and -flush and that it is safe for the cache to switch into writeback mode -without compromising data safety or integrity. It has long been -recommended practice that these options be enabled (e.g., in OpenStack -environments) but until now it has not been the default. - -We have frozen the tree for the looming Giant release, and the next -development release will be a release candidate with a final batch of -new functionality. - -Upgrading ---------- - -* The client-side caching for librbd is now enabled by default (rbd - cache = true). A safety option (rbd cache writethrough until flush - = true) is also enabled so that writeback caching is not used until - the library observes a 'flush' command, indicating that the librbd - users is passing that operation through from the guest VM. This - avoids potential data loss when used with older versions of qemu - that do not support flush. - - leveldb_write_buffer_size = 32*1024*1024 = 33554432 // 32MB - leveldb_cache_size = 512*1024*1204 = 536870912 // 512MB - leveldb_block_size = 64*1024 = 65536 // 64KB - leveldb_compression = false - leveldb_log = "" - - OSDs will still maintain the following osd-specific defaults: - - leveldb_log = "" - -* The 'rados getxattr ...' command used to add a gratuitous newline to the attr - value; it now does not. - -Notable Changes ---------------- - -* ceph-disk: do not inadvertantly create directories (Owne Synge) -* ceph-disk: fix dmcrypt support (Sage Weil) -* ceph-disk: linter cleanup, logging improvements (Alfredo Deza) -* ceph-disk: show information about dmcrypt in 'ceph-disk list' output (Sage Weil) -* ceph-disk: use partition type UUIDs and blkid (Sage Weil) -* ceph: fix for non-default cluster names (#8944, Dan Mick) -* doc: document new upstream wireshark dissector (Kevin Cox) -* doc: many install doc updates (John Wilkins) -* librados: fix lock leaks in error paths (#9022, Paval Rallabhandi) -* librados: fix pool existence check (#8835, Pavan Rallabhandi) -* librbd: enable caching by default (Sage Weil) -* librbd: fix crash using clone of flattened image (#8845, Josh Durgin) -* librbd: store and retrieve snapshot metadata based on id (Josh Durgin) -* mailmap: many updates (Loic Dachary) -* mds: add min/max UID for snapshot creation/deletion (#9029, Wido den Hollander) -* misc build errors/warnings for Fedora 20 (Boris Ranto) -* mon: add 'osd blocked-by' command to easily see which OSDs are blocking peering progress (Sage Weil) -* mon: add perfcounters for paxos operations (Sage Weil) -* mon: create default EC profile if needed (Loic Dachary) -* mon: fix crash on loopback messages and paxos timeouts (#9062, Sage Weil) -* mon: fix divide by zero when pg_num is adjusted before OSDs are added (#9101, Sage Weil) -* mon: fix occasional memory leak after session reset (#9176, Sage Weil) -* mon: fix ruleset/ruleid bugs (#9044, Loic Dachary) -* mon: make usage dumps in terms of bytes, not kB (Sage Weil) -* mon: prevent implicit destruction of OSDs with 'osd setmaxosd ...' (#8865, Anand Bhat) -* mon: verify all quorum members are contiguous at end of Paxos round (#9053, Sage Weil) -* msgr: refactor to cleanly separate SimpleMessenger implemenetation, move toward Connection-based calls (Matt Benjamin, Sage Wei) -* objectstore: clean up KeyValueDB interface for key/value backends (Sage Weil) -* osd: add local_mtime for use by cache agent (Zhiqiang Wang) -* osd: add superblock for KeyValueStore backend (Haomai Wang) -* osd: add support for Intel ISA-L erasure code library (Andreas-Joachim Peters) -* osd: do not skip promote for write-ordered reads (#9064, Samuel Just) -* osd: fix ambigous encoding order for blacklisted clients (#9211, Sage Weil) -* osd: fix cache flush corner case for snapshotted objects (#9054, Samuel Just) -* osd: fix discard of old/obsolete subop replies (#9259, Samuel Just) -* osd: fix discard of peer messages from previous intervals (Greg Farnum) -* osd: fix dump of open fds on EMFILE (Sage Weil) -* osd: fix journal dump (Ma Jianpeng) -* osd: fix mon feature bit requirements bug and resulting log spam (Sage Weil) -* osd: fix recovery chunk size usage during EC recovery (Ma Jianpeng) -* osd: fix recovery reservation deadlock for EC pools (Samuel Just) -* osd: fix removal of old xattrs when overwriting chained xattrs (Ma Jianpeng) -* osd: fix requesting queueing on PG split (Samuel Just) -* osd: force new xattrs into leveldb if fs returns E2BIG (#7779, Sage Weil) -* osd: implement alignment on chunk sizes (Loic Dachary) -* osd: improve prioritization of recovery of degraded over misplaced objects (Sage Weil) -* osd: locking, sharding, caching improvements in FileStore's FDCache (Somnath Roy, Greg Farnum) -* osd: many important bug fixes (Samuel Just) -* osd, mon: add rocksdb support (Xinxin Shu, Sage Weil) -* osd, mon: distinguish between "misplaced" and "degraded" objects in cluster health and PG state reporting (Sage Weil) -* osd: refactor some ErasureCode functionality into command parent class (Loic Dachary) -* osd: set rollback_info_completed on create (#8625, Samuel Just) -* rados: allow setxattr value to be read from stdin (Sage Weil) -* rados: drop gratuitous \n from getxattr command (Sage Weil) -* rgw: add --min-rewrite-stripe-size for object restriper (Yehuda Sadeh) -* rgw: add powerdns hook for dynamic DNS for global clusters (Wido den Hollander) -* rgw: copy object data is target bucket is in a different pool (#9039, Yehuda Sadeh) -* rgw: do not try to authenticate CORS preflight requests (#8718, Robert Hubbard, Yehuda Sadeh) -* rgw: fix civetweb URL decoding (#8621, Yehuda Sadeh) -* rgw: fix removal of objects during object creation (Patrycja Szablowska, Yehuda Sadeh) -* rgw: fix striping for copied objects (#9089, Yehuda Sadeh) -* rgw: fix test for identify whether an object has a tail (#9226, Yehuda Sadeh) -* rgw: fix when stripe size is not a multiple of chunk size (#8937, Yehuda Sadeh) -* rgw: improve civetweb logging (Yehuda Sadeh) -* rgw: misc civetweb frontend fixes (Yehuda Sadeh) -* sysvinit: add support for non-default cluster names (Alfredo Deza) - - -v0.84 -===== - -The next Ceph development release is here! This release contains -several meaty items, including some MDS improvements for journaling, -the ability to remove the CephFS file system (and name it), several -mon cleanups with tiered pools, several OSD performance branches, a -new "read forward" RADOS caching mode, a prototype Kinetic OSD -backend, and various radosgw improvements (especially with the new -standalone civetweb frontend). And there are a zillion OSD bug -fixes. Things are looking pretty good for the Giant release that is -coming up in the next month. - -Upgrading ---------- - -* The ``*_kb perf`` counters on the monitor have been removed. These are - replaced with a new set of ``*_bytes`` counters (e.g., ``cluster_osd_kb`` is - replaced by ``cluster_osd_bytes``). - -* The ``rd_kb`` and ``wr_kb`` fields in the JSON dumps for pool stats (accessed - via the ``ceph df detail -f json-pretty`` and related commands) have been - replaced with corresponding ``*_bytes`` fields. Similarly, the - ``total_space``, ``total_used``, and ``total_avail`` fields are replaced with - ``total_bytes``, ``total_used_bytes``, and ``total_avail_bytes`` fields. - -* The ``rados df --format=json`` output ``read_bytes`` and ``write_bytes`` - fields were incorrectly reporting ops; this is now fixed. - -* The ``rados df --format=json`` output previously included ``read_kb`` and - ``write_kb`` fields; these have been removed. Please use ``read_bytes`` and - ``write_bytes`` instead (and divide by 1024 if appropriate). - -Notable Changes ---------------- - -* ceph-conf: flush log on exit (Sage Weil) -* ceph-dencoder: refactor build a bit to limit dependencies (Sage Weil, Dan Mick) -* ceph.spec: split out ceph-common package, other fixes (Sandon Van Ness) -* ceph_test_librbd_fsx: fix RNG, make deterministic (Ilya Dryomov) -* cephtool: refactor and improve CLI tests (Joao Eduardo Luis) -* client: improved MDS session dumps (John Spray) -* common: fix dup log messages (#9080, Sage Weil) -* crush: include new tunables in dump (Sage Weil) -* crush: only require rule features if the rule is used (#8963, Sage Weil) -* crushtool: send output to stdout, not stderr (Wido den Hollander) -* fix i386 builds (Sage Weil) -* fix struct vs class inconsistencies (Thorsten Behrens) -* hadoop: update hadoop tests for Hadoop 2.0 (Haumin Chen) -* librbd, ceph-fuse: reduce cache flush overhead (Haomai Wang) -* librbd: fix error path when opening image (#8912, Josh Durgin) -* mds: add file system name, enabled flag (John Spray) -* mds: boot refactor, cleanup (John Spray) -* mds: fix journal conversion with standby-replay (John Spray) -* mds: separate inode recovery queue (John Spray) -* mds: session ls, evict commands (John Spray) -* mds: submit log events in async thread (Yan, Zheng) -* mds: use client-provided timestamp for user-visible file metadata (Yan, Zheng) -* mds: validate journal header on load and save (John Spray) -* misc build fixes for OS X (John Spray) -* misc integer size cleanups (Kevin Cox) -* mon: add get-quota commands (Joao Eduardo Luis) -* mon: do not create file system by default (John Spray) -* mon: fix 'ceph df' output for available space (Xiaoxi Chen) -* mon: fix bug when no auth keys are present (#8851, Joao Eduardo Luis) -* mon: fix compat version for MForward (Joao Eduardo Luis) -* mon: restrict some pool properties to tiered pools (Joao Eduardo Luis) -* msgr: misc locking fixes for fast dispatch (#8891, Sage Weil) -* osd: add 'dump_reservations' admin socket command (Sage Weil) -* osd: add READFORWARD caching mode (Luis Pabon) -* osd: add header cache for KeyValueStore (Haomai Wang) -* osd: add prototype KineticStore based on Seagate Kinetic (Josh Durgin) -* osd: allow map cache size to be adjusted at runtime (Sage Weil) -* osd: avoid refcounting overhead by passing a few things by ref (Somnath Roy) -* osd: avoid sharing PG info that is not durable (Samuel Just) -* osd: clear slow request latency info on osd up/down (Sage Weil) -* osd: fix PG object listing/ordering bug (Guang Yang) -* osd: fix PG stat errors with tiering (#9082, Sage Weil) -* osd: fix bug with long object names and rename (#8701, Sage Weil) -* osd: fix cache full -> not full requeueing (#8931, Sage Weil) -* osd: fix gating of messages from old OSD instances (Greg Farnum) -* osd: fix memstore bugs with collection_move_rename, lock ordering (Sage Weil) -* osd: improve locking for KeyValueStore (Haomai Wang) -* osd: make tiering behave if hit_sets aren't enabled (Sage Weil) -* osd: mark pools with incomplete clones (Sage Weil) -* osd: misc locking fixes for fast dispatch (Samuel Just, Ma Jianpeng) -* osd: prevent old rados clients from using tiered pools (#8714, Sage Weil) -* osd: reduce OpTracker overhead (Somnath Roy) -* osd: set configurable hard limits on object and xattr names (Sage Weil, Haomai Wang) -* osd: trim old EC objects quickly; verify on scrub (Samuel Just) -* osd: work around GCC 4.8 bug in journal code (Matt Benjamin) -* rados bench: fix arg order (Kevin Dalley) -* rados: fix {read,write}_ops values for df output (Sage Weil) -* rbd: add rbdmap pre- and post post- hooks, fix misc bugs (Dmitry Smirnov) -* rbd: improve option default behavior (Josh Durgin) -* rgw: automatically align writes to EC pool (#8442, Yehuda Sadeh) -* rgw: fix crash on swift CORS preflight request (#8586, Yehuda Sadeh) -* rgw: fix memory leaks (Andrey Kuznetsov) -* rgw: fix multipart upload (#8846, Silvain Munaut, Yehuda Sadeh) -* rgw: improve -h (Abhishek Lekshmanan) -* rgw: improve delimited listing of bucket, misc fixes (Yehuda Sadeh) -* rgw: misc civetweb fixes (Yehuda Sadeh) -* rgw: powerdns backend for global namespaces (Wido den Hollander) -* systemd: initial systemd config files (Federico Simoncelli) - - -v0.83 -===== - -Another Ceph development release! This has been a longer cycle, so -there has been quite a bit of bug fixing and stabilization in this -round. There is also a bunch of packaging fixes for RPM distros -(RHEL/CentOS, Fedora, and SUSE) and for systemd. We've also added a new -librados-striper library from Sebastien Ponce that provides a generic -striping API for applications to code to. - -Upgrading ---------- - -* The experimental keyvaluestore-dev OSD backend had an on-disk format - change that prevents existing OSD data from being upgraded. This - affects developers and testers only. - -* mon-specific and osd-specific leveldb options have been removed. - From this point onward users should use the `leveldb_*` generic - options and add the options in the appropriate sections of their - configuration files. Monitors will still maintain the following - monitor-specific defaults: - - leveldb_write_buffer_size = 32*1024*1024 = 33554432 // 32MB - leveldb_cache_size = 512*1024*1204 = 536870912 // 512MB - leveldb_block_size = 64*1024 = 65536 // 64KB - leveldb_compression = false - leveldb_log = "" - - OSDs will still maintain the following osd-specific defaults: - - leveldb_log = "" - -Notable Changes ---------------- - -* ceph-disk: fix dmcrypt support (Stephen Taylor) -* cephtool: fix help (Yilong Zhao) -* cephtool: test cleanup (Joao Eduardo Luis) -* doc: librados example fixes (Kevin Dalley) -* doc: many doc updates (John Wilkins) -* doc: update erasure docs (Loic Dachary, Venky Shankar) -* filestore: disable use of XFS hint (buggy on old kernels) (Samuel Just) -* filestore: fix xattr spillout (Greg Farnum, Haomai Wang) -* keyvaluestore: header cache (Haomai Wang) -* librados_striper: striping library for librados (Sebastien Ponce) -* libs3: update to latest (Danny Al-Gaaf) -* log: fix derr level (Joao Eduardo Luis) -* logrotate: fix osd log rotation on ubuntu (Sage Weil) -* mds: fix xattr bug triggered by ACLs (Yan, Zheng) -* misc memory leaks, cleanups, fixes (Danny Al-Gaaf, Sahid Ferdjaoui) -* misc suse fixes (Danny Al-Gaaf) -* misc word size fixes (Kevin Cox) -* mon: drop mon- and osd- specific leveldb options (Joao Eduardo Luis) -* mon: ec pool profile fixes (Loic Dachary) -* mon: fix health down messages (Sage Weil) -* mon: fix quorum feature check (#8738, Greg Farnum) -* mon: 'osd crush reweight-subtree ...' (Sage Weil) -* mon, osd: relax client EC support requirements (Sage Weil) -* mon: some instrumentation (Sage Weil) -* objecter: flag operations that are redirected by caching (Sage Weil) -* osd: clean up shard_id_t, shard_t (Loic Dachary) -* osd: fix connection reconnect race (Greg Farnum) -* osd: fix dumps (Joao Eduardo Luis) -* osd: fix erasure-code lib initialization (Loic Dachary) -* osd: fix extent normalization (Adam Crume) -* osd: fix loopback msgr issue (Ma Jianpeng) -* osd: fix LSB release parsing (Danny Al-Gaaf) -* osd: improved backfill priorities (Sage Weil) -* osd: many many core fixes (Samuel Just) -* osd, mon: config sanity checks on start (Sage Weil, Joao Eduardo Luis) -* osd: sharded threadpool to improve parallelism (Somnath Roy) -* osd: simple io prioritization for scrub (Sage Weil) -* osd: simple scrub throttling (Sage Weil) -* osd: tests for bench command (Loic Dachary) -* osd: use xfs hint less frequently (Ilya Dryomov) -* pybind/rados: fix small timeouts (John Spray) -* qa: xfstests updates (Ilya Dryomov) -* rgw: cache bucket info (Yehuda Sadeh) -* rgw: cache decoded user info (Yehuda Sadeh) -* rgw: fix multipart object attr regression (#8452, Yehuda Sadeh) -* rgw: fix radosgw-admin 'show log' command (#8553, Yehuda Sadeh) -* rgw: fix URL decoding (#8702, Brian Rak) -* rgw: handle empty extra pool name (Yehuda Sadeh) -* rpm: do not restart daemons on upgrade (Alfredo Deza) -* rpm: misc packaging fixes for rhel7 (Sandon Van Ness) -* rpm: split ceph-common from ceph (Sandon Van Ness) -* systemd: wrap started daemons in new systemd environment (Sage Weil, Dan Mick) -* sysvinit: less sensitive to failures (Sage Weil) -* upstart: increase max open files limit (Sage Weil) - -v0.82 -===== - -This is the second post-firefly development release. It includes a range -of bug fixes and some usability improvements. There are some MDS debugging -and diagnostic tools, an improved 'ceph df', and some OSD backend refactoring -and cleanup. - -Notable Changes ---------------- - -* ceph-brag: add tox tests (Alfredo Deza) -* common: perfcounters now use atomics and go faster (Sage Weil) -* doc: CRUSH updates (John Wilkins) -* doc: osd primary affinity (John Wilkins) -* doc: pool quotas (John Wilkins) -* doc: pre-flight doc improvements (Kevin Dalley) -* doc: switch to an unencumbered font (Ross Turk) -* doc: update openstack docs (Josh Durgin) -* fix hppa arch build (Dmitry Smirnov) -* init-ceph: continue starting other daemons on crush or mount failure (#8343, Sage Weil) -* keyvaluestore: fix hint crash (#8381, Haomai Wang) -* libcephfs-java: build against older JNI headers (Greg Farnum) -* librados: fix rados_pool_list bounds checks (Sage Weil) -* mds: cephfs-journal-tool (John Spray) -* mds: improve Journaler on-disk format (John Spray) -* mds, libcephfs: use client timestamp for mtime/ctime (Sage Weil) -* mds: misc encoding improvements (John Spray) -* mds: misc fixes for multi-mds (Yan, Zheng) -* mds: OPTracker integration, dump_ops_in_flight (Greg Farnum) -* misc cleanup (Christophe Courtaut) -* mon: fix default replication pool ruleset choice (#8373, John Spray) -* mon: fix set cache_target_full_ratio (#8440, Geoffrey Hartz) -* mon: include per-pool 'max avail' in df output (Sage Weil) -* mon: prevent EC pools from being used with cephfs (Joao Eduardo Luis) -* mon: restore original weight when auto-marked out OSDs restart (Sage Weil) -* mon: use msg header tid for MMonGetVersionReply (Ilya Dryomov) -* osd: fix bogus assert during OSD shutdown (Sage Weil) -* osd: fix clone deletion case (#8334, Sam Just) -* osd: fix filestore removal corner case (#8332, Sam Just) -* osd: fix hang waiting for osdmap (#8338, Greg Farnum) -* osd: fix interval check corner case during peering (#8104, Sam Just) -* osd: fix journal-less operation (Sage Weil) -* osd: include backend information in metadata reported to mon (Sage Weil) -* rest-api: fix help (Ailing Zhang) -* rgw: check entity permission for put_metadata (#8428, Yehuda Sadeh) - - -v0.81 -===== - -This is the first development release since Firefly. It includes a -lot of work that we delayed merging while stabilizing things. Lots of -new functionality, as well as several fixes that are baking a bit before -getting backported. - -Upgrading ---------- - -* CephFS support for the legacy anchor table has finally been removed. - Users with file systems created before firefly should ensure that inodes - with multiple hard links are modified *prior* to the upgrade to ensure that - the backtraces are written properly. For example:: - - sudo find /mnt/cephfs -type f -links +1 -exec touch \{\} \; - -* Disallow nonsensical 'tier cache-mode' transitions. From this point - onward, 'writeback' can only transition to 'forward' and 'forward' - can transition to 1) 'writeback' if there are dirty objects, or 2) any if - there are no dirty objects. - -Notable Changes ---------------- - -* bash completion improvements (Wido den Hollander) -* brag: fixes, improvements (Loic Dachary) -* ceph-disk: handle corrupt volumes (Stuart Longlang) -* ceph-disk: partprobe as needed (Eric Eastman) -* ceph-fuse, libcephfs: asok hooks for handling session resets, timeouts (Yan, Zheng) -* ceph-fuse, libcephfs: improve traceless reply handling (Sage Weil) -* clang build fixes (John Spray, Danny Al-Gaaf) -* config: support G, M, K, etc. suffixes (Joao Eduardo Luis) -* coverity cleanups (Danny Al-Gaaf) -* doc: cache tiering (John Wilkins) -* doc: keystone integration docs (John Wilkins) -* doc: updated simple configuration guides (John Wilkins) -* libcephfs-java: fix gcj-jdk build (Dmitry Smirnov) -* librbd: check error code on cache invalidate (Josh Durgin) -* librbd: new libkrbd library for kernel map/unmap/showmapped (Ilya Dryomov) -* Makefile: fix out of source builds (Stefan Eilemann) -* mds: multi-mds fixes (Yan, Zheng) -* mds: remove legacy anchor table (Yan, Zheng) -* mds: remove legacy discover ino (Yan, Zheng) -* monclient: fix hang (Sage Weil) -* mon: prevent nonsensical cache-mode transitions (Joao Eduardo Luis) -* msgr: avoid big lock when sending (most) messages (Greg Farnum) -* osd: bound osdmap epoch skew between PGs (Sage Weil) -* osd: cache tier flushing fixes for snapped objects (Samuel Just) -* osd: fix agent early finish looping (David Zafman) -* osd: fix flush vs OpContext (Samuel Just) -* osd: fix MarkMeDown and other shutdown races (Sage Weil) -* osd: fix scrub vs cache bugs (Samuel Just) -* osd: fix trim of hitsets (Sage Weil) -* osd, msgr: fast-dispatch of OSD ops (Greg Farnum, Samuel Just) -* osd, objecter: resend ops on last_force_op_resend barrier; fix cache overlay op ordering (Sage Weil) -* osd: remove obsolete classic scrub code (David Zafman) -* osd: scrub PGs with invalid stats (Sage Weil) -* osd: simple snap trimmer throttle (Sage Weil) -* osd: use FIEMAP to inform copy_range (Haomai Wang) -* rbd-fuse: allow exposing single image (Stephen Taylor) -* rbd-fuse: fix unlink (Josh Durgin) -* removed mkcephfs (deprecated since dumpling) -* rgw: bucket link uses instance id (Yehuda Sadeh) -* rgw: fix memory leak following chunk read error (Yehuda Sadeh) -* rgw: fix URL escaping (Yehuda Sadeh) -* rgw: fix user manifest (Yehuda Sadeh) -* rgw: object and bucket rewrite functions to allow restriping old objects (Yehuda Sadeh) -* rgw: prevent multiobject PUT race (Yehuda Sadeh) -* rgw: send user manifest header (Yehuda Sadeh) -* test_librbd_fsx: test krbd as well as librbd (Ilya Dryomov) diff --git a/doc/releases/hammer.rst b/doc/releases/hammer.rst deleted file mode 100644 index b433f7061..000000000 --- a/doc/releases/hammer.rst +++ /dev/null @@ -1,2325 +0,0 @@ -====== -Hammer -====== - -Hammer is the 8th stable release of Ceph. It is named after the -hammer octopus (Octopus australis). - -v0.94.10 Hammer -=============== - -This Hammer point release fixes several bugs and adds two new features. - -We recommend that all hammer v0.94.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.10.txt>`. - -New Features ------------- - -ceph-objectstore-tool and ceph-monstore-tool now enable user to -rebuild the monitor database from OSDs. (This feature is especially useful when -all monitors fail to boot due to leveldb corruption.) - -In RADOS Gateway, it is now possible to reshard an existing bucket's index -using an off-line tool. - -Usage: - -$ radosgw-admin bucket reshard --bucket=<bucket_name> --num_shards=<num_shards> - -This will create a new linked bucket instance that points to the newly created -index objects. The old bucket instance still exists and currently it's up to -the user to manually remove the old bucket index objects. (Note that bucket -resharding currently requires that all IO (especially writes) to the specific -bucket is quiesced.) - -Other Notable Changes ---------------------- - -* build/ops: ceph-create-keys loops forever (`issue#17753 <http://tracker.ceph.com/issues/17753>`_, `pr#12805 <http://github.com/ceph/ceph/pull/12805>`_, Alfredo Deza) -* build/ops: improve ceph.in error message (`issue#11101 <http://tracker.ceph.com/issues/11101>`_, `pr#10905 <http://github.com/ceph/ceph/pull/10905>`_, Kefu Chai) -* build/ops: make stop.sh more portable (`issue#16918 <http://tracker.ceph.com/issues/16918>`_, `pr#10569 <http://github.com/ceph/ceph/pull/10569>`_, Mykola Golub) -* build/ops: remove SYSTEMD_RUN from initscript (`issue#16440 <http://tracker.ceph.com/issues/16440>`_, `issue#7627 <http://tracker.ceph.com/issues/7627>`_, `pr#9873 <http://github.com/ceph/ceph/pull/9873>`_, Vladislav Odintsov) -* cephx: Fix multiple segfaults due to attempts to encrypt or decrypt (`issue#16266 <http://tracker.ceph.com/issues/16266>`_, `pr#11930 <http://github.com/ceph/ceph/pull/11930>`_, Brad Hubbard) -* common: SIGABRT in TrackedOp::dump() via dump_ops_in_flight() (`issue#8885 <http://tracker.ceph.com/issues/8885>`_, `pr#12121 <http://github.com/ceph/ceph/pull/12121>`_, Jianpeng Ma, Zhiqiang Wang, David Zafman) -* common: os/ObjectStore: fix _update_op for split dest_cid (`issue#15345 <http://tracker.ceph.com/issues/15345>`_, `pr#12071 <http://github.com/ceph/ceph/pull/12071>`_, Sage Weil) -* crush: reset bucket->h.items[i] when removing tree item (`issue#16525 <http://tracker.ceph.com/issues/16525>`_, `pr#10724 <http://github.com/ceph/ceph/pull/10724>`_, Kefu Chai) -* doc: add "Upgrading to Hammer" section (`issue#17386 <http://tracker.ceph.com/issues/17386>`_, `pr#11372 <http://github.com/ceph/ceph/pull/11372>`_, Kefu Chai) -* doc: add orphan options to radosgw-admin --help and man page (`issue#17281 <http://tracker.ceph.com/issues/17281>`_, `issue#17280 <http://tracker.ceph.com/issues/17280>`_, `pr#11140 <http://github.com/ceph/ceph/pull/11140>`_, Abhishek Lekshmanan, Casey Bodley, Ken Dreyer, Thomas Serlin) -* doc: clarify that RGW bucket object versioning is supported (`issue#16574 <http://tracker.ceph.com/issues/16574>`_, `pr#10437 <http://github.com/ceph/ceph/pull/10437>`_, Yuan Zhou, shawn chen) -* librados: bad flags can crash the osd (`issue#16012 <http://tracker.ceph.com/issues/16012>`_, `pr#11936 <http://github.com/ceph/ceph/pull/11936>`_, Jianpeng Ma, Sage Weil) -* librbd: ceph 10.2.2 rbd status on image format 2 returns "(2) No such file or directory" (`issue#16887 <http://tracker.ceph.com/issues/16887>`_, `pr#10987 <http://github.com/ceph/ceph/pull/10987>`_, Jason Dillaman) -* librbd: diffs to clone's first snapshot should include parent diffs (`issue#18068 <http://tracker.ceph.com/issues/18068>`_, `pr#12446 <http://github.com/ceph/ceph/pull/12446>`_, Jason Dillaman) -* librbd: image.stat() call in librbdpy fails sometimes (`issue#17310 <http://tracker.ceph.com/issues/17310>`_, `pr#11949 <http://github.com/ceph/ceph/pull/11949>`_, Jason Dillaman) -* librbd: request exclusive lock if current owner cannot execute op (`issue#16171 <http://tracker.ceph.com/issues/16171>`_, `pr#12018 <http://github.com/ceph/ceph/pull/12018>`_, Mykola Golub) -* mds: fix cephfs-java ftruncate unit test failure (`issue#11258 <http://tracker.ceph.com/issues/11258>`_, `pr#11939 <http://github.com/ceph/ceph/pull/11939>`_, Yan, Zheng) -* mon: %USED of ceph df is wrong (`issue#16933 <http://tracker.ceph.com/issues/16933>`_, `pr#11934 <http://github.com/ceph/ceph/pull/11934>`_, Kefu Chai) -* mon: MonmapMonitor should return success when MON will be removed (`issue#17725 <http://tracker.ceph.com/issues/17725>`_, `pr#12006 <http://github.com/ceph/ceph/pull/12006>`_, Joao Eduardo Luis) -* mon: OSDMonitor: Missing nearfull flag set (`issue#17390 <http://tracker.ceph.com/issues/17390>`_, `pr#11273 <http://github.com/ceph/ceph/pull/11273>`_, Igor Podoski) -* mon: OSDs marked OUT wrongly after monitor failover (`issue#17719 <http://tracker.ceph.com/issues/17719>`_, `pr#11946 <http://github.com/ceph/ceph/pull/11946>`_, Dong Wu) -* mon: fix memory leak in prepare_beacon (`issue#17285 <http://tracker.ceph.com/issues/17285>`_, `pr#10238 <http://github.com/ceph/ceph/pull/10238>`_, Igor Podoski) -* mon: osd flag health message is misleading (`issue#18175 <http://tracker.ceph.com/issues/18175>`_, `pr#12687 <http://github.com/ceph/ceph/pull/12687>`_, Sage Weil) -* mon: prepare_pgtemp needs to only update up_thru if newer than the existing one (`issue#16185 <http://tracker.ceph.com/issues/16185>`_, `pr#11937 <http://github.com/ceph/ceph/pull/11937>`_, Samuel Just) -* mon: return size_t from MonitorDBStore::Transaction::size() (`issue#14217 <http://tracker.ceph.com/issues/14217>`_, `pr#10904 <http://github.com/ceph/ceph/pull/10904>`_, Kefu Chai) -* mon: send updated monmap to its subscribers (`issue#17558 <http://tracker.ceph.com/issues/17558>`_, `pr#11457 <http://github.com/ceph/ceph/pull/11457>`_, Kefu Chai) -* msgr: OpTracker needs to release the message throttle in _unregistered (`issue#14248 <http://tracker.ceph.com/issues/14248>`_, `pr#11938 <http://github.com/ceph/ceph/pull/11938>`_, Samuel Just) -* msgr: simple/Pipe: error decoding addr (`issue#18072 <http://tracker.ceph.com/issues/18072>`_, `pr#12266 <http://github.com/ceph/ceph/pull/12266>`_, Sage Weil) -* osd: PG::_update_calc_stats wrong for CRUSH_ITEM_NONE up set items (`issue#16998 <http://tracker.ceph.com/issues/16998>`_, `pr#11933 <http://github.com/ceph/ceph/pull/11933>`_, Samuel Just) -* osd: PG::choose_acting valgrind error or ./common/hobject.h: 182: FAILED assert(!max || (\*this == hobject_t(hobject_t::get_max()))) (`issue#13967 <http://tracker.ceph.com/issues/13967>`_, `pr#11932 <http://github.com/ceph/ceph/pull/11932>`_, Tao Chang) -* osd: ReplicatedBackend::build_push_op: add a second config to limit omap entries/chunk independently of object data (`issue#16128 <http://tracker.ceph.com/issues/16128>`_, `pr#12417 <http://github.com/ceph/ceph/pull/12417>`_, Wanlong Gao) -* osd: crash on EIO during deep-scrubbing (`issue#16034 <http://tracker.ceph.com/issues/16034>`_, `pr#11935 <http://github.com/ceph/ceph/pull/11935>`_, Nathan Cutler) -* osd: filestore: FALLOC_FL_PUNCH_HOLE must be used with FALLOC_FL_KEEP_SIZE (`issue#18446 <http://tracker.ceph.com/issues/18446>`_, `pr#13041 <http://github.com/ceph/ceph/pull/13041>`_, xinxin shu) -* osd: fix cached_removed_snaps bug in PGPool::update after map gap (`issue#18628 <http://tracker.ceph.com/issues/18628>`_, `issue#15943 <http://tracker.ceph.com/issues/15943>`_, `pr#12906 <http://github.com/ceph/ceph/pull/12906>`_, Samuel Just) -* osd: fix collection_list shadow return value (`issue#17713 <http://tracker.ceph.com/issues/17713>`_, `pr#11927 <http://github.com/ceph/ceph/pull/11927>`_, Haomai Wang) -* osd: fix fiemap issue in xfs when #extents > 1364 (`issue#17610 <http://tracker.ceph.com/issues/17610>`_, `pr#11615 <http://github.com/ceph/ceph/pull/11615>`_, Kefu Chai, Ning Yao) -* osd: update PGPool to detect map gaps and reset cached_removed_snaps (`issue#15943 <http://tracker.ceph.com/issues/15943>`_, `pr#11676 <http://github.com/ceph/ceph/pull/11676>`_, Samuel Just) -* rbd: export diff should open image as read-only (`issue#17671 <http://tracker.ceph.com/issues/17671>`_, `pr#11948 <http://github.com/ceph/ceph/pull/11948>`_, liyankun) -* rbd: fix parameter check (`issue#18237 <http://tracker.ceph.com/issues/18237>`_, `pr#12312 <http://github.com/ceph/ceph/pull/12312>`_, Yankun Li) -* rbd: fix possible rbd data corruption (`issue#16002 <http://tracker.ceph.com/issues/16002>`_, `pr#11618 <http://github.com/ceph/ceph/pull/11618>`_, Yan, Zheng, Greg Farnum) -* rgw: Anonymous user is able to read bucket with authenticated read ACL (`issue#13207 <http://tracker.ceph.com/issues/13207>`_, `pr#11045 <http://github.com/ceph/ceph/pull/11045>`_, rahul.1aggarwal@gmail.com) -* rgw: COPY broke multipart files uploaded under dumpling (`issue#16435 <http://tracker.ceph.com/issues/16435>`_, `pr#11950 <http://github.com/ceph/ceph/pull/11950>`_, Yehuda Sadeh) -* rgw: TempURL in radosgw behaves now like its Swift's counterpart. (`issue#18316 <http://tracker.ceph.com/issues/18316>`_, `pr#12619 <http://github.com/ceph/ceph/pull/12619>`_, Radoslaw Zarzynski) -* rgw: default quota fixes (`issue#16410 <http://tracker.ceph.com/issues/16410>`_, `pr#10839 <http://github.com/ceph/ceph/pull/10839>`_, Pavan Rallabhandi, Daniel Gryniewicz) -* rgw: do not abort when accept a CORS request with short origin (`issue#18187 <http://tracker.ceph.com/issues/18187>`_, `pr#12398 <http://github.com/ceph/ceph/pull/12398>`_, LiuYang) -* rgw: do not omap_getvals with (u64)-1 max (`issue#17985 <http://tracker.ceph.com/issues/17985>`_, `pr#12418 <http://github.com/ceph/ceph/pull/12418>`_, Yehuda Sadeh, Sage Weil) -* rgw: fix crash when client posts object with null condition (`issue#17635 <http://tracker.ceph.com/issues/17635>`_, `pr#11809 <http://github.com/ceph/ceph/pull/11809>`_, Yehuda Sadeh) -* rgw: fix inconsistent uid/email handling in radosgw-admin (`issue#13598 <http://tracker.ceph.com/issues/13598>`_, `pr#11952 <http://github.com/ceph/ceph/pull/11952>`_, Matt Benjamin) -* rgw: implement offline resharding command (`issue#17745 <http://tracker.ceph.com/issues/17745>`_, `pr#12227 <http://github.com/ceph/ceph/pull/12227>`_, Yehuda Sadeh, Orit Wasserman, weiqiaomiao) -* rgw: swift: ranged request on a DLO provides wrong values in Content-Range HTTP header (`issue#13452 <http://tracker.ceph.com/issues/13452>`_, `pr#11951 <http://github.com/ceph/ceph/pull/11951>`_, Radoslaw Zarzynski) -* rgw: the value of total_time is wrong in the result of 'radosgw-admin log show' opt (`issue#17598 <http://tracker.ceph.com/issues/17598>`_, `pr#11899 <http://github.com/ceph/ceph/pull/11899>`_, weiqiaomiao) -* tests: Cannot clone ceph/s3-tests.git (missing branch) (`issue#18384 <http://tracker.ceph.com/issues/18384>`_, `pr#12744 <http://github.com/ceph/ceph/pull/12744>`_, Orit Wasserman) -* tests: Cannot reserve CentOS 7.2 smithi machines (`issue#18401 <http://tracker.ceph.com/issues/18401>`_, `pr#12762 <http://github.com/ceph/ceph/pull/12762>`_, Nathan Cutler) -* tests: OSDs commit suicide in rbd suite when testing on btrfs (`issue#18397 <http://tracker.ceph.com/issues/18397>`_, `pr#12758 <http://github.com/ceph/ceph/pull/12758>`_, Nathan Cutler) -* tests: Workunits needlessly wget from git.ceph.com (`issue#18336 <http://tracker.ceph.com/issues/18336>`_, `issue#18271 <http://tracker.ceph.com/issues/18271>`_, `issue#18388 <http://tracker.ceph.com/issues/18388>`_, `pr#12685 <http://github.com/ceph/ceph/pull/12685>`_, Sage Weil, Nathan Cutler) -* tests: cephfs test failures (ceph.com/qa is broken, should be download.ceph.com/qa) (`issue#18574 <http://tracker.ceph.com/issues/18574>`_, `pr#13022 <http://github.com/ceph/ceph/pull/13022>`_, John Spray) -* tests: merge ceph-qa-suite (`pr#12455 <http://github.com/ceph/ceph/pull/12455>`_, Sage Weil) -* tests: objecter_requests workunit fails on wip branches (`issue#18393 <http://tracker.ceph.com/issues/18393>`_, `pr#12759 <http://github.com/ceph/ceph/pull/12759>`_, Sage Weil) -* tests: populate mnt_point in qa/tasks/ceph.py (`issue#18383 <http://tracker.ceph.com/issues/18383>`_, `pr#12743 <http://github.com/ceph/ceph/pull/12743>`_, Nathan Cutler) -* tests: qemu/tests/qemu-iotests/077 fails in dumpling, hammer, and jewel (`issue#10773 <http://tracker.ceph.com/issues/10773>`_, `pr#12423 <http://github.com/ceph/ceph/pull/12423>`_, Jason Dillaman) -* tests: run fs/thrash on xfs instead of btrfs (`issue#17151 <http://tracker.ceph.com/issues/17151>`_, `pr#13039 <http://github.com/ceph/ceph/pull/13039>`_, Nathan Cutler) -* tests: update Ubuntu image url after ceph.com refactor (`issue#18542 <http://tracker.ceph.com/issues/18542>`_, `pr#12957 <http://github.com/ceph/ceph/pull/12957>`_, Jason Dillaman) -* tests: update rbd/singleton/all/formatted-output.yaml to support ceph-ci * (`issue#18440 <http://tracker.ceph.com/issues/18440>`_, `pr#12824 * <http://github.com/ceph/ceph/pull/12824>`_, Venky Shankar, Nathan Cutler) -* tools: add a tool to rebuild mon store from OSD (`issue#17179 <http://tracker.ceph.com/issues/17179>`_, `issue#17400 <http://tracker.ceph.com/issues/17400>`_, `pr#11125 <http://github.com/ceph/ceph/pull/11125>`_, Kefu Chai, xie xingguo) -* tools: ceph-objectstore-tool crashes if --journal-path <a-directory> (`issue#17307 <http://tracker.ceph.com/issues/17307>`_, `pr#11929 <http://github.com/ceph/ceph/pull/11929>`_, Kefu Chai) -* tools: ceph-objectstore-tool: add a way to split filestore directories offline (`issue#17220 <http://tracker.ceph.com/issues/17220>`_, `pr#11253 <http://github.com/ceph/ceph/pull/11253>`_, Josh Durgin) -* tools: crushtool --compile generates output despite missing item (`issue#17306 <http://tracker.ceph.com/issues/17306>`_, `pr#11931 <http://github.com/ceph/ceph/pull/11931>`_, Kefu Chai) - - -v0.94.9 Hammer -============== - -This Hammer point release fixes a build issue present in 0.94.8 that prevented us -from generating packages for Ubuntu Precise and CentOS 6.x. - -We recommend all users of v0.94.7 or older upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.9.txt>`. - -Notable Changes ---------------- - -* build/ops: revert: boost uuid makes valgrind complain (`pr#10913 <http://github.com/ceph/ceph/pull/10913>`_, Sage Weil) - - -v0.94.8 Hammer -============== - -This Hammer point release fixes several bugs. - -We recommend that all hammer v0.94.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.8.txt>`. - -Notable Changes ---------------- - -* build/ops: rocksdb do not link against tcmalloc if it's disabled (`issue#14799 <http://tracker.ceph.com/issues/14799>`_, `pr#10750 <http://github.com/ceph/ceph/pull/10750>`_, Sage Weil, Kefu Chai) -* build/ops: Add -D_LARGEFILE64_SOURCE to Linux build. (`issue#16611 <http://tracker.ceph.com/issues/16611>`_, `pr#10182 <http://github.com/ceph/ceph/pull/10182>`_, Ira Cooper) -* build/ops: boost uuid makes valgrind complain (`issue#12736 <http://tracker.ceph.com/issues/12736>`_, `pr#9741 <http://github.com/ceph/ceph/pull/9741>`_, Sage Weil, Rohan Mars) -* build/ops: ceph-disk s/by-parttype-uuid/by-parttypeuuid/ (`issue#15867 <http://tracker.ceph.com/issues/15867>`_, `pr#9107 <http://github.com/ceph/ceph/pull/9107>`_, Nathan Cutler) -* common: add units to rados bench output and clean up formatting (`issue#12248 <http://tracker.ceph.com/issues/12248>`_, `pr#8960 <http://github.com/ceph/ceph/pull/8960>`_, Dmitry Yatsushkevich, Brad Hubbard, Gu Zhongyan) -* common: config set with negative value results in "error setting 'filestore_merge_threshold' to '-40': (22) Invalid argument" (`issue#13829 <http://tracker.ceph.com/issues/13829>`_, `pr#10291 <http://github.com/ceph/ceph/pull/10291>`_, Brad Hubbard, Kefu Chai) -* common: linking to -lrbd causes process startup times to balloon (`issue#15225 <http://tracker.ceph.com/issues/15225>`_, `pr#8538 <http://github.com/ceph/ceph/pull/8538>`_, Richard W.M. Jones) -* doc: fix by-parttypeuuid in ceph-disk(8) nroff (`issue#15867 <http://tracker.ceph.com/issues/15867>`_, `pr#10699 <http://github.com/ceph/ceph/pull/10699>`_, Ken Dreyer) -* fs: double decreased the count to trim caps which will cause failing to respond to cache pressure (`issue#14319 <http://tracker.ceph.com/issues/14319>`_, `pr#8804 <http://github.com/ceph/ceph/pull/8804>`_, Zhi Zhang) -* log: do not repeat errors to stderr (`issue#14616 <http://tracker.ceph.com/issues/14616>`_, `pr#10227 <http://github.com/ceph/ceph/pull/10227>`_, Sage Weil) -* mds: failing file operations on kernel based cephfs mount point leaves unaccessible file behind on hammer 0.94.7 (`issue#16013 <http://tracker.ceph.com/issues/16013>`_, `pr#10198 <http://github.com/ceph/ceph/pull/10198>`_, Yan, Zheng) -* mds: fix stray purging in 'stripe_count > 1' case (`issue#15050 <http://tracker.ceph.com/issues/15050>`_, `pr#8042 <http://github.com/ceph/ceph/pull/8042>`_, Yan, Zheng) -* mds: wrongly treat symlink inode as normal file/dir when symlink inode is stale on kcephfs (`issue#15702 <http://tracker.ceph.com/issues/15702>`_, `pr#9404 <http://github.com/ceph/ceph/pull/9404>`_, Zhi Zhang) -* mon: LibRadosMiscConnectFailure.ConnectFailure (not so intermittent) failure in upgrade/hammer-x (`issue#13992 <http://tracker.ceph.com/issues/13992>`_, `pr#8806 <http://github.com/ceph/ceph/pull/8806>`_, Sage Weil) -* mon: Monitor: validate prefix on handle_command() (`issue#16297 <http://tracker.ceph.com/issues/16297>`_, `pr#10038 <http://github.com/ceph/ceph/pull/10038>`_, You Ji) -* mon: drop pg temps from not the current primary in OSDMonitor (`issue#16127 <http://tracker.ceph.com/issues/16127>`_, `pr#9893 <http://github.com/ceph/ceph/pull/9893>`_, Samuel Just) -* mon: fix calculation of %USED (`issue#15641 <http://tracker.ceph.com/issues/15641>`_, `pr#9125 <http://github.com/ceph/ceph/pull/9125>`_, Ruifeng Yang, David Zafman) -* mon: improve reweight_by_utilization() logic (`issue#15686 <http://tracker.ceph.com/issues/15686>`_, `pr#9416 <http://github.com/ceph/ceph/pull/9416>`_, xie xingguo) -* mon: pool quota alarm is not in effect (`issue#15478 <http://tracker.ceph.com/issues/15478>`_, `pr#8593 <http://github.com/ceph/ceph/pull/8593>`_, Danny Al-Gaaf) -* mon: wrong ceph get mdsmap assertion (`issue#14681 <http://tracker.ceph.com/issues/14681>`_, `pr#7542 <http://github.com/ceph/ceph/pull/7542>`_, Vicente Cheng) -* msgr: ceph-osd valgrind invalid reads/writes (`issue#15870 <http://tracker.ceph.com/issues/15870>`_, `pr#9238 <http://github.com/ceph/ceph/pull/9238>`_, Samuel Just) -* objecter: LibRadosWatchNotifyPPTests/LibRadosWatchNotifyPP.WatchNotify2Timeout/1 segv (`issue#15760 <http://tracker.ceph.com/issues/15760>`_, `pr#9400 <http://github.com/ceph/ceph/pull/9400>`_, Sage Weil) -* osd: OSD reporting ENOTEMPTY and crashing (`issue#14766 <http://tracker.ceph.com/issues/14766>`_, `pr#9277 <http://github.com/ceph/ceph/pull/9277>`_, Samuel Just) -* osd: When generating past intervals due to an import end at pg epoch and fix build_past_intervals_parallel (`issue#12387 <http://tracker.ceph.com/issues/12387>`_, `issue#14438 <http://tracker.ceph.com/issues/14438>`_, `pr#8464 <http://github.com/ceph/ceph/pull/8464>`_, David Zafman) -* osd: acting_primary not updated on split (`issue#15523 <http://tracker.ceph.com/issues/15523>`_, `pr#9001 <http://github.com/ceph/ceph/pull/9001>`_, Sage Weil) -* osd: assert(!actingbackfill.empty()): old watch timeout tries to queue repop on replica (`issue#15391 <http://tracker.ceph.com/issues/15391>`_, `pr#8665 <http://github.com/ceph/ceph/pull/8665>`_, Sage Weil) -* osd: assert(rollback_info_trimmed_to == head) in PGLog (`issue#13965 <http://tracker.ceph.com/issues/13965>`_, `pr#8849 <http://github.com/ceph/ceph/pull/8849>`_, Samuel Just) -* osd: delete one of the repeated op->mark_started in ReplicatedBackend::sub_op_modify_impl (`issue#16572 <http://tracker.ceph.com/issues/16572>`_, `pr#9977 <http://github.com/ceph/ceph/pull/9977>`_, shun-s) -* osd: fix omap digest compare when scrub (`issue#16000 <http://tracker.ceph.com/issues/16000>`_, `pr#9271 <http://github.com/ceph/ceph/pull/9271>`_, Xinze Chi) -* osd: is_split crash in handle_pg_create (`issue#15426 <http://tracker.ceph.com/issues/15426>`_, `pr#8805 <http://github.com/ceph/ceph/pull/8805>`_, Kefu Chai) -* osd: objects unfound after repair (fixed by repeering the pg) (`issue#15006 <http://tracker.ceph.com/issues/15006>`_, `pr#7961 <http://github.com/ceph/ceph/pull/7961>`_, Jianpeng Ma, Loic Dachary, Kefu Chai) -* osd: rados cppool omap to ec pool crashes osd (`issue#14695 <http://tracker.ceph.com/issues/14695>`_, `pr#8845 <http://github.com/ceph/ceph/pull/8845>`_, Jianpeng Ma) -* osd: remove all stale osdmaps in handle_osd_map() (`issue#13990 <http://tracker.ceph.com/issues/13990>`_, `pr#9090 <http://github.com/ceph/ceph/pull/9090>`_, Kefu Chai) -* osd: send write and read sub ops on behalf of client ops at normal priority in ECBackend (`issue#14313 <http://tracker.ceph.com/issues/14313>`_, `pr#8573 <http://github.com/ceph/ceph/pull/8573>`_, Samuel Just) -* rbd: snap rollback: restore the link to parent (`issue#14512 <http://tracker.ceph.com/issues/14512>`_, `pr#8535 <http://github.com/ceph/ceph/pull/8535>`_, Alexey Sheplyakov) -* rgw: S3: set EncodingType in ListBucketResult (`issue#15896 <http://tracker.ceph.com/issues/15896>`_, `pr#8987 <http://github.com/ceph/ceph/pull/8987>`_, Victor Makarov, Robin H. Johnson) -* rgw: backport rgwx-copy-if-newer for radosgw-agent (`issue#16262 <http://tracker.ceph.com/issues/16262>`_, `pr#9671 <http://github.com/ceph/ceph/pull/9671>`_, Yehuda Sadeh) -* rgw: bucket listing following object delete is partial (`issue#14826 <http://tracker.ceph.com/issues/14826>`_, `pr#10555 <http://github.com/ceph/ceph/pull/10555>`_, Orit Wasserman) -* rgw: convert plain object to versioned (with null version) when removing (`issue#15243 <http://tracker.ceph.com/issues/15243>`_, `pr#8755 <http://github.com/ceph/ceph/pull/8755>`_, Yehuda Sadeh) -* rgw: fix multi-delete query param parsing. (`issue#16618 <http://tracker.ceph.com/issues/16618>`_, `pr#10189 <http://github.com/ceph/ceph/pull/10189>`_, Robin H. Johnson) -* rgw: have a flavor of bucket deletion to bypass GC and to trigger (`issue#15557 <http://tracker.ceph.com/issues/15557>`_, `pr#10509 <http://github.com/ceph/ceph/pull/10509>`_, Pavan Rallabhandi) -* rgw: keep track of written_objs correctly (`issue#15886 <http://tracker.ceph.com/issues/15886>`_, `pr#9240 <http://github.com/ceph/ceph/pull/9240>`_, Yehuda Sadeh) -* rgw: multipart ListPartsResult has missing quotes on ETag (`issue#15334 <http://tracker.ceph.com/issues/15334>`_, `pr#8475 <http://github.com/ceph/ceph/pull/8475>`_, xie xingguo, Robin H. Johnson) -* rgw: no Last-Modified, Content-Size and X-Object-Manifest headers if no segments in DLO manifest (`issue#15812 <http://tracker.ceph.com/issues/15812>`_, `pr#9402 <http://github.com/ceph/ceph/pull/9402>`_, Radoslaw Zarzynski) -* rgw: radosgw server abort when user passed bad parameters to set quota (`issue#14190 <http://tracker.ceph.com/issues/14190>`_, `issue#14191 <http://tracker.ceph.com/issues/14191>`_, `pr#8313 <http://github.com/ceph/ceph/pull/8313>`_, Dunrong Huang) -* rgw: radosgw-admin region-map set is not reporting the bucket quota correctly (`issue#16815 <http://tracker.ceph.com/issues/16815>`_, `pr#10554 <http://github.com/ceph/ceph/pull/10554>`_, Yehuda Sadeh, Orit Wasserman) -* rgw: refrain from sending Content-Type/Content-Length for 304 responses (`issue#16327 <http://tracker.ceph.com/issues/16327>`_, `issue#13582 <http://tracker.ceph.com/issues/13582>`_, `issue#15119 <http://tracker.ceph.com/issues/15119>`_, `issue#14005 <http://tracker.ceph.com/issues/14005>`_, `pr#8379 <http://github.com/ceph/ceph/pull/8379>`_, Yehuda Sadeh, Nathan Cutler, Wido den Hollander) -* rgw: remove bucket index objects when deleting the bucket (`issue#16412 <http://tracker.ceph.com/issues/16412>`_, `pr#10530 <http://github.com/ceph/ceph/pull/10530>`_, Orit Wasserman) -* rgw: set Access-Control-Allow-Origin to an asterisk if allowed in a rule (`issue#15348 <http://tracker.ceph.com/issues/15348>`_, `pr#8528 <http://github.com/ceph/ceph/pull/8528>`_, Wido den Hollander) -* rgw: subset of uploaded objects via radosgw are unretrievable when using EC pool (`issue#15745 <http://tracker.ceph.com/issues/15745>`_, `pr#9407 <http://github.com/ceph/ceph/pull/9407>`_, Yehuda Sadeh) -* rgw: subuser rm fails with status 125 (`issue#14375 <http://tracker.ceph.com/issues/14375>`_, `pr#9961 <http://github.com/ceph/ceph/pull/9961>`_, Orit Wasserman) -* rgw: the swift key remains after removing a subuser (`issue#12890 <http://tracker.ceph.com/issues/12890>`_, `issue#14375 <http://tracker.ceph.com/issues/14375>`_, `pr#10718 <http://github.com/ceph/ceph/pull/10718>`_, Orit Wasserman, Sangdi Xu) -* rgw: user quota may not adjust on bucket removal (`issue#14507 <http://tracker.ceph.com/issues/14507>`_, `pr#8113 <http://github.com/ceph/ceph/pull/8113>`_, Edward Yang) -* tests: be more generous with test timeout (`issue#15403 <http://tracker.ceph.com/issues/15403>`_, `pr#8470 <http://github.com/ceph/ceph/pull/8470>`_, Loic Dachary) -* tests: qa/workunits/rbd: respect RBD_CREATE_ARGS environment variable (`issue#16289 <http://tracker.ceph.com/issues/16289>`_, `pr#9722 <http://github.com/ceph/ceph/pull/9722>`_, Mykola Golub) - -v0.94.7 Hammer -============== - -This Hammer point release fixes several minor bugs. It also includes -a backport of an improved 'ceph osd reweight-by-utilization' command -for handling OSDs with higher-than-average utilizations. - -We recommend that all hammer v0.94.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.7.txt>`. - -Notable Changes ---------------- - -* auth: keyring permisions for mon deamon (`issue#14950 <http://tracker.ceph.com/issues/14950>`_, `pr#8049 <http://github.com/ceph/ceph/pull/8049>`_, Owen Synge) -* auth: PK11_DestroyContext() is called twice if PK11_DigestFinal() fails (`issue#14958 <http://tracker.ceph.com/issues/14958>`_, `pr#7922 <http://github.com/ceph/ceph/pull/7922>`_, Brad Hubbard, Dunrong Huang) -* auth: use libnss more safely (`issue#14620 <http://tracker.ceph.com/issues/14620>`_, `pr#7488 <http://github.com/ceph/ceph/pull/7488>`_, Sage Weil) -* ceph-disk: use blkid instead of sgdisk -i (`issue#14080 <http://tracker.ceph.com/issues/14080>`_, `issue#14094 <http://tracker.ceph.com/issues/14094>`_, `pr#7475 <http://github.com/ceph/ceph/pull/7475>`_, Ilya Dryomov, Loic Dachary) -* ceph-fuse: fix ceph-fuse writing to stale log file after log rotation (`issue#12350 <http://tracker.ceph.com/issues/12350>`_, `pr#7110 <http://github.com/ceph/ceph/pull/7110>`_, Zhi Zhang) -* ceph init script unconditionally sources /lib/lsb/init-functions (`issue#14402 <http://tracker.ceph.com/issues/14402>`_, `pr#7797 <http://github.com/ceph/ceph/pull/7797>`_, Yan, Zheng) -* ceph.in: Notify user that 'tell' can't be used in interactive mode (`issue#14773 <http://tracker.ceph.com/issues/14773>`_, `pr#7656 <http://github.com/ceph/ceph/pull/7656>`_, David Zafman) -* ceph-objectstore-tool, osd: Fix import handling (`issue#10794 <http://tracker.ceph.com/issues/10794>`_, `issue#13382 <http://tracker.ceph.com/issues/13382>`_, `pr#7917 <http://github.com/ceph/ceph/pull/7917>`_, Sage Weil, David Zafman) -* client: added permission check based on getgrouplist (`issue#13268 <http://tracker.ceph.com/issues/13268>`_, `pr#6604 <http://github.com/ceph/ceph/pull/6604>`_, Yan, Zheng, Danny Al-Gaaf) -* client: inoderef (`issue#13729 <http://tracker.ceph.com/issues/13729>`_, `pr#6551 <http://github.com/ceph/ceph/pull/6551>`_, Yan, Zheng) -* common: clock skew report is incorrect by ceph health detail command (`issue#14175 <http://tracker.ceph.com/issues/14175>`_, `pr#8051 <http://github.com/ceph/ceph/pull/8051>`_, Joao Eduardo Luis) -* global/pidfile: do not start two daemons with a single pid-file (`issue#13422 <http://tracker.ceph.com/issues/13422>`_, `pr#7671 <http://github.com/ceph/ceph/pull/7671>`_, Loic Dachary, shun song) -* librados: segfault in Objecter::handle_watch_notify (`issue#13805 <http://tracker.ceph.com/issues/13805>`_, `pr#7992 <http://github.com/ceph/ceph/pull/7992>`_, Sage Weil) -* librbd: flattening an rbd image with active IO can lead to hang (`issue#14092 <http://tracker.ceph.com/issues/14092>`_, `issue#14483 <http://tracker.ceph.com/issues/14483>`_, `pr#7485 <http://github.com/ceph/ceph/pull/7485>`_, Jason Dillaman) -* librbd: possible QEMU deadlock after creating image snapshots (`issue#14988 <http://tracker.ceph.com/issues/14988>`_, `pr#8011 <http://github.com/ceph/ceph/pull/8011>`_, Jason Dillaman) -* mon: Bucket owner isn't changed after unlink/link (`issue#11076 <http://tracker.ceph.com/issues/11076>`_, `pr#8583 <http://github.com/ceph/ceph/pull/8583>`_, Zengran Zhang) -* monclient: avoid key renew storm on clock skew (`issue#12065 <http://tracker.ceph.com/issues/12065>`_, `pr#8398 <http://github.com/ceph/ceph/pull/8398>`_, Alexey Sheplyakov) -* mon: implement reweight-by-utilization feature (`issue#15054 <http://tracker.ceph.com/issues/15054>`_, `pr#8026 <http://github.com/ceph/ceph/pull/8026>`_, Kefu Chai, Dan van der Ster, Sage Weil) -* mon/LogMonitor: use the configured facility if log to syslog (`issue#13748 <http://tracker.ceph.com/issues/13748>`_, `pr#7648 <http://github.com/ceph/ceph/pull/7648>`_, Kefu Chai) -* mon: mon sync does not copy config-key (`issue#14577 <http://tracker.ceph.com/issues/14577>`_, `pr#7576 <http://github.com/ceph/ceph/pull/7576>`_, Xiaowei Chen) -* mon/OSDMonitor: avoid underflow in reweight-by-utilization if max_change=1 (`issue#15655 <http://tracker.ceph.com/issues/15655>`_, `pr#8979 <http://github.com/ceph/ceph/pull/8979>`_, Samuel Just) -* osd: consume_maps clearing of waiting_for_pg needs to check the spg_t shard for acting set membership (`issue#14278 <http://tracker.ceph.com/issues/14278>`_, `pr#7577 <http://github.com/ceph/ceph/pull/7577>`_, Samuel Just) -* osd: log inconsistent shard sizes (`issue#14009 <http://tracker.ceph.com/issues/14009>`_, `pr#6946 <http://github.com/ceph/ceph/pull/6946>`_, Loic Dachary) -* osd: OSD coredumps with leveldb compact on mount = true (`issue#14748 <http://tracker.ceph.com/issues/14748>`_, `pr#7645 <http://github.com/ceph/ceph/pull/7645>`_, Xiaoxi Chen) -* osd/OSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from (`issue#14686 <http://tracker.ceph.com/issues/14686>`_, `pr#7590 <http://github.com/ceph/ceph/pull/7590>`_, Xinze Chi) -* osd: Protect against excessively large object map sizes (`issue#15121 <http://tracker.ceph.com/issues/15121>`_, `pr#8401 <http://github.com/ceph/ceph/pull/8401>`_, Jason Dillaman) -* osd/ReplicatedPG: do not proxy read *and* process op locally (`issue#15171 <http://tracker.ceph.com/issues/15171>`_, `pr#8187 <http://github.com/ceph/ceph/pull/8187>`_, Sage Weil) -* osd: scrub bogus results when missing a clone (`issue#14875 <http://tracker.ceph.com/issues/14875>`_, `issue#14874 <http://tracker.ceph.com/issues/14874>`_, `issue#14877 <http://tracker.ceph.com/issues/14877>`_, `issue#10098 <http://tracker.ceph.com/issues/10098>`_, `issue#14878 <http://tracker.ceph.com/issues/14878>`_, `issue#14881 <http://tracker.ceph.com/issues/14881>`_, `issue#14882 <http://tracker.ceph.com/issues/14882>`_, `issue#14883 <http://tracker.ceph.com/issues/14883>`_, `issue#14879 <http://tracker.ceph.com/issues/14879>`_, `issue#10290 <http://tracker.ceph.com/issues/10290>`_, `issue#12740 <http://tracker.ceph.com/issues/12740>`_, `issue#12738 <http://tracker.ceph.com/issues/12738>`_, `issue#14880 <http://tracker.ceph.com/issues/14880>`_, `issue#11135 <http://tracker.ceph.com/issues/11135>`_, `issue#14876 <http://tracker.ceph.com/issues/14876>`_, `issue#10809 <http://tracker.ceph.com/issues/10809>`_, `issue#12193 <http://tracker.ceph.com/issues/12193>`_, `issue#11237 <http://tracker.ceph.com/issues/11237>`_, `pr#7702 <http://github.com/ceph/ceph/pull/7702>`_, Xinze Chi, Sage Weil, John Spray, Kefu Chai, Mykola Golub, David Zafman) -* osd: Unable to bring up OSD's after dealing with FULL cluster (OSD assert with /include/interval_set.h: 386: FAILED assert(_size >= 0)) (`issue#14428 <http://tracker.ceph.com/issues/14428>`_, `pr#7415 <http://github.com/ceph/ceph/pull/7415>`_, Alexey Sheplyakov) -* osd: use GMT time for the object name of hitsets (`issue#13192 <http://tracker.ceph.com/issues/13192>`_, `issue#9732 <http://tracker.ceph.com/issues/9732>`_, `issue#12968 <http://tracker.ceph.com/issues/12968>`_, `pr#7883 <http://github.com/ceph/ceph/pull/7883>`_, Kefu Chai, David Zafman) -* qa/workunits/post-file.sh: sudo (`issue#14586 <http://tracker.ceph.com/issues/14586>`_, `pr#7456 <http://github.com/ceph/ceph/pull/7456>`_, Sage Weil) -* qa/workunits: remove 'mds setmap' from workunits (`pr#8123 <http://github.com/ceph/ceph/pull/8123>`_, Sage Weil) -* rgw: default quota params (`issue#12997 <http://tracker.ceph.com/issues/12997>`_, `pr#7188 <http://github.com/ceph/ceph/pull/7188>`_, Daniel Gryniewicz) -* rgw: make rgw_fronends more forgiving of whitespace (`issue#12038 <http://tracker.ceph.com/issues/12038>`_, `pr#7414 <http://github.com/ceph/ceph/pull/7414>`_, Matt Benjamin) -* rgw: radosgw-admin bucket check --fix not work (`issue#14215 <http://tracker.ceph.com/issues/14215>`_, `pr#7185 <http://github.com/ceph/ceph/pull/7185>`_, Weijun Duan) -* rpm package building fails if the build machine has lttng and babeltrace development packages installed locally (`issue#14844 <http://tracker.ceph.com/issues/14844>`_, `pr#8440 <http://github.com/ceph/ceph/pull/8440>`_, Kefu Chai) -* rpm: redhat-lsb-core dependency was dropped, but is still needed (`issue#14906 <http://tracker.ceph.com/issues/14906>`_, `pr#7876 <http://github.com/ceph/ceph/pull/7876>`_, Nathan Cutler) -* test_bit_vector.cc uses magic numbers against #defines that vary (`issue#14747 <http://tracker.ceph.com/issues/14747>`_, `pr#7672 <http://github.com/ceph/ceph/pull/7672>`_, Jason Dillaman) -* test/librados/tier.cc doesn't completely clean up EC pools (`issue#13878 <http://tracker.ceph.com/issues/13878>`_, `pr#8052 <http://github.com/ceph/ceph/pull/8052>`_, Loic Dachary, Dan Mick) -* tests: bufferlist: do not expect !is_page_aligned() after unaligned rebuild (`issue#15305 <http://tracker.ceph.com/issues/15305>`_, `pr#8272 <http://github.com/ceph/ceph/pull/8272>`_, Kefu Chai) -* tools: fix race condition in seq/rand bench (part 1) (`issue#14968 <http://tracker.ceph.com/issues/14968>`_, `issue#14873 <http://tracker.ceph.com/issues/14873>`_, `pr#7896 <http://github.com/ceph/ceph/pull/7896>`_, Alexey Sheplyakov, Piotr Dałek) -* tools: fix race condition in seq/rand bench (part 2) (`issue#14873 <http://tracker.ceph.com/issues/14873>`_, `pr#7817 <http://github.com/ceph/ceph/pull/7817>`_, Alexey Sheplyakov) -* tools/rados: add bench smoke tests (`issue#14971 <http://tracker.ceph.com/issues/14971>`_, `pr#7903 <http://github.com/ceph/ceph/pull/7903>`_, Piotr Dałek) -* tools, test: Add ceph-objectstore-tool to operate on the meta collection (`issue#14977 <http://tracker.ceph.com/issues/14977>`_, `pr#7911 <http://github.com/ceph/ceph/pull/7911>`_, David Zafman) -* unittest_crypto: benchmark 100,000 CryptoKey::encrypt() calls (`issue#14863 <http://tracker.ceph.com/issues/14863>`_, `pr#7801 <http://github.com/ceph/ceph/pull/7801>`_, Sage Weil) - - -v0.94.6 Hammer -====================== - -This Hammer point release fixes a range of bugs, most notably a fix -for unbounded growth of the monitor's leveldb store, and a workaround -in the OSD to keep most xattrs small enough to be stored inline in XFS -inodes. - -We recommend that all hammer v0.94.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.6.txt>`. - -Notable Changes ---------------- -* build/ops: Ceph daemon failed to start, because the service name was already used. (`issue#13474 <http://tracker.ceph.com/issues/13474>`_, `pr#6832 <http://github.com/ceph/ceph/pull/6832>`_, Chuanhong Wang) -* build/ops: LTTng-UST tracing should be dynamically enabled (`issue#13274 <http://tracker.ceph.com/issues/13274>`_, `pr#6415 <http://github.com/ceph/ceph/pull/6415>`_, Jason Dillaman) -* build/ops: ceph upstart script rbdmap.conf incorrectly processes parameters (`issue#13214 <http://tracker.ceph.com/issues/13214>`_, `pr#6159 <http://github.com/ceph/ceph/pull/6159>`_, Sage Weil) -* build/ops: ceph.spec.in License line does not reflect COPYING (`issue#12935 <http://tracker.ceph.com/issues/12935>`_, `pr#6680 <http://github.com/ceph/ceph/pull/6680>`_, Nathan Cutler) -* build/ops: ceph.spec.in libcephfs_jni1 has no %post and %postun (`issue#12927 <http://tracker.ceph.com/issues/12927>`_, `pr#5789 <http://github.com/ceph/ceph/pull/5789>`_, Owen Synge) -* build/ops: configure.ac: no use to add "+" before ac_ext=c (`issue#14330 <http://tracker.ceph.com/issues/14330>`_, `pr#6973 <http://github.com/ceph/ceph/pull/6973>`_, Kefu Chai, Robin H. Johnson) -* build/ops: deb: strip tracepoint libraries from Wheezy/Precise builds (`issue#14801 <http://tracker.ceph.com/issues/14801>`_, `pr#7316 <http://github.com/ceph/ceph/pull/7316>`_, Jason Dillaman) -* build/ops: init script reload doesn't work on EL7 (`issue#13709 <http://tracker.ceph.com/issues/13709>`_, `pr#7187 <http://github.com/ceph/ceph/pull/7187>`_, Hervé Rousseau) -* build/ops: init-rbdmap uses distro-specific functions (`issue#12415 <http://tracker.ceph.com/issues/12415>`_, `pr#6528 <http://github.com/ceph/ceph/pull/6528>`_, Boris Ranto) -* build/ops: logrotate reload error on Ubuntu 14.04 (`issue#11330 <http://tracker.ceph.com/issues/11330>`_, `pr#5787 <http://github.com/ceph/ceph/pull/5787>`_, Sage Weil) -* build/ops: miscellaneous spec file fixes (`issue#12931 <http://tracker.ceph.com/issues/12931>`_, `issue#12994 <http://tracker.ceph.com/issues/12994>`_, `issue#12924 <http://tracker.ceph.com/issues/12924>`_, `issue#12360 <http://tracker.ceph.com/issues/12360>`_, `pr#5790 <http://github.com/ceph/ceph/pull/5790>`_, Boris Ranto, Nathan Cutler, Owen Synge, Travis Rhoden, Ken Dreyer) -* build/ops: pass tcmalloc env through to ceph-os (`issue#14802 <http://tracker.ceph.com/issues/14802>`_, `pr#7365 <http://github.com/ceph/ceph/pull/7365>`_, Sage Weil) -* build/ops: rbd-replay-* moved from ceph-test-dbg to ceph-common-dbg as well (`issue#13785 <http://tracker.ceph.com/issues/13785>`_, `pr#6580 <http://github.com/ceph/ceph/pull/6580>`_, Loic Dachary) -* build/ops: unknown argument --quiet in udevadm settle (`issue#13560 <http://tracker.ceph.com/issues/13560>`_, `pr#6530 <http://github.com/ceph/ceph/pull/6530>`_, Jason Dillaman) -* common: Objecter: pool op callback may hang forever. (`issue#13642 <http://tracker.ceph.com/issues/13642>`_, `pr#6588 <http://github.com/ceph/ceph/pull/6588>`_, xie xingguo) -* common: Objecter: potential null pointer access when do pool_snap_list. (`issue#13639 <http://tracker.ceph.com/issues/13639>`_, `pr#6839 <http://github.com/ceph/ceph/pull/6839>`_, xie xingguo) -* common: ThreadPool add/remove work queue methods not thread safe (`issue#12662 <http://tracker.ceph.com/issues/12662>`_, `pr#5889 <http://github.com/ceph/ceph/pull/5889>`_, Jason Dillaman) -* common: auth/cephx: large amounts of log are produced by osd (`issue#13610 <http://tracker.ceph.com/issues/13610>`_, `pr#6835 <http://github.com/ceph/ceph/pull/6835>`_, Qiankun Zheng) -* common: client nonce collision due to unshared pid namespaces (`issue#13032 <http://tracker.ceph.com/issues/13032>`_, `pr#6151 <http://github.com/ceph/ceph/pull/6151>`_, Josh Durgin) -* common: common/Thread:pthread_attr_destroy(thread_attr) when done with it (`issue#12570 <http://tracker.ceph.com/issues/12570>`_, `pr#6157 <http://github.com/ceph/ceph/pull/6157>`_, Piotr Dałek) -* common: log: Log.cc: Assign LOG_DEBUG priority to syslog calls (`issue#13993 <http://tracker.ceph.com/issues/13993>`_, `pr#6994 <http://github.com/ceph/ceph/pull/6994>`_, Brad Hubbard) -* common: objecter: cancellation bugs (`issue#13071 <http://tracker.ceph.com/issues/13071>`_, `pr#6155 <http://github.com/ceph/ceph/pull/6155>`_, Jianpeng Ma) -* common: pure virtual method called (`issue#13636 <http://tracker.ceph.com/issues/13636>`_, `pr#6587 <http://github.com/ceph/ceph/pull/6587>`_, Jason Dillaman) -* common: small probability sigabrt when setting rados_osd_op_timeout (`issue#13208 <http://tracker.ceph.com/issues/13208>`_, `pr#6143 <http://github.com/ceph/ceph/pull/6143>`_, Ruifeng Yang) -* common: wrong conditional for boolean function KeyServer::get_auth() (`issue#9756 <http://tracker.ceph.com/issues/9756>`_, `issue#13424 <http://tracker.ceph.com/issues/13424>`_, `pr#6213 <http://github.com/ceph/ceph/pull/6213>`_, Nathan Cutler) -* crush: crash if we see CRUSH_ITEM_NONE in early rule step (`issue#13477 <http://tracker.ceph.com/issues/13477>`_, `pr#6430 <http://github.com/ceph/ceph/pull/6430>`_, Sage Weil) -* doc: man: document listwatchers cmd in "rados" manpage (`issue#14556 <http://tracker.ceph.com/issues/14556>`_, `pr#7434 <http://github.com/ceph/ceph/pull/7434>`_, Kefu Chai) -* doc: regenerate man pages, add orphans commands to radosgw-admin(8) (`issue#14637 <http://tracker.ceph.com/issues/14637>`_, `pr#7524 <http://github.com/ceph/ceph/pull/7524>`_, Ken Dreyer) -* fs: CephFS restriction on removing cache tiers is overly strict (`issue#11504 <http://tracker.ceph.com/issues/11504>`_, `pr#6402 <http://github.com/ceph/ceph/pull/6402>`_, John Spray) -* fs: fsstress.sh fails (`issue#12710 <http://tracker.ceph.com/issues/12710>`_, `pr#7454 <http://github.com/ceph/ceph/pull/7454>`_, Yan, Zheng) -* librados: LibRadosWatchNotify.WatchNotify2Timeout (`issue#13114 <http://tracker.ceph.com/issues/13114>`_, `pr#6336 <http://github.com/ceph/ceph/pull/6336>`_, Sage Weil) -* librbd: ImageWatcher shouldn't block the notification thread (`issue#14373 <http://tracker.ceph.com/issues/14373>`_, `pr#7407 <http://github.com/ceph/ceph/pull/7407>`_, Jason Dillaman) -* librbd: diff_iterate needs to handle holes in parent images (`issue#12885 <http://tracker.ceph.com/issues/12885>`_, `pr#6097 <http://github.com/ceph/ceph/pull/6097>`_, Jason Dillaman) -* librbd: fix merge-diff for >2GB diff-files (`issue#14030 <http://tracker.ceph.com/issues/14030>`_, `pr#6980 <http://github.com/ceph/ceph/pull/6980>`_, Jason Dillaman) -* librbd: invalidate object map on error even w/o holding lock (`issue#13372 <http://tracker.ceph.com/issues/13372>`_, `pr#6289 <http://github.com/ceph/ceph/pull/6289>`_, Jason Dillaman) -* librbd: reads larger than cache size hang (`issue#13164 <http://tracker.ceph.com/issues/13164>`_, `pr#6354 <http://github.com/ceph/ceph/pull/6354>`_, Lu Shi) -* mds: ceph mds add_data_pool check for EC pool is wrong (`issue#12426 <http://tracker.ceph.com/issues/12426>`_, `pr#5766 <http://github.com/ceph/ceph/pull/5766>`_, John Spray) -* mon: MonitorDBStore: get_next_key() only if prefix matches (`issue#11786 <http://tracker.ceph.com/issues/11786>`_, `pr#5361 <http://github.com/ceph/ceph/pull/5361>`_, Joao Eduardo Luis) -* mon: OSDMonitor: do not assume a session exists in send_incremental() (`issue#14236 <http://tracker.ceph.com/issues/14236>`_, `pr#7150 <http://github.com/ceph/ceph/pull/7150>`_, Joao Eduardo Luis) -* mon: check for store writeablility before participating in election (`issue#13089 <http://tracker.ceph.com/issues/13089>`_, `pr#6144 <http://github.com/ceph/ceph/pull/6144>`_, Sage Weil) -* mon: compact full epochs also (`issue#14537 <http://tracker.ceph.com/issues/14537>`_, `pr#7446 <http://github.com/ceph/ceph/pull/7446>`_, Kefu Chai) -* mon: include min_last_epoch_clean as part of PGMap::print_summary and PGMap::dump (`issue#13198 <http://tracker.ceph.com/issues/13198>`_, `pr#6152 <http://github.com/ceph/ceph/pull/6152>`_, Guang Yang) -* mon: map_cache can become inaccurate if osd does not receive the osdmaps (`issue#10930 <http://tracker.ceph.com/issues/10930>`_, `pr#5773 <http://github.com/ceph/ceph/pull/5773>`_, Kefu Chai) -* mon: should not set isvalid = true when cephx_verify_authorizer return false (`issue#13525 <http://tracker.ceph.com/issues/13525>`_, `pr#6391 <http://github.com/ceph/ceph/pull/6391>`_, Ruifeng Yang) -* osd: Ceph Pools' MAX AVAIL is 0 if some OSDs' weight is 0 (`issue#13840 <http://tracker.ceph.com/issues/13840>`_, `pr#6834 <http://github.com/ceph/ceph/pull/6834>`_, Chengyuan Li) -* osd: FileStore calls syncfs(2) even it is not supported (`issue#12512 <http://tracker.ceph.com/issues/12512>`_, `pr#5530 <http://github.com/ceph/ceph/pull/5530>`_, Kefu Chai) -* osd: FileStore: potential memory leak if getattrs fails. (`issue#13597 <http://tracker.ceph.com/issues/13597>`_, `pr#6420 <http://github.com/ceph/ceph/pull/6420>`_, xie xingguo) -* osd: IO error on kvm/rbd with an erasure coded pool tier (`issue#12012 <http://tracker.ceph.com/issues/12012>`_, `pr#5897 <http://github.com/ceph/ceph/pull/5897>`_, Kefu Chai) -* osd: OSD::build_past_intervals_parallel() shall reset primary and up_primary when begin a new past_interval. (`issue#13471 <http://tracker.ceph.com/issues/13471>`_, `pr#6398 <http://github.com/ceph/ceph/pull/6398>`_, xiexingguo) -* osd: ReplicatedBackend: populate recovery_info.size for clone (bug symptom is size mismatch on replicated backend on a clone in scrub) (`issue#12828 <http://tracker.ceph.com/issues/12828>`_, `pr#6153 <http://github.com/ceph/ceph/pull/6153>`_, Samuel Just) -* osd: ReplicatedPG: wrong result code checking logic during sparse_read (`issue#14151 <http://tracker.ceph.com/issues/14151>`_, `pr#7179 <http://github.com/ceph/ceph/pull/7179>`_, xie xingguo) -* osd: ReplicatedPG::hit_set_trim osd/ReplicatedPG.cc: 11006: FAILED assert(obc) (`issue#13192 <http://tracker.ceph.com/issues/13192>`_, `issue#9732 <http://tracker.ceph.com/issues/9732>`_, `issue#12968 <http://tracker.ceph.com/issues/12968>`_, `pr#5825 <http://github.com/ceph/ceph/pull/5825>`_, Kefu Chai, Zhiqiang Wang, Samuel Just, David Zafman) -* osd: avoid multi set osd_op.outdata in tier pool (`issue#12540 <http://tracker.ceph.com/issues/12540>`_, `pr#6060 <http://github.com/ceph/ceph/pull/6060>`_, Xinze Chi) -* osd: bug with cache/tiering and snapshot reads (`issue#12748 <http://tracker.ceph.com/issues/12748>`_, `pr#6589 <http://github.com/ceph/ceph/pull/6589>`_, Kefu Chai) -* osd: ceph osd pool stats broken in hammer (`issue#13843 <http://tracker.ceph.com/issues/13843>`_, `pr#7180 <http://github.com/ceph/ceph/pull/7180>`_, BJ Lougee) -* osd: ceph-disk prepare fails if device is a symlink (`issue#13438 <http://tracker.ceph.com/issues/13438>`_, `pr#7176 <http://github.com/ceph/ceph/pull/7176>`_, Joe Julian) -* osd: check for full before changing the cached obc (hammer) (`issue#13098 <http://tracker.ceph.com/issues/13098>`_, `pr#6918 <http://github.com/ceph/ceph/pull/6918>`_, Alexey Sheplyakov) -* osd: config_opts: increase suicide timeout to 300 to match recovery (`issue#14376 <http://tracker.ceph.com/issues/14376>`_, `pr#7236 <http://github.com/ceph/ceph/pull/7236>`_, Samuel Just) -* osd: disable filestore_xfs_extsize by default (`issue#14397 <http://tracker.ceph.com/issues/14397>`_, `pr#7411 <http://github.com/ceph/ceph/pull/7411>`_, Ken Dreyer) -* osd: do not cache unused memory in attrs (`issue#12565 <http://tracker.ceph.com/issues/12565>`_, `pr#6499 <http://github.com/ceph/ceph/pull/6499>`_, Xinze Chi, Ning Yao) -* osd: dumpling incrementals do not work properly on hammer and newer (`issue#13234 <http://tracker.ceph.com/issues/13234>`_, `pr#6132 <http://github.com/ceph/ceph/pull/6132>`_, Samuel Just) -* osd: filestore: fix peek_queue for OpSequencer (`issue#13209 <http://tracker.ceph.com/issues/13209>`_, `pr#6145 <http://github.com/ceph/ceph/pull/6145>`_, Xinze Chi) -* osd: hit set clear repops fired in same epoch as map change -- segfault since they fall into the new interval even though the repops are cleared (`issue#12809 <http://tracker.ceph.com/issues/12809>`_, `pr#5890 <http://github.com/ceph/ceph/pull/5890>`_, Samuel Just) -* osd: object_info_t::decode() has wrong version (`issue#13462 <http://tracker.ceph.com/issues/13462>`_, `pr#6335 <http://github.com/ceph/ceph/pull/6335>`_, David Zafman) -* osd: osd/OSD.cc: 2469: FAILED assert(pg_stat_queue.empty()) on shutdown (`issue#14212 <http://tracker.ceph.com/issues/14212>`_, `pr#7178 <http://github.com/ceph/ceph/pull/7178>`_, Sage Weil) -* osd: osd/PG.cc: 288: FAILED assert(info.last_epoch_started >= info.history.last_epoch_started) (`issue#14015 <http://tracker.ceph.com/issues/14015>`_, `pr#7177 <http://github.com/ceph/ceph/pull/7177>`_, David Zafman) -* osd: osd/PG.cc: 3837: FAILED assert(0 == "Running incompatible OSD") (`issue#11661 <http://tracker.ceph.com/issues/11661>`_, `pr#7206 <http://github.com/ceph/ceph/pull/7206>`_, David Zafman) -* osd: osd/ReplicatedPG: Recency fix (`issue#14320 <http://tracker.ceph.com/issues/14320>`_, `pr#7207 <http://github.com/ceph/ceph/pull/7207>`_, Sage Weil, Robert LeBlanc) -* osd: pg stuck in replay (`issue#13116 <http://tracker.ceph.com/issues/13116>`_, `pr#6401 <http://github.com/ceph/ceph/pull/6401>`_, Sage Weil) -* osd: race condition detected during send_failures (`issue#13821 <http://tracker.ceph.com/issues/13821>`_, `pr#6755 <http://github.com/ceph/ceph/pull/6755>`_, Sage Weil) -* osd: randomize scrub times (`issue#10973 <http://tracker.ceph.com/issues/10973>`_, `pr#6199 <http://github.com/ceph/ceph/pull/6199>`_, Kefu Chai) -* osd: requeue_scrub when kick_object_context_blocked (`issue#12515 <http://tracker.ceph.com/issues/12515>`_, `pr#5891 <http://github.com/ceph/ceph/pull/5891>`_, Xinze Chi) -* osd: revert: use GMT time for hitsets (`issue#13812 <http://tracker.ceph.com/issues/13812>`_, `pr#6644 <http://github.com/ceph/ceph/pull/6644>`_, Loic Dachary) -* osd: segfault in agent_work (`issue#13199 <http://tracker.ceph.com/issues/13199>`_, `pr#6146 <http://github.com/ceph/ceph/pull/6146>`_, Samuel Just) -* osd: should recalc the min_last_epoch_clean when decode PGMap (`issue#13112 <http://tracker.ceph.com/issues/13112>`_, `pr#6154 <http://github.com/ceph/ceph/pull/6154>`_, Kefu Chai) -* osd: smaller object_info_t xattrs (`issue#14803 <http://tracker.ceph.com/issues/14803>`_, `pr#6544 <http://github.com/ceph/ceph/pull/6544>`_, Sage Weil) -* osd: we do not ignore notify from down osds (`issue#12990 <http://tracker.ceph.com/issues/12990>`_, `pr#6158 <http://github.com/ceph/ceph/pull/6158>`_, Samuel Just) -* rbd: QEMU hangs after creating snapshot and stopping VM (`issue#13726 <http://tracker.ceph.com/issues/13726>`_, `pr#6586 <http://github.com/ceph/ceph/pull/6586>`_, Jason Dillaman) -* rbd: TaskFinisher::cancel should remove event from SafeTimer (`issue#14476 <http://tracker.ceph.com/issues/14476>`_, `pr#7417 <http://github.com/ceph/ceph/pull/7417>`_, Douglas Fuller) -* rbd: avoid re-writing old-format image header on resize (`issue#13674 <http://tracker.ceph.com/issues/13674>`_, `pr#6585 <http://github.com/ceph/ceph/pull/6585>`_, Jason Dillaman) -* rbd: fix bench-write (`issue#14225 <http://tracker.ceph.com/issues/14225>`_, `pr#7183 <http://github.com/ceph/ceph/pull/7183>`_, Sage Weil) -* rbd: rbd-replay does not check for EOF and goes to endless loop (`issue#14452 <http://tracker.ceph.com/issues/14452>`_, `pr#7416 <http://github.com/ceph/ceph/pull/7416>`_, Mykola Golub) -* rbd: rbd-replay-prep and rbd-replay improvements (`issue#13221 <http://tracker.ceph.com/issues/13221>`_, `issue#13220 <http://tracker.ceph.com/issues/13220>`_, `issue#13378 <http://tracker.ceph.com/issues/13378>`_, `pr#6286 <http://github.com/ceph/ceph/pull/6286>`_, Jason Dillaman) -* rbd: verify self-managed snapshot functionality on image create (`issue#13633 <http://tracker.ceph.com/issues/13633>`_, `pr#7182 <http://github.com/ceph/ceph/pull/7182>`_, Jason Dillaman) -* rgw: Make RGW_MAX_PUT_SIZE configurable (`issue#6999 <http://tracker.ceph.com/issues/6999>`_, `pr#7441 <http://github.com/ceph/ceph/pull/7441>`_, Vladislav Odintsov, Yuan Zhou) -* rgw: Setting ACL on Object removes ETag (`issue#12955 <http://tracker.ceph.com/issues/12955>`_, `pr#6620 <http://github.com/ceph/ceph/pull/6620>`_, Brian Felton) -* rgw: backport content-type casing (`issue#12939 <http://tracker.ceph.com/issues/12939>`_, `pr#5910 <http://github.com/ceph/ceph/pull/5910>`_, Robin H. Johnson) -* rgw: bucket listing hangs on versioned buckets (`issue#12913 <http://tracker.ceph.com/issues/12913>`_, `pr#6352 <http://github.com/ceph/ceph/pull/6352>`_, Yehuda Sadeh) -* rgw: fix wrong etag calculation during POST on S3 bucket. (`issue#11241 <http://tracker.ceph.com/issues/11241>`_, `pr#7442 <http://github.com/ceph/ceph/pull/7442>`_, Vladislav Odintsov, Radoslaw Zarzynski) -* rgw: get bucket location returns region name, not region api name (`issue#13458 <http://tracker.ceph.com/issues/13458>`_, `pr#6349 <http://github.com/ceph/ceph/pull/6349>`_, Yehuda Sadeh) -* rgw: missing handling of encoding-type=url when listing keys in bucket (`issue#12735 <http://tracker.ceph.com/issues/12735>`_, `pr#6527 <http://github.com/ceph/ceph/pull/6527>`_, Jeff Weber) -* rgw: orphan tool should be careful about removing head objects (`issue#12958 <http://tracker.ceph.com/issues/12958>`_, `pr#6351 <http://github.com/ceph/ceph/pull/6351>`_, Yehuda Sadeh) -* rgw: orphans finish segfaults (`issue#13824 <http://tracker.ceph.com/issues/13824>`_, `pr#7186 <http://github.com/ceph/ceph/pull/7186>`_, Igor Fedotov) -* rgw: rgw-admin: document orphans commands in usage (`issue#14516 <http://tracker.ceph.com/issues/14516>`_, `pr#7526 <http://github.com/ceph/ceph/pull/7526>`_, Yehuda Sadeh) -* rgw: swift API returns more than real object count and bytes used when retrieving account metadata (`issue#13140 <http://tracker.ceph.com/issues/13140>`_, `pr#6512 <http://github.com/ceph/ceph/pull/6512>`_, Sangdi Xu) -* rgw: swift use Civetweb ssl can not get right url (`issue#13628 <http://tracker.ceph.com/issues/13628>`_, `pr#6491 <http://github.com/ceph/ceph/pull/6491>`_, Weijun Duan) -* rgw: value of Swift API's X-Object-Manifest header is not url_decoded during segment look up (`issue#12728 <http://tracker.ceph.com/issues/12728>`_, `pr#6353 <http://github.com/ceph/ceph/pull/6353>`_, Radoslaw Zarzynski) -* tests: fixed broken Makefiles after integration of ttng into rados (`issue#13210 <http://tracker.ceph.com/issues/13210>`_, `pr#6322 <http://github.com/ceph/ceph/pull/6322>`_, Sebastien Ponce) -* tests: fsx failed to compile (`issue#14384 <http://tracker.ceph.com/issues/14384>`_, `pr#7501 <http://github.com/ceph/ceph/pull/7501>`_, Greg Farnum) -* tests: notification slave needs to wait for master (`issue#13810 <http://tracker.ceph.com/issues/13810>`_, `pr#7226 <http://github.com/ceph/ceph/pull/7226>`_, Jason Dillaman) -* tests: qa: remove legacy OS support from rbd/qemu-iotests (`issue#13483 <http://tracker.ceph.com/issues/13483>`_, `issue#14385 <http://tracker.ceph.com/issues/14385>`_, `pr#7252 <http://github.com/ceph/ceph/pull/7252>`_, Vasu Kulkarni, Jason Dillaman) -* tests: testprofile must be removed before it is re-created (`issue#13664 <http://tracker.ceph.com/issues/13664>`_, `pr#6450 <http://github.com/ceph/ceph/pull/6450>`_, Loic Dachary) -* tools: ceph-monstore-tool must do out_store.close() (`issue#10093 <http://tracker.ceph.com/issues/10093>`_, `pr#7347 <http://github.com/ceph/ceph/pull/7347>`_, huangjun) -* tools: heavy memory shuffling in rados bench (`issue#12946 <http://tracker.ceph.com/issues/12946>`_, `pr#5810 <http://github.com/ceph/ceph/pull/5810>`_, Piotr Dałek) -* tools: race condition in rados bench (`issue#12947 <http://tracker.ceph.com/issues/12947>`_, `pr#6791 <http://github.com/ceph/ceph/pull/6791>`_, Piotr Dałek) -* tools: tool for artificially inflate the leveldb of the mon store for testing purposes (`issue#10093 <http://tracker.ceph.com/issues/10093>`_, `issue#11815 <http://tracker.ceph.com/issues/11815>`_, `issue#14217 <http://tracker.ceph.com/issues/14217>`_, `pr#7412 <http://github.com/ceph/ceph/pull/7412>`_, Cilang Zhao, Bo Cai, Kefu Chai, huangjun, Joao Eduardo Luis) - -v0.94.5 Hammer -============== - -This Hammer point release fixes a critical regression in librbd that can cause -QEMU/KVM to crash when caching is enabled on images that have been cloned. - -All v0.94.4 Hammer users are strongly encouraged to upgrade. - -Notable Changes ---------------- -* librbd: potential assertion failure during cache read (`issue#13559 <http://tracker.ceph.com/issues/13559>`_, `pr#6348 <http://github.com/ceph/ceph/pull/6348>`_, Jason Dillaman) -* osd: osd/ReplicatedPG: remove stray debug line (`issue#13455 <http://tracker.ceph.com/issues/13455>`_, `pr#6362 <http://github.com/ceph/ceph/pull/6362>`_, Sage Weil) -* tests: qemu workunit refers to apt-mirror.front.sepia.ceph.com (`issue#13420 <http://tracker.ceph.com/issues/13420>`_, `pr#6330 <http://github.com/ceph/ceph/pull/6330>`_, Yuan Zhou) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.5.txt>`. - -v0.94.4 Hammer -============== - -This Hammer point release fixes several important bugs in Hammer, as well as -fixing interoperability issues that are required before an upgrade to -Infernalis. That is, all users of earlier version of Hammer or any -version of Firefly will first need to upgrade to hammer v0.94.4 or -later before upgrading to Infernalis (or future releases). - -All v0.94.x Hammer users are strongly encouraged to upgrade. - -Notable Changes ---------------- -* build/ops: ceph.spec.in: 50-rbd.rules conditional is wrong (`issue#12166 <http://tracker.ceph.com/issues/12166>`_, `pr#5207 <http://github.com/ceph/ceph/pull/5207>`_, Nathan Cutler) -* build/ops: ceph.spec.in: ceph-common needs python-argparse on older distros, but doesn't require it (`issue#12034 <http://tracker.ceph.com/issues/12034>`_, `pr#5216 <http://github.com/ceph/ceph/pull/5216>`_, Nathan Cutler) -* build/ops: ceph.spec.in: radosgw requires apache for SUSE only -- makes no sense (`issue#12358 <http://tracker.ceph.com/issues/12358>`_, `pr#5411 <http://github.com/ceph/ceph/pull/5411>`_, Nathan Cutler) -* build/ops: ceph.spec.in: rpm: cephfs_java not fully conditionalized (`issue#11991 <http://tracker.ceph.com/issues/11991>`_, `pr#5202 <http://github.com/ceph/ceph/pull/5202>`_, Nathan Cutler) -* build/ops: ceph.spec.in: rpm: not possible to turn off Java (`issue#11992 <http://tracker.ceph.com/issues/11992>`_, `pr#5203 <http://github.com/ceph/ceph/pull/5203>`_, Owen Synge) -* build/ops: ceph.spec.in: running fdupes unnecessarily (`issue#12301 <http://tracker.ceph.com/issues/12301>`_, `pr#5223 <http://github.com/ceph/ceph/pull/5223>`_, Nathan Cutler) -* build/ops: ceph.spec.in: snappy-devel for all supported distros (`issue#12361 <http://tracker.ceph.com/issues/12361>`_, `pr#5264 <http://github.com/ceph/ceph/pull/5264>`_, Nathan Cutler) -* build/ops: ceph.spec.in: SUSE/openSUSE builds need libbz2-devel (`issue#11629 <http://tracker.ceph.com/issues/11629>`_, `pr#5204 <http://github.com/ceph/ceph/pull/5204>`_, Nathan Cutler) -* build/ops: ceph.spec.in: useless %py_requires breaks SLE11-SP3 build (`issue#12351 <http://tracker.ceph.com/issues/12351>`_, `pr#5412 <http://github.com/ceph/ceph/pull/5412>`_, Nathan Cutler) -* build/ops: error in ext_mime_map_init() when /etc/mime.types is missing (`issue#11864 <http://tracker.ceph.com/issues/11864>`_, `pr#5385 <http://github.com/ceph/ceph/pull/5385>`_, Ken Dreyer) -* build/ops: upstart: limit respawn to 3 in 30 mins (instead of 5 in 30s) (`issue#11798 <http://tracker.ceph.com/issues/11798>`_, `pr#5930 <http://github.com/ceph/ceph/pull/5930>`_, Sage Weil) -* build/ops: With root as default user, unable to have multiple RGW instances running (`issue#10927 <http://tracker.ceph.com/issues/10927>`_, `pr#6161 <http://github.com/ceph/ceph/pull/6161>`_, Sage Weil) -* build/ops: With root as default user, unable to have multiple RGW instances running (`issue#11140 <http://tracker.ceph.com/issues/11140>`_, `pr#6161 <http://github.com/ceph/ceph/pull/6161>`_, Sage Weil) -* build/ops: With root as default user, unable to have multiple RGW instances running (`issue#11686 <http://tracker.ceph.com/issues/11686>`_, `pr#6161 <http://github.com/ceph/ceph/pull/6161>`_, Sage Weil) -* build/ops: With root as default user, unable to have multiple RGW instances running (`issue#12407 <http://tracker.ceph.com/issues/12407>`_, `pr#6161 <http://github.com/ceph/ceph/pull/6161>`_, Sage Weil) -* cli: ceph: cli throws exception on unrecognized errno (`issue#11354 <http://tracker.ceph.com/issues/11354>`_, `pr#5368 <http://github.com/ceph/ceph/pull/5368>`_, Kefu Chai) -* cli: ceph tell: broken error message / misleading hinting (`issue#11101 <http://tracker.ceph.com/issues/11101>`_, `pr#5371 <http://github.com/ceph/ceph/pull/5371>`_, Kefu Chai) -* common: arm: all programs that link to librados2 hang forever on startup (`issue#12505 <http://tracker.ceph.com/issues/12505>`_, `pr#5366 <http://github.com/ceph/ceph/pull/5366>`_, Boris Ranto) -* common: buffer: critical bufferlist::zero bug (`issue#12252 <http://tracker.ceph.com/issues/12252>`_, `pr#5365 <http://github.com/ceph/ceph/pull/5365>`_, Haomai Wang) -* common: ceph-object-corpus: add 0.94.2-207-g88e7ee7 hammer objects (`issue#13070 <http://tracker.ceph.com/issues/13070>`_, `pr#5551 <http://github.com/ceph/ceph/pull/5551>`_, Sage Weil) -* common: do not insert emtpy ptr when rebuild emtpy bufferlist (`issue#12775 <http://tracker.ceph.com/issues/12775>`_, `pr#5764 <http://github.com/ceph/ceph/pull/5764>`_, Xinze Chi) -* common: [ FAILED ] TestLibRBD.BlockingAIO (`issue#12479 <http://tracker.ceph.com/issues/12479>`_, `pr#5768 <http://github.com/ceph/ceph/pull/5768>`_, Jason Dillaman) -* common: LibCephFS.GetPoolId failure (`issue#12598 <http://tracker.ceph.com/issues/12598>`_, `pr#5887 <http://github.com/ceph/ceph/pull/5887>`_, Yan, Zheng) -* common: Memory leak in Mutex.cc, pthread_mutexattr_init without pthread_mutexattr_destroy (`issue#11762 <http://tracker.ceph.com/issues/11762>`_, `pr#5378 <http://github.com/ceph/ceph/pull/5378>`_, Ketor Meng) -* common: object_map_update fails with -EINVAL return code (`issue#12611 <http://tracker.ceph.com/issues/12611>`_, `pr#5559 <http://github.com/ceph/ceph/pull/5559>`_, Jason Dillaman) -* common: Pipe: Drop connect_seq increase line (`issue#13093 <http://tracker.ceph.com/issues/13093>`_, `pr#5908 <http://github.com/ceph/ceph/pull/5908>`_, Haomai Wang) -* common: recursive lock of md_config_t (0) (`issue#12614 <http://tracker.ceph.com/issues/12614>`_, `pr#5759 <http://github.com/ceph/ceph/pull/5759>`_, Josh Durgin) -* crush: ceph osd crush reweight-subtree does not reweight parent node (`issue#11855 <http://tracker.ceph.com/issues/11855>`_, `pr#5374 <http://github.com/ceph/ceph/pull/5374>`_, Sage Weil) -* doc: update docs to point to download.ceph.com (`issue#13162 <http://tracker.ceph.com/issues/13162>`_, `pr#6156 <http://github.com/ceph/ceph/pull/6156>`_, Alfredo Deza) -* fs: ceph-fuse 0.94.2-1trusty segfaults / aborts (`issue#12297 <http://tracker.ceph.com/issues/12297>`_, `pr#5381 <http://github.com/ceph/ceph/pull/5381>`_, Greg Farnum) -* fs: segfault launching ceph-fuse with bad --name (`issue#12417 <http://tracker.ceph.com/issues/12417>`_, `pr#5382 <http://github.com/ceph/ceph/pull/5382>`_, John Spray) -* librados: Change radosgw pools default crush ruleset (`issue#11640 <http://tracker.ceph.com/issues/11640>`_, `pr#5754 <http://github.com/ceph/ceph/pull/5754>`_, Yuan Zhou) -* librbd: correct issues discovered via lockdep / helgrind (`issue#12345 <http://tracker.ceph.com/issues/12345>`_, `pr#5296 <http://github.com/ceph/ceph/pull/5296>`_, Jason Dillaman) -* librbd: Crash during TestInternal.MultipleResize (`issue#12664 <http://tracker.ceph.com/issues/12664>`_, `pr#5769 <http://github.com/ceph/ceph/pull/5769>`_, Jason Dillaman) -* librbd: deadlock during cooperative exclusive lock transition (`issue#11537 <http://tracker.ceph.com/issues/11537>`_, `pr#5319 <http://github.com/ceph/ceph/pull/5319>`_, Jason Dillaman) -* librbd: Possible crash while concurrently writing and shrinking an image (`issue#11743 <http://tracker.ceph.com/issues/11743>`_, `pr#5318 <http://github.com/ceph/ceph/pull/5318>`_, Jason Dillaman) -* mon: add a cache layer over MonitorDBStore (`issue#12638 <http://tracker.ceph.com/issues/12638>`_, `pr#5697 <http://github.com/ceph/ceph/pull/5697>`_, Kefu Chai) -* mon: fix crush testing for new pools (`issue#13400 <http://tracker.ceph.com/issues/13400>`_, `pr#6192 <http://github.com/ceph/ceph/pull/6192>`_, Sage Weil) -* mon: get pools health'info have error (`issue#12402 <http://tracker.ceph.com/issues/12402>`_, `pr#5369 <http://github.com/ceph/ceph/pull/5369>`_, renhwztetecs) -* mon: implicit erasure code crush ruleset is not validated (`issue#11814 <http://tracker.ceph.com/issues/11814>`_, `pr#5276 <http://github.com/ceph/ceph/pull/5276>`_, Loic Dachary) -* mon: PaxosService: call post_refresh() instead of post_paxos_update() (`issue#11470 <http://tracker.ceph.com/issues/11470>`_, `pr#5359 <http://github.com/ceph/ceph/pull/5359>`_, Joao Eduardo Luis) -* mon: pgmonitor: wrong at/near target max“ reporting (`issue#12401 <http://tracker.ceph.com/issues/12401>`_, `pr#5370 <http://github.com/ceph/ceph/pull/5370>`_, huangjun) -* mon: register_new_pgs() should check ruleno instead of its index (`issue#12210 <http://tracker.ceph.com/issues/12210>`_, `pr#5377 <http://github.com/ceph/ceph/pull/5377>`_, Xinze Chi) -* mon: Show osd as NONE in ceph osd map <pool> <object> output (`issue#11820 <http://tracker.ceph.com/issues/11820>`_, `pr#5376 <http://github.com/ceph/ceph/pull/5376>`_, Shylesh Kumar) -* mon: the output is wrong when runing ceph osd reweight (`issue#12251 <http://tracker.ceph.com/issues/12251>`_, `pr#5372 <http://github.com/ceph/ceph/pull/5372>`_, Joao Eduardo Luis) -* osd: allow peek_map_epoch to return an error (`issue#13060 <http://tracker.ceph.com/issues/13060>`_, `pr#5892 <http://github.com/ceph/ceph/pull/5892>`_, Sage Weil) -* osd: cache agent is idle although one object is left in the cache (`issue#12673 <http://tracker.ceph.com/issues/12673>`_, `pr#5765 <http://github.com/ceph/ceph/pull/5765>`_, Loic Dachary) -* osd: copy-from doesn't preserve truncate_{seq,size} (`issue#12551 <http://tracker.ceph.com/issues/12551>`_, `pr#5885 <http://github.com/ceph/ceph/pull/5885>`_, Samuel Just) -* osd: crash creating/deleting pools (`issue#12429 <http://tracker.ceph.com/issues/12429>`_, `pr#5527 <http://github.com/ceph/ceph/pull/5527>`_, John Spray) -* osd: fix repair when recorded digest is wrong (`issue#12577 <http://tracker.ceph.com/issues/12577>`_, `pr#5468 <http://github.com/ceph/ceph/pull/5468>`_, Sage Weil) -* osd: include/ceph_features: define HAMMER_0_94_4 feature (`issue#13026 <http://tracker.ceph.com/issues/13026>`_, `pr#5687 <http://github.com/ceph/ceph/pull/5687>`_, Sage Weil) -* osd: is_new_interval() fixes (`issue#10399 <http://tracker.ceph.com/issues/10399>`_, `pr#5691 <http://github.com/ceph/ceph/pull/5691>`_, Jason Dillaman) -* osd: is_new_interval() fixes (`issue#11771 <http://tracker.ceph.com/issues/11771>`_, `pr#5691 <http://github.com/ceph/ceph/pull/5691>`_, Jason Dillaman) -* osd: long standing slow requests: connection->session->waiting_for_map->connection ref cycle (`issue#12338 <http://tracker.ceph.com/issues/12338>`_, `pr#5761 <http://github.com/ceph/ceph/pull/5761>`_, Samuel Just) -* osd: Mutex Assert from PipeConnection::try_get_pipe (`issue#12437 <http://tracker.ceph.com/issues/12437>`_, `pr#5758 <http://github.com/ceph/ceph/pull/5758>`_, David Zafman) -* osd: pg_interval_t::check_new_interval - for ec pool, should not rely on min_size to determine if the PG was active at the interval (`issue#12162 <http://tracker.ceph.com/issues/12162>`_, `pr#5373 <http://github.com/ceph/ceph/pull/5373>`_, Guang G Yang) -* osd: PGLog.cc: 732: FAILED assert(log.log.size() == log_keys_debug.size()) (`issue#12652 <http://tracker.ceph.com/issues/12652>`_, `pr#5763 <http://github.com/ceph/ceph/pull/5763>`_, Sage Weil) -* osd: PGLog::proc_replica_log: correctly handle case where entries between olog.head and log.tail were split out (`issue#11358 <http://tracker.ceph.com/issues/11358>`_, `pr#5380 <http://github.com/ceph/ceph/pull/5380>`_, Samuel Just) -* osd: read on chunk-aligned xattr not handled (`issue#12309 <http://tracker.ceph.com/issues/12309>`_, `pr#5367 <http://github.com/ceph/ceph/pull/5367>`_, Sage Weil) -* osd: suicide timeout during peering - search for missing objects (`issue#12523 <http://tracker.ceph.com/issues/12523>`_, `pr#5762 <http://github.com/ceph/ceph/pull/5762>`_, Guang G Yang) -* osd: WBThrottle::clear_object: signal on cond when we reduce throttle values (`issue#12223 <http://tracker.ceph.com/issues/12223>`_, `pr#5757 <http://github.com/ceph/ceph/pull/5757>`_, Samuel Just) -* rbd: crash during shutdown after writeback blocked by IO errors (`issue#12597 <http://tracker.ceph.com/issues/12597>`_, `pr#5767 <http://github.com/ceph/ceph/pull/5767>`_, Jianpeng Ma) -* rgw: add delimiter to prefix only when path is specified (`issue#12960 <http://tracker.ceph.com/issues/12960>`_, `pr#5860 <http://github.com/ceph/ceph/pull/5860>`_, Sylvain Baubeau) -* rgw: create a tool for orphaned objects cleanup (`issue#9604 <http://tracker.ceph.com/issues/9604>`_, `pr#5717 <http://github.com/ceph/ceph/pull/5717>`_, Yehuda Sadeh) -* rgw: don't preserve acls when copying object (`issue#11563 <http://tracker.ceph.com/issues/11563>`_, `pr#6039 <http://github.com/ceph/ceph/pull/6039>`_, Yehuda Sadeh) -* rgw: don't preserve acls when copying object (`issue#12370 <http://tracker.ceph.com/issues/12370>`_, `pr#6039 <http://github.com/ceph/ceph/pull/6039>`_, Yehuda Sadeh) -* rgw: don't preserve acls when copying object (`issue#13015 <http://tracker.ceph.com/issues/13015>`_, `pr#6039 <http://github.com/ceph/ceph/pull/6039>`_, Yehuda Sadeh) -* rgw: Ensure that swift keys don't include backslashes (`issue#7647 <http://tracker.ceph.com/issues/7647>`_, `pr#5716 <http://github.com/ceph/ceph/pull/5716>`_, Yehuda Sadeh) -* rgw: GWWatcher::handle_error -> common/Mutex.cc: 95: FAILED assert(r == 0) (`issue#12208 <http://tracker.ceph.com/issues/12208>`_, `pr#6164 <http://github.com/ceph/ceph/pull/6164>`_, Yehuda Sadeh) -* rgw: HTTP return code is not being logged by CivetWeb (`issue#12432 <http://tracker.ceph.com/issues/12432>`_, `pr#5498 <http://github.com/ceph/ceph/pull/5498>`_, Yehuda Sadeh) -* rgw: init_rados failed leads to repeated delete (`issue#12978 <http://tracker.ceph.com/issues/12978>`_, `pr#6165 <http://github.com/ceph/ceph/pull/6165>`_, Xiaowei Chen) -* rgw: init some manifest fields when handling explicit objs (`issue#11455 <http://tracker.ceph.com/issues/11455>`_, `pr#5732 <http://github.com/ceph/ceph/pull/5732>`_, Yehuda Sadeh) -* rgw: Keystone Fernet tokens break auth (`issue#12761 <http://tracker.ceph.com/issues/12761>`_, `pr#6162 <http://github.com/ceph/ceph/pull/6162>`_, Abhishek Lekshmanan) -* rgw: region data still exist in region-map after region-map update (`issue#12964 <http://tracker.ceph.com/issues/12964>`_, `pr#6163 <http://github.com/ceph/ceph/pull/6163>`_, dwj192) -* rgw: remove trailing :port from host for purposes of subdomain matching (`issue#12353 <http://tracker.ceph.com/issues/12353>`_, `pr#6042 <http://github.com/ceph/ceph/pull/6042>`_, Yehuda Sadeh) -* rgw: rest-bench common/WorkQueue.cc: 54: FAILED assert(_threads.empty()) (`issue#3896 <http://tracker.ceph.com/issues/3896>`_, `pr#5383 <http://github.com/ceph/ceph/pull/5383>`_, huangjun) -* rgw: returns requested bucket name raw in Bucket response header (`issue#12537 <http://tracker.ceph.com/issues/12537>`_, `pr#5715 <http://github.com/ceph/ceph/pull/5715>`_, Yehuda Sadeh) -* rgw: segmentation fault when rgw_gc_max_objs > HASH_PRIME (`issue#12630 <http://tracker.ceph.com/issues/12630>`_, `pr#5719 <http://github.com/ceph/ceph/pull/5719>`_, Ruifeng Yang) -* rgw: segments are read during HEAD on Swift DLO (`issue#12780 <http://tracker.ceph.com/issues/12780>`_, `pr#6160 <http://github.com/ceph/ceph/pull/6160>`_, Yehuda Sadeh) -* rgw: setting max number of buckets for user via ceph.conf option (`issue#12714 <http://tracker.ceph.com/issues/12714>`_, `pr#6166 <http://github.com/ceph/ceph/pull/6166>`_, Vikhyat Umrao) -* rgw: Swift API: X-Trans-Id header is wrongly formatted (`issue#12108 <http://tracker.ceph.com/issues/12108>`_, `pr#5721 <http://github.com/ceph/ceph/pull/5721>`_, Radoslaw Zarzynski) -* rgw: testGetContentType and testHead failed (`issue#11091 <http://tracker.ceph.com/issues/11091>`_, `pr#5718 <http://github.com/ceph/ceph/pull/5718>`_, Radoslaw Zarzynski) -* rgw: testGetContentType and testHead failed (`issue#11438 <http://tracker.ceph.com/issues/11438>`_, `pr#5718 <http://github.com/ceph/ceph/pull/5718>`_, Radoslaw Zarzynski) -* rgw: testGetContentType and testHead failed (`issue#12157 <http://tracker.ceph.com/issues/12157>`_, `pr#5718 <http://github.com/ceph/ceph/pull/5718>`_, Radoslaw Zarzynski) -* rgw: testGetContentType and testHead failed (`issue#12158 <http://tracker.ceph.com/issues/12158>`_, `pr#5718 <http://github.com/ceph/ceph/pull/5718>`_, Radoslaw Zarzynski) -* rgw: testGetContentType and testHead failed (`issue#12363 <http://tracker.ceph.com/issues/12363>`_, `pr#5718 <http://github.com/ceph/ceph/pull/5718>`_, Radoslaw Zarzynski) -* rgw: the arguments 'domain' should not be assigned when return false (`issue#12629 <http://tracker.ceph.com/issues/12629>`_, `pr#5720 <http://github.com/ceph/ceph/pull/5720>`_, Ruifeng Yang) -* tests: qa/workunits/cephtool/test.sh: don't assume crash_replay_interval=45 (`issue#13406 <http://tracker.ceph.com/issues/13406>`_, `pr#6172 <http://github.com/ceph/ceph/pull/6172>`_, Sage Weil) -* tests: TEST_crush_rule_create_erasure consistently fails on i386 builder (`issue#12419 <http://tracker.ceph.com/issues/12419>`_, `pr#6201 <http://github.com/ceph/ceph/pull/6201>`_, Loic Dachary) -* tools: ceph-disk zap should ensure block device (`issue#11272 <http://tracker.ceph.com/issues/11272>`_, `pr#5755 <http://github.com/ceph/ceph/pull/5755>`_, Loic Dachary) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.4.txt>`. - - -v0.94.3 Hammer -============== - -This Hammer point release fixes a critical (though rare) data -corruption bug that could be triggered when logs are rotated via -SIGHUP. It also fixes a range of other important bugs in the OSD, -monitor, RGW, RGW, and CephFS. - -All v0.94.x Hammer users are strongly encouraged to upgrade. - -Upgrading ---------- - -* The ``pg ls-by-{pool,primary,osd}`` commands and ``pg ls`` now take - the argument ``recovering`` instead of ``recovery`` in order to - include the recovering pgs in the listed pgs. - -Notable Changes ---------------- -* librbd: aio calls may block (`issue#11770 <http://tracker.ceph.com/issues/11770>`_, `pr#4875 <http://github.com/ceph/ceph/pull/4875>`_, Jason Dillaman) -* osd: make the all osd/filestore thread pool suicide timeouts separately configurable (`issue#11701 <http://tracker.ceph.com/issues/11701>`_, `pr#5159 <http://github.com/ceph/ceph/pull/5159>`_, Samuel Just) -* mon: ceph fails to compile with boost 1.58 (`issue#11982 <http://tracker.ceph.com/issues/11982>`_, `pr#5122 <http://github.com/ceph/ceph/pull/5122>`_, Kefu Chai) -* tests: TEST_crush_reject_empty must not run a mon (`issue#12285,11975 <http://tracker.ceph.com/issues/12285,11975>`_, `pr#5208 <http://github.com/ceph/ceph/pull/5208>`_, Kefu Chai) -* osd: FAILED assert(!old_value.deleted()) in upgrade:giant-x-hammer-distro-basic-multi run (`issue#11983 <http://tracker.ceph.com/issues/11983>`_, `pr#5121 <http://github.com/ceph/ceph/pull/5121>`_, Samuel Just) -* build/ops: linking ceph to tcmalloc causes segfault on SUSE SLE11-SP3 (`issue#12368 <http://tracker.ceph.com/issues/12368>`_, `pr#5265 <http://github.com/ceph/ceph/pull/5265>`_, Thorsten Behrens) -* common: utf8 and old gcc breakage on RHEL6.5 (`issue#7387 <http://tracker.ceph.com/issues/7387>`_, `pr#4687 <http://github.com/ceph/ceph/pull/4687>`_, Kefu Chai) -* crush: take crashes due to invalid arg (`issue#11740 <http://tracker.ceph.com/issues/11740>`_, `pr#4891 <http://github.com/ceph/ceph/pull/4891>`_, Sage Weil) -* rgw: need conversion tool to handle fixes following #11974 (`issue#12502 <http://tracker.ceph.com/issues/12502>`_, `pr#5384 <http://github.com/ceph/ceph/pull/5384>`_, Yehuda Sadeh) -* rgw: Swift API: support for 202 Accepted response code on container creation (`issue#12299 <http://tracker.ceph.com/issues/12299>`_, `pr#5214 <http://github.com/ceph/ceph/pull/5214>`_, Radoslaw Zarzynski) -* common: Log::reopen_log_file: take m_flush_mutex (`issue#12520 <http://tracker.ceph.com/issues/12520>`_, `pr#5405 <http://github.com/ceph/ceph/pull/5405>`_, Samuel Just) -* rgw: Properly respond to the Connection header with Civetweb (`issue#12398 <http://tracker.ceph.com/issues/12398>`_, `pr#5284 <http://github.com/ceph/ceph/pull/5284>`_, Wido den Hollander) -* rgw: multipart list part response returns incorrect field (`issue#12399 <http://tracker.ceph.com/issues/12399>`_, `pr#5285 <http://github.com/ceph/ceph/pull/5285>`_, Henry Chang) -* build/ops: ceph.spec.in: 95-ceph-osd.rules, mount.ceph, and mount.fuse.ceph not installed properly on SUSE (`issue#12397 <http://tracker.ceph.com/issues/12397>`_, `pr#5283 <http://github.com/ceph/ceph/pull/5283>`_, Nathan Cutler) -* rgw: radosgw-admin dumps user info twice (`issue#12400 <http://tracker.ceph.com/issues/12400>`_, `pr#5286 <http://github.com/ceph/ceph/pull/5286>`_, guce) -* doc: fix doc build (`issue#12180 <http://tracker.ceph.com/issues/12180>`_, `pr#5095 <http://github.com/ceph/ceph/pull/5095>`_, Kefu Chai) -* tests: backport 11493 fixes, and test, preventing ec cache pools (`issue#12314 <http://tracker.ceph.com/issues/12314>`_, `pr#4961 <http://github.com/ceph/ceph/pull/4961>`_, Samuel Just) -* rgw: does not send Date HTTP header when civetweb frontend is used (`issue#11872 <http://tracker.ceph.com/issues/11872>`_, `pr#5228 <http://github.com/ceph/ceph/pull/5228>`_, Radoslaw Zarzynski) -* mon: pg ls is broken (`issue#11910 <http://tracker.ceph.com/issues/11910>`_, `pr#5160 <http://github.com/ceph/ceph/pull/5160>`_, Kefu Chai) -* librbd: A client opening an image mid-resize can result in the object map being invalidated (`issue#12237 <http://tracker.ceph.com/issues/12237>`_, `pr#5279 <http://github.com/ceph/ceph/pull/5279>`_, Jason Dillaman) -* doc: missing man pages for ceph-create-keys, ceph-disk-* (`issue#11862 <http://tracker.ceph.com/issues/11862>`_, `pr#4846 <http://github.com/ceph/ceph/pull/4846>`_, Nathan Cutler) -* tools: ceph-post-file fails on rhel7 (`issue#11876 <http://tracker.ceph.com/issues/11876>`_, `pr#5038 <http://github.com/ceph/ceph/pull/5038>`_, Sage Weil) -* build/ops: rcceph script is buggy (`issue#12090 <http://tracker.ceph.com/issues/12090>`_, `pr#5028 <http://github.com/ceph/ceph/pull/5028>`_, Owen Synge) -* rgw: Bucket header is enclosed by quotes (`issue#11874 <http://tracker.ceph.com/issues/11874>`_, `pr#4862 <http://github.com/ceph/ceph/pull/4862>`_, Wido den Hollander) -* build/ops: packaging: add SuSEfirewall2 service files (`issue#12092 <http://tracker.ceph.com/issues/12092>`_, `pr#5030 <http://github.com/ceph/ceph/pull/5030>`_, Tim Serong) -* rgw: Keystone PKI token expiration is not enforced (`issue#11722 <http://tracker.ceph.com/issues/11722>`_, `pr#4884 <http://github.com/ceph/ceph/pull/4884>`_, Anton Aksola) -* build/ops: debian/control: ceph-common (>> 0.94.2) must be >= 0.94.2-2 (`issue#12529,11998 <http://tracker.ceph.com/issues/12529,11998>`_, `pr#5417 <http://github.com/ceph/ceph/pull/5417>`_, Loic Dachary) -* mon: Clock skew causes missing summary and confuses Calamari (`issue#11879 <http://tracker.ceph.com/issues/11879>`_, `pr#4868 <http://github.com/ceph/ceph/pull/4868>`_, Thorsten Behrens) -* rgw: rados objects wronly deleted (`issue#12099 <http://tracker.ceph.com/issues/12099>`_, `pr#5117 <http://github.com/ceph/ceph/pull/5117>`_, wuxingyi) -* tests: kernel_untar_build fails on EL7 (`issue#12098 <http://tracker.ceph.com/issues/12098>`_, `pr#5119 <http://github.com/ceph/ceph/pull/5119>`_, Greg Farnum) -* fs: Fh ref count will leak if readahead does not need to do read from osd (`issue#12319 <http://tracker.ceph.com/issues/12319>`_, `pr#5427 <http://github.com/ceph/ceph/pull/5427>`_, Zhi Zhang) -* mon: OSDMonitor: allow addition of cache pool with non-empty snaps with co… (`issue#12595 <http://tracker.ceph.com/issues/12595>`_, `pr#5252 <http://github.com/ceph/ceph/pull/5252>`_, Samuel Just) -* mon: MDSMonitor: handle MDSBeacon messages properly (`issue#11979 <http://tracker.ceph.com/issues/11979>`_, `pr#5123 <http://github.com/ceph/ceph/pull/5123>`_, Kefu Chai) -* tools: ceph-disk: get_partition_type fails on /dev/cciss... (`issue#11760 <http://tracker.ceph.com/issues/11760>`_, `pr#4892 <http://github.com/ceph/ceph/pull/4892>`_, islepnev) -* build/ops: max files open limit for OSD daemon is too low (`issue#12087 <http://tracker.ceph.com/issues/12087>`_, `pr#5026 <http://github.com/ceph/ceph/pull/5026>`_, Owen Synge) -* mon: add an "osd crush tree" command (`issue#11833 <http://tracker.ceph.com/issues/11833>`_, `pr#5248 <http://github.com/ceph/ceph/pull/5248>`_, Kefu Chai) -* mon: mon crashes when "ceph osd tree 85 --format json" (`issue#11975 <http://tracker.ceph.com/issues/11975>`_, `pr#4936 <http://github.com/ceph/ceph/pull/4936>`_, Kefu Chai) -* build/ops: ceph / ceph-dbg steal ceph-objecstore-tool from ceph-test / ceph-test-dbg (`issue#11806 <http://tracker.ceph.com/issues/11806>`_, `pr#5069 <http://github.com/ceph/ceph/pull/5069>`_, Loic Dachary) -* rgw: DragonDisk fails to create directories via S3: MissingContentLength (`issue#12042 <http://tracker.ceph.com/issues/12042>`_, `pr#5118 <http://github.com/ceph/ceph/pull/5118>`_, Yehuda Sadeh) -* build/ops: /usr/bin/ceph from ceph-common is broken without installing ceph (`issue#11998 <http://tracker.ceph.com/issues/11998>`_, `pr#5206 <http://github.com/ceph/ceph/pull/5206>`_, Ken Dreyer) -* build/ops: systemd: Increase max files open limit for OSD daemon (`issue#11964 <http://tracker.ceph.com/issues/11964>`_, `pr#5040 <http://github.com/ceph/ceph/pull/5040>`_, Owen Synge) -* build/ops: rgw/logrotate.conf calls service with wrong init script name (`issue#12044 <http://tracker.ceph.com/issues/12044>`_, `pr#5055 <http://github.com/ceph/ceph/pull/5055>`_, wuxingyi) -* common: OPT_INT option interprets 3221225472 as -1073741824, and crashes in Throttle::Throttle() (`issue#11738 <http://tracker.ceph.com/issues/11738>`_, `pr#4889 <http://github.com/ceph/ceph/pull/4889>`_, Kefu Chai) -* doc: doc/release-notes: v0.94.2 (`issue#11492 <http://tracker.ceph.com/issues/11492>`_, `pr#4934 <http://github.com/ceph/ceph/pull/4934>`_, Sage Weil) -* common: admin_socket: close socket descriptor in destructor (`issue#11706 <http://tracker.ceph.com/issues/11706>`_, `pr#4657 <http://github.com/ceph/ceph/pull/4657>`_, Jon Bernard) -* rgw: Object copy bug (`issue#11755 <http://tracker.ceph.com/issues/11755>`_, `pr#4885 <http://github.com/ceph/ceph/pull/4885>`_, Javier M. Mellid) -* rgw: empty json response when getting user quota (`issue#12245 <http://tracker.ceph.com/issues/12245>`_, `pr#5237 <http://github.com/ceph/ceph/pull/5237>`_, wuxingyi) -* fs: cephfs Dumper tries to load whole journal into memory at once (`issue#11999 <http://tracker.ceph.com/issues/11999>`_, `pr#5120 <http://github.com/ceph/ceph/pull/5120>`_, John Spray) -* rgw: Fix tool for #11442 does not correctly fix objects created via multipart uploads (`issue#12242 <http://tracker.ceph.com/issues/12242>`_, `pr#5229 <http://github.com/ceph/ceph/pull/5229>`_, Yehuda Sadeh) -* rgw: Civetweb RGW appears to report full size of object as downloaded when only partially downloaded (`issue#12243 <http://tracker.ceph.com/issues/12243>`_, `pr#5231 <http://github.com/ceph/ceph/pull/5231>`_, Yehuda Sadeh) -* osd: stuck incomplete (`issue#12362 <http://tracker.ceph.com/issues/12362>`_, `pr#5269 <http://github.com/ceph/ceph/pull/5269>`_, Samuel Just) -* osd: start_flush: filter out removed snaps before determining snapc's (`issue#11911 <http://tracker.ceph.com/issues/11911>`_, `pr#4899 <http://github.com/ceph/ceph/pull/4899>`_, Samuel Just) -* librbd: internal.cc: 1967: FAILED assert(watchers.size() == 1) (`issue#12239 <http://tracker.ceph.com/issues/12239>`_, `pr#5243 <http://github.com/ceph/ceph/pull/5243>`_, Jason Dillaman) -* librbd: new QA client upgrade tests (`issue#12109 <http://tracker.ceph.com/issues/12109>`_, `pr#5046 <http://github.com/ceph/ceph/pull/5046>`_, Jason Dillaman) -* librbd: [ FAILED ] TestLibRBD.ExclusiveLockTransition (`issue#12238 <http://tracker.ceph.com/issues/12238>`_, `pr#5241 <http://github.com/ceph/ceph/pull/5241>`_, Jason Dillaman) -* rgw: Swift API: XML document generated in response for GET on account does not contain account name (`issue#12323 <http://tracker.ceph.com/issues/12323>`_, `pr#5227 <http://github.com/ceph/ceph/pull/5227>`_, Radoslaw Zarzynski) -* rgw: keystone does not support chunked input (`issue#12322 <http://tracker.ceph.com/issues/12322>`_, `pr#5226 <http://github.com/ceph/ceph/pull/5226>`_, Hervé Rousseau) -* mds: MDS is crashed (mds/CDir.cc: 1391: FAILED assert(!is_complete())) (`issue#11737 <http://tracker.ceph.com/issues/11737>`_, `pr#4886 <http://github.com/ceph/ceph/pull/4886>`_, Yan, Zheng) -* cli: ceph: cli interactive mode does not understand quotes (`issue#11736 <http://tracker.ceph.com/issues/11736>`_, `pr#4776 <http://github.com/ceph/ceph/pull/4776>`_, Kefu Chai) -* librbd: add valgrind memory checks for unit tests (`issue#12384 <http://tracker.ceph.com/issues/12384>`_, `pr#5280 <http://github.com/ceph/ceph/pull/5280>`_, Zhiqiang Wang) -* build/ops: admin/build-doc: script fails silently under certain circumstances (`issue#11902 <http://tracker.ceph.com/issues/11902>`_, `pr#4877 <http://github.com/ceph/ceph/pull/4877>`_, John Spray) -* osd: Fixes for rados ops with snaps (`issue#11908 <http://tracker.ceph.com/issues/11908>`_, `pr#4902 <http://github.com/ceph/ceph/pull/4902>`_, Samuel Just) -* build/ops: ceph.spec.in: ceph-common subpackage def needs tweaking for SUSE/openSUSE (`issue#12308 <http://tracker.ceph.com/issues/12308>`_, `pr#4883 <http://github.com/ceph/ceph/pull/4883>`_, Nathan Cutler) -* fs: client: reference counting 'struct Fh' (`issue#12088 <http://tracker.ceph.com/issues/12088>`_, `pr#5222 <http://github.com/ceph/ceph/pull/5222>`_, Yan, Zheng) -* build/ops: ceph.spec: update OpenSUSE BuildRequires (`issue#11611 <http://tracker.ceph.com/issues/11611>`_, `pr#4667 <http://github.com/ceph/ceph/pull/4667>`_, Loic Dachary) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.3.txt>`. - - - -v0.94.2 Hammer -============== - -This Hammer point release fixes a few critical bugs in RGW that can -prevent objects starting with underscore from behaving properly and -that prevent garbage collection of deleted objects when using the -Civetweb standalone mode. - -All v0.94.x Hammer users are strongly encouraged to upgrade, and to -make note of the repair procedure below if RGW is in use. - -Upgrading from previous Hammer release --------------------------------------- - -Bug #11442 introduced a change that made rgw objects that start with underscore -incompatible with previous versions. The fix to that bug reverts to the -previous behavior. In order to be able to access objects that start with an -underscore and were created in prior Hammer releases, following the upgrade it -is required to run (for each affected bucket):: - - $ radosgw-admin bucket check --check-head-obj-locator \ - --bucket=<bucket> [--fix] - -Notable changes ---------------- - -* build: compilation error: No high-precision counter available (armhf, powerpc..) (#11432, James Page) -* ceph-dencoder links to libtcmalloc, and shouldn't (#10691, Boris Ranto) -* ceph-disk: disk zap sgdisk invocation (#11143, Owen Synge) -* ceph-disk: use a new disk as journal disk,ceph-disk prepare fail (#10983, Loic Dachary) -* ceph-objectstore-tool should be in the ceph server package (#11376, Ken Dreyer) -* librados: can get stuck in redirect loop if osdmap epoch == last_force_op_resend (#11026, Jianpeng Ma) -* librbd: A retransmit of proxied flatten request can result in -EINVAL (Jason Dillaman) -* librbd: ImageWatcher should cancel in-flight ops on watch error (#11363, Jason Dillaman) -* librbd: Objectcacher setting max object counts too low (#7385, Jason Dillaman) -* librbd: Periodic failure of TestLibRBD.DiffIterateStress (#11369, Jason Dillaman) -* librbd: Queued AIO reference counters not properly updated (#11478, Jason Dillaman) -* librbd: deadlock in image refresh (#5488, Jason Dillaman) -* librbd: notification race condition on snap_create (#11342, Jason Dillaman) -* mds: Hammer uclient checking (#11510, John Spray) -* mds: remove caps from revoking list when caps are voluntarily released (#11482, Yan, Zheng) -* messenger: double clear of pipe in reaper (#11381, Haomai Wang) -* mon: Total size of OSDs is a maginitude less than it is supposed to be. (#11534, Zhe Zhang) -* osd: don't check order in finish_proxy_read (#11211, Zhiqiang Wang) -* osd: handle old semi-deleted pgs after upgrade (#11429, Samuel Just) -* osd: object creation by write cannot use an offset on an erasure coded pool (#11507, Jianpeng Ma) -* rgw: Improve rgw HEAD request by avoiding read the body of the first chunk (#11001, Guang Yang) -* rgw: civetweb is hitting a limit (number of threads 1024) (#10243, Yehuda Sadeh) -* rgw: civetweb should use unique request id (#10295, Orit Wasserman) -* rgw: critical fixes for hammer (#11447, #11442, Yehuda Sadeh) -* rgw: fix swift COPY headers (#10662, #10663, #11087, #10645, Radoslaw Zarzynski) -* rgw: improve performance for large object (multiple chunks) GET (#11322, Guang Yang) -* rgw: init-radosgw: run RGW as root (#11453, Ken Dreyer) -* rgw: keystone token cache does not work correctly (#11125, Yehuda Sadeh) -* rgw: make quota/gc thread configurable for starting (#11047, Guang Yang) -* rgw: make swift responses of RGW return last-modified, content-length, x-trans-id headers.(#10650, Radoslaw Zarzynski) -* rgw: merge manifests correctly when there's prefix override (#11622, Yehuda Sadeh) -* rgw: quota not respected in POST object (#11323, Sergey Arkhipov) -* rgw: restore buffer of multipart upload after EEXIST (#11604, Yehuda Sadeh) -* rgw: shouldn't need to disable rgw_socket_path if frontend is configured (#11160, Yehuda Sadeh) -* rgw: swift: Response header of GET request for container does not contain X-Container-Object-Count, X-Container-Bytes-Used and x-trans-id headers (#10666, Dmytro Iurchenko) -* rgw: swift: Response header of POST request for object does not contain content-length and x-trans-id headers (#10661, Radoslaw Zarzynski) -* rgw: swift: response for GET/HEAD on container does not contain the X-Timestamp header (#10938, Radoslaw Zarzynski) -* rgw: swift: response for PUT on /container does not contain the mandatory Content-Length header when FCGI is used (#11036, #10971, Radoslaw Zarzynski) -* rgw: swift: wrong handling of empty metadata on Swift container (#11088, Radoslaw Zarzynski) -* tests: TestFlatIndex.cc races with TestLFNIndex.cc (#11217, Xinze Chi) -* tests: ceph-helpers kill_daemons fails when kill fails (#11398, Loic Dachary) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.2.txt>`. - - -v0.94.1 Hammer -============== - -This bug fix release fixes a few critical issues with CRUSH. The most -important addresses a bug in feature bit enforcement that may prevent -pre-hammer clients from communicating with the cluster during an -upgrade. This only manifests in some cases (for example, when the -'rack' type is in use in the CRUSH map, and possibly other cases), but for -safety we strongly recommend that all users use 0.94.1 instead of 0.94 when -upgrading. - -There is also a fix in the new straw2 buckets when OSD weights are 0. - -We recommend that all v0.94 users upgrade. - -Notable changes ---------------- - -* crush: fix divide-by-0 in straw2 (#11357 Sage Weil) -* crush: fix has_v4_buckets (#11364 Sage Weil) -* osd: fix negative degraded objects during backfilling (#7737 Guang Yang) - -For more detailed information, see :download:`the complete changelog <../changelog/v0.94.1.txt>`. - - -v0.94 Hammer -============ - -This major release is expected to form the basis of the next long-term -stable series. It is intended to supersede v0.80.x Firefly. - -Highlights since Giant include: - -* *RADOS Performance*: a range of improvements have been made in the - OSD and client-side librados code that improve the throughput on - flash backends and improve parallelism and scaling on fast machines. -* *Simplified RGW deployment*: the ceph-deploy tool now has a new - 'ceph-deploy rgw create HOST' command that quickly deploys a - instance of the S3/Swift gateway using the embedded Civetweb server. - This is vastly simpler than the previous Apache-based deployment. - There are a few rough edges (e.g., around SSL support) but we - encourage users to try `the new method`_. -* *RGW object versioning*: RGW now supports the S3 object versioning - API, which preserves old version of objects instead of overwriting - them. -* *RGW bucket sharding*: RGW can now shard the bucket index for large - buckets across, improving performance for very large buckets. -* *RBD object maps*: RBD now has an object map function that tracks - which parts of the image are allocating, improving performance for - clones and for commands like export and delete. -* *RBD mandatory locking*: RBD has a new mandatory locking framework - (still disabled by default) that adds additional safeguards to - prevent multiple clients from using the same image at the same time. -* *RBD copy-on-read*: RBD now supports copy-on-read for image clones, - improving performance for some workloads. -* *CephFS snapshot improvements*: Many many bugs have been fixed with - CephFS snapshots. Although they are still disabled by default, - stability has improved significantly. -* *CephFS Recovery tools*: We have built some journal recovery and - diagnostic tools. Stability and performance of single-MDS systems is - vastly improved in Giant, and more improvements have been made now - in Hammer. Although we still recommend caution when storing - important data in CephFS, we do encourage testing for non-critical - workloads so that we can better gauge the feature, usability, - performance, and stability gaps. -* *CRUSH improvements*: We have added a new straw2 bucket algorithm - that reduces the amount of data migration required when changes are - made to the cluster. -* *Shingled erasure codes (SHEC)*: The OSDs now have experimental - support for shingled erasure codes, which allow a small amount of - additional storage to be traded for improved recovery performance. -* *RADOS cache tiering*: A series of changes have been made in the - cache tiering code that improve performance and reduce latency. -* *RDMA support*: There is now experimental support the RDMA via the - Accelio (libxio) library. -* *New administrator commands*: The 'ceph osd df' command shows - pertinent details on OSD disk utilizations. The 'ceph pg ls ...' - command makes it much simpler to query PG states while diagnosing - cluster issues. - -.. _the new method: ../start/quick-ceph-deploy/#add-an-rgw-instance - -Other highlights since Firefly include: - -* *CephFS*: we have fixed a raft of bugs in CephFS and built some - basic journal recovery and diagnostic tools. Stability and - performance of single-MDS systems is vastly improved in Giant. - Although we do not yet recommend CephFS for production deployments, - we do encourage testing for non-critical workloads so that we can - better gauge the feature, usability, performance, and stability - gaps. -* *Local Recovery Codes*: the OSDs now support an erasure-coding scheme - that stores some additional data blocks to reduce the IO required to - recover from single OSD failures. -* *Degraded vs misplaced*: the Ceph health reports from 'ceph -s' and - related commands now make a distinction between data that is - degraded (there are fewer than the desired number of copies) and - data that is misplaced (stored in the wrong location in the - cluster). The distinction is important because the latter does not - compromise data safety. -* *Tiering improvements*: we have made several improvements to the - cache tiering implementation that improve performance. Most - notably, objects are not promoted into the cache tier by a single - read; they must be found to be sufficiently hot before that happens. -* *Monitor performance*: the monitors now perform writes to the local - data store asynchronously, improving overall responsiveness. -* *Recovery tools*: the ceph-objectstore-tool is greatly expanded to - allow manipulation of an individual OSDs data store for debugging - and repair purposes. This is most heavily used by our QA - infrastructure to exercise recovery code. - -I would like to take this opportunity to call out the amazing growth -in contributors to Ceph beyond the core development team from Inktank. -Hammer features major new features and improvements from Intel, Fujitsu, -UnitedStack, Yahoo, UbuntuKylin, CohortFS, Mellanox, CERN, Deutsche -Telekom, Mirantis, and SanDisk. - -Dedication ----------- - -This release is dedicated in memoriam to Sandon Van Ness, aka -Houkouonchi, who unexpectedly passed away a few weeks ago. Sandon was -responsible for maintaining the large and complex Sepia lab that -houses the Ceph project's build and test infrastructure. His efforts -have made an important impact on our ability to reliably test Ceph -with a relatively small group of people. He was a valued member of -the team and we will miss him. H is also for Houkouonchi. - -Upgrading ---------- - -* If your existing cluster is running a version older than v0.80.x - Firefly, please first upgrade to the latest Firefly release before - moving on to Giant. We have not tested upgrades directly from - Emperor, Dumpling, or older releases. - - We *have* tested: - - * Firefly to Hammer - * Giant to Hammer - * Dumpling to Firefly to Hammer - -* Please upgrade daemons in the following order: - - #. Monitors - #. OSDs - #. MDSs and/or radosgw - - Note that the relative ordering of OSDs and monitors should not matter, but - we primarily tested upgrading monitors first. - -* The ceph-osd daemons will perform a disk-format upgrade improve the - PG metadata layout and to repair a minor bug in the on-disk format. - It may take a minute or two for this to complete, depending on how - many objects are stored on the node; do not be alarmed if they do - not marked "up" by the cluster immediately after starting. - -* If upgrading from v0.93, set - osd enable degraded writes = false - - on all osds prior to upgrading. The degraded writes feature has - been reverted due to 11155. - -* The LTTNG tracing in librbd and librados is disabled in the release packages - until we find a way to avoid violating distro security policies when linking - libust. - -Upgrading from v0.87.x Giant ----------------------------- - -* librbd and librados include lttng tracepoints on distros with - liblttng 2.4 or later (only Ubuntu Trusty for the ceph.com - packages). When running a daemon that uses these libraries, i.e. an - application that calls fork(2) or clone(2) without exec(3), you must - set LD_PRELOAD=liblttng-ust-fork.so.0 to prevent a crash in the - lttng atexit handler when the process exits. The only ceph tool that - requires this is rbd-fuse. - -* If rgw_socket_path is defined and rgw_frontends defines a - socket_port and socket_host, we now allow the rgw_frontends settings - to take precedence. This change should only affect users who have - made non-standard changes to their radosgw configuration. - -* If you are upgrading specifically from v0.92, you must stop all OSD - daemons and flush their journals (``ceph-osd -i NNN - --flush-journal``) before upgrading. There was a transaction - encoding bug in v0.92 that broke compatibility. Upgrading from v0.93, - v0.91, or anything earlier is safe. - -* The experimental 'keyvaluestore-dev' OSD backend has been renamed - 'keyvaluestore' (for simplicity) and marked as experimental. To - enable this untested feature and acknowledge that you understand - that it is untested and may destroy data, you need to add the - following to your ceph.conf:: - - enable experimental unrecoverable data corrupting features = keyvaluestore - -* The following librados C API function calls take a 'flags' argument whose value - is now correctly interpreted: - - rados_write_op_operate() - rados_aio_write_op_operate() - rados_read_op_operate() - rados_aio_read_op_operate() - - The flags were not correctly being translated from the librados constants to the - internal values. Now they are. Any code that is passing flags to these methods - should be audited to ensure that they are using the correct LIBRADOS_OP_FLAG_* - constants. - -* The 'rados' CLI 'copy' and 'cppool' commands now use the copy-from operation, - which means the latest CLI cannot run these commands against pre-firefly OSDs. - -* The librados watch/notify API now includes a watch_flush() operation to flush - the async queue of notify operations. This should be called by any watch/notify - user prior to rados_shutdown(). - -* The 'category' field for objects has been removed. This was originally added - to track PG stat summations over different categories of objects for use by - radosgw. It is no longer has any known users and is prone to abuse because it - can lead to a pg_stat_t structure that is unbounded. The librados API calls - that accept this field now ignore it, and the OSD no longer tracks the - per-category summations. - -* The output for 'rados df' has changed. The 'category' level has been - eliminated, so there is now a single stat object per pool. The structure of - the JSON output is different, and the plaintext output has one less column. - -* The 'rados create <objectname> [category]' optional category argument is no - longer supported or recognized. - -* rados.py's Rados class no longer has a __del__ method; it was causing - problems on interpreter shutdown and use of threads. If your code has - Rados objects with limited lifetimes and you're concerned about locked - resources, call Rados.shutdown() explicitly. - -* There is a new version of the librados watch/notify API with vastly - improved semantics. Any applications using this interface are - encouraged to migrate to the new API. The old API calls are marked - as deprecated and will eventually be removed. - -* The librados rados_unwatch() call used to be safe to call on an - invalid handle. The new version has undefined behavior when passed - a bogus value (for example, when rados_watch() returns an error and - handle is not defined). - -* The structure of the formatted 'pg stat' command is changed for the - portion that counts states by name to avoid using the '+' character - (which appears in state names) as part of the XML token (it is not - legal). - -* Previously, the formatted output of 'ceph pg stat -f ...' was a full - pg dump that included all metadata about all PGs in the system. It - is now a concise summary of high-level PG stats, just like the - unformatted 'ceph pg stat' command. - -* All JSON dumps of floating point values were incorrecting surrounding the - value with quotes. These quotes have been removed. Any consumer of structured - JSON output that was consuming the floating point values was previously having - to interpret the quoted string and will most likely need to be fixed to take - the unquoted number. - -* New ability to list all objects from all namespaces that can fail or - return incomplete results when not all OSDs have been upgraded. - Features rados --all ls, rados cppool, rados export, rados - cache-flush-evict-all and rados cache-try-flush-evict-all can also - fail or return incomplete results. - -* Due to a change in the Linux kernel version 3.18 and the limits of the FUSE - interface, ceph-fuse needs be mounted as root on at least some systems. See - issues #9997, #10277, and #10542 for details. - -Upgrading from v0.80x Firefly (additional notes) ------------------------------------------------- - -* The client-side caching for librbd is now enabled by default (rbd - cache = true). A safety option (rbd cache writethrough until flush - = true) is also enabled so that writeback caching is not used until - the library observes a 'flush' command, indicating that the librbd - users is passing that operation through from the guest VM. This - avoids potential data loss when used with older versions of qemu - that do not support flush. - - leveldb_write_buffer_size = 8*1024*1024 = 33554432 // 8MB - leveldb_cache_size = 512*1024*1204 = 536870912 // 512MB - leveldb_block_size = 64*1024 = 65536 // 64KB - leveldb_compression = false - leveldb_log = "" - - OSDs will still maintain the following osd-specific defaults: - - leveldb_log = "" - -* The 'rados getxattr ...' command used to add a gratuitous newline to the attr - value; it now does not. - -* The ``*_kb perf`` counters on the monitor have been removed. These are - replaced with a new set of ``*_bytes`` counters (e.g., ``cluster_osd_kb`` is - replaced by ``cluster_osd_bytes``). - -* The ``rd_kb`` and ``wr_kb`` fields in the JSON dumps for pool stats (accessed - via the ``ceph df detail -f json-pretty`` and related commands) have been - replaced with corresponding ``*_bytes`` fields. Similarly, the - ``total_space``, ``total_used``, and ``total_avail`` fields are replaced with - ``total_bytes``, ``total_used_bytes``, and ``total_avail_bytes`` fields. - -* The ``rados df --format=json`` output ``read_bytes`` and ``write_bytes`` - fields were incorrectly reporting ops; this is now fixed. - -* The ``rados df --format=json`` output previously included ``read_kb`` and - ``write_kb`` fields; these have been removed. Please use ``read_bytes`` and - ``write_bytes`` instead (and divide by 1024 if appropriate). - -* The experimental keyvaluestore-dev OSD backend had an on-disk format - change that prevents existing OSD data from being upgraded. This - affects developers and testers only. - -* mon-specific and osd-specific leveldb options have been removed. - From this point onward users should use the `leveldb_*` generic - options and add the options in the appropriate sections of their - configuration files. Monitors will still maintain the following - monitor-specific defaults: - - leveldb_write_buffer_size = 8*1024*1024 = 33554432 // 8MB - leveldb_cache_size = 512*1024*1204 = 536870912 // 512MB - leveldb_block_size = 64*1024 = 65536 // 64KB - leveldb_compression = false - leveldb_log = "" - - OSDs will still maintain the following osd-specific defaults: - - leveldb_log = "" - -* CephFS support for the legacy anchor table has finally been removed. - Users with file systems created before firefly should ensure that inodes - with multiple hard links are modified *prior* to the upgrade to ensure that - the backtraces are written properly. For example:: - - sudo find /mnt/cephfs -type f -links +1 -exec touch \{\} \; - -* We disallow nonsensical 'tier cache-mode' transitions. From this point - onward, 'writeback' can only transition to 'forward' and 'forward' - can transition to 1) 'writeback' if there are dirty objects, or 2) any if - there are no dirty objects. - - -Notable changes since v0.93 ---------------------------- - -* build: a few cmake fixes (Matt Benjamin) -* build: fix build on RHEL/CentOS 5.9 (Rohan Mars) -* build: reorganize Makefile to allow modular builds (Boris Ranto) -* ceph-fuse: be more forgiving on remount (#10982 Greg Farnum) -* ceph: improve CLI parsing (#11093 David Zafman) -* common: fix cluster logging to default channel (#11177 Sage Weil) -* crush: fix parsing of straw2 buckets (#11015 Sage Weil) -* doc: update man pages (David Zafman) -* librados: fix leak in C_TwoContexts (Xiong Yiliang) -* librados: fix leak in watch/notify path (Sage Weil) -* librbd: fix and improve AIO cache invalidation (#10958 Jason Dillaman) -* librbd: fix memory leak (Jason Dillaman) -* librbd: fix ordering/queueing of resize operations (Jason Dillaman) -* librbd: validate image is r/w on resize/flatten (Jason Dillaman) -* librbd: various internal locking fixes (Jason Dillaman) -* lttng: tracing is disabled until we streamline dependencies (Josh Durgin) -* mon: add bootstrap-rgw profile (Sage Weil) -* mon: do not pollute mon dir with CSV files from CRUSH check (Loic Dachary) -* mon: fix clock drift time check interval (#10546 Joao Eduardo Luis) -* mon: fix units in store stats (Joao Eduardo Luis) -* mon: improve error handling on erasure code profile set (#10488, #11144 Loic Dachary) -* mon: set {read,write}_tier on 'osd tier add-cache ...' (Jianpeng Ma) -* ms: xio: fix misc bugs (Matt Benjamin, Vu Pham) -* osd: DBObjectMap: fix locking to prevent rare crash (#9891 Samuel Just) -* osd: fix and document last_epoch_started semantics (Samuel Just) -* osd: fix divergent entry handling on PG split (Samuel Just) -* osd: fix leak on shutdown (Kefu Chai) -* osd: fix recording of digest on scrub (Samuel Just) -* osd: fix whiteout handling (Sage Weil) -* rbd: allow v2 striping parameters for clones and imports (Jason Dillaman) -* rbd: fix formatted output of image features (Jason Dillaman) -* rbd: updat eman page (Ilya Dryomov) -* rgw: don't overwrite bucket/object owner when setting ACLs (#10978 Yehuda Sadeh) -* rgw: enable IPv6 for civetweb (#10965 Yehuda Sadeh) -* rgw: fix sysvinit script when rgw_socket_path is not defined (#11159 Yehuda Sadeh, Dan Mick) -* rgw: pass civetweb configurables through (#10907 Yehuda Sadeh) -* rgw: use new watch/notify API (Yehuda Sadeh, Sage Weil) -* osd: reverted degraded writes feature due to 11155 - -Notable changes since v0.87.x Giant ------------------------------------ - -* add experimental features option (Sage Weil) -* arch: fix NEON feaeture detection (#10185 Loic Dachary) -* asyncmsgr: misc fixes (Haomai Wang) -* buffer: add 'shareable' construct (Matt Benjamin) -* buffer: add list::get_contiguous (Sage Weil) -* buffer: avoid rebuild if buffer already contiguous (Jianpeng Ma) -* build: CMake support (Ali Maredia, Casey Bodley, Adam Emerson, Marcus Watts, Matt Benjamin) -* build: a few cmake fixes (Matt Benjamin) -* build: aarch64 build fixes (Noah Watkins, Haomai Wang) -* build: adjust build deps for yasm, virtualenv (Jianpeng Ma) -* build: fix 'make check' races (#10384 Loic Dachary) -* build: fix build on RHEL/CentOS 5.9 (Rohan Mars) -* build: fix pkg names when libkeyutils is missing (Pankag Garg, Ken Dreyer) -* build: improve build dependency tooling (Loic Dachary) -* build: reorganize Makefile to allow modular builds (Boris Ranto) -* build: support for jemalloc (Shishir Gowda) -* ceph-disk: Scientific Linux support (Dan van der Ster) -* ceph-disk: allow journal partition re-use (#10146 Loic Dachary, Dav van der Ster) -* ceph-disk: call partx/partprobe consistency (#9721 Loic Dachary) -* ceph-disk: do not re-use partition if encryption is required (Loic Dachary) -* ceph-disk: fix dmcrypt key permissions (Loic Dachary) -* ceph-disk: fix umount race condition (#10096 Blaine Gardner) -* ceph-disk: improved systemd support (Owen Synge) -* ceph-disk: init=none option (Loic Dachary) -* ceph-disk: misc fixes (Christos Stavrakakis) -* ceph-disk: respect --statedir for keyring (Loic Dachary) -* ceph-disk: set guid if reusing journal partition (Dan van der Ster) -* ceph-disk: support LUKS for encrypted partitions (Andrew Bartlett, Loic Dachary) -* ceph-fuse, libcephfs: POSIX file lock support (Yan, Zheng) -* ceph-fuse, libcephfs: allow xattr caps in inject_release_failure (#9800 John Spray) -* ceph-fuse, libcephfs: fix I_COMPLETE_ORDERED checks (#9894 Yan, Zheng) -* ceph-fuse, libcephfs: fix cap flush overflow (Greg Farnum, Yan, Zheng) -* ceph-fuse, libcephfs: fix root inode xattrs (Yan, Zheng) -* ceph-fuse, libcephfs: preserve dir ordering (#9178 Yan, Zheng) -* ceph-fuse, libcephfs: trim inodes before reconnecting to MDS (Yan, Zheng) -* ceph-fuse,libcephfs: add support for O_NOFOLLOW and O_PATH (Greg Farnum) -* ceph-fuse,libcephfs: resend requests before completing cap reconnect (#10912 Yan, Zheng) -* ceph-fuse: be more forgiving on remount (#10982 Greg Farnum) -* ceph-fuse: fix dentry invalidation on 3.18+ kernels (#9997 Yan, Zheng) -* ceph-fuse: fix kernel cache trimming (#10277 Yan, Zheng) -* ceph-fuse: select kernel cache invalidation mechanism based on kernel version (Greg Farnum) -* ceph-monstore-tool: fix shutdown (#10093 Loic Dachary) -* ceph-monstore-tool: fix/improve CLI (Joao Eduardo Luis) -* ceph-objectstore-tool: fix import (#10090 David Zafman) -* ceph-objectstore-tool: improved import (David Zafman) -* ceph-objectstore-tool: many improvements and tests (David Zafman) -* ceph-objectstore-tool: many many improvements (David Zafman) -* ceph-objectstore-tool: misc improvements, fixes (#9870 #9871 David Zafman) -* ceph.spec: package rbd-replay-prep (Ken Dreyer) -* ceph: add 'ceph osd df [tree]' command (#10452 Mykola Golub) -* ceph: do not parse injectargs twice (Loic Dachary) -* ceph: fix 'ceph tell ...' command validation (#10439 Joao Eduardo Luis) -* ceph: improve 'ceph osd tree' output (Mykola Golub) -* ceph: improve CLI parsing (#11093 David Zafman) -* ceph: make 'ceph -s' output more readable (Sage Weil) -* ceph: make 'ceph -s' show PG state counts in sorted order (Sage Weil) -* ceph: make 'ceph tell mon.* version' work (Mykola Golub) -* ceph: new 'ceph tell mds.$name_or_rank_or_gid' (John Spray) -* ceph: show primary-affinity in 'ceph osd tree' (Mykola Golub) -* ceph: test robustness (Joao Eduardo Luis) -* ceph_objectstore_tool: behave with sharded flag (#9661 David Zafman) -* cephfs-journal-tool: add recover_dentries function (#9883 John Spray) -* cephfs-journal-tool: fix journal import (#10025 John Spray) -* cephfs-journal-tool: skip up to expire_pos (#9977 John Spray) -* cleanup rados.h definitions with macros (Ilya Dryomov) -* common: add 'perf reset ...' admin command (Jianpeng Ma) -* common: add TableFormatter (Andreas Peters) -* common: add newline to flushed json output (Sage Weil) -* common: check syncfs() return code (Jianpeng Ma) -* common: do not unlock rwlock on destruction (Federico Simoncelli) -* common: filtering for 'perf dump' (John Spray) -* common: fix Formatter factory breakage (#10547 Loic Dachary) -* common: fix block device discard check (#10296 Sage Weil) -* common: make json-pretty output prettier (Sage Weil) -* common: remove broken CEPH_LOCKDEP optoin (Kefu Chai) -* common: shared_cache unit tests (Cheng Cheng) -* common: support new gperftools header locations (Key Dreyer) -* config: add $cctid meta variable (Adam Crume) -* crush: fix buffer overrun for poorly formed rules (#9492 Johnu George) -* crush: fix detach_bucket (#10095 Sage Weil) -* crush: fix parsing of straw2 buckets (#11015 Sage Weil) -* crush: fix several bugs in adjust_item_weight (Rongze Zhu) -* crush: fix tree bucket behavior (Rongze Zhu) -* crush: improve constness (Loic Dachary) -* crush: new and improved straw2 bucket type (Sage Weil, Christina Anderson, Xiaoxi Chen) -* crush: straw bucket weight calculation fixes (#9998 Sage Weil) -* crush: update tries stats for indep rules (#10349 Loic Dachary) -* crush: use larger choose_tries value for erasure code rulesets (#10353 Loic Dachary) -* crushtool: add --location <id> command (Sage Weil, Loic Dachary) -* debian,rpm: move RBD udev rules to ceph-common (#10864 Ken Dreyer) -* debian: split python-ceph into python-{rbd,rados,cephfs} (Boris Ranto) -* default to libnss instead of crypto++ (Federico Gimenez) -* doc: CephFS disaster recovery guidance (John Spray) -* doc: CephFS for early adopters (John Spray) -* doc: add build-doc guidlines for Fedora and CentOS/RHEL (Nilamdyuti Goswami) -* doc: add dumpling to firefly upgrade section (#7679 John Wilkins) -* doc: ceph osd reweight vs crush weight (Laurent Guerby) -* doc: do not suggest dangerous XFS nobarrier option (Dan van der Ster) -* doc: document erasure coded pool operations (#9970 Loic Dachary) -* doc: document the LRC per-layer plugin configuration (Yuan Zhou) -* doc: enable rbd cache on openstack deployments (Sebastien Han) -* doc: erasure code doc updates (Loic Dachary) -* doc: file system osd config settings (Kevin Dalley) -* doc: fix OpenStack Glance docs (#10478 Sebastien Han) -* doc: improved installation nots on CentOS/RHEL installs (John Wilkins) -* doc: key/value store config reference (John Wilkins) -* doc: misc cleanups (Adam Spiers, Sebastien Han, Nilamdyuti Goswami, Ken Dreyer, John Wilkins) -* doc: misc improvements (Nilamdyuti Goswami, John Wilkins, Chris Holcombe) -* doc: misc updates (#9793 #9922 #10204 #10203 Travis Rhoden, Hazem, Ayari, Florian Coste, Andy Allan, Frank Yu, Baptiste Veuillez-Mainard, Yuan Zhou, Armando Segnini, Robert Jansen, Tyler Brekke, Viktor Suprun) -* doc: misc updates (Alfredo Deza, VRan Liu) -* doc: misc updates (Nilamdyuti Goswami, John Wilkins) -* doc: new man pages (Nilamdyuti Goswami) -* doc: preflight doc fixes (John Wilkins) -* doc: replace cloudfiles with swiftclient Python Swift example (Tim Freund) -* doc: update PG count guide (Gerben Meijer, Laurent Guerby, Loic Dachary) -* doc: update man pages (David Zafman) -* doc: update openstack docs for Juno (Sebastien Han) -* doc: update release descriptions (Ken Dreyer) -* doc: update sepia hardware inventory (Sandon Van Ness) -* erasure-code: add mSHEC erasure code support (Takeshi Miyamae) -* erasure-code: improved docs (#10340 Loic Dachary) -* erasure-code: set max_size to 20 (#10363 Loic Dachary) -* fix cluster logging from non-mon daemons (Sage Weil) -* init-ceph: check for systemd-run before using it (Boris Ranto) -* install-deps.sh: do not require sudo when root (Loic Dachary) -* keyvaluestore: misc fixes (Haomai Wang) -* keyvaluestore: performance improvements (Haomai Wang) -* libcephfs,ceph-fuse: add 'status' asok (John Spray) -* libcephfs,ceph-fuse: fix getting zero-length xattr (#10552 Yan, Zheng) -* libcephfs: fix dirfrag trimming (#10387 Yan, Zheng) -* libcephfs: fix mount timeout (#10041 Yan, Zheng) -* libcephfs: fix test (#10415 Yan, Zheng) -* libcephfs: fix use-afer-free on umount (#10412 Yan, Zheng) -* libcephfs: include ceph and git version in client metadata (Sage Weil) -* librados, osd: new watch/notify implementation (Sage Weil) -* librados: add blacklist_add convenience method (Jason Dillaman) -* librados: add rados_pool_get_base_tier() call (Adam Crume) -* librados: add watch_flush() operation (Sage Weil, Haomai Wang) -* librados: avoid memcpy on getxattr, read (Jianpeng Ma) -* librados: cap buffer length (Loic Dachary) -* librados: create ioctx by pool id (Jason Dillaman) -* librados: do notify completion in fast-dispatch (Sage Weil) -* librados: drop 'category' feature (Sage Weil) -* librados: expose rados_{read|write}_op_assert_version in C API (Kim Vandry) -* librados: fix infinite loop with skipped map epochs (#9986 Ding Dinghua) -* librados: fix iterator operator= bugs (#10082 David Zafman, Yehuda Sadeh) -* librados: fix leak in C_TwoContexts (Xiong Yiliang) -* librados: fix leak in watch/notify path (Sage Weil) -* librados: fix null deref when pool DNE (#9944 Sage Weil) -* librados: fix objecter races (#9617 Josh Durgin) -* librados: fix pool deletion handling (#10372 Sage Weil) -* librados: fix pool name caching (#10458 Radoslaw Zarzynski) -* librados: fix resource leak, misc bugs (#10425 Radoslaw Zarzynski) -* librados: fix some watch/notify locking (Jason Dillaman, Josh Durgin) -* librados: fix timer race from recent refactor (Sage Weil) -* librados: new fadvise API (Ma Jianpeng) -* librados: only export public API symbols (Jason Dillaman) -* librados: remove shadowed variable (Kefu Chain) -* librados: translate op flags from C APIs (Matthew Richards) -* libradosstriper: fix remove() (Dongmao Zhang) -* libradosstriper: fix shutdown hang (Dongmao Zhang) -* libradosstriper: fix stat strtoll (Dongmao Zhang) -* libradosstriper: fix trunc method (#10129 Sebastien Ponce) -* libradosstriper: fix write_full when ENOENT (#10758 Sebastien Ponce) -* libradosstriper: misc fixes (Sebastien Ponce) -* librbd: CRC protection for RBD image map (Jason Dillaman) -* librbd: add missing python docstrings (Jason Dillaman) -* librbd: add per-image object map for improved performance (Jason Dillaman) -* librbd: add readahead (Adam Crume) -* librbd: add support for an "object map" indicating which objects exist (Jason Dillaman) -* librbd: adjust internal locking (Josh Durgin, Jason Dillaman) -* librbd: better handling of watch errors (Jason Dillaman) -* librbd: complete pending ops before closing image (#10299 Josh Durgin) -* librbd: coordinate maint operations through lock owner (Jason Dillaman) -* librbd: copy-on-read (Min Chen, Li Wang, Yunchuan Wen, Cheng Cheng, Jason Dillaman) -* librbd: differentiate between R/O vs R/W features (Jason Dillaman) -* librbd: don't close a closed parent in failure path (#10030 Jason Dillaman) -* librbd: enforce write ordering with a snapshot (Jason Dillaman) -* librbd: exclusive image locking (Jason Dillaman) -* librbd: fadvise API (Ma Jianpeng) -* librbd: fadvise-style hints; add misc hints for certain operations (Jianpeng Ma) -* librbd: fix and improve AIO cache invalidation (#10958 Jason Dillaman) -* librbd: fix cache tiers in list_children and snap_unprotect (Adam Crume) -* librbd: fix coverity false-positives (Jason Dillaman) -* librbd: fix diff test (#10002 Josh Durgin) -* librbd: fix list_children from invalid pool ioctxs (#10123 Jason Dillaman) -* librbd: fix locking for readahead (#10045 Jason Dillaman) -* librbd: fix memory leak (Jason Dillaman) -* librbd: fix ordering/queueing of resize operations (Jason Dillaman) -* librbd: fix performance regression in ObjectCacher (#9513 Adam Crume) -* librbd: fix snap create races (Jason Dillaman) -* librbd: fix write vs import race (#10590 Jason Dillaman) -* librbd: flush AIO operations asynchronously (#10714 Jason Dillaman) -* librbd: gracefully handle deleted/renamed pools (#10270 Jason Dillaman) -* librbd: lttng tracepoints (Adam Crume) -* librbd: make async versions of long-running maint operations (Jason Dillaman) -* librbd: misc fixes (Xinxin Shu, Jason Dillaman) -* librbd: mock tests (Jason Dillaman) -* librbd: only export public API symbols (Jason Dillaman) -* librbd: optionally blacklist clients before breaking locks (#10761 Jason Dillaman) -* librbd: prevent copyup during shrink (Jason Dillaman) -* librbd: refactor unit tests to use fixtures (Jason Dillaman) -* librbd: validate image is r/w on resize/flatten (Jason Dillaman) -* librbd: various internal locking fixes (Jason Dillaman) -* many coverity fixes (Danny Al-Gaaf) -* many many coverity cleanups (Danny Al-Gaaf) -* mds: 'flush journal' admin command (John Spray) -* mds: ENOSPC and OSDMap epoch barriers (#7317 John Spray) -* mds: a whole bunch of initial scrub infrastructure (Greg Farnum) -* mds: add cephfs-table-tool (John Spray) -* mds: asok command for fetching subtree map (John Spray) -* mds: avoid sending traceless replies in most cases (Yan, Zheng) -* mds: constify MDSCacheObjects (John Spray) -* mds: dirfrag buf fix (Yan, Zheng) -* mds: disallow most commands on inactive MDS's (Greg Farnum) -* mds: drop dentries, leases on deleted directories (#10164 Yan, Zheng) -* mds: export dir asok command (John Spray) -* mds: fix MDLog IO callback deadlock (John Spray) -* mds: fix compat_version for MClientSession (#9945 John Spray) -* mds: fix deadlock during journal probe vs purge (#10229 Yan, Zheng) -* mds: fix race trimming log segments (Yan, Zheng) -* mds: fix reply snapbl (Yan, Zheng) -* mds: fix sessionmap lifecycle bugs (Yan, Zheng) -* mds: fix stray/purge perfcounters (#10388 John Spray) -* mds: handle heartbeat_reset during shutdown (#10382 John Spray) -* mds: handle zero-size xattr (#10335 Yan, Zheng) -* mds: initialize root inode xattr version (Yan, Zheng) -* mds: introduce auth caps (John Spray) -* mds: many many snapshot-related fixes (Yan, Zheng) -* mds: misc bugs (Greg Farnum, John Spray, Yan, Zheng, Henry Change) -* mds: refactor, improve Session storage (John Spray) -* mds: store backtrace for stray dir (Yan, Zheng) -* mds: subtree quota support (Yunchuan Wen) -* mds: verify backtrace when fetching dirfrag (#9557 Yan, Zheng) -* memstore: free space tracking (John Spray) -* misc cleanup (Danny Al-Gaaf, David Anderson) -* misc coverity fixes (Danny Al-Gaaf) -* misc coverity fixes (Danny Al-Gaaf) -* misc: various valgrind fixes and cleanups (Danny Al-Gaaf) -* mon: 'osd crush reweight-all' command (Sage Weil) -* mon: add 'ceph osd rename-bucket ...' command (Loic Dachary) -* mon: add bootstrap-rgw profile (Sage Weil) -* mon: add max pgs per osd warning (Sage Weil) -* mon: add noforward flag for some mon commands (Mykola Golub) -* mon: allow adding tiers to fs pools (#10135 John Spray) -* mon: allow full flag to be manually cleared (#9323 Sage Weil) -* mon: clean up auth list output (Loic Dachary) -* mon: delay failure injection (Joao Eduardo Luis) -* mon: disallow empty pool names (#10555 Wido den Hollander) -* mon: do not deactivate last mds (#10862 John Spray) -* mon: do not pollute mon dir with CSV files from CRUSH check (Loic Dachary) -* mon: drop old ceph_mon_store_converter (Sage Weil) -* mon: fix 'ceph pg dump_stuck degraded' (Xinxin Shu) -* mon: fix 'mds fail' for standby MDSs (John Spray) -* mon: fix 'osd crush link' id resolution (John Spray) -* mon: fix 'profile osd' use of config-key function on mon (#10844 Joao Eduardo Luis) -* mon: fix *_ratio* units and types (Sage Weil) -* mon: fix JSON dumps to dump floats as flots and not strings (Sage Weil) -* mon: fix MDS health status from peons (#10151 John Spray) -* mon: fix caching for min_last_epoch_clean (#9987 Sage Weil) -* mon: fix clock drift time check interval (#10546 Joao Eduardo Luis) -* mon: fix compatset initalization during mkfs (Joao Eduardo Luis) -* mon: fix error output for add_data_pool (#9852 Joao Eduardo Luis) -* mon: fix feature tracking during elections (Joao Eduardo Luis) -* mon: fix formatter 'pg stat' command output (Sage Weil) -* mon: fix mds gid/rank/state parsing (John Spray) -* mon: fix misc error paths (Joao Eduardo Luis) -* mon: fix paxos off-by-one corner case (#9301 Sage Weil) -* mon: fix paxos timeouts (#10220 Joao Eduardo Luis) -* mon: fix stashed monmap encoding (#5203 Xie Rui) -* mon: fix units in store stats (Joao Eduardo Luis) -* mon: get canonical OSDMap from leader (#10422 Sage Weil) -* mon: ignore failure reports from before up_from (#10762 Dan van der Ster, Sage Weil) -* mon: implement 'fs reset' command (John Spray) -* mon: improve error handling on erasure code profile set (#10488, #11144 Loic Dachary) -* mon: improved corrupt CRUSH map detection (Joao Eduardo Luis) -* mon: include entity name in audit log for forwarded requests (#9913 Joao Eduardo Luis) -* mon: include pg_temp count in osdmap summary (Sage Weil) -* mon: log health summary to cluster log (#9440 Joao Eduardo Luis) -* mon: make 'mds fail' idempotent (John Spray) -* mon: make pg dump {sum,pgs,pgs_brief} work for format=plain (#5963 #6759 Mykola Golub) -* mon: new 'ceph pool ls [detail]' command (Sage Weil) -* mon: new pool safety flags nodelete, nopgchange, nosizechange (#9792 Mykola Golub) -* mon: new, friendly 'ceph pg ls ...' command (Xinxin Shu) -* mon: paxos: allow reads while proposing (#9321 #9322 Joao Eduardo Luis) -* mon: prevent MDS transition from STOPPING (#10791 Greg Farnum) -* mon: propose all pending work in one transaction (Sage Weil) -* mon: remove pg_temps for nonexistent pools (Joao Eduardo Luis) -* mon: require mon_allow_pool_delete option to remove pools (Sage Weil) -* mon: respect down flag when promoting standbys (John Spray) -* mon: set globalid prealloc to larger value (Sage Weil) -* mon: set {read,write}_tier on 'osd tier add-cache ...' (Jianpeng Ma) -* mon: skip zeroed osd stats in get_rule_avail (#10257 Joao Eduardo Luis) -* mon: validate min_size range (Jianpeng Ma) -* mon: wait for writeable before cross-proposing (#9794 Joao Eduardo Luis) -* mount.ceph: fix suprious error message (#10351 Yan, Zheng) -* ms: xio: fix misc bugs (Matt Benjamin, Vu Pham) -* msgr: async: bind threads to CPU cores, improved poll (Haomai Wang) -* msgr: async: many fixes, unit tests (Haomai Wang) -* msgr: async: several fixes (Haomai Wang) -* msgr: asyncmessenger: add kqueue support (#9926 Haomai Wang) -* msgr: avoid useless new/delete (Haomai Wang) -* msgr: fix RESETSESSION bug (#10080 Greg Farnum) -* msgr: fix crc configuration (Mykola Golub) -* msgr: fix delay injection bug (#9910 Sage Weil, Greg Farnum) -* msgr: misc unit tests (Haomai Wang) -* msgr: new AsymcMessenger alternative implementation (Haomai Wang) -* msgr: prefetch data when doing recv (Yehuda Sadeh) -* msgr: simple: fix rare deadlock (Greg Farnum) -* msgr: simple: retry binding to port on failure (#10029 Wido den Hollander) -* msgr: xio: XioMessenger RDMA support (Casey Bodley, Vu Pham, Matt Benjamin) -* objectstore: deprecate collection attrs (Sage Weil) -* osd, librados: fadvise-style librados hints (Jianpeng Ma) -* osd, librados: fix xattr_cmp_u64 (Dongmao Zhang) -* osd, librados: revamp PG listing API to handle namespaces (#9031 #9262 #9438 David Zafman) -* osd, mds: 'ops' as shorthand for 'dump_ops_in_flight' on asok (Sage Weil) -* osd, mon: add checksums to all OSDMaps (Sage Weil) -* osd, mon: send intiial pg create time from mon to osd (#9887 David Zafman) -* osd,mon: add 'norebalance' flag (Kefu Chai) -* osd,mon: specify OSD features explicitly in MOSDBoot (#10911 Sage Weil) -* osd: DBObjectMap: fix locking to prevent rare crash (#9891 Samuel Just) -* osd: EIO on whole-object reads when checksum is wrong (Sage Weil) -* osd: add erasure code corpus (Loic Dachary) -* osd: add fadvise flags to ObjectStore API (Jianpeng Ma) -* osd: add get_latest_osdmap asok command (#9483 #9484 Mykola Golub) -* osd: add misc tests (Loic Dachary, Danny Al-Gaaf) -* osd: add option to prioritize heartbeat network traffic (Jian Wen) -* osd: add support for the SHEC erasure-code algorithm (Takeshi Miyamae, Loic Dachary) -* osd: allow deletion of objects with watcher (#2339 Sage Weil) -* osd: allow recovery while below min_size (Samuel Just) -* osd: allow recovery with fewer than min_size OSDs (Samuel Just) -* osd: allow sparse read for Push/Pull (Haomai Wang) -* osd: allow whiteout deletion in cache pool (Sage Weil) -* osd: allow writes to degraded objects (Samuel Just) -* osd: allow writes to degraded objects (Samuel Just) -* osd: avoid publishing unchanged PG stats (Sage Weil) -* osd: batch pg log trim (Xinze Chi) -* osd: cache pool: ignore min flush age when cache is full (Xinze Chi) -* osd: cache recent ObjectContexts (Dong Yuan) -* osd: cache reverse_nibbles hash value (Dong Yuan) -* osd: clean up internal ObjectStore interface (Sage Weil) -* osd: cleanup boost optionals (William Kennington) -* osd: clear cache on interval change (Samuel Just) -* osd: do no proxy reads unless target OSDs are new (#10788 Sage Weil) -* osd: do not abort deep scrub on missing hinfo (#10018 Loic Dachary) -* osd: do not update digest on inconsistent object (#10524 Samuel Just) -* osd: don't record digests for snapdirs (#10536 Samuel Just) -* osd: drop upgrade support for pre-dumpling (Sage Weil) -* osd: enable and use posix_fadvise (Sage Weil) -* osd: erasure coding: allow bench.sh to test ISA backend (Yuan Zhou) -* osd: erasure-code: encoding regression tests, corpus (#9420 Loic Dachary) -* osd: erasure-code: enforce chunk size alignment (#10211 Loic Dachary) -* osd: erasure-code: jerasure support for NEON (Loic Dachary) -* osd: erasure-code: relax cauchy w restrictions (#10325 David Zhang, Loic Dachary) -* osd: erasure-code: update gf-complete to latest upstream (Loic Dachary) -* osd: expose non-journal backends via ceph-osd CLI (Hoamai Wang) -* osd: filejournal: don't cache journal when not using direct IO (Jianpeng Ma) -* osd: fix JSON output for stray OSDs (Loic Dachary) -* osd: fix OSDCap parser on old (el6) boost::spirit (#10757 Kefu Chai) -* osd: fix OSDCap parsing on el6 (#10757 Kefu Chai) -* osd: fix ObjectStore::Transaction encoding version (#10734 Samuel Just) -* osd: fix WBTHrottle perf counters (Haomai Wang) -* osd: fix and document last_epoch_started semantics (Samuel Just) -* osd: fix auth object selection during repair (#10524 Samuel Just) -* osd: fix backfill bug (#10150 Samuel Just) -* osd: fix bug in pending digest updates (#10840 Samuel Just) -* osd: fix cancel_proxy_read_ops (Sage Weil) -* osd: fix cleanup of interrupted pg deletion (#10617 Sage Weil) -* osd: fix divergent entry handling on PG split (Samuel Just) -* osd: fix ghobject_t formatted output to include shard (#10063 Loic Dachary) -* osd: fix ioprio option (Mykola Golub) -* osd: fix ioprio options (Loic Dachary) -* osd: fix journal shutdown race (Sage Weil) -* osd: fix journal wrapping bug (#10883 David Zafman) -* osd: fix leak in SnapTrimWQ (#10421 Kefu Chai) -* osd: fix leak on shutdown (Kefu Chai) -* osd: fix memstore free space calculation (Xiaoxi Chen) -* osd: fix mixed-version peering issues (Samuel Just) -* osd: fix object age eviction (Zhiqiang Wang) -* osd: fix object atime calculation (Xinze Chi) -* osd: fix object digest update bug (#10840 Samuel Just) -* osd: fix occasional peering stalls (#10431 Sage Weil) -* osd: fix ordering issue with new transaction encoding (#10534 Dong Yuan) -* osd: fix osd peer check on scrub messages (#9555 Sage Weil) -* osd: fix past_interval display bug (#9752 Loic Dachary) -* osd: fix past_interval generation (#10427 #10430 David Zafman) -* osd: fix pgls filter ops (#9439 David Zafman) -* osd: fix recording of digest on scrub (Samuel Just) -* osd: fix scrub delay bug (#10693 Samuel Just) -* osd: fix scrub vs try-flush bug (#8011 Samuel Just) -* osd: fix short read handling on push (#8121 David Zafman) -* osd: fix stderr with -f or -d (Dan Mick) -* osd: fix transaction accounting (Jianpeng Ma) -* osd: fix watch reconnect race (#10441 Sage Weil) -* osd: fix watch timeout cache state update (#10784 David Zafman) -* osd: fix whiteout handling (Sage Weil) -* osd: flush snapshots from cache tier immediately (Sage Weil) -* osd: force promotion of watch/notify ops (Zhiqiang Wang) -* osd: handle no-op write with snapshot (#10262 Sage Weil) -* osd: improve idempotency detection across cache promotion/demotion (#8935 Sage Weil, Samuel Just) -* osd: include activating peers in blocked_by (#10477 Sage Weil) -* osd: jerasure and gf-complete updates from upstream (#10216 Loic Dachary) -* osd: journal: check fsync/fdatasync result (Jianpeng Ma) -* osd: journal: fix alignment checks, avoid useless memmove (Jianpeng Ma) -* osd: journal: fix hang on shutdown (#10474 David Zafman) -* osd: journal: fix header.committed_up_to (Xinze Chi) -* osd: journal: fix journal zeroing when direct IO is enabled (Xie Rui) -* osd: journal: initialize throttle (Ning Yao) -* osd: journal: misc bug fixes (#6003 David Zafman, Samuel Just) -* osd: journal: update committed_thru after replay (#6756 Samuel Just) -* osd: keyvaluestore: cleanup dead code (Ning Yao) -* osd: keyvaluestore: fix getattr semantics (Haomai Wang) -* osd: keyvaluestore: fix key ordering (#10119 Haomai Wang) -* osd: keyvaluestore_dev: optimization (Chendi Xue) -* osd: limit in-flight read requests (Jason Dillaman) -* osd: log when scrub or repair starts (Loic Dachary) -* osd: make misdirected op checks robust for EC pools (#9835 Sage Weil) -* osd: memstore: fix size limit (Xiaoxi Chen) -* osd: misc FIEMAP fixes (Ma Jianpeng) -* osd: misc cleanup (Xinze Chi, Yongyue Sun) -* osd: misc optimizations (Xinxin Shu, Zhiqiang Wang, Xinze Chi) -* osd: misc scrub fixes (#10017 Loic Dachary) -* osd: new 'activating' state between peering and active (Sage Weil) -* osd: new optimized encoding for ObjectStore::Transaction (Dong Yuan) -* osd: optimize Finisher (Xinze Chi) -* osd: optimize WBThrottle map with unordered_map (Ning Yao) -* osd: optimize filter_snapc (Ning Yao) -* osd: preserve reqids for idempotency checks for promote/demote (Sage Weil, Zhiqiang Wang, Samuel Just) -* osd: proxy read support (Zhiqiang Wang) -* osd: proxy reads during cache promote (Zhiqiang Wang) -* osd: remove dead locking code (Xinxin Shu) -* osd: remove legacy classic scrub code (Sage Weil) -* osd: remove unused fields in MOSDSubOp (Xiaoxi Chen) -* osd: removed some dead code (Xinze Chi) -* osd: replace MOSDSubOp messages with simpler, optimized MOSDRepOp (Xiaoxi Chen) -* osd: restrict scrub to certain times of day (Xinze Chi) -* osd: rocksdb: fix shutdown (Hoamai Wang) -* osd: store PG metadata in per-collection objects for better concurrency (Sage Weil) -* osd: store whole-object checksums on scrub, write_full (Sage Weil) -* osd: support for discard for journal trim (Jianpeng Ma) -* osd: use FIEMAP_FLAGS_SYNC instead of fsync (Jianpeng Ma) -* osd: verify kernel is new enough before using XFS extsize ioctl, enable by default (#9956 Sage Weil) -* pybind: fix memory leak in librados bindings (Billy Olsen) -* pyrados: add object lock support (#6114 Mehdi Abaakouk) -* pyrados: fix misnamed wait_* routings (#10104 Dan Mick) -* pyrados: misc cleanups (Kefu Chai) -* qa: add large auth ticket tests (Ilya Dryomov) -* qa: fix mds tests (#10539 John Spray) -* qa: fix osd create dup tests (#10083 Loic Dachary) -* qa: ignore duplicates in rados ls (Josh Durgin) -* qa: improve hadoop tests (Noah Watkins) -* qa: many 'make check' improvements (Loic Dachary) -* qa: misc tests (Loic Dachary, Yan, Zheng) -* qa: parallelize make check (Loic Dachary) -* qa: reorg fs quota tests (Greg Farnum) -* qa: tolerate nearly-full disk for make check (Loic Dachary) -* rados: fix put of /dev/null (Loic Dachary) -* rados: fix usage (Jianpeng Ma) -* rados: parse command-line arguments more strictly (#8983 Adam Crume) -* rados: use copy-from operation for copy, cppool (Sage Weil) -* radosgw-admin: add replicalog update command (Yehuda Sadeh) -* rbd-fuse: clean up on shutdown (Josh Durgin) -* rbd-fuse: fix memory leak (Adam Crume) -* rbd-replay-many (Adam Crume) -* rbd-replay: --anonymize flag to rbd-replay-prep (Adam Crume) -* rbd: add 'merge-diff' function (MingXin Liu, Yunchuan Wen, Li Wang) -* rbd: allow v2 striping parameters for clones and imports (Jason Dillaman) -* rbd: fix 'rbd diff' for non-existent objects (Adam Crume) -* rbd: fix buffer handling on image import (#10590 Jason Dillaman) -* rbd: fix error when striping with format 1 (Sebastien Han) -* rbd: fix export for image sizes over 2GB (Vicente Cheng) -* rbd: fix formatted output of image features (Jason Dillaman) -* rbd: leave exclusive lockin goff by default (Jason Dillaman) -* rbd: updat eman page (Ilya Dryomov) -* rbd: update init-rbdmap to fix dup mount point (Karel Striegel) -* rbd: use IO hints for import, export, and bench operations (#10462 Jason Dillaman) -* rbd: use rolling average for rbd bench-write throughput (Jason Dillaman) -* rbd_recover_tool: RBD image recovery tool (Min Chen) -* rgw: S3-style object versioning support (Yehuda Sadeh) -* rgw: add location header when object is in another region (VRan Liu) -* rgw: change multipart upload id magic (#10271 Yehuda Sadeh) -* rgw: check keystone auth for S3 POST requests (#10062 Abhishek Lekshmanan) -* rgw: check timestamp on s3 keystone auth (#10062 Abhishek Lekshmanan) -* rgw: conditional PUT on ETag (#8562 Ray Lv) -* rgw: create subuser if needed when creating user (#10103 Yehuda Sadeh) -* rgw: decode http query params correction (#10271 Yehuda Sadeh) -* rgw: don't overwrite bucket/object owner when setting ACLs (#10978 Yehuda Sadeh) -* rgw: enable IPv6 for civetweb (#10965 Yehuda Sadeh) -* rgw: extend replica log API (purge-all) (Yehuda Sadeh) -* rgw: fail S3 POST if keystone not configured (#10688 Valery Tschopp, Yehuda Sadeh) -* rgw: fix If-Modified-Since (VRan Liu) -* rgw: fix XML header on get ACL request (#10106 Yehuda Sadeh) -* rgw: fix bucket removal with data purge (Yehuda Sadeh) -* rgw: fix content length check (#10701 Axel Dunkel, Yehuda Sadeh) -* rgw: fix content-length update (#9576 Yehuda Sadeh) -* rgw: fix disabling of max_size quota (#9907 Dong Lei) -* rgw: fix error codes (#10334 #10329 Yehuda Sadeh) -* rgw: fix incorrect len when len is 0 (#9877 Yehuda Sadeh) -* rgw: fix object copy content type (#9478 Yehuda Sadeh) -* rgw: fix partial GET in swift (#10553 Yehuda Sadeh) -* rgw: fix replica log indexing (#8251 Yehuda Sadeh) -* rgw: fix shutdown (#10472 Yehuda Sadeh) -* rgw: fix swift metadata header name (Dmytro Iurchenko) -* rgw: fix sysvinit script when rgw_socket_path is not defined (#11159 Yehuda Sadeh, Dan Mick) -* rgw: fix user stags in get-user-info API (#9359 Ray Lv) -* rgw: include XML ns on get ACL request (#10106 Yehuda Sadeh) -* rgw: index swift keys appropriately (#10471 Yehuda Sadeh) -* rgw: make sysvinit script set ulimit -n properly (Sage Weil) -* rgw: misc fixes (#10307 Yehuda Sadeh) -* rgw: only track cleanup for objects we write (#10311 Yehuda Sadeh) -* rgw: pass civetweb configurables through (#10907 Yehuda Sadeh) -* rgw: prevent illegal bucket policy that doesn't match placement rule (Yehuda Sadeh) -* rgw: remove multipart entries from bucket index on abort (#10719 Yehuda Sadeh) -* rgw: remove swift user manifest (DLO) hash calculation (#9973 Yehuda Sadeh) -* rgw: respond with 204 to POST on containers (#10667 Yuan Zhou) -* rgw: return timestamp on GET/HEAD (#8911 Yehuda Sadeh) -* rgw: reuse fcgx connection struct (#10194 Yehuda Sadeh) -* rgw: run radosgw as apache with systemd (#10125 Loic Dachary) -* rgw: send explicit HTTP status string (Yehuda Sadeh) -* rgw: set ETag on object copy (#9479 Yehuda Sadeh) -* rgw: set length for keystone token validation request (#7796 Yehuda Sadeh, Mark Kirkwood) -* rgw: support X-Storage-Policy header for Swift storage policy compat (Yehuda Sadeh) -* rgw: support multiple host names (#7467 Yehuda Sadeh) -* rgw: swift: dump container's custom metadata (#10665 Ahmad Faheem, Dmytro Iurchenko) -* rgw: swift: support Accept header for response format (#10746 Dmytro Iurchenko) -* rgw: swift: support for X-Remove-Container-Meta-{key} (#10475 Dmytro Iurchenko) -* rgw: tweak error codes (#10329 #10334 Yehuda Sadeh) -* rgw: update bucket index on attr changes, for multi-site sync (#5595 Yehuda Sadeh) -* rgw: use \r\n for http headers (#9254 Yehuda Sadeh) -* rgw: use gc for multipart abort (#10445 Aaron Bassett, Yehuda Sadeh) -* rgw: use new watch/notify API (Yehuda Sadeh, Sage Weil) -* rpm: misc fixes (Key Dreyer) -* rpm: move rgw logrotate to radosgw subpackage (Ken Dreyer) -* systemd: better systemd unit files (Owen Synge) -* sysvinit: fix race in 'stop' (#10389 Loic Dachary) -* test: fix bufferlist tests (Jianpeng Ma) -* tests: ability to run unit tests under docker (Loic Dachary) -* tests: centos-6 dockerfile (#10755 Loic Dachary) -* tests: improve docker-based tests (Loic Dachary) -* tests: unit tests for shared_cache (Dong Yuan) -* udev: fix rules for CentOS7/RHEL7 (Loic Dachary) -* use clock_gettime instead of gettimeofday (Jianpeng Ma) -* vstart.sh: set up environment for s3-tests (Luis Pabon) -* vstart.sh: work with cmake (Yehuda Sadeh) - - - - - - -v0.93 -===== - -This is the first release candidate for Hammer, and includes all of -the features that will be present in the final release. We welcome -and encourage any and all testing in non-production clusters to identify -any problems with functionality, stability, or performance before the -final Hammer release. - -We suggest some caution in one area: librbd. There is a lot of new -functionality around object maps and locking that is disabled by -default but may still affect stability for existing images. We are -continuing to shake out those bugs so that the final Hammer release -(probably v0.94) will be rock solid. - -Major features since Giant include: - -* cephfs: journal scavenger repair tool (John Spray) -* crush: new and improved straw2 bucket type (Sage Weil, Christina Anderson, Xiaoxi Chen) -* doc: improved guidance for CephFS early adopters (John Spray) -* librbd: add per-image object map for improved performance (Jason Dillaman) -* librbd: copy-on-read (Min Chen, Li Wang, Yunchuan Wen, Cheng Cheng) -* librados: fadvise-style IO hints (Jianpeng Ma) -* mds: many many snapshot-related fixes (Yan, Zheng) -* mon: new 'ceph osd df' command (Mykola Golub) -* mon: new 'ceph pg ls ...' command (Xinxin Shu) -* osd: improved performance for high-performance backends -* osd: improved recovery behavior (Samuel Just) -* osd: improved cache tier behavior with reads (Zhiqiang Wang) -* rgw: S3-compatible bucket versioning support (Yehuda Sadeh) -* rgw: large bucket index sharding (Guang Yang, Yehuda Sadeh) -* RDMA "xio" messenger support (Matt Benjamin, Vu Pham) - -Upgrading ---------- - -* If you are upgrading from v0.92, you must stop all OSD daemons and flush their - journals (``ceph-osd -i NNN --flush-journal``) before upgrading. There was - a transaction encoding bug in v0.92 that broke compatibility. Upgrading from - v0.91 or anything earlier is safe. - -* No special restrictions when upgrading from firefly or giant. - -Notable Changes ---------------- - -* build: CMake support (Ali Maredia, Casey Bodley, Adam Emerson, Marcus Watts, Matt Benjamin) -* ceph-disk: do not re-use partition if encryption is required (Loic Dachary) -* ceph-disk: support LUKS for encrypted partitions (Andrew Bartlett, Loic Dachary) -* ceph-fuse,libcephfs: add support for O_NOFOLLOW and O_PATH (Greg Farnum) -* ceph-fuse,libcephfs: resend requests before completing cap reconnect (#10912 Yan, Zheng) -* ceph-fuse: select kernel cache invalidation mechanism based on kernel version (Greg Farnum) -* ceph-objectstore-tool: improved import (David Zafman) -* ceph-objectstore-tool: misc improvements, fixes (#9870 #9871 David Zafman) -* ceph: add 'ceph osd df [tree]' command (#10452 Mykola Golub) -* ceph: fix 'ceph tell ...' command validation (#10439 Joao Eduardo Luis) -* ceph: improve 'ceph osd tree' output (Mykola Golub) -* cephfs-journal-tool: add recover_dentries function (#9883 John Spray) -* common: add newline to flushed json output (Sage Weil) -* common: filtering for 'perf dump' (John Spray) -* common: fix Formatter factory breakage (#10547 Loic Dachary) -* common: make json-pretty output prettier (Sage Weil) -* crush: new and improved straw2 bucket type (Sage Weil, Christina Anderson, Xiaoxi Chen) -* crush: update tries stats for indep rules (#10349 Loic Dachary) -* crush: use larger choose_tries value for erasure code rulesets (#10353 Loic Dachary) -* debian,rpm: move RBD udev rules to ceph-common (#10864 Ken Dreyer) -* debian: split python-ceph into python-{rbd,rados,cephfs} (Boris Ranto) -* doc: CephFS disaster recovery guidance (John Spray) -* doc: CephFS for early adopters (John Spray) -* doc: fix OpenStack Glance docs (#10478 Sebastien Han) -* doc: misc updates (#9793 #9922 #10204 #10203 Travis Rhoden, Hazem, Ayari, Florian Coste, Andy Allan, Frank Yu, Baptiste Veuillez-Mainard, Yuan Zhou, Armando Segnini, Robert Jansen, Tyler Brekke, Viktor Suprun) -* doc: replace cloudfiles with swiftclient Python Swift example (Tim Freund) -* erasure-code: add mSHEC erasure code support (Takeshi Miyamae) -* erasure-code: improved docs (#10340 Loic Dachary) -* erasure-code: set max_size to 20 (#10363 Loic Dachary) -* libcephfs,ceph-fuse: fix getting zero-length xattr (#10552 Yan, Zheng) -* librados: add blacklist_add convenience method (Jason Dillaman) -* librados: expose rados_{read|write}_op_assert_version in C API (Kim Vandry) -* librados: fix pool name caching (#10458 Radoslaw Zarzynski) -* librados: fix resource leak, misc bugs (#10425 Radoslaw Zarzynski) -* librados: fix some watch/notify locking (Jason Dillaman, Josh Durgin) -* libradosstriper: fix write_full when ENOENT (#10758 Sebastien Ponce) -* librbd: CRC protection for RBD image map (Jason Dillaman) -* librbd: add per-image object map for improved performance (Jason Dillaman) -* librbd: add support for an "object map" indicating which objects exist (Jason Dillaman) -* librbd: adjust internal locking (Josh Durgin, Jason Dillaman) -* librbd: better handling of watch errors (Jason Dillaman) -* librbd: coordinate maint operations through lock owner (Jason Dillaman) -* librbd: copy-on-read (Min Chen, Li Wang, Yunchuan Wen, Cheng Cheng, Jason Dillaman) -* librbd: enforce write ordering with a snapshot (Jason Dillaman) -* librbd: fadvise-style hints; add misc hints for certain operations (Jianpeng Ma) -* librbd: fix coverity false-positives (Jason Dillaman) -* librbd: fix snap create races (Jason Dillaman) -* librbd: flush AIO operations asynchronously (#10714 Jason Dillaman) -* librbd: make async versions of long-running maint operations (Jason Dillaman) -* librbd: mock tests (Jason Dillaman) -* librbd: optionally blacklist clients before breaking locks (#10761 Jason Dillaman) -* librbd: prevent copyup during shrink (Jason Dillaman) -* mds: add cephfs-table-tool (John Spray) -* mds: avoid sending traceless replies in most cases (Yan, Zheng) -* mds: export dir asok command (John Spray) -* mds: fix stray/purge perfcounters (#10388 John Spray) -* mds: handle heartbeat_reset during shutdown (#10382 John Spray) -* mds: many many snapshot-related fixes (Yan, Zheng) -* mds: refactor, improve Session storage (John Spray) -* misc coverity fixes (Danny Al-Gaaf) -* mon: add noforward flag for some mon commands (Mykola Golub) -* mon: disallow empty pool names (#10555 Wido den Hollander) -* mon: do not deactivate last mds (#10862 John Spray) -* mon: drop old ceph_mon_store_converter (Sage Weil) -* mon: fix 'ceph pg dump_stuck degraded' (Xinxin Shu) -* mon: fix 'profile osd' use of config-key function on mon (#10844 Joao Eduardo Luis) -* mon: fix compatset initalization during mkfs (Joao Eduardo Luis) -* mon: fix feature tracking during elections (Joao Eduardo Luis) -* mon: fix mds gid/rank/state parsing (John Spray) -* mon: ignore failure reports from before up_from (#10762 Dan van der Ster, Sage Weil) -* mon: improved corrupt CRUSH map detection (Joao Eduardo Luis) -* mon: include pg_temp count in osdmap summary (Sage Weil) -* mon: log health summary to cluster log (#9440 Joao Eduardo Luis) -* mon: make 'mds fail' idempotent (John Spray) -* mon: make pg dump {sum,pgs,pgs_brief} work for format=plain (#5963 #6759 Mykola Golub) -* mon: new pool safety flags nodelete, nopgchange, nosizechange (#9792 Mykola Golub) -* mon: new, friendly 'ceph pg ls ...' command (Xinxin Shu) -* mon: prevent MDS transition from STOPPING (#10791 Greg Farnum) -* mon: propose all pending work in one transaction (Sage Weil) -* mon: remove pg_temps for nonexistent pools (Joao Eduardo Luis) -* mon: require mon_allow_pool_delete option to remove pools (Sage Weil) -* mon: set globalid prealloc to larger value (Sage Weil) -* mon: skip zeroed osd stats in get_rule_avail (#10257 Joao Eduardo Luis) -* mon: validate min_size range (Jianpeng Ma) -* msgr: async: bind threads to CPU cores, improved poll (Haomai Wang) -* msgr: fix crc configuration (Mykola Golub) -* msgr: misc unit tests (Haomai Wang) -* msgr: xio: XioMessenger RDMA support (Casey Bodley, Vu Pham, Matt Benjamin) -* osd, librados: fadvise-style librados hints (Jianpeng Ma) -* osd, librados: fix xattr_cmp_u64 (Dongmao Zhang) -* osd,mon: add 'norebalance' flag (Kefu Chai) -* osd,mon: specify OSD features explicitly in MOSDBoot (#10911 Sage Weil) -* osd: add option to prioritize heartbeat network traffic (Jian Wen) -* osd: add support for the SHEC erasure-code algorithm (Takeshi Miyamae, Loic Dachary) -* osd: allow recovery while below min_size (Samuel Just) -* osd: allow recovery with fewer than min_size OSDs (Samuel Just) -* osd: allow writes to degraded objects (Samuel Just) -* osd: allow writes to degraded objects (Samuel Just) -* osd: avoid publishing unchanged PG stats (Sage Weil) -* osd: cache recent ObjectContexts (Dong Yuan) -* osd: clear cache on interval change (Samuel Just) -* osd: do no proxy reads unless target OSDs are new (#10788 Sage Weil) -* osd: do not update digest on inconsistent object (#10524 Samuel Just) -* osd: don't record digests for snapdirs (#10536 Samuel Just) -* osd: fix OSDCap parser on old (el6) boost::spirit (#10757 Kefu Chai) -* osd: fix OSDCap parsing on el6 (#10757 Kefu Chai) -* osd: fix ObjectStore::Transaction encoding version (#10734 Samuel Just) -* osd: fix auth object selection during repair (#10524 Samuel Just) -* osd: fix bug in pending digest updates (#10840 Samuel Just) -* osd: fix cancel_proxy_read_ops (Sage Weil) -* osd: fix cleanup of interrupted pg deletion (#10617 Sage Weil) -* osd: fix journal wrapping bug (#10883 David Zafman) -* osd: fix leak in SnapTrimWQ (#10421 Kefu Chai) -* osd: fix memstore free space calculation (Xiaoxi Chen) -* osd: fix mixed-version peering issues (Samuel Just) -* osd: fix object digest update bug (#10840 Samuel Just) -* osd: fix ordering issue with new transaction encoding (#10534 Dong Yuan) -* osd: fix past_interval generation (#10427 #10430 David Zafman) -* osd: fix short read handling on push (#8121 David Zafman) -* osd: fix watch timeout cache state update (#10784 David Zafman) -* osd: force promotion of watch/notify ops (Zhiqiang Wang) -* osd: improve idempotency detection across cache promotion/demotion (#8935 Sage Weil, Samuel Just) -* osd: include activating peers in blocked_by (#10477 Sage Weil) -* osd: jerasure and gf-complete updates from upstream (#10216 Loic Dachary) -* osd: journal: check fsync/fdatasync result (Jianpeng Ma) -* osd: journal: fix hang on shutdown (#10474 David Zafman) -* osd: journal: fix header.committed_up_to (Xinze Chi) -* osd: journal: initialize throttle (Ning Yao) -* osd: journal: misc bug fixes (#6003 David Zafman, Samuel Just) -* osd: misc cleanup (Xinze Chi, Yongyue Sun) -* osd: new 'activating' state between peering and active (Sage Weil) -* osd: preserve reqids for idempotency checks for promote/demote (Sage Weil, Zhiqiang Wang, Samuel Just) -* osd: remove dead locking code (Xinxin Shu) -* osd: restrict scrub to certain times of day (Xinze Chi) -* osd: rocksdb: fix shutdown (Hoamai Wang) -* pybind: fix memory leak in librados bindings (Billy Olsen) -* qa: fix mds tests (#10539 John Spray) -* qa: ignore duplicates in rados ls (Josh Durgin) -* qa: improve hadoop tests (Noah Watkins) -* qa: reorg fs quota tests (Greg Farnum) -* rados: fix usage (Jianpeng Ma) -* radosgw-admin: add replicalog update command (Yehuda Sadeh) -* rbd-fuse: clean up on shutdown (Josh Durgin) -* rbd: add 'merge-diff' function (MingXin Liu, Yunchuan Wen, Li Wang) -* rbd: fix buffer handling on image import (#10590 Jason Dillaman) -* rbd: leave exclusive lockin goff by default (Jason Dillaman) -* rbd: update init-rbdmap to fix dup mount point (Karel Striegel) -* rbd: use IO hints for import, export, and bench operations (#10462 Jason Dillaman) -* rbd_recover_tool: RBD image recovery tool (Min Chen) -* rgw: S3-style object versioning support (Yehuda Sadeh) -* rgw: check keystone auth for S3 POST requests (#10062 Abhishek Lekshmanan) -* rgw: extend replica log API (purge-all) (Yehuda Sadeh) -* rgw: fail S3 POST if keystone not configured (#10688 Valery Tschopp, Yehuda Sadeh) -* rgw: fix XML header on get ACL request (#10106 Yehuda Sadeh) -* rgw: fix bucket removal with data purge (Yehuda Sadeh) -* rgw: fix replica log indexing (#8251 Yehuda Sadeh) -* rgw: fix swift metadata header name (Dmytro Iurchenko) -* rgw: remove multipart entries from bucket index on abort (#10719 Yehuda Sadeh) -* rgw: respond with 204 to POST on containers (#10667 Yuan Zhou) -* rgw: reuse fcgx connection struct (#10194 Yehuda Sadeh) -* rgw: support multiple host names (#7467 Yehuda Sadeh) -* rgw: swift: dump container's custom metadata (#10665 Ahmad Faheem, Dmytro Iurchenko) -* rgw: swift: support Accept header for response format (#10746 Dmytro Iurchenko) -* rgw: swift: support for X-Remove-Container-Meta-{key} (#10475 Dmytro Iurchenko) -* rpm: move rgw logrotate to radosgw subpackage (Ken Dreyer) -* tests: centos-6 dockerfile (#10755 Loic Dachary) -* tests: unit tests for shared_cache (Dong Yuan) -* vstart.sh: work with cmake (Yehuda Sadeh) - - - -v0.92 -===== - -This is the second-to-last chunk of new stuff before Hammer. Big items -include additional checksums on OSD objects, proxied reads in the -cache tier, image locking in RBD, optimized OSD Transaction and -replication messages, and a big pile of RGW and MDS bug fixes. - -Upgrading ---------- - -* The experimental 'keyvaluestore-dev' OSD backend has been renamed - 'keyvaluestore' (for simplicity) and marked as experimental. To - enable this untested feature and acknowledge that you understand - that it is untested and may destroy data, you need to add the - following to your ceph.conf:: - - enable experimental unrecoverable data corrupting features = keyvaluestore - -* The following librados C API function calls take a 'flags' argument whose value - is now correctly interpreted: - - rados_write_op_operate() - rados_aio_write_op_operate() - rados_read_op_operate() - rados_aio_read_op_operate() - - The flags were not correctly being translated from the librados constants to the - internal values. Now they are. Any code that is passing flags to these methods - should be audited to ensure that they are using the correct LIBRADOS_OP_FLAG_* - constants. - -* The 'rados' CLI 'copy' and 'cppool' commands now use the copy-from operation, - which means the latest CLI cannot run these commands against pre-firefly OSDs. - -* The librados watch/notify API now includes a watch_flush() operation to flush - the async queue of notify operations. This should be called by any watch/notify - user prior to rados_shutdown(). - -Notable Changes ---------------- - -* add experimental features option (Sage Weil) -* build: fix 'make check' races (#10384 Loic Dachary) -* build: fix pkg names when libkeyutils is missing (Pankag Garg, Ken Dreyer) -* ceph: make 'ceph -s' show PG state counts in sorted order (Sage Weil) -* ceph: make 'ceph tell mon.* version' work (Mykola Golub) -* ceph-monstore-tool: fix/improve CLI (Joao Eduardo Luis) -* ceph: show primary-affinity in 'ceph osd tree' (Mykola Golub) -* common: add TableFormatter (Andreas Peters) -* common: check syncfs() return code (Jianpeng Ma) -* doc: do not suggest dangerous XFS nobarrier option (Dan van der Ster) -* doc: misc updates (Nilamdyuti Goswami, John Wilkins) -* install-deps.sh: do not require sudo when root (Loic Dachary) -* libcephfs: fix dirfrag trimming (#10387 Yan, Zheng) -* libcephfs: fix mount timeout (#10041 Yan, Zheng) -* libcephfs: fix test (#10415 Yan, Zheng) -* libcephfs: fix use-afer-free on umount (#10412 Yan, Zheng) -* libcephfs: include ceph and git version in client metadata (Sage Weil) -* librados: add watch_flush() operation (Sage Weil, Haomai Wang) -* librados: avoid memcpy on getxattr, read (Jianpeng Ma) -* librados: create ioctx by pool id (Jason Dillaman) -* librados: do notify completion in fast-dispatch (Sage Weil) -* librados: remove shadowed variable (Kefu Chain) -* librados: translate op flags from C APIs (Matthew Richards) -* librbd: differentiate between R/O vs R/W features (Jason Dillaman) -* librbd: exclusive image locking (Jason Dillaman) -* librbd: fix write vs import race (#10590 Jason Dillaman) -* librbd: gracefully handle deleted/renamed pools (#10270 Jason Dillaman) -* mds: asok command for fetching subtree map (John Spray) -* mds: constify MDSCacheObjects (John Spray) -* misc: various valgrind fixes and cleanups (Danny Al-Gaaf) -* mon: fix 'mds fail' for standby MDSs (John Spray) -* mon: fix stashed monmap encoding (#5203 Xie Rui) -* mon: implement 'fs reset' command (John Spray) -* mon: respect down flag when promoting standbys (John Spray) -* mount.ceph: fix suprious error message (#10351 Yan, Zheng) -* msgr: async: many fixes, unit tests (Haomai Wang) -* msgr: simple: retry binding to port on failure (#10029 Wido den Hollander) -* osd: add fadvise flags to ObjectStore API (Jianpeng Ma) -* osd: add get_latest_osdmap asok command (#9483 #9484 Mykola Golub) -* osd: EIO on whole-object reads when checksum is wrong (Sage Weil) -* osd: filejournal: don't cache journal when not using direct IO (Jianpeng Ma) -* osd: fix ioprio option (Mykola Golub) -* osd: fix scrub delay bug (#10693 Samuel Just) -* osd: fix watch reconnect race (#10441 Sage Weil) -* osd: handle no-op write with snapshot (#10262 Sage Weil) -* osd: journal: fix journal zeroing when direct IO is enabled (Xie Rui) -* osd: keyvaluestore: cleanup dead code (Ning Yao) -* osd, mds: 'ops' as shorthand for 'dump_ops_in_flight' on asok (Sage Weil) -* osd: memstore: fix size limit (Xiaoxi Chen) -* osd: misc scrub fixes (#10017 Loic Dachary) -* osd: new optimized encoding for ObjectStore::Transaction (Dong Yuan) -* osd: optimize filter_snapc (Ning Yao) -* osd: optimize WBThrottle map with unordered_map (Ning Yao) -* osd: proxy reads during cache promote (Zhiqiang Wang) -* osd: proxy read support (Zhiqiang Wang) -* osd: remove legacy classic scrub code (Sage Weil) -* osd: remove unused fields in MOSDSubOp (Xiaoxi Chen) -* osd: replace MOSDSubOp messages with simpler, optimized MOSDRepOp (Xiaoxi Chen) -* osd: store whole-object checksums on scrub, write_full (Sage Weil) -* osd: verify kernel is new enough before using XFS extsize ioctl, enable by default (#9956 Sage Weil) -* rados: use copy-from operation for copy, cppool (Sage Weil) -* rgw: change multipart upload id magic (#10271 Yehuda Sadeh) -* rgw: decode http query params correction (#10271 Yehuda Sadeh) -* rgw: fix content length check (#10701 Axel Dunkel, Yehuda Sadeh) -* rgw: fix partial GET in swift (#10553 Yehuda Sadeh) -* rgw: fix shutdown (#10472 Yehuda Sadeh) -* rgw: include XML ns on get ACL request (#10106 Yehuda Sadeh) -* rgw: misc fixes (#10307 Yehuda Sadeh) -* rgw: only track cleanup for objects we write (#10311 Yehuda Sadeh) -* rgw: tweak error codes (#10329 #10334 Yehuda Sadeh) -* rgw: use gc for multipart abort (#10445 Aaron Bassett, Yehuda Sadeh) -* sysvinit: fix race in 'stop' (#10389 Loic Dachary) -* test: fix bufferlist tests (Jianpeng Ma) -* tests: improve docker-based tests (Loic Dachary) - - -v0.91 -===== - -We are quickly approaching the Hammer feature freeze but have a few -more dev releases to go before we get there. The headline items are -subtree-based quota support in CephFS (ceph-fuse/libcephfs client -support only for now), a rewrite of the watch/notify librados API used -by RBD and RGW, OSDMap checksums to ensure that maps are always -consistent inside the cluster, new API calls in librados and librbd -for IO hinting modeled after posix_fadvise, and improved storage of -per-PG state. - -We expect two more releases before the Hammer feature freeze (v0.93). - -Upgrading ---------- - -* The 'category' field for objects has been removed. This was originally added - to track PG stat summations over different categories of objects for use by - radosgw. It is no longer has any known users and is prone to abuse because it - can lead to a pg_stat_t structure that is unbounded. The librados API calls - that accept this field now ignore it, and the OSD no longer tracks the - per-category summations. - -* The output for 'rados df' has changed. The 'category' level has been - eliminated, so there is now a single stat object per pool. The structure of - the JSON output is different, and the plaintext output has one less column. - -* The 'rados create <objectname> [category]' optional category argument is no - longer supported or recognized. - -* rados.py's Rados class no longer has a __del__ method; it was causing - problems on interpreter shutdown and use of threads. If your code has - Rados objects with limited lifetimes and you're concerned about locked - resources, call Rados.shutdown() explicitly. - -* There is a new version of the librados watch/notify API with vastly - improved semantics. Any applications using this interface are - encouraged to migrate to the new API. The old API calls are marked - as deprecated and will eventually be removed. - -* The librados rados_unwatch() call used to be safe to call on an - invalid handle. The new version has undefined behavior when passed - a bogus value (for example, when rados_watch() returns an error and - handle is not defined). - -* The structure of the formatted 'pg stat' command is changed for the - portion that counts states by name to avoid using the '+' character - (which appears in state names) as part of the XML token (it is not - legal). - -Notable Changes ---------------- - -* asyncmsgr: misc fixes (Haomai Wang) -* buffer: add 'shareable' construct (Matt Benjamin) -* build: aarch64 build fixes (Noah Watkins, Haomai Wang) -* build: support for jemalloc (Shishir Gowda) -* ceph-disk: allow journal partition re-use (#10146 Loic Dachary, Dav van der Ster) -* ceph-disk: misc fixes (Christos Stavrakakis) -* ceph-fuse: fix kernel cache trimming (#10277 Yan, Zheng) -* ceph-objectstore-tool: many many improvements (David Zafman) -* common: support new gperftools header locations (Key Dreyer) -* crush: straw bucket weight calculation fixes (#9998 Sage Weil) -* doc: misc improvements (Nilamdyuti Goswami, John Wilkins, Chris Holcombe) -* libcephfs,ceph-fuse: add 'status' asok (John Spray) -* librados, osd: new watch/notify implementation (Sage Weil) -* librados: drop 'category' feature (Sage Weil) -* librados: fix pool deletion handling (#10372 Sage Weil) -* librados: new fadvise API (Ma Jianpeng) -* libradosstriper: fix remove() (Dongmao Zhang) -* librbd: complete pending ops before closing image (#10299 Josh Durgin) -* librbd: fadvise API (Ma Jianpeng) -* mds: ENOSPC and OSDMap epoch barriers (#7317 John Spray) -* mds: dirfrag buf fix (Yan, Zheng) -* mds: disallow most commands on inactive MDS's (Greg Farnum) -* mds: drop dentries, leases on deleted directories (#10164 Yan, Zheng) -* mds: handle zero-size xattr (#10335 Yan, Zheng) -* mds: subtree quota support (Yunchuan Wen) -* memstore: free space tracking (John Spray) -* misc cleanup (Danny Al-Gaaf, David Anderson) -* mon: 'osd crush reweight-all' command (Sage Weil) -* mon: allow full flag to be manually cleared (#9323 Sage Weil) -* mon: delay failure injection (Joao Eduardo Luis) -* mon: fix paxos timeouts (#10220 Joao Eduardo Luis) -* mon: get canonical OSDMap from leader (#10422 Sage Weil) -* msgr: fix RESETSESSION bug (#10080 Greg Farnum) -* objectstore: deprecate collection attrs (Sage Weil) -* osd, mon: add checksums to all OSDMaps (Sage Weil) -* osd: allow deletion of objects with watcher (#2339 Sage Weil) -* osd: allow sparse read for Push/Pull (Haomai Wang) -* osd: cache reverse_nibbles hash value (Dong Yuan) -* osd: drop upgrade support for pre-dumpling (Sage Weil) -* osd: enable and use posix_fadvise (Sage Weil) -* osd: erasure-code: enforce chunk size alignment (#10211 Loic Dachary) -* osd: erasure-code: jerasure support for NEON (Loic Dachary) -* osd: erasure-code: relax cauchy w restrictions (#10325 David Zhang, Loic Dachary) -* osd: erasure-code: update gf-complete to latest upstream (Loic Dachary) -* osd: fix WBTHrottle perf counters (Haomai Wang) -* osd: fix backfill bug (#10150 Samuel Just) -* osd: fix occasional peering stalls (#10431 Sage Weil) -* osd: fix scrub vs try-flush bug (#8011 Samuel Just) -* osd: fix stderr with -f or -d (Dan Mick) -* osd: misc FIEMAP fixes (Ma Jianpeng) -* osd: optimize Finisher (Xinze Chi) -* osd: store PG metadata in per-collection objects for better concurrency (Sage Weil) -* pyrados: add object lock support (#6114 Mehdi Abaakouk) -* pyrados: fix misnamed wait_* routings (#10104 Dan Mick) -* pyrados: misc cleanups (Kefu Chai) -* qa: add large auth ticket tests (Ilya Dryomov) -* qa: many 'make check' improvements (Loic Dachary) -* qa: misc tests (Loic Dachary, Yan, Zheng) -* rgw: conditional PUT on ETag (#8562 Ray Lv) -* rgw: fix error codes (#10334 #10329 Yehuda Sadeh) -* rgw: index swift keys appropriately (#10471 Yehuda Sadeh) -* rgw: prevent illegal bucket policy that doesn't match placement rule (Yehuda Sadeh) -* rgw: run radosgw as apache with systemd (#10125 Loic Dachary) -* rgw: support X-Storage-Policy header for Swift storage policy compat (Yehuda Sadeh) -* rgw: use \r\n for http headers (#9254 Yehuda Sadeh) -* rpm: misc fixes (Key Dreyer) - - -v0.90 -===== - -This is the last development release before Christmas. There are some -API cleanups for librados and librbd, and lots of bug fixes across the -board for the OSD, MDS, RGW, and CRUSH. The OSD also gets support for -discard (potentially helpful on SSDs, although it is off by default), and there -are several improvements to ceph-disk. - -The next two development releases will be getting a slew of new -functionality for hammer. Stay tuned! - -Upgrading ---------- - -* Previously, the formatted output of 'ceph pg stat -f ...' was a full - pg dump that included all metadata about all PGs in the system. It - is now a concise summary of high-level PG stats, just like the - unformatted 'ceph pg stat' command. - -* All JSON dumps of floating point values were incorrecting surrounding the - value with quotes. These quotes have been removed. Any consumer of structured - JSON output that was consuming the floating point values was previously having - to interpret the quoted string and will most likely need to be fixed to take - the unquoted number. - -Notable Changes ---------------- - -* arch: fix NEON feaeture detection (#10185 Loic Dachary) -* build: adjust build deps for yasm, virtualenv (Jianpeng Ma) -* build: improve build dependency tooling (Loic Dachary) -* ceph-disk: call partx/partprobe consistency (#9721 Loic Dachary) -* ceph-disk: fix dmcrypt key permissions (Loic Dachary) -* ceph-disk: fix umount race condition (#10096 Blaine Gardner) -* ceph-disk: init=none option (Loic Dachary) -* ceph-monstore-tool: fix shutdown (#10093 Loic Dachary) -* ceph-objectstore-tool: fix import (#10090 David Zafman) -* ceph-objectstore-tool: many improvements and tests (David Zafman) -* ceph.spec: package rbd-replay-prep (Ken Dreyer) -* common: add 'perf reset ...' admin command (Jianpeng Ma) -* common: do not unlock rwlock on destruction (Federico Simoncelli) -* common: fix block device discard check (#10296 Sage Weil) -* common: remove broken CEPH_LOCKDEP optoin (Kefu Chai) -* crush: fix tree bucket behavior (Rongze Zhu) -* doc: add build-doc guidlines for Fedora and CentOS/RHEL (Nilamdyuti Goswami) -* doc: enable rbd cache on openstack deployments (Sebastien Han) -* doc: improved installation nots on CentOS/RHEL installs (John Wilkins) -* doc: misc cleanups (Adam Spiers, Sebastien Han, Nilamdyuti Goswami, Ken Dreyer, John Wilkins) -* doc: new man pages (Nilamdyuti Goswami) -* doc: update release descriptions (Ken Dreyer) -* doc: update sepia hardware inventory (Sandon Van Ness) -* librados: only export public API symbols (Jason Dillaman) -* libradosstriper: fix stat strtoll (Dongmao Zhang) -* libradosstriper: fix trunc method (#10129 Sebastien Ponce) -* librbd: fix list_children from invalid pool ioctxs (#10123 Jason Dillaman) -* librbd: only export public API symbols (Jason Dillaman) -* many coverity fixes (Danny Al-Gaaf) -* mds: 'flush journal' admin command (John Spray) -* mds: fix MDLog IO callback deadlock (John Spray) -* mds: fix deadlock during journal probe vs purge (#10229 Yan, Zheng) -* mds: fix race trimming log segments (Yan, Zheng) -* mds: store backtrace for stray dir (Yan, Zheng) -* mds: verify backtrace when fetching dirfrag (#9557 Yan, Zheng) -* mon: add max pgs per osd warning (Sage Weil) -* mon: fix *_ratio* units and types (Sage Weil) -* mon: fix JSON dumps to dump floats as flots and not strings (Sage Weil) -* mon: fix formatter 'pg stat' command output (Sage Weil) -* msgr: async: several fixes (Haomai Wang) -* msgr: simple: fix rare deadlock (Greg Farnum) -* osd: batch pg log trim (Xinze Chi) -* osd: clean up internal ObjectStore interface (Sage Weil) -* osd: do not abort deep scrub on missing hinfo (#10018 Loic Dachary) -* osd: fix ghobject_t formatted output to include shard (#10063 Loic Dachary) -* osd: fix osd peer check on scrub messages (#9555 Sage Weil) -* osd: fix pgls filter ops (#9439 David Zafman) -* osd: flush snapshots from cache tier immediately (Sage Weil) -* osd: keyvaluestore: fix getattr semantics (Haomai Wang) -* osd: keyvaluestore: fix key ordering (#10119 Haomai Wang) -* osd: limit in-flight read requests (Jason Dillaman) -* osd: log when scrub or repair starts (Loic Dachary) -* osd: support for discard for journal trim (Jianpeng Ma) -* qa: fix osd create dup tests (#10083 Loic Dachary) -* rgw: add location header when object is in another region (VRan Liu) -* rgw: check timestamp on s3 keystone auth (#10062 Abhishek Lekshmanan) -* rgw: make sysvinit script set ulimit -n properly (Sage Weil) -* systemd: better systemd unit files (Owen Synge) -* tests: ability to run unit tests under docker (Loic Dachary) - - -v0.89 -===== - -This is the second development release since Giant. The big items -include the first batch of scrub patches from Greg for CephFS, a rework -in the librados object listing API to properly handle namespaces, and -a pile of bug fixes for RGW. There are also several smaller issues -fixed up in the performance area with buffer alignment and memory -copies, osd cache tiering agent, and various CephFS fixes. - -Upgrading ---------- - -* New ability to list all objects from all namespaces can fail or - return incomplete results when not all OSDs have been upgraded. - Features rados --all ls, rados cppool, rados export, rados - cache-flush-evict-all and rados cache-try-flush-evict-all can also - fail or return incomplete results. - -Notable Changes ---------------- - -* buffer: add list::get_contiguous (Sage Weil) -* buffer: avoid rebuild if buffer already contiguous (Jianpeng Ma) -* ceph-disk: improved systemd support (Owen Synge) -* ceph-disk: set guid if reusing journal partition (Dan van der Ster) -* ceph-fuse, libcephfs: allow xattr caps in inject_release_failure (#9800 John Spray) -* ceph-fuse, libcephfs: fix I_COMPLETE_ORDERED checks (#9894 Yan, Zheng) -* ceph-fuse: fix dentry invalidation on 3.18+ kernels (#9997 Yan, Zheng) -* crush: fix detach_bucket (#10095 Sage Weil) -* crush: fix several bugs in adjust_item_weight (Rongze Zhu) -* doc: add dumpling to firefly upgrade section (#7679 John Wilkins) -* doc: document erasure coded pool operations (#9970 Loic Dachary) -* doc: file system osd config settings (Kevin Dalley) -* doc: key/value store config reference (John Wilkins) -* doc: update openstack docs for Juno (Sebastien Han) -* fix cluster logging from non-mon daemons (Sage Weil) -* init-ceph: check for systemd-run before using it (Boris Ranto) -* librados: fix infinite loop with skipped map epochs (#9986 Ding Dinghua) -* librados: fix iterator operator= bugs (#10082 David Zafman, Yehuda Sadeh) -* librados: fix null deref when pool DNE (#9944 Sage Weil) -* librados: fix timer race from recent refactor (Sage Weil) -* libradosstriper: fix shutdown hang (Dongmao Zhang) -* librbd: don't close a closed parent in failure path (#10030 Jason Dillaman) -* librbd: fix diff test (#10002 Josh Durgin) -* librbd: fix locking for readahead (#10045 Jason Dillaman) -* librbd: refactor unit tests to use fixtures (Jason Dillaman) -* many many coverity cleanups (Danny Al-Gaaf) -* mds: a whole bunch of initial scrub infrastructure (Greg Farnum) -* mds: fix compat_version for MClientSession (#9945 John Spray) -* mds: fix reply snapbl (Yan, Zheng) -* mon: allow adding tiers to fs pools (#10135 John Spray) -* mon: fix MDS health status from peons (#10151 John Spray) -* mon: fix caching for min_last_epoch_clean (#9987 Sage Weil) -* mon: fix error output for add_data_pool (#9852 Joao Eduardo Luis) -* mon: include entity name in audit log for forwarded requests (#9913 Joao Eduardo Luis) -* mon: paxos: allow reads while proposing (#9321 #9322 Joao Eduardo Luis) -* msgr: asyncmessenger: add kqueue support (#9926 Haomai Wang) -* osd, librados: revamp PG listing API to handle namespaces (#9031 #9262 #9438 David Zafman) -* osd, mon: send intiial pg create time from mon to osd (#9887 David Zafman) -* osd: allow whiteout deletion in cache pool (Sage Weil) -* osd: cache pool: ignore min flush age when cache is full (Xinze Chi) -* osd: erasure coding: allow bench.sh to test ISA backend (Yuan Zhou) -* osd: erasure-code: encoding regression tests, corpus (#9420 Loic Dachary) -* osd: fix journal shutdown race (Sage Weil) -* osd: fix object age eviction (Zhiqiang Wang) -* osd: fix object atime calculation (Xinze Chi) -* osd: fix past_interval display bug (#9752 Loic Dachary) -* osd: journal: fix alignment checks, avoid useless memmove (Jianpeng Ma) -* osd: journal: update committed_thru after replay (#6756 Samuel Just) -* osd: keyvaluestore_dev: optimization (Chendi Xue) -* osd: make misdirected op checks robust for EC pools (#9835 Sage Weil) -* osd: removed some dead code (Xinze Chi) -* qa: parallelize make check (Loic Dachary) -* qa: tolerate nearly-full disk for make check (Loic Dachary) -* rgw: create subuser if needed when creating user (#10103 Yehuda Sadeh) -* rgw: fix If-Modified-Since (VRan Liu) -* rgw: fix content-length update (#9576 Yehuda Sadeh) -* rgw: fix disabling of max_size quota (#9907 Dong Lei) -* rgw: fix incorrect len when len is 0 (#9877 Yehuda Sadeh) -* rgw: fix object copy content type (#9478 Yehuda Sadeh) -* rgw: fix user stags in get-user-info API (#9359 Ray Lv) -* rgw: remove swift user manifest (DLO) hash calculation (#9973 Yehuda Sadeh) -* rgw: return timestamp on GET/HEAD (#8911 Yehuda Sadeh) -* rgw: set ETag on object copy (#9479 Yehuda Sadeh) -* rgw: update bucket index on attr changes, for multi-site sync (#5595 Yehuda Sadeh) - - -v0.88 -===== - -This is the first development release after Giant. The two main -features merged this round are the new AsyncMessenger (an alternative -implementation of the network layer) from Haomai Wang at UnitedStack, -and support for POSIX file locks in ceph-fuse and libcephfs from Yan, -Zheng. There is also a big pile of smaller items that re merged while -we were stabilizing Giant, including a range of smaller performance -and bug fixes and some new tracepoints for LTTNG. - -Notable Changes ---------------- - -* ceph-disk: Scientific Linux support (Dan van der Ster) -* ceph-disk: respect --statedir for keyring (Loic Dachary) -* ceph-fuse, libcephfs: POSIX file lock support (Yan, Zheng) -* ceph-fuse, libcephfs: fix cap flush overflow (Greg Farnum, Yan, Zheng) -* ceph-fuse, libcephfs: fix root inode xattrs (Yan, Zheng) -* ceph-fuse, libcephfs: preserve dir ordering (#9178 Yan, Zheng) -* ceph-fuse, libcephfs: trim inodes before reconnecting to MDS (Yan, Zheng) -* ceph: do not parse injectargs twice (Loic Dachary) -* ceph: make 'ceph -s' output more readable (Sage Weil) -* ceph: new 'ceph tell mds.$name_or_rank_or_gid' (John Spray) -* ceph: test robustness (Joao Eduardo Luis) -* ceph_objectstore_tool: behave with sharded flag (#9661 David Zafman) -* cephfs-journal-tool: fix journal import (#10025 John Spray) -* cephfs-journal-tool: skip up to expire_pos (#9977 John Spray) -* cleanup rados.h definitions with macros (Ilya Dryomov) -* common: shared_cache unit tests (Cheng Cheng) -* config: add $cctid meta variable (Adam Crume) -* crush: fix buffer overrun for poorly formed rules (#9492 Johnu George) -* crush: improve constness (Loic Dachary) -* crushtool: add --location <id> command (Sage Weil, Loic Dachary) -* default to libnss instead of crypto++ (Federico Gimenez) -* doc: ceph osd reweight vs crush weight (Laurent Guerby) -* doc: document the LRC per-layer plugin configuration (Yuan Zhou) -* doc: erasure code doc updates (Loic Dachary) -* doc: misc updates (Alfredo Deza, VRan Liu) -* doc: preflight doc fixes (John Wilkins) -* doc: update PG count guide (Gerben Meijer, Laurent Guerby, Loic Dachary) -* keyvaluestore: misc fixes (Haomai Wang) -* keyvaluestore: performance improvements (Haomai Wang) -* librados: add rados_pool_get_base_tier() call (Adam Crume) -* librados: cap buffer length (Loic Dachary) -* librados: fix objecter races (#9617 Josh Durgin) -* libradosstriper: misc fixes (Sebastien Ponce) -* librbd: add missing python docstrings (Jason Dillaman) -* librbd: add readahead (Adam Crume) -* librbd: fix cache tiers in list_children and snap_unprotect (Adam Crume) -* librbd: fix performance regression in ObjectCacher (#9513 Adam Crume) -* librbd: lttng tracepoints (Adam Crume) -* librbd: misc fixes (Xinxin Shu, Jason Dillaman) -* mds: fix sessionmap lifecycle bugs (Yan, Zheng) -* mds: initialize root inode xattr version (Yan, Zheng) -* mds: introduce auth caps (John Spray) -* mds: misc bugs (Greg Farnum, John Spray, Yan, Zheng, Henry Change) -* misc coverity fixes (Danny Al-Gaaf) -* mon: add 'ceph osd rename-bucket ...' command (Loic Dachary) -* mon: clean up auth list output (Loic Dachary) -* mon: fix 'osd crush link' id resolution (John Spray) -* mon: fix misc error paths (Joao Eduardo Luis) -* mon: fix paxos off-by-one corner case (#9301 Sage Weil) -* mon: new 'ceph pool ls [detail]' command (Sage Weil) -* mon: wait for writeable before cross-proposing (#9794 Joao Eduardo Luis) -* msgr: avoid useless new/delete (Haomai Wang) -* msgr: fix delay injection bug (#9910 Sage Weil, Greg Farnum) -* msgr: new AsymcMessenger alternative implementation (Haomai Wang) -* msgr: prefetch data when doing recv (Yehuda Sadeh) -* osd: add erasure code corpus (Loic Dachary) -* osd: add misc tests (Loic Dachary, Danny Al-Gaaf) -* osd: cleanup boost optionals (William Kennington) -* osd: expose non-journal backends via ceph-osd CLI (Hoamai Wang) -* osd: fix JSON output for stray OSDs (Loic Dachary) -* osd: fix ioprio options (Loic Dachary) -* osd: fix transaction accounting (Jianpeng Ma) -* osd: misc optimizations (Xinxin Shu, Zhiqiang Wang, Xinze Chi) -* osd: use FIEMAP_FLAGS_SYNC instead of fsync (Jianpeng Ma) -* rados: fix put of /dev/null (Loic Dachary) -* rados: parse command-line arguments more strictly (#8983 Adam Crume) -* rbd-fuse: fix memory leak (Adam Crume) -* rbd-replay-many (Adam Crume) -* rbd-replay: --anonymize flag to rbd-replay-prep (Adam Crume) -* rbd: fix 'rbd diff' for non-existent objects (Adam Crume) -* rbd: fix error when striping with format 1 (Sebastien Han) -* rbd: fix export for image sizes over 2GB (Vicente Cheng) -* rbd: use rolling average for rbd bench-write throughput (Jason Dillaman) -* rgw: send explicit HTTP status string (Yehuda Sadeh) -* rgw: set length for keystone token validation request (#7796 Yehuda Sadeh, Mark Kirkwood) -* udev: fix rules for CentOS7/RHEL7 (Loic Dachary) -* use clock_gettime instead of gettimeofday (Jianpeng Ma) -* vstart.sh: set up environment for s3-tests (Luis Pabon) diff --git a/doc/releases/index.rst b/doc/releases/index.rst deleted file mode 100644 index 47279c8c5..000000000 --- a/doc/releases/index.rst +++ /dev/null @@ -1,279 +0,0 @@ -.. _ceph-releases-index: - -===================== -Ceph Releases (index) -===================== - -.. toctree:: - :maxdepth: 1 - -.. ceph_releases_gantt:: releases.yml - -.. _active-releases: - -Active Releases ---------------- - -The following Ceph releases are actively maintained and receive periodic backports and -security fixes. - -.. toctree:: - :maxdepth: 1 - :hidden: - - Reef (v18.2.*) <reef> - Quincy (v17.2.*) <quincy> - Pacific (v16.2.*) <pacific> - -.. ceph_releases:: releases.yml current - - -Archived Releases ------------------ - -The following older Ceph releases are no longer maintained (do not -receive bug fixes or backports). - -.. ceph_releases:: releases.yml eol - -.. toctree:: - :maxdepth: 1 - :hidden: - - Octopus (v15.2.*) <octopus> - Nautilus (v14.2.*) <nautilus> - Mimic (v13.2.*) <mimic> - Luminous (v12.2.*) <luminous> - Kraken (v11.2.*) <kraken> - Jewel (v10.2.*) <jewel> - Infernalis (v9.2.*) <infernalis> - Hammer (v0.94.*) <hammer> - Giant (v0.87.*) <giant> - Firefly (v0.80.*) <firefly> - Emperor (v0.72.*) <emperor> - Dumpling (v0.67.*) <dumpling> - Cuttlefish (v0.61.*) <cuttlefish> - Bobtail (v0.56.*) <bobtail> - Argonaut (v0.48.*) <argonaut> - -Release timeline ----------------- - -.. ceph_timeline_gantt:: releases.yml reef quincy -.. ceph_timeline:: releases.yml reef quincy - -.. _Reef: reef -.. _18.2.0: reef#v18-2-0-reef - -.. _Quincy: quincy -.. _17.2.0: quincy#v17-2-0-quincy -.. _17.2.1: quincy#v17-2-1-quincy -.. _17.2.2: quincy#v17-2-2-quincy -.. _17.2.3: quincy#v17-2-3-quincy -.. _17.2.4: quincy#v17-2-4-quincy -.. _17.2.5: quincy#v17-2-5-quincy - -.. _Pacific: pacific -.. _16.2.11: pacific#v16-2-11-pacific -.. _16.2.10: pacific#v16-2-10-pacific -.. _16.2.9: pacific#v16-2-9-pacific -.. _16.2.8: pacific#v16-2-8-pacific -.. _16.2.7: pacific#v16-2-7-pacific -.. _16.2.6: pacific#v16-2-6-pacific -.. _16.2.5: pacific#v16-2-5-pacific -.. _16.2.4: pacific#v16-2-4-pacific -.. _16.2.3: pacific#v16-2-3-pacific -.. _16.2.2: pacific#v16-2-2-pacific -.. _16.2.1: pacific#v16-2-1-pacific -.. _16.2.0: pacific#v16-2-0-pacific - -.. _Octopus: octopus -.. _15.2.17: octopus#v15-2-17-octopus -.. _15.2.16: octopus#v15-2-16-octopus -.. _15.2.15: octopus#v15-2-15-octopus -.. _15.2.14: octopus#v15-2-14-octopus -.. _15.2.13: octopus#v15-2-13-octopus -.. _15.2.12: octopus#v15-2-12-octopus -.. _15.2.11: octopus#v15-2-11-octopus -.. _15.2.10: octopus#v15-2-10-octopus -.. _15.2.9: octopus#v15-2-9-octopus -.. _15.2.8: octopus#v15-2-8-octopus -.. _15.2.7: octopus#v15-2-7-octopus -.. _15.2.6: octopus#v15-2-6-octopus -.. _15.2.5: octopus#v15-2-5-octopus -.. _15.2.4: octopus#v15-2-4-octopus -.. _15.2.3: octopus#v15-2-3-octopus -.. _15.2.2: octopus#v15-2-2-octopus -.. _15.2.1: octopus#v15-2-1-octopus -.. _15.2.0: octopus#v15-2-0-octopus - -.. _Nautilus: nautilus -.. _14.2.22: nautilus#v14-2-22-nautilus -.. _14.2.21: nautilus#v14-2-21-nautilus -.. _14.2.20: nautilus#v14-2-20-nautilus -.. _14.2.19: nautilus#v14-2-19-nautilus -.. _14.2.18: nautilus#v14-2-18-nautilus -.. _14.2.17: nautilus#v14-2-17-nautilus -.. _14.2.16: nautilus#v14-2-16-nautilus -.. _14.2.15: nautilus#v14-2-15-nautilus -.. _14.2.14: nautilus#v14-2-14-nautilus -.. _14.2.13: nautilus#v14-2-13-nautilus -.. _14.2.12: nautilus#v14-2-12-nautilus -.. _14.2.11: nautilus#v14-2-11-nautilus -.. _14.2.10: nautilus#v14-2-10-nautilus -.. _14.2.9: nautilus#v14-2-9-nautilus -.. _14.2.8: nautilus#v14-2-8-nautilus -.. _14.2.7: nautilus#v14-2-7-nautilus -.. _14.2.6: nautilus#v14-2-6-nautilus -.. _14.2.5: nautilus#v14-2-5-nautilus -.. _14.2.4: nautilus#v14-2-4-nautilus -.. _14.2.3: nautilus#v14-2-3-nautilus -.. _14.2.2: nautilus#v14-2-2-nautilus -.. _14.2.1: nautilus#v14-2-1-nautilus -.. _14.2.0: nautilus#v14-2-0-nautilus - -.. _Mimic: mimic -.. _13.2.10: mimic#v13-2-10-mimic -.. _13.2.9: mimic#v13-2-9-mimic -.. _13.2.8: mimic#v13-2-8-mimic -.. _13.2.7: mimic#v13-2-7-mimic -.. _13.2.6: mimic#v13-2-6-mimic -.. _13.2.5: mimic#v13-2-5-mimic -.. _13.2.4: mimic#v13-2-4-mimic -.. _13.2.3: mimic#v13-2-3-mimic -.. _13.2.2: mimic#v13-2-2-mimic -.. _13.2.1: mimic#v13-2-1-mimic -.. _13.2.0: mimic#v13-2-0-mimic - -.. _Luminous: luminous -.. _12.2.13: luminous#v12-2-13-luminous -.. _12.2.12: luminous#v12-2-12-luminous -.. _12.2.11: luminous#v12-2-11-luminous -.. _12.2.10: luminous#v12-2-10-luminous -.. _12.2.9: luminous#v12-2-9-luminous -.. _12.2.8: luminous#v12-2-8-luminous -.. _12.2.7: luminous#v12-2-7-luminous -.. _12.2.6: luminous#v12-2-6-luminous -.. _12.2.5: luminous#v12-2-5-luminous -.. _12.2.4: luminous#v12-2-4-luminous -.. _12.2.3: luminous#v12-2-3-luminous -.. _12.2.2: luminous#v12-2-2-luminous -.. _12.2.1: luminous#v12-2-1-luminous -.. _12.2.0: luminous#v12-2-0-luminous - -.. _Kraken: kraken -.. _11.2.1: kraken#v11-2-1-kraken -.. _11.2.0: kraken#v11-2-0-kraken -.. _11.0.2: kraken#v11-0-2-kraken - -.. _Jewel: jewel -.. _10.2.11: jewel#v10-2-11-jewel -.. _10.2.10: jewel#v10-2-10-jewel -.. _10.2.9: jewel#v10-2-9-jewel -.. _10.2.8: jewel#v10-2-8-jewel -.. _10.2.7: jewel#v10-2-7-jewel -.. _10.2.6: jewel#v10-2-6-jewel -.. _10.2.5: jewel#v10-2-5-jewel -.. _10.2.4: jewel#v10-2-4-jewel -.. _10.2.3: jewel#v10-2-3-jewel -.. _10.2.2: jewel#v10-2-2-jewel -.. _10.2.1: jewel#v10-2-1-jewel -.. _10.2.0: jewel#v10-2-0-jewel - -.. _10.1.2: jewel#v10-1-2-jewel-release-candidate -.. _10.1.1: jewel#v10-1-1-jewel-release-candidate -.. _10.1.0: jewel#v10-1-0-jewel-release-candidate -.. _10.0.5: jewel#v10-0-5 -.. _10.0.3: jewel#v10-0-3 -.. _10.0.2: jewel#v10-0-2 -.. _10.0.1: jewel#v10-0-1 -.. _10.0.0: jewel#v10-0-0 - -.. _Infernalis: infernalis -.. _9.2.1: infernalis#v9-2-1-infernalis -.. _9.2.0: infernalis#v9-2-0-infernalis - -.. _9.1.0: infernalis#v9-1-0 -.. _9.0.3: infernalis#v9-0-3 -.. _9.0.2: infernalis#v9-0-2 -.. _9.0.1: infernalis#v9-0-1 -.. _9.0.0: infernalis#v9-0-0 - -.. _0.94.10: hammer#v0-94-10-hammer -.. _0.94.9: hammer#v0-94-9-hammer -.. _0.94.8: hammer#v0-94-8-hammer -.. _0.94.7: hammer#v0-94-7-hammer -.. _0.94.6: hammer#v0-94-6-hammer -.. _0.94.5: hammer#v0-94-5-hammer -.. _0.94.4: hammer#v0-94-4-hammer -.. _0.94.3: hammer#v0-94-3-hammer -.. _0.94.2: hammer#v0-94-2-hammer -.. _0.94.1: hammer#v0-94-1-hammer -.. _0.94: hammer#v0-94-hammer -.. _Hammer: hammer - -.. _0.93: hammer#v0-93 -.. _0.92: hammer#v0-92 -.. _0.91: hammer#v0-91 -.. _0.90: hammer#v0-90 -.. _0.89: hammer#v0-89 -.. _0.88: hammer#v0-88 - -.. _0.87.2: giant#v0-87-2-giant -.. _0.87.1: giant#v0-87-1-giant -.. _0.87: giant#v0-87-giant -.. _Giant: giant - -.. _0.86: giant#v0-86 -.. _0.85: giant#v0-85 -.. _0.84: giant#v0-84 -.. _0.83: giant#v0-83 -.. _0.82: giant#v0-82 -.. _0.81: giant#v0-81 - -.. _0.80.11: firefly#v0-80-11-firefly -.. _0.80.10: firefly#v0-80-10-firefly -.. _0.80.9: firefly#v0-80-9-firefly -.. _0.80.8: firefly#v0-80-8-firefly -.. _0.80.7: firefly#v0-80-7-firefly -.. _0.80.6: firefly#v0-80-6-firefly -.. _0.80.5: firefly#v0-80-5-firefly -.. _0.80.4: firefly#v0-80-4-firefly -.. _0.80.3: firefly#v0-80-3-firefly -.. _0.80.2: firefly#v0-80-2-firefly -.. _0.80.1: firefly#v0-80-1-firefly -.. _0.80: firefly#v0-80-firefly -.. _Firefly: firefly - -.. _0.79: firefly#v0-79 -.. _0.78: firefly#v0-78 -.. _0.77: firefly#v0-77 -.. _0.76: firefly#v0-76 -.. _0.75: firefly#v0-75 -.. _0.74: firefly#v0-74 -.. _0.73: firefly#v0-73 - -.. _0.72.2: emperor#v0-72-2-emperor -.. _0.72.1: emperor#v0-72-1-emperor -.. _0.72: emperor#v0-72-emperor -.. _Emperor: emperor - -.. _0.71: dumpling#v0-71 -.. _0.70: dumpling#v0-70 -.. _0.69: dumpling#v0-69 -.. _0.68: dumpling#v0-68 - -.. _0.67.11: dumpling#v0-67-11-dumpling -.. _0.67.10: dumpling#v0-67-10-dumpling -.. _0.67.9: dumpling#v0-67-9-dumpling -.. _0.67.8: dumpling#v0-67-8-dumpling -.. _0.67.7: dumpling#v0-67-7-dumpling -.. _0.67.6: dumpling#v0-67-6-dumpling -.. _0.67.5: dumpling#v0-67-5-dumpling -.. _0.67.4: dumpling#v0-67-4-dumpling -.. _0.67.3: dumpling#v0-67-3-dumpling -.. _0.67.2: dumpling#v0-67-2-dumpling -.. _0.67.1: dumpling#v0-67-1-dumpling -.. _0.67: dumpling#v0-67-dumpling -.. _Dumpling: dumpling - diff --git a/doc/releases/infernalis.rst b/doc/releases/infernalis.rst deleted file mode 100644 index cd222f697..000000000 --- a/doc/releases/infernalis.rst +++ /dev/null @@ -1,1534 +0,0 @@ -.. _infernalis-release-notes: - -========== -Infernalis -========== - -Infernalis is the 9th stable release of Ceph. It is named after the -vampire squid (Vampyroteuthis infernalis, the "vampire squid from -hell"). - -v9.2.1 Infernalis -================= - -This Infernalis point release fixes several packagins and init script -issues, enables the librbd objectmap feature by default, a few librbd -bugs, and a range of miscellaneous bug fixes across the system. - -We recommend that all infernalis v9.2.0 users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v9.2.1.txt>`. - -Upgrading ---------- - -* Some symbols wrongly exposed by the C++ interface for librados in - v9.1.0 and v9.2.0 were removed. If you compiled your own - application against librados shipped with these releases, it is very - likely referencing these removed symbols. So you will need to - recompile it. - - -Notable Changes ---------------- -* build/ops: Ceph daemon failed to start, because the service name was already used. (`issue#13474 <http://tracker.ceph.com/issues/13474>`_, `pr#6833 <http://github.com/ceph/ceph/pull/6833>`_, Chuanhong Wang) -* build/ops: ceph upstart script rbdmap.conf incorrectly processes parameters (`issue#13214 <http://tracker.ceph.com/issues/13214>`_, `pr#6396 <http://github.com/ceph/ceph/pull/6396>`_, Sage Weil) -* build/ops: libunwind package missing on CentOS 7 (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `pr#6845 <http://github.com/ceph/ceph/pull/6845>`_, Loic Dachary) -* build/ops: rbd-replay-* moved from ceph-test-dbg to ceph-common-dbg as well (`issue#13785 <http://tracker.ceph.com/issues/13785>`_, `pr#6628 <http://github.com/ceph/ceph/pull/6628>`_, Loic Dachary) -* build/ops: systemd/ceph-disk@.service assumes /bin/flock (`issue#13975 <http://tracker.ceph.com/issues/13975>`_, `pr#6852 <http://github.com/ceph/ceph/pull/6852>`_, Loic Dachary) -* build/ops: systemd: no rbdmap systemd unit file (`issue#13374 <http://tracker.ceph.com/issues/13374>`_, `pr#6500 <http://github.com/ceph/ceph/pull/6500>`_, Boris Ranto) -* common: auth/cephx: large amounts of log are produced by osd (`issue#13610 <http://tracker.ceph.com/issues/13610>`_, `pr#6836 <http://github.com/ceph/ceph/pull/6836>`_, Qiankun Zheng) -* common: log: Log.cc: Assign LOG_DEBUG priority to syslog calls (`issue#13993 <http://tracker.ceph.com/issues/13993>`_, `pr#6993 <http://github.com/ceph/ceph/pull/6993>`_, Brad Hubbard) -* crush: crash if we see CRUSH_ITEM_NONE in early rule step (`issue#13477 <http://tracker.ceph.com/issues/13477>`_, `pr#6626 <http://github.com/ceph/ceph/pull/6626>`_, Sage Weil) -* fs: Ceph file system is not freeing space (`issue#13777 <http://tracker.ceph.com/issues/13777>`_, `pr#7431 <http://github.com/ceph/ceph/pull/7431>`_, Yan, Zheng, John Spray) -* fs: Ceph-fuse won't start correctly when the option log_max_new in ceph.conf set to zero (`issue#13443 <http://tracker.ceph.com/issues/13443>`_, `pr#6395 <http://github.com/ceph/ceph/pull/6395>`_, Wenjun Huang) -* fs: Segmentation fault accessing file using fuse mount (`issue#13714 <http://tracker.ceph.com/issues/13714>`_, `pr#6853 <http://github.com/ceph/ceph/pull/6853>`_, Yan, Zheng) -* librbd: Avoid re-writing old-format image header on resize (`issue#13674 <http://tracker.ceph.com/issues/13674>`_, `pr#6630 <http://github.com/ceph/ceph/pull/6630>`_, Jason Dillaman) -* librbd: ImageWatcher shouldn't block the notification thread (`issue#14373 <http://tracker.ceph.com/issues/14373>`_, `pr#7406 <http://github.com/ceph/ceph/pull/7406>`_, Jason Dillaman) -* librbd: QEMU hangs after creating snapshot and stopping VM (`issue#13726 <http://tracker.ceph.com/issues/13726>`_, `pr#6632 <http://github.com/ceph/ceph/pull/6632>`_, Jason Dillaman) -* librbd: Verify self-managed snapshot functionality on image create (`issue#13633 <http://tracker.ceph.com/issues/13633>`_, `pr#7080 <http://github.com/ceph/ceph/pull/7080>`_, Jason Dillaman) -* librbd: [ FAILED ] TestLibRBD.SnapRemoveViaLockOwner (`issue#14164 <http://tracker.ceph.com/issues/14164>`_, `pr#7079 <http://github.com/ceph/ceph/pull/7079>`_, Jason Dillaman) -* librbd: enable feature objectmap (`issue#13558 <http://tracker.ceph.com/issues/13558>`_, `pr#6477 <http://github.com/ceph/ceph/pull/6477>`_, xinxin shu) -* librbd: fix merge-diff for >2GB diff-files (`issue#14030 <http://tracker.ceph.com/issues/14030>`_, `pr#6981 <http://github.com/ceph/ceph/pull/6981>`_, Jason Dillaman) -* librbd: flattening an rbd image with active IO can lead to hang (`issue#14092 <http://tracker.ceph.com/issues/14092>`_, `issue#14483 <http://tracker.ceph.com/issues/14483>`_, `pr#7484 <http://github.com/ceph/ceph/pull/7484>`_, Jason Dillaman) -* mds: fix client capabilities during reconnect (client.XXXX isn't responding to mclientcaps warning) (`issue#11482 <http://tracker.ceph.com/issues/11482>`_, `pr#6752 <http://github.com/ceph/ceph/pull/6752>`_, Yan, Zheng) -* mon: Ceph Pools' MAX AVAIL is 0 if some OSDs' weight is 0 (`issue#13840 <http://tracker.ceph.com/issues/13840>`_, `pr#6907 <http://github.com/ceph/ceph/pull/6907>`_, Chengyuan Li) -* mon: should not set isvalid = true when cephx_verify_authorizer retur... (`issue#13525 <http://tracker.ceph.com/issues/13525>`_, `pr#6392 <http://github.com/ceph/ceph/pull/6392>`_, Ruifeng Yang) -* objecter: pool op callback may hang forever. (`issue#13642 <http://tracker.ceph.com/issues/13642>`_, `pr#6627 <http://github.com/ceph/ceph/pull/6627>`_, xie xingguo) -* objecter: potential null pointer access when do pool_snap_list. (`issue#13639 <http://tracker.ceph.com/issues/13639>`_, `pr#6840 <http://github.com/ceph/ceph/pull/6840>`_, xie xingguo) -* osd: FileStore: potential memory leak if getattrs fails. (`issue#13597 <http://tracker.ceph.com/issues/13597>`_, `pr#6846 <http://github.com/ceph/ceph/pull/6846>`_, xie xingguo) -* osd: OSD::build_past_intervals_parallel() shall reset primary and up_primary when begin a new past_interval. (`issue#13471 <http://tracker.ceph.com/issues/13471>`_, `pr#6397 <http://github.com/ceph/ceph/pull/6397>`_, xiexingguo) -* osd: call on_new_interval on newly split child PG (`issue#13962 <http://tracker.ceph.com/issues/13962>`_, `pr#6849 <http://github.com/ceph/ceph/pull/6849>`_, Sage Weil) -* osd: ceph-disk list fails on /dev/cciss!c0d0 (`issue#13970 <http://tracker.ceph.com/issues/13970>`_, `issue#14230 <http://tracker.ceph.com/issues/14230>`_, `pr#6880 <http://github.com/ceph/ceph/pull/6880>`_, Loic Dachary) -* osd: ceph-disk: use blkid instead of sgdisk -i (`issue#14080 <http://tracker.ceph.com/issues/14080>`_, `pr#7001 <http://github.com/ceph/ceph/pull/7001>`_, Loic Dachary, Ilya Dryomov) -* osd: fix race condition during send_failures (`issue#13821 <http://tracker.ceph.com/issues/13821>`_, `pr#6694 <http://github.com/ceph/ceph/pull/6694>`_, Sage Weil) -* osd: osd/PG.cc: 288: FAILED assert(info.last_epoch_started >= info.history.last_epoch_started) (`issue#14015 <http://tracker.ceph.com/issues/14015>`_, `pr#6851 <http://github.com/ceph/ceph/pull/6851>`_, David Zafman) -* osd: pgs stuck inconsistent after infernalis upgrade (`issue#13862 <http://tracker.ceph.com/issues/13862>`_, `pr#7421 <http://github.com/ceph/ceph/pull/7421>`_, David Zafman) -* rbd: TaskFinisher::cancel should remove event from SafeTimer (`issue#14476 <http://tracker.ceph.com/issues/14476>`_, `pr#7426 <http://github.com/ceph/ceph/pull/7426>`_, Douglas Fuller) -* rbd: cls_rbd: object_map_save should enable checksums (`issue#14280 <http://tracker.ceph.com/issues/14280>`_, `pr#7428 <http://github.com/ceph/ceph/pull/7428>`_, Douglas Fuller) -* rbd: misdirected op in rbd balance-reads test (`issue#13491 <http://tracker.ceph.com/issues/13491>`_, `pr#6629 <http://github.com/ceph/ceph/pull/6629>`_, Jason Dillaman) -* rbd: pure virtual method called (`issue#13636 <http://tracker.ceph.com/issues/13636>`_, `pr#6633 <http://github.com/ceph/ceph/pull/6633>`_, Jason Dillaman) -* rbd: rbd clone issue (`issue#13553 <http://tracker.ceph.com/issues/13553>`_, `pr#6474 <http://github.com/ceph/ceph/pull/6474>`_, xinxin shu) -* rbd: rbd-replay does not check for EOF and goes to endless loop (`issue#14452 <http://tracker.ceph.com/issues/14452>`_, `pr#7427 <http://github.com/ceph/ceph/pull/7427>`_, Mykola Golub) -* rbd: unknown argument --quiet in udevadm settle (`issue#13560 <http://tracker.ceph.com/issues/13560>`_, `pr#6634 <http://github.com/ceph/ceph/pull/6634>`_, Jason Dillaman) -* rgw: init script reload doesn't work on EL7 (`issue#13709 <http://tracker.ceph.com/issues/13709>`_, `pr#6650 <http://github.com/ceph/ceph/pull/6650>`_, Hervé Rousseau) -* rgw: radosgw-admin --help doesn't show the orphans find command (`issue#14516 <http://tracker.ceph.com/issues/14516>`_, `pr#7543 <http://github.com/ceph/ceph/pull/7543>`_, Yehuda Sadeh) -* tests: ceph-disk workunit uses configobj (`issue#14004 <http://tracker.ceph.com/issues/14004>`_, `pr#6828 <http://github.com/ceph/ceph/pull/6828>`_, Loic Dachary) -* tests: fsx failed to compile (`issue#14384 <http://tracker.ceph.com/issues/14384>`_, `pr#7429 <http://github.com/ceph/ceph/pull/7429>`_, Greg Farnum) -* tests: notification slave needs to wait for master (`issue#13810 <http://tracker.ceph.com/issues/13810>`_, `pr#7225 <http://github.com/ceph/ceph/pull/7225>`_, Jason Dillaman) -* tests: rebuild exclusive lock test should acquire exclusive lock (`issue#14121 <http://tracker.ceph.com/issues/14121>`_, `pr#7038 <http://github.com/ceph/ceph/pull/7038>`_, Jason Dillaman) -* tests: testprofile must be removed before it is re-created (`issue#13664 <http://tracker.ceph.com/issues/13664>`_, `pr#6449 <http://github.com/ceph/ceph/pull/6449>`_, Loic Dachary) -* tests: verify it is possible to reuse an OSD id (`issue#13988 <http://tracker.ceph.com/issues/13988>`_, `pr#6882 <http://github.com/ceph/ceph/pull/6882>`_, Loic Dachary) - -v9.2.0 Infernalis -================= - -This major release will be the foundation for the next stable series. -There have been some major changes since v0.94.x Hammer, and the -upgrade process is non-trivial. Please read these release notes carefully. - -Major Changes from Hammer -------------------------- - -- *General*: - - * Ceph daemons are now managed via systemd (with the exception of - Ubuntu Trusty, which still uses upstart). - * Ceph daemons run as 'ceph' user instead root. - * On Red Hat distros, there is also an SELinux policy. - -- *RADOS*: - - * The RADOS cache tier can now proxy write operations to the base - tier, allowing writes to be handled without forcing migration of - an object into the cache. - * The SHEC erasure coding support is no longer flagged as - experimental. SHEC trades some additional storage space for faster - repair. - * There is now a unified queue (and thus prioritization) of client - IO, recovery, scrubbing, and snapshot trimming. - * There have been many improvements to low-level repair tooling - (ceph-objectstore-tool). - * The internal ObjectStore API has been significantly cleaned up in order - to facilitate new storage backends like NewStore. - -- *RGW*: - - * The Swift API now supports object expiration. - * There are many Swift API compatibility improvements. - -- *RBD*: - - * The ``rbd du`` command shows actual usage (quickly, when - object-map is enabled). - * The object-map feature has seen many stability improvements. - * Object-map and exclusive-lock features can be enabled or disabled - dynamically. - * You can now store user metadata and set persistent librbd options - associated with individual images. - * The new deep-flatten features allows flattening of a clone and all - of its snapshots. (Previously snapshots could not be flattened.) - * The export-diff command is now faster (it uses aio). There is also - a new fast-diff feature. - * The --size argument can be specified with a suffix for units - (e.g., ``--size 64G``). - * There is a new ``rbd status`` command that, for now, shows who has - the image open/mapped. - -- *CephFS*: - - * You can now rename snapshots. - * There have been ongoing improvements around administration, diagnostics, - and the check and repair tools. - * The caching and revocation of client cache state due to unused - inodes has been dramatically improved. - * The ceph-fuse client behaves better on 32-bit hosts. - -Distro compatibility --------------------- - -We have decided to drop support for many older distributions so that we can -move to a newer compiler toolchain (e.g., C++11). Although it is still possible -to build Ceph on older distributions by installing backported development tools, -we are not building and publishing release packages for ceph.com. - -We now build packages for: - -* CentOS 7 or later. We have dropped support for CentOS 6 (and other - RHEL 6 derivatives, like Scientific Linux 6). -* Debian Jessie 8.x or later. Debian Wheezy 7.x's g++ has incomplete - support for C++11 (and no systemd). -* Ubuntu Trusty 14.04 or later. Ubuntu Precise 12.04 is no longer - supported. -* Fedora 22 or later. - -Upgrading from Firefly ----------------------- - -Upgrading directly from Firefly v0.80.z is not recommended. It is -possible to do a direct upgrade, but not without downtime. We -recommend that clusters are first upgraded to Hammer v0.94.4 or a -later v0.94.z release; only then is it possible to upgrade to -Infernalis 9.2.z for an online upgrade (see below). - -To do an offline upgrade directly from Firefly, all Firefly OSDs must -be stopped and marked down before any Infernalis OSDs will be allowed -to start up. This fencing is enforced by the Infernalis monitor, so -use an upgrade procedure like: - -#. Upgrade Ceph on monitor hosts -#. Restart all ceph-mon daemons -#. Upgrade Ceph on all OSD hosts -#. Stop all ceph-osd daemons -#. Mark all OSDs down with something like:: - - ceph osd down `seq 0 1000` - -#. Start all ceph-osd daemons -#. Upgrade and restart remaining daemons (ceph-mds, radosgw) - -Upgrading from Hammer ---------------------- - -* All cluster nodes must first upgrade to Hammer v0.94.4 or a later v0.94.z release; only - then is it possible to upgrade to Infernalis 9.2.z. - -* For all distributions that support systemd (CentOS 7, Fedora, Debian - Jessie 8.x, OpenSUSE), ceph daemons are now managed using native systemd - files instead of the legacy sysvinit scripts. For example:: - - systemctl start ceph.target # start all daemons - systemctl status ceph-osd@12 # check status of osd.12 - - The main notable distro that is *not* yet using systemd is Ubuntu trusty - 14.04. (The next Ubuntu LTS, 16.04, will use systemd instead of upstart.) - -* Ceph daemons now run as user and group ``ceph`` by default. The - ceph user has a static UID assigned by Fedora and Debian (also used - by derivative distributions like RHEL/CentOS and Ubuntu). On SUSE - the ceph user will currently get a dynamically assigned UID when the - user is created. - - If your systems already have a ceph user, upgrading the package will cause - problems. We suggest you first remove or rename the existing 'ceph' user - and 'ceph' group before upgrading. - - When upgrading, administrators have two options: - - #. Add the following line to ``ceph.conf`` on all hosts:: - - setuser match path = /var/lib/ceph/$type/$cluster-$id - - This will make the Ceph daemons run as root (i.e., not drop - privileges and switch to user ceph) if the daemon's data - directory is still owned by root. Newly deployed daemons will - be created with data owned by user ceph and will run with - reduced privileges, but upgraded daemons will continue to run as - root. - - #. Fix the data ownership during the upgrade. This is the - preferred option, but it is more work and can be very time - consuming. The process for each host is to: - - #. Upgrade the ceph package. This creates the ceph user and group. For - example:: - - ceph-deploy install --stable infernalis HOST - - #. Stop the daemon(s):: - - service ceph stop # fedora, centos, rhel, debian - stop ceph-all # ubuntu - - #. Fix the ownership:: - - chown -R ceph:ceph /var/lib/ceph - chown -R ceph:ceph /var/log/ceph - - #. Restart the daemon(s):: - - start ceph-all # ubuntu - systemctl start ceph.target # debian, centos, fedora, rhel - - Alternatively, the same process can be done with a single daemon - type, for example by stopping only monitors and chowning only - ``/var/lib/ceph/mon``. - -* The on-disk format for the experimental KeyValueStore OSD backend has - changed. You will need to remove any OSDs using that backend before you - upgrade any test clusters that use it. - -* When a pool quota is reached, librados operations now block indefinitely, - the same way they do when the cluster fills up. (Previously they would return - -ENOSPC). By default, a full cluster or pool will now block. If your - librados application can handle ENOSPC or EDQUOT errors gracefully, you can - get error returns instead by using the new librados OPERATION_FULL_TRY flag. - -* The return code for librbd's rbd_aio_read and Image::aio_read API methods no - longer returns the number of bytes read upon success. Instead, it returns 0 - upon success and a negative value upon failure. - -* 'ceph scrub', 'ceph compact' and 'ceph sync force are now DEPRECATED. Users - should instead use 'ceph mon scrub', 'ceph mon compact' and - 'ceph mon sync force'. - -* 'ceph mon_metadata' should now be used as 'ceph mon metadata'. There is no - need to deprecate this command (same major release since it was first - introduced). - -* The `--dump-json` option of "osdmaptool" is replaced by `--dump json`. - -* The commands of "pg ls-by-{pool,primary,osd}" and "pg ls" now take "recovering" - instead of "recovery", to include the recovering pgs in the listed pgs. - -Notable Changes since Hammer ----------------------------- - -* aarch64: add optimized version of crc32c (Yazen Ghannam, Steve Capper) -* auth: cache/reuse crypto lib key objects, optimize msg signature check (Sage Weil) -* auth: reinit NSS after fork() (#11128 Yan, Zheng) -* autotools: fix out of tree build (Krxysztof Kosinski) -* autotools: improve make check output (Loic Dachary) -* buffer: add invalidate_crc() (Piotr Dalek) -* buffer: fix zero bug (#12252 Haomai Wang) -* buffer: some cleanup (Michal Jarzabek) -* build: allow tcmalloc-minimal (Thorsten Behrens) -* build: C++11 now supported -* build: cmake: fix nss linking (Danny Al-Gaaf) -* build: cmake: misc fixes (Orit Wasserman, Casey Bodley) -* build: disable LTTNG by default (#11333 Josh Durgin) -* build: do not build ceph-dencoder with tcmalloc (#10691 Boris Ranto) -* build: fix junit detection on Fedora 22 (Ira Cooper) -* build: fix pg ref disabling (William A. Kennington III) -* build: fix ppc build (James Page) -* build: install-deps: misc fixes (Loic Dachary) -* build: install-deps.sh improvements (Loic Dachary) -* build: install-deps: support OpenSUSE (Loic Dachary) -* build: make_dist_tarball.sh (Sage Weil) -* build: many cmake improvements -* build: misc cmake fixes (Matt Benjamin) -* build: misc fixes (Boris Ranto, Ken Dreyer, Owen Synge) -* build: OSX build fixes (Yan, Zheng) -* build: remove rest-bench -* ceph-authtool: fix return code on error (Gerhard Muntingh) -* ceph-detect-init: added Linux Mint (Michal Jarzabek) -* ceph-detect-init: robust init system detection (Owen Synge) -* ceph-disk: ensure 'zap' only operates on a full disk (#11272 Loic Dachary) -* ceph-disk: fix zap sgdisk invocation (Owen Synge, Thorsten Behrens) -* ceph-disk: follow ceph-osd hints when creating journal (#9580 Sage Weil) -* ceph-disk: handle re-using existing partition (#10987 Loic Dachary) -* ceph-disk: improve parted output parsing (#10983 Loic Dachary) -* ceph-disk: install pip > 6.1 (#11952 Loic Dachary) -* ceph-disk: make suppression work for activate-all and activate-journal (Dan van der Ster) -* ceph-disk: many fixes (Loic Dachary, Alfredo Deza) -* ceph-disk: fixes to respect init system (Loic Dachary, Owen Synge) -* ceph-disk: pass --cluster arg on prepare subcommand (Kefu Chai) -* ceph-disk: support for multipath devices (Loic Dachary) -* ceph-disk: support NVMe device partitions (#11612 Ilja Slepnev) -* ceph: fix 'df' units (Zhe Zhang) -* ceph: fix parsing in interactive cli mode (#11279 Kefu Chai) -* cephfs-data-scan: many additions, improvements (John Spray) -* ceph-fuse: do not require successful remount when unmounting (#10982 Greg Farnum) -* ceph-fuse, libcephfs: don't clear COMPLETE when trimming null (Yan, Zheng) -* ceph-fuse, libcephfs: drop inode when rmdir finishes (#11339 Yan, Zheng) -* ceph-fuse,libcephfs: fix uninline (#11356 Yan, Zheng) -* ceph-fuse, libcephfs: hold exclusive caps on dirs we "own" (#11226 Greg Farnum) -* ceph-fuse: mostly behave on 32-bit hosts (Yan, Zheng) -* ceph: improve error output for 'tell' (#11101 Kefu Chai) -* ceph-monstore-tool: fix store-copy (Huangjun) -* ceph: new 'ceph daemonperf' command (John Spray, Mykola Golub) -* ceph-objectstore-tool: many many improvements (David Zafman) -* ceph-objectstore-tool: refactoring and cleanup (John Spray) -* ceph-post-file: misc fixes (Joey McDonald, Sage Weil) -* ceph_test_rados: test pipelined reads (Zhiqiang Wang) -* client: avoid sending unnecessary FLUSHSNAP messages (Yan, Zheng) -* client: exclude setfilelock when calculating oldest tid (Yan, Zheng) -* client: fix error handling in check_pool_perm (John Spray) -* client: fsync waits only for inode's caps to flush (Yan, Zheng) -* client: invalidate kernel dcache when cache size exceeds limits (Yan, Zheng) -* client: make fsync wait for unsafe dir operations (Yan, Zheng) -* client: pin lookup dentry to avoid inode being freed (Yan, Zheng) -* common: add descriptions to perfcounters (Kiseleva Alyona) -* common: add perf counter descriptions (Alyona Kiseleva) -* common: bufferlist performance tuning (Piotr Dalek, Sage Weil) -* common: detect overflow of int config values (#11484 Kefu Chai) -* common: fix bit_vector extent calc (#12611 Jason Dillaman) -* common: fix json parsing of utf8 (#7387 Tim Serong) -* common: fix leak of pthread_mutexattr (#11762 Ketor Meng) -* common: fix LTTNG vs fork issue (Josh Durgin) -* common: fix throttle max change (Henry Chang) -* common: make mutex more efficient -* common: make work queue addition/removal thread safe (#12662 Jason Dillaman) -* common: optracker improvements (Zhiqiang Wang, Jianpeng Ma) -* common: PriorityQueue tests (Kefu Chai) -* common: some async compression infrastructure (Haomai Wang) -* crush: add --check to validate dangling names, max osd id (Kefu Chai) -* crush: cleanup, sync with kernel (Ilya Dryomov) -* crush: fix crash from invalid 'take' argument (#11602 Shiva Rkreddy, Sage Weil) -* crush: fix divide-by-2 in straw2 (#11357 Yann Dupont, Sage Weil) -* crush: fix has_v4_buckets (#11364 Sage Weil) -* crush: fix subtree base weight on adjust_subtree_weight (#11855 Sage Weil) -* crush: respect default replicated ruleset config on map creation (Ilya Dryomov) -* crushtool: fix order of operations, usage (Sage Weil) -* crypto: fix NSS leak (Jason Dillaman) -* crypto: fix unbalanced init/shutdown (#12598 Zheng Yan) -* deb: fix rest-bench-dbg and ceph-test-dbg dependendies (Ken Dreyer) -* debian: minor package reorg (Ken Dreyer) -* deb, rpm: move ceph-objectstore-tool to ceph (Ken Dreyer) -* doc: docuemnt object corpus generation (#11099 Alexis Normand) -* doc: document region hostnames (Robin H. Johnson) -* doc: fix gender neutrality (Alexandre Maragone) -* doc: fix install doc (#10957 Kefu Chai) -* doc: fix sphinx issues (Kefu Chai) -* doc: man page updates (Kefu Chai) -* doc: mds data structure docs (Yan, Zheng) -* doc: misc updates (Francois Lafont, Ken Dreyer, Kefu Chai, Owen Synge, Gael Fenet-Garde, Loic Dachary, Yannick Atchy-Dalama, Jiaying Ren, Kevin Caradant, Robert Maxime, Nicolas Yong, Germain Chipaux, Arthur Gorjux, Gabriel Sentucq, Clement Lebrun, Jean-Remi Deveaux, Clair Massot, Robin Tang, Thomas Laumondais, Jordan Dorne, Yuan Zhou, Valentin Thomas, Pierre Chaumont, Benjamin Troquereau, Benjamin Sesia, Vikhyat Umrao, Nilamdyuti Goswami, Vartika Rai, Florian Haas, Loic Dachary, Simon Guinot, Andy Allan, Alistair Israel, Ken Dreyer, Robin Rehu, Lee Revell, Florian Marsylle, Thomas Johnson, Bosse Klykken, Travis Rhoden, Ian Kelling) -* doc: swift tempurls (#10184 Abhishek Lekshmanan) -* doc: switch doxygen integration back to breathe (#6115 Kefu Chai) -* doc: update release schedule docs (Loic Dachary) -* erasure-code: cleanup (Kefu Chai) -* erasure-code: improve tests (Loic Dachary) -* erasure-code: shec: fix recovery bugs (Takanori Nakao, Shotaro Kawaguchi) -* erasure-code: update ISA-L to 2.13 (Yuan Zhou) -* gmock: switch to submodule (Danny Al-Gaaf, Loic Dachary) -* hadoop: add terasort test (Noah Watkins) -* init-radosgw: merge with sysv version; fix enumeration (Sage Weil) -* java: fix libcephfs bindings (Noah Watkins) -* libcephfs: add pread, pwrite (Jevon Qiao) -* libcephfs,ceph-fuse: cache cleanup (Zheng Yan) -* libcephfs,ceph-fuse: fix request resend on cap reconnect (#10912 Yan, Zheng) -* librados: add config observer (Alistair Strachan) -* librados: add FULL_TRY and FULL_FORCE flags for dealing with full clusters or pools (Sage Weil) -* librados: add src_fadvise_flags for copy-from (Jianpeng Ma) -* librados: define C++ flags from C constants (Josh Durgin) -* librados: fadvise flags per op (Jianpeng Ma) -* librados: fix last_force_resent handling (#11026 Jianpeng Ma) -* librados: fix memory leak from C_TwoContexts (Xiong Yiliang) -* librados: fix notify completion race (#13114 Sage Weil) -* librados: fix striper when stripe_count = 1 and stripe_unit != object_size (#11120 Yan, Zheng) -* librados, libcephfs: randomize client nonces (Josh Durgin) -* librados: op perf counters (John Spray) -* librados: pybind: fix binary omap values (Robin H. Johnson) -* librados: pybind: fix write() method return code (Javier Guerra) -* librados: respect default_crush_ruleset on pool_create (#11640 Yuan Zhou) -* libradosstriper: fix leak (Danny Al-Gaaf) -* librbd: add const for single-client-only features (Josh Durgin) -* librbd: add deep-flatten operation (Jason Dillaman) -* librbd: add purge_on_error cache behavior (Jianpeng Ma) -* librbd: allow additional metadata to be stored with the image (Haomai Wang) -* librbd: avoid blocking aio API methods (#11056 Jason Dillaman) -* librbd: better handling for dup flatten requests (#11370 Jason Dillaman) -* librbd: cancel in-flight ops on watch error (#11363 Jason Dillaman) -* librbd: default new images to format 2 (#11348 Jason Dillaman) -* librbd: fadvise for copy, export, import (Jianpeng Ma) -* librbd: fast diff implementation that leverages object map (Jason Dillaman) -* librbd: fix fast diff bugs (#11553 Jason Dillaman) -* librbd: fix image format detection (Zhiqiang Wang) -* librbd: fix lock ordering issue (#11577 Jason Dillaman) -* librbd: fix reads larger than the cache size (Lu Shi) -* librbd: fix snapshot creation when other snap is active (#11475 Jason Dillaman) -* librbd: flatten/copyup fixes (Jason Dillaman) -* librbd: handle NOCACHE fadvise flag (Jinapeng Ma) -* librbd: lockdep, helgrind validation (Jason Dillaman, Josh Durgin) -* librbd: metadata filter fixes (Haomai Wang) -* librbd: misc aio fixes (#5488 Jason Dillaman) -* librbd: misc rbd fixes (#11478 #11113 #11342 #11380 Jason Dillaman, Zhiqiang Wang) -* librbd: new diff_iterate2 API (Jason Dillaman) -* librbd: object map rebuild support (Jason Dillaman) -* librbd: only update image flags while hold exclusive lock (#11791 Jason Dillaman) -* librbd: optionally disable allocation hint (Haomai Wang) -* librbd: prevent race between resize requests (#12664 Jason Dillaman) -* librbd: readahead fixes (Zhiqiang Wang) -* librbd: return result code from close (#12069 Jason Dillaman) -* librbd: store metadata, including config options, in image (Haomai Wang) -* librbd: tolerate old osds when getting image metadata (#11549 Jason Dillaman) -* librbd: use write_full when possible (Zhiqiang Wang) -* log: fix data corruption race resulting from log rotation (#12465 Samuel Just) -* logrotate.d: prefer service over invoke-rc.d (#11330 Win Hierman, Sage Weil) -* mds: add 'damaged' state to MDSMap (John Spray) -* mds: add nicknames for perfcounters (John Spray) -* mds: avoid emitting cap warnigns before evicting session (John Spray) -* mds: avoid getting stuck in XLOCKDONE (#11254 Yan, Zheng) -* mds: disable problematic rstat propagation into snap parents (Yan, Zheng) -* mds: do not add snapped items to bloom filter (Yan, Zheng) -* mds: expose frags via asok (John Spray) -* mds: fix expected holes in journal objects (#13167 Yan, Zheng) -* mds: fix handling for missing mydir dirfrag (#11641 John Spray) -* mds: fix integer truncateion on large client ids (Henry Chang) -* mds: fix mydir replica issue with shutdown (#10743 John Spray) -* mds: fix out-of-order messages (#11258 Yan, Zheng) -* mds: fix rejoin (Yan, Zheng) -* mds: fix setting entire file layout in one setxattr (John Spray) -* mds: fix shutdown (John Spray) -* mds: fix shutdown with strays (#10744 John Spray) -* mds: fix SnapServer crash on deleted pool (John Spray) -* mds: fix snapshot bugs (Yan, Zheng) -* mds: fix stray reintegration (Yan, Zheng) -* mds: fix stray handling (John Spray) -* mds: fix suicide beacon (John Spray) -* mds: flush immediately in do_open_truncate (#11011 John Spray) -* mds: handle misc corruption issues (John Spray) -* mds: improve dump methods (John Spray) -* mds: many fixes (Yan, Zheng, John Spray, Greg Farnum) -* mds: many snapshot and stray fixes (Yan, Zheng) -* mds: misc fixes (Jianpeng Ma, Dan van der Ster, Zhang Zhi) -* mds: misc journal cleanups and fixes (#10368 John Spray) -* mds: misc repair improvements (John Spray) -* mds: misc snap fixes (Zheng Yan) -* mds: misc snapshot fixes (Yan, Zheng) -* mds: new SessionMap storage using omap (#10649 John Spray) -* mds: persist completed_requests reliably (#11048 John Spray) -* mds: reduce memory consumption (Yan, Zheng) -* mds: respawn instead of suicide on blacklist (John Spray) -* mds: separate safe_pos in Journaler (#10368 John Spray) -* mds: snapshot rename support (#3645 Yan, Zheng) -* mds: store layout on header object (#4161 John Spray) -* mds: throttle purge stray operations (#10390 John Spray) -* mds: tolerate clock jumping backwards (#11053 Yan, Zheng) -* mds: warn when clients fail to advance oldest_client_tid (#10657 Yan, Zheng) -* misc cleanups and fixes (Danny Al-Gaaf) -* misc coverity fixes (Danny Al-Gaaf) -* misc performance and cleanup (Nathan Cutler, Xinxin Shu) -* mon: add cache over MonitorDBStore (Kefu Chai) -* mon: add 'mon_metadata <id>' command (Kefu Chai) -* mon: add 'node ls ...' command (Kefu Chai) -* mon: add NOFORWARD, OBSOLETE, DEPRECATE flags for mon commands (Joao Eduardo Luis) -* mon: add PG count to 'ceph osd df' output (Michal Jarzabek) -* mon: 'ceph osd metadata' can dump all osds (Haomai Wang) -* mon: clean up, reorg some mon commands (Joao Eduardo Luis) -* monclient: flush_log (John Spray) -* mon: detect kv backend failures (Sage Weil) -* mon: disallow >2 tiers (#11840 Kefu Chai) -* mon: disallow ec pools as tiers (#11650 Samuel Just) -* mon: do not deactivate last mds (#10862 John Spray) -* mon: fix average utilization calc for 'osd df' (Mykola Golub) -* mon: fix CRUSH map test for new pools (Sage Weil) -* mon: fix log dump crash when debugging (Mykola Golub) -* mon: fix mds beacon replies (#11590 Kefu Chai) -* mon: fix metadata update race (Mykola Golub) -* mon: fix min_last_epoch_clean tracking (Kefu Chai) -* mon: fix 'pg ls' sort order, state names (#11569 Kefu Chai) -* mon: fix refresh (#11470 Joao Eduardo Luis) -* mon: fix variance calc in 'osd df' (Sage Weil) -* mon: improve callout to crushtool (Mykola Golub) -* mon: make blocked op messages more readable (Jianpeng Ma) -* mon: make osd get pool 'all' only return applicable fields (#10891 Michal Jarzabek) -* mon: misc scaling fixes (Sage Weil) -* mon: normalize erasure-code profile for storage and comparison (Loic Dachary) -* mon: only send mon metadata to supporting peers (Sage Weil) -* mon: optionally specify osd id on 'osd create' (Mykola Golub) -* mon: 'osd tree' fixes (Kefu Chai) -* mon: periodic background scrub (Joao Eduardo Luis) -* mon: prevent bucket deletion when referenced by a crush rule (#11602 Sage Weil) -* mon: prevent pgp_num > pg_num (#12025 Xinxin Shu) -* mon: prevent pool with snapshot state from being used as a tier (#11493 Sage Weil) -* mon: prime pg_temp when CRUSH map changes (Sage Weil) -* mon: refine check_remove_tier checks (#11504 John Spray) -* mon: reject large max_mds values (#12222 John Spray) -* mon: remove spurious who arg from 'mds rm ...' (John Spray) -* mon: streamline session handling, fix memory leaks (Sage Weil) -* mon: upgrades must pass through hammer (Sage Weil) -* mon: warn on bogus cache tier config (Jianpeng Ma) -* msgr: add ceph_perf_msgr tool (Hoamai Wang) -* msgr: async: fix seq handling (Haomai Wang) -* msgr: async: many many fixes (Haomai Wang) -* msgr: simple: fix clear_pipe (#11381 Haomai Wang) -* msgr: simple: fix connect_seq assert (Haomai Wang) -* msgr: xio: fastpath improvements (Raju Kurunkad) -* msgr: xio: fix ip and nonce (Raju Kurunkad) -* msgr: xio: improve lane assignment (Vu Pham) -* msgr: xio: sync with accellio v1.4 (Vu Pham) -* msgr: xio: misc fixes (#10735 Matt Benjamin, Kefu Chai, Danny Al-Gaaf, Raju Kurunkad, Vu Pham, Casey Bodley) -* msg: unit tests (Haomai Wang) -* objectcacher: misc bug fixes (Jianpeng Ma) -* osd: add latency perf counters for tier operations (Xinze Chi) -* osd: add misc perfcounters (Xinze Chi) -* osd: add simple sleep injection in recovery (Sage Weil) -* osd: allow SEEK_HOLE/SEEK_DATA for sparse read (Zhiqiang Wang) -* osd: avoid dup omap sets for in pg metadata (Sage Weil) -* osd: avoid multiple hit set insertions (Zhiqiang Wang) -* osd: avoid transaction append in some cases (Sage Weil) -* osd: break PG removal into multiple iterations (#10198 Guang Yang) -* osd: cache proxy-write support (Zhiqiang Wang, Samuel Just) -* osd: check scrub state when handling map (Jianpeng Ma) -* osd: clean up some constness, privateness (Kefu Chai) -* osd: clean up temp object if promotion fails (Jianpeng Ma) -* osd: configure promotion based on write recency (Zhiqiang Wang) -* osd: constrain collections to meta and PGs (normal and temp) (Sage Weil) -* osd: don't send dup MMonGetOSDMap requests (Sage Weil, Kefu Chai) -* osd: EIO injection (David Zhang) -* osd: elminiate txn apend, ECSubWrite copy (Samuel Just) -* osd: erasure-code: drop entries according to LRU (Andreas-Joachim Peters) -* osd: erasure-code: fix SHEC floating point bug (#12936 Loic Dachary) -* osd: erasure-code: update to ISA-L 2.14 (Yuan Zhou) -* osd: filejournal: cleanup (David Zafman) -* osd: filestore: clone using splice (Jianpeng Ma) -* osd: filestore: fix recursive lock (Xinxin Shu) -* osd: fix check_for_full (Henry Chang) -* osd: fix dirty accounting in make_writeable (Zhiqiang Wang) -* osd: fix dup promotion lost op bug (Zhiqiang Wang) -* osd: fix endless repair when object is unrecoverable (Jianpeng Ma, Kefu Chai) -* osd: fix hitset object naming to use GMT (Kefu Chai) -* osd: fix misc memory leaks (Sage Weil) -* osd: fix negative degraded stats during backfill (Guang Yang) -* osd: fix osdmap dump of blacklist items (John Spray) -* osd: fix peek_queue locking in FileStore (Xinze Chi) -* osd: fix pg resurrection (#11429 Samuel Just) -* osd: fix promotion vs full cache tier (Samuel Just) -* osd: fix replay requeue when pg is still activating (#13116 Samuel Just) -* osd: fix scrub stat bugs (Sage Weil, Samuel Just) -* osd: fix snap flushing from cache tier (again) (#11787 Samuel Just) -* osd: fix snap handling on promotion (#11296 Sam Just) -* osd: fix temp-clearing (David Zafman) -* osd: force promotion for ops EC can't handle (Zhiqiang Wang) -* osd: handle log split with overlapping entries (#11358 Samuel Just) -* osd: ignore non-existent osds in unfound calc (#10976 Mykola Golub) -* osd: improve behavior on machines with large memory pages (Steve Capper) -* osd: include a temp namespace within each collection/pgid (Sage Weil) -* osd: increase default max open files (Owen Synge) -* osd: keyvaluestore: misc fixes (Varada Kari) -* osd: low and high speed flush modes (Mingxin Liu) -* osd: make suicide timeouts individually configurable (Samuel Just) -* osd: merge multiple setattr calls into a setattrs call (Xinxin Shu) -* osd: misc fixes (Ning Yao, Kefu Chai, Xinze Chi, Zhiqiang Wang, Jianpeng Ma) -* osd: move scrub in OpWQ (Samuel Just) -* osd: newstore prototype (Sage Weil) -* osd: ObjectStore internal API refactor (Sage Weil) -* osd: peer_features includes self (David Zafman) -* osd: pool size change triggers new interval (#11771 Samuel Just) -* osd: prepopulate needs_recovery_map when only one peer has missing (#9558 Guang Yang) -* osd: randomize scrub times (#10973 Kefu Chai) -* osd: recovery, peering fixes (#11687 Samuel Just) -* osd: refactor scrub and digest recording (Sage Weil) -* osd: refuse first write to EC object at non-zero offset (Jianpeng Ma) -* osd: relax reply order on proxy read (#11211 Zhiqiang Wang) -* osd: require firefly features (David Zafman) -* osd: set initial crush weight with more precision (Sage Weil) -* osd: SHEC no longer experimental -* osd: skip promotion for flush/evict op (Zhiqiang Wang) -* osd: stripe over small xattrs to fit in XFS's 255 byte inline limit (Sage Weil, Ning Yao) -* osd: sync object_map on syncfs (Samuel Just) -* osd: take excl lock of op is rw (Samuel Just) -* osd: throttle evict ops (Yunchuan Wen) -* osd: upgrades must pass through hammer (Sage Weil) -* osd: use a temp object for recovery (Sage Weil) -* osd: use blkid to collection partition information (Joseph Handzik) -* osd: use SEEK_HOLE / SEEK_DATA for sparse copy (Xinxin Shu) -* osd: WBThrottle cleanups (Jianpeng Ma) -* osd: write journal header on clean shutdown (Xinze Chi) -* osdc/Objecter: allow per-pool calls to op_cancel_writes (John Spray) -* os/filestore: enlarge getxattr buffer size (Jianpeng Ma) -* pybind: pep8 cleanups (Danny Al-Gaaf) -* pycephfs: many fixes for bindings (Haomai Wang) -* qa: fix filelock_interrupt.py test (Yan, Zheng) -* qa: improve ceph-disk tests (Loic Dachary) -* qa: improve docker build layers (Loic Dachary) -* qa: run-make-check.sh script (Loic Dachary) -* rados: add --striper option to use libradosstriper (#10759 Sebastien Ponce) -* rados: bench: add --no-verify option to improve performance (Piotr Dalek) -* rados bench: misc fixes (Dmitry Yatsushkevich) -* rados: fix error message on failed pool removal (Wido den Hollander) -* radosgw-admin: add 'bucket check' function to repair bucket index (Yehuda Sadeh) -* radosgw-admin: fix subuser modify output (#12286 Guce) -* rados: handle --snapid arg properly (Abhishek Lekshmanan) -* rados: improve bench buffer handling, performance (Piotr Dalek) -* rados: misc bench fixes (Dmitry Yatsushkevich) -* rados: new pool import implementation (John Spray) -* rados: translate errno to string in CLI (#10877 Kefu Chai) -* rbd: accept map options config option (Ilya Dryomov) -* rbd: add disk usage tool (#7746 Jason Dillaman) -* rbd: allow unmapping by spec (Ilya Dryomov) -* rbd: cli: fix arg parsing with --io-pattern (Dmitry Yatsushkevich) -* rbd: deprecate --new-format option (Jason Dillman) -* rbd: fix error messages (#2862 Rajesh Nambiar) -* rbd: fix link issues (Jason Dillaman) -* rbd: improve CLI arg parsing, usage (Ilya Dryomov) -* rbd: rbd-replay-prep and rbd-replay improvements (Jason Dillaman) -* rbd: recognize queue_depth kernel option (Ilya Dryomov) -* rbd: support G and T units for CLI (Abhishek Lekshmanan) -* rbd: update rbd man page (Ilya Dryomov) -* rbd: update xfstests tests (Douglas Fuller) -* rbd: use image-spec and snap-spec in help (Vikhyat Umrao, Ilya Dryomov) -* rest-bench: misc fixes (Shawn Chen) -* rest-bench: support https (#3968 Yuan Zhou) -* rgw: add max multipart upload parts (#12146 Abshishek Dixit) -* rgw: add missing headers to Swift container details (#10666 Ahmad Faheem, Dmytro Iurchenko) -* rgw: add stats to headers for account GET (#10684 Yuan Zhou) -* rgw: add Trasnaction-Id to response (Abhishek Dixit) -* rgw: add X-Timestamp for Swift containers (#10938 Radoslaw Zarzynski) -* rgw: always check if token is expired (#11367 Anton Aksola, Riku Lehto) -* rgw: conversion tool to repair broken multipart objects (#12079 Yehuda Sadeh) -* rgw: document layout of pools and objects (Pete Zaitcev) -* rgw: do not enclose bucket header in quotes (#11860 Wido den Hollander) -* rgw: do not prefetch data for HEAD requests (Guang Yang) -* rgw: do not preserve ACLs when copying object (#12370 Yehuda Sadeh) -* rgw: do not set content-type if length is 0 (#11091 Orit Wasserman) -* rgw: don't clobber bucket/object owner when setting ACLs (#10978 Yehuda Sadeh) -* rgw: don't use end_marker for namespaced object listing (#11437 Yehuda Sadeh) -* rgw: don't use rgw_socket_path if frontend is configured (#11160 Yehuda Sadeh) -* rgw: enforce Content-Length for POST on Swift cont/obj (#10661 Radoslaw Zarzynski) -* rgw: error out if frontend did not send all data (#11851 Yehuda Sadeh) -* rgw: expose the number of unhealthy workers through admin socket (Guang Yang) -* rgw: fail if parts not specified on multipart upload (#11435 Yehuda Sadeh) -* rgw: fix assignment of copy obj attributes (#11563 Yehuda Sadeh) -* rgw: fix broken stats in container listing (#11285 Radoslaw Zarzynski) -* rgw: fix bug in domain/subdomain splitting (Robin H. Johnson) -* rgw: fix casing of Content-Type header (Robin H. Johnson) -* rgw: fix civetweb max threads (#10243 Yehuda Sadeh) -* rgw: fix Connection: header handling (#12298 Wido den Hollander) -* rgw: fix copy metadata, support X-Copied-From for swift (#10663 Radoslaw Zarzynski) -* rgw: fix data corruptions race condition (#11749 Wuxingyi) -* rgw: fix decoding of X-Object-Manifest from GET on Swift DLO (Radslow Rzarzynski) -* rgw: fix GET on swift account when limit == 0 (#10683 Radoslaw Zarzynski) -* rgw: fix handling empty metadata items on Swift container (#11088 Radoslaw Zarzynski) -* rgw: fix JSON response when getting user quota (#12117 Wuxingyi) -* rgw: fix locator for objects starting with _ (#11442 Yehuda Sadeh) -* rgw: fix log rotation (Wuxingyi) -* rgw: fix mulitipart upload in retry path (#11604 Yehuda Sadeh) -* rgw: fix quota enforcement on POST (#11323 Sergey Arkhipov) -* rgw: fix reset_loc (#11974 Yehuda Sadeh) -* rgw: fix return code on missing upload (#11436 Yehuda Sadeh) -* rgw: fix sysvinit script -* rgw: fix sysvinit script w/ multiple instances (Sage Weil, Pavan Rallabhandi) -* rgw: force content_type for swift bucket stats requests (#12095 Orit Wasserman) -* rgw: force content type header on responses with no body (#11438 Orit Wasserman) -* rgw: generate Date header for civetweb (#10873 Radoslaw Zarzynski) -* rgw: generate new object tag when setting attrs (#11256 Yehuda Sadeh) -* rgw: improve content-length env var handling (#11419 Robin H. Johnson) -* rgw: improved support for swift account metadata (Radoslaw Zarzynski) -* rgw: improve handling of already removed buckets in expirer (Radoslaw Rzarzynski) -* rgw: issue aio for first chunk before flush cached data (#11322 Guang Yang) -* rgw: log to /var/log/ceph instead of /var/log/radosgw -* rgw: make init script wait for radosgw to stop (#11140 Dmitry Yatsushkevich) -* rgw: make max put size configurable (#6999 Yuan Zhou) -* rgw: make quota/gc threads configurable (#11047 Guang Yang) -* rgw: make read user buckets backward compat (#10683 Radoslaw Zarzynski) -* rgw: merge manifests properly with prefix override (#11622 Yehuda Sadeh) -* rgw: only scan for objects not in a namespace (#11984 Yehuda Sadeh) -* rgw: orphan detection tool (Yehuda Sadeh) -* rgw: pass in civetweb configurables (#10907 Yehuda Sadeh) -* rgw: rectify 202 Accepted in PUT response (#11148 Radoslaw Zarzynski) -* rgw: remove meta file after deleting bucket (#11149 Orit Wasserman) -* rgw: remove trailing :port from HTTP_HOST header (Sage Weil) -* rgw: return 412 on bad limit when listing buckets (#11613 Yehuda Sadeh) -* rgw: rework X-Trans-Id header to conform with Swift API (Radoslaw Rzarzynski) -* rgw: s3 encoding-type for get bucket (Jeff Weber) -* rgw: send ETag, Last-Modified for swift (#11087 Radoslaw Zarzynski) -* rgw: set content length on container GET, PUT, DELETE, HEAD (#10971, #11036 Radoslaw Zarzynski) -* rgw: set max buckets per user in ceph.conf (Vikhyat Umrao) -* rgw: shard work over multiple librados instances (Pavan Rallabhandi) -* rgw: support end marker on swift container GET (#10682 Radoslaw Zarzynski) -* rgw: support for Swift expiration API (Radoslaw Rzarzynski, Yehuda Sadeh) -* rgw: swift: allow setting attributes with COPY (#10662 Ahmad Faheem, Dmytro Iurchenko) -* rgw: swift: do not override sent content type (#12363 Orit Wasserman) -* rgw: swift: enforce Content-Type in response (#12157 Radoslaw Zarzynski) -* rgw: swift: fix account listing (#11501 Radoslaw Zarzynski) -* rgw: swift: fix metadata handling on copy (#10645 Radoslaw Zarzynski) -* rgw: swift: send Last-Modified header (#10650 Radoslaw Zarzynski) -* rgw: swift: set Content-Length for account GET (#12158 Radoslav Zarzynski) -* rgw: swift: set content-length on keystone tokens (#11473 Herv Rousseau) -* rgw: update keystone cache with token info (#11125 Yehuda Sadeh) -* rgw: update to latest civetweb, enable config for IPv6 (#10965 Yehuda Sadeh) -* rgw: use attrs from source bucket on copy (#11639 Javier M. Mellid) -* rgw: use correct oid for gc chains (#11447 Yehuda Sadeh) -* rgw: user rm is idempotent (Orit Wasserman) -* rgw: use unique request id for civetweb (#10295 Orit Wasserman) -* rocksdb: add perf counters for get/put latency (Xinxin Shu) -* rocksdb, leveldb: fix compact_on_mount (Xiaoxi Chen) -* rocksdb: pass options as single string (Xiaoxi Chen) -* rocksdb: update to latest (Xiaoxi Chen) -* rpm: add suse firewall files (Tim Serong) -* rpm: always rebuild and install man pages for rpm (Owen Synge) -* rpm: loosen ceph-test dependencies (Ken Dreyer) -* rpm: many spec file fixes (Owen Synge, Ken Dreyer) -* rpm: misc fixes (Boris Ranto, Owen Synge, Ken Dreyer, Ira Cooper) -* rpm: misc systemd and SUSE fixes (Owen Synge, Nathan Cutler) -* selinux policy (Boris Ranto, Milan Broz) -* systemd: logrotate fixes (Tim Serong, Lars Marowsky-Bree, Nathan Cutler) -* systemd: many fixes (Sage Weil, Owen Synge, Boris Ranto, Dan van der Ster) -* systemd: run daemons as user ceph -* sysvinit compat: misc fixes (Owen Synge) -* test: misc fs test improvements (John Spray, Loic Dachary) -* test: python tests, linter cleanup (Alfredo Deza) -* tests: fixes for rbd xstests (Douglas Fuller) -* tests: fix tiering health checks (Loic Dachary) -* tests for low-level performance (Haomai Wang) -* tests: many ec non-regression improvements (Loic Dachary) -* tests: many many ec test improvements (Loic Dachary) -* upstart: throttle restarts (#11798 Sage Weil, Greg Farnum) - - -v9.1.0 Infernalis release candidate -=================================== - -This is the first Infernalis release candidate. There have been some -major changes since Hammer, and the upgrade process is non-trivial. -Please read carefully. - -Getting the release candidate ------------------------------ - -The v9.1.0 packages are pushed to the development release repositories:: - - http://download.ceph.com/rpm-testing - http://download.ceph.com/debian-testing - -For for info, see:: - - http://docs.ceph.com/docs/master/install/get-packages/ - -Or install with ceph-deploy via:: - - ceph-deploy install --testing HOST - - -Known issues ------------- - -* librbd and librados ABI compatibility is broken. Be careful - installing this RC on client machines (e.g., those running qemu). - It will be fixed in the final v9.2.0 release. - - -Major Changes from Hammer -------------------------- - -- *General*: - - * Ceph daemons are now managed via systemd (with the exception of - Ubuntu Trusty, which still uses upstart). - * Ceph daemons run as 'ceph' user instead of root. - * On Red Hat distros, there is also an SELinux policy. - -- *RADOS*: - - * The RADOS cache tier can now proxy write operations to the base - tier, allowing writes to be handled without forcing migration of - an object into the cache. - * The SHEC erasure coding support is no longer flagged as - experimental. SHEC trades some additional storage space for faster - repair. - * There is now a unified queue (and thus prioritization) of client - IO, scrubbing, and snapshot trimming. - * There have been many improvements to low-level repair tooling - (ceph-objectstore-tool). - * The internal ObjectStore API has been significantly cleaned up in order - to facilitate new storage backends like NewStore. - -- *RGW*: - - * The Swift API now supports object expiration. - * There are many Swift API compatibility improvements. - -- *RBD*: - - * The ``rbd du`` command shows actual usage (quickly, when - object-map is enabled). - * The object-map feature has seen many stability improvements. - * Object-map and exclusive-lock features can be enabled or disabled - dynamically. - * You can now store user metadata and set persistent librbd options - associated with individual images. - * The new deep-flatten features allows flattening of a clone and all - of its snapshots. (Previously snapshots could not be flattened.) - * The export-diff command is now faster (it uses aio). There is also - a new fast-diff feature. - * The --size argument can be specified with a suffix for units - (e.g., ``--size 64G``). - * There is a new ``rbd status`` command that, for now, shows who has - the image open/mapped. - -- *CephFS*: - - * You can now rename snapshots. - * There have been ongoing improvements around administration, diagnostics, - and the check and repair tools. - * The caching and revocation of client cache state due to unused - inodes has been dramatically improved. - * The ceph-fuse client behaves better on 32-bit hosts. - -Distro compatibility --------------------- - -We have decided to drop support for many older distributions so that we can -move to a newer compiler toolchain (e.g., C++11). Although it is still possible -to build Ceph on older distributions by installing backported development tools, -we are not building and publishing release packages for them on ceph.com. - -In particular, - -* CentOS 7 or later; we have dropped support for CentOS 6 (and other - RHEL 6 derivatives, like Scientific Linux 6). -* Debian Jessie 8.x or later; Debian Wheezy 7.x's g++ has incomplete - support for C++11 (and no systemd). -* Ubuntu Trusty 14.04 or later; Ubuntu Precise 12.04 is no longer - supported. -* Fedora 22 or later. - -Upgrading from Firefly ----------------------- - -Upgrading directly from Firefly v0.80.z is not possible. All clusters -must first upgrade to Hammer v0.94.4 or a later v0.94.z release; only -then is it possible to do online upgrade to Infernalis 9.2.z. - -User can upgrade to latest hammer v0.94.z -from gitbuilder with(also refer the hammer release notes for more details):: - - ceph-deploy install --release hammer HOST - - -Upgrading from Hammer ---------------------- - -* All cluster nodes must first upgrade to Hammer v0.94.4 or a later v0.94.z release; only - then is it possible to do online upgrade to Infernalis 9.2.z. - -* For all distributions that support systemd (CentOS 7, Fedora, Debian - Jessie 8.x, OpenSUSE), ceph daemons are now managed using native systemd - files instead of the legacy sysvinit scripts. For example:: - - systemctl start ceph.target # start all daemons - systemctl status ceph-osd@12 # check status of osd.12 - - The main notable distro that is *not* yet using systemd is Ubuntu trusty - 14.04. (The next Ubuntu LTS, 16.04, will use systemd instead of upstart.) - -* Ceph daemons now run as user and group ``ceph`` by default. The - ceph user has a static UID assigned by Fedora and Debian (also used - by derivative distributions like RHEL/CentOS and Ubuntu). On SUSE - the ceph user will currently get a dynamically assigned UID when the - user is created. - - If your systems already have a ceph user, the package upgrade - process will usually fail with an error. We suggest you first - remove or rename the existing 'ceph' user and then upgrade. - - When upgrading, administrators have two options: - - #. Add the following line to ``ceph.conf`` on all hosts:: - - setuser match path = /var/lib/ceph/$type/$cluster-$id - - This will make the Ceph daemons run as root (i.e., not drop - privileges and switch to user ceph) if the daemon's data - directory is still owned by root. Newly deployed daemons will - be created with data owned by user ceph and will run with - reduced privileges, but upgraded daemons will continue to run as - root. - - #. Fix the data ownership during the upgrade. This is the preferred option, - but is more work. The process for each host would be to: - - #. Upgrade the ceph package. This creates the ceph user and group. For - example:: - - ceph-deploy install --stable infernalis HOST - - #. Stop the daemon(s):: - - service ceph stop # fedora, centos, rhel, debian - stop ceph-all # ubuntu - - #. Fix the ownership:: - - chown -R ceph:ceph /var/lib/ceph - chown -R ceph:ceph /var/log/ceph - - #. Restart the daemon(s):: - - start ceph-all # ubuntu - systemctl start ceph.target # debian, centos, fedora, rhel - -* The on-disk format for the experimental KeyValueStore OSD backend has - changed. You will need to remove any OSDs using that backend before you - upgrade any test clusters that use it. - -Upgrade notes -------------- - -* When a pool quota is reached, librados operations now block indefinitely, - the same way they do when the cluster fills up. (Previously they would return - -ENOSPC). By default, a full cluster or pool will now block. If your - librados application can handle ENOSPC or EDQUOT errors gracefully, you can - get error returns instead by using the new librados OPERATION_FULL_TRY flag. - -Notable changes ---------------- - -NOTE: These notes are somewhat abbreviated while we find a less -time-consuming process for generating them. - -* build: C++11 now supported -* build: many cmake improvements -* build: OSX build fixes (Yan, Zheng) -* build: remove rest-bench -* ceph-disk: many fixes (Loic Dachary) -* ceph-disk: support for multipath devices (Loic Dachary) -* ceph-fuse: mostly behave on 32-bit hosts (Yan, Zheng) -* ceph-objectstore-tool: many improvements (David Zafman) -* common: bufferlist performance tuning (Piotr Dalek, Sage Weil) -* common: make mutex more efficient -* common: some async compression infrastructure (Haomai Wang) -* librados: add FULL_TRY and FULL_FORCE flags for dealing with full clusters or pools (Sage Weil) -* librados: fix notify completion race (#13114 Sage Weil) -* librados, libcephfs: randomize client nonces (Josh Durgin) -* librados: pybind: fix binary omap values (Robin H. Johnson) -* librbd: fix reads larger than the cache size (Lu Shi) -* librbd: metadata filter fixes (Haomai Wang) -* librbd: use write_full when possible (Zhiqiang Wang) -* mds: avoid emitting cap warnigns before evicting session (John Spray) -* mds: fix expected holes in journal objects (#13167 Yan, Zheng) -* mds: fix SnapServer crash on deleted pool (John Spray) -* mds: many fixes (Yan, Zheng, John Spray, Greg Farnum) -* mon: add cache over MonitorDBStore (Kefu Chai) -* mon: 'ceph osd metadata' can dump all osds (Haomai Wang) -* mon: detect kv backend failures (Sage Weil) -* mon: fix CRUSH map test for new pools (Sage Weil) -* mon: fix min_last_epoch_clean tracking (Kefu Chai) -* mon: misc scaling fixes (Sage Weil) -* mon: streamline session handling, fix memory leaks (Sage Weil) -* mon: upgrades must pass through hammer (Sage Weil) -* msg/async: many fixes (Haomai Wang) -* osd: cache proxy-write support (Zhiqiang Wang, Samuel Just) -* osd: configure promotion based on write recency (Zhiqiang Wang) -* osd: don't send dup MMonGetOSDMap requests (Sage Weil, Kefu Chai) -* osd: erasure-code: fix SHEC floating point bug (#12936 Loic Dachary) -* osd: erasure-code: update to ISA-L 2.14 (Yuan Zhou) -* osd: fix hitset object naming to use GMT (Kefu Chai) -* osd: fix misc memory leaks (Sage Weil) -* osd: fix peek_queue locking in FileStore (Xinze Chi) -* osd: fix promotion vs full cache tier (Samuel Just) -* osd: fix replay requeue when pg is still activating (#13116 Samuel Just) -* osd: fix scrub stat bugs (Sage Weil, Samuel Just) -* osd: force promotion for ops EC can't handle (Zhiqiang Wang) -* osd: improve behavior on machines with large memory pages (Steve Capper) -* osd: merge multiple setattr calls into a setattrs call (Xinxin Shu) -* osd: newstore prototype (Sage Weil) -* osd: ObjectStore internal API refactor (Sage Weil) -* osd: SHEC no longer experimental -* osd: throttle evict ops (Yunchuan Wen) -* osd: upgrades must pass through hammer (Sage Weil) -* osd: use SEEK_HOLE / SEEK_DATA for sparse copy (Xinxin Shu) -* rbd: rbd-replay-prep and rbd-replay improvements (Jason Dillaman) -* rgw: expose the number of unhealthy workers through admin socket (Guang Yang) -* rgw: fix casing of Content-Type header (Robin H. Johnson) -* rgw: fix decoding of X-Object-Manifest from GET on Swift DLO (Radslow Rzarzynski) -* rgw: fix sysvinit script -* rgw: fix sysvinit script w/ multiple instances (Sage Weil, Pavan Rallabhandi) -* rgw: improve handling of already removed buckets in expirer (Radoslaw Rzarzynski) -* rgw: log to /var/log/ceph instead of /var/log/radosgw -* rgw: rework X-Trans-Id header to be conform with Swift API (Radoslaw Rzarzynski) -* rgw: s3 encoding-type for get bucket (Jeff Weber) -* rgw: set max buckets per user in ceph.conf (Vikhyat Umrao) -* rgw: support for Swift expiration API (Radoslaw Rzarzynski, Yehuda Sadeh) -* rgw: user rm is idempotent (Orit Wasserman) -* selinux policy (Boris Ranto, Milan Broz) -* systemd: many fixes (Sage Weil, Owen Synge, Boris Ranto, Dan van der Ster) -* systemd: run daemons as user ceph - - -v9.0.3 -====== - -This is the second to last batch of development work for the -Infernalis cycle. The most intrusive change is an internal (non -user-visible) change to the OSD's ObjectStore interface. Many fixes and -improvements elsewhere across RGW, RBD, and another big pile of CephFS -scrub/repair improvements. - -Upgrading ---------- - -* The return code for librbd's rbd_aio_read and Image::aio_read API methods no - longer returns the number of bytes read upon success. Instead, it returns 0 - upon success and a negative value upon failure. - -* 'ceph scrub', 'ceph compact' and 'ceph sync force' are now deprecated. Users - should instead use 'ceph mon scrub', 'ceph mon compact' and - 'ceph mon sync force'. - -* 'ceph mon_metadata' should now be used as 'ceph mon metadata'. - -* The `--dump-json` option of "osdmaptool" is replaced by `--dump json`. - -* The commands of 'pg ls-by-{pool,primary,osd}' and 'pg ls' now take 'recovering' - instead of 'recovery' to include the recovering pgs in the listed pgs. - - -Notable Changes ---------------- - - * autotools: fix out of tree build (Krxysztof Kosinski) - * autotools: improve make check output (Loic Dachary) - * buffer: add invalidate_crc() (Piotr Dalek) - * buffer: fix zero bug (#12252 Haomai Wang) - * build: fix junit detection on Fedora 22 (Ira Cooper) - * ceph-disk: install pip > 6.1 (#11952 Loic Dachary) - * cephfs-data-scan: many additions, improvements (John Spray) - * ceph: improve error output for 'tell' (#11101 Kefu Chai) - * ceph-objectstore-tool: misc improvements (David Zafman) - * ceph-objectstore-tool: refactoring and cleanup (John Spray) - * ceph_test_rados: test pipelined reads (Zhiqiang Wang) - * common: fix bit_vector extent calc (#12611 Jason Dillaman) - * common: make work queue addition/removal thread safe (#12662 Jason Dillaman) - * common: optracker improvements (Zhiqiang Wang, Jianpeng Ma) - * crush: add --check to validate dangling names, max osd id (Kefu Chai) - * crush: cleanup, sync with kernel (Ilya Dryomov) - * crush: fix subtree base weight on adjust_subtree_weight (#11855 Sage Weil) - * crypo: fix NSS leak (Jason Dillaman) - * crypto: fix unbalanced init/shutdown (#12598 Zheng Yan) - * doc: misc updates (Kefu Chai, Owen Synge, Gael Fenet-Garde, Loic Dachary, Yannick Atchy-Dalama, Jiaying Ren, Kevin Caradant, Robert Maxime, Nicolas Yong, Germain Chipaux, Arthur Gorjux, Gabriel Sentucq, Clement Lebrun, Jean-Remi Deveaux, Clair Massot, Robin Tang, Thomas Laumondais, Jordan Dorne, Yuan Zhou, Valentin Thomas, Pierre Chaumont, Benjamin Troquereau, Benjamin Sesia, Vikhyat Umrao) - * erasure-code: cleanup (Kefu Chai) - * erasure-code: improve tests (Loic Dachary) - * erasure-code: shec: fix recovery bugs (Takanori Nakao, Shotaro Kawaguchi) - * libcephfs: add pread, pwrite (Jevon Qiao) - * libcephfs,ceph-fuse: cache cleanup (Zheng Yan) - * librados: add src_fadvise_flags for copy-from (Jianpeng Ma) - * librados: respect default_crush_ruleset on pool_create (#11640 Yuan Zhou) - * librbd: fadvise for copy, export, import (Jianpeng Ma) - * librbd: handle NOCACHE fadvise flag (Jinapeng Ma) - * librbd: optionally disable allocation hint (Haomai Wang) - * librbd: prevent race between resize requests (#12664 Jason Dillaman) - * log: fix data corruption race resulting from log rotation (#12465 Samuel Just) - * mds: expose frags via asok (John Spray) - * mds: fix setting entire file layout in one setxattr (John Spray) - * mds: fix shutdown (John Spray) - * mds: handle misc corruption issues (John Spray) - * mds: misc fixes (Jianpeng Ma, Dan van der Ster, Zhang Zhi) - * mds: misc snap fixes (Zheng Yan) - * mds: store layout on header object (#4161 John Spray) - * misc performance and cleanup (Nathan Cutler, Xinxin Shu) - * mon: add NOFORWARD, OBSOLETE, DEPRECATE flags for mon commands (Joao Eduardo Luis) - * mon: add PG count to 'ceph osd df' output (Michal Jarzabek) - * mon: clean up, reorg some mon commands (Joao Eduardo Luis) - * mon: disallow >2 tiers (#11840 Kefu Chai) - * mon: fix log dump crash when debugging (Mykola Golub) - * mon: fix metadata update race (Mykola Golub) - * mon: fix refresh (#11470 Joao Eduardo Luis) - * mon: make blocked op messages more readable (Jianpeng Ma) - * mon: only send mon metadata to supporting peers (Sage Weil) - * mon: periodic background scrub (Joao Eduardo Luis) - * mon: prevent pgp_num > pg_num (#12025 Xinxin Shu) - * mon: reject large max_mds values (#12222 John Spray) - * msgr: add ceph_perf_msgr tool (Hoamai Wang) - * msgr: async: fix seq handling (Haomai Wang) - * msgr: xio: fastpath improvements (Raju Kurunkad) - * msgr: xio: sync with accellio v1.4 (Vu Pham) - * osd: clean up temp object if promotion fails (Jianpeng Ma) - * osd: constrain collections to meta and PGs (normal and temp) (Sage Weil) - * osd: filestore: clone using splice (Jianpeng Ma) - * osd: filestore: fix recursive lock (Xinxin Shu) - * osd: fix dup promotion lost op bug (Zhiqiang Wang) - * osd: fix temp-clearing (David Zafman) - * osd: include a temp namespace within each collection/pgid (Sage Weil) - * osd: low and high speed flush modes (Mingxin Liu) - * osd: peer_features includes self (David Zafman) - * osd: recovery, peering fixes (#11687 Samuel Just) - * osd: require firefly features (David Zafman) - * osd: set initial crush weight with more precision (Sage Weil) - * osd: use a temp object for recovery (Sage Weil) - * osd: use blkid to collection partition information (Joseph Handzik) - * rados: add --striper option to use libradosstriper (#10759 Sebastien Ponce) - * radosgw-admin: fix subuser modify output (#12286 Guce) - * rados: handle --snapid arg properly (Abhishek Lekshmanan) - * rados: improve bench buffer handling, performance (Piotr Dalek) - * rados: new pool import implementation (John Spray) - * rbd: fix link issues (Jason Dillaman) - * rbd: improve CLI arg parsing, usage (Ilya Dryomov) - * rbd: recognize queue_depth kernel option (Ilya Dryomov) - * rbd: support G and T units for CLI (Abhishek Lekshmanan) - * rbd: use image-spec and snap-spec in help (Vikhyat Umrao, Ilya Dryomov) - * rest-bench: misc fixes (Shawn Chen) - * rest-bench: support https (#3968 Yuan Zhou) - * rgw: add max multipart upload parts (#12146 Abshishek Dixit) - * rgw: add Trasnaction-Id to response (Abhishek Dixit) - * rgw: document layout of pools and objects (Pete Zaitcev) - * rgw: do not preserve ACLs when copying object (#12370 Yehuda Sadeh) - * rgw: fix Connection: header handling (#12298 Wido den Hollander) - * rgw: fix data corruptions race condition (#11749 Wuxingyi) - * rgw: fix JSON response when getting user quota (#12117 Wuxingyi) - * rgw: force content_type for swift bucket stats requests (#12095 Orit Wasserman) - * rgw: improved support for swift account metadata (Radoslaw Zarzynski) - * rgw: make max put size configurable (#6999 Yuan Zhou) - * rgw: orphan detection tool (Yehuda Sadeh) - * rgw: swift: do not override sent content type (#12363 Orit Wasserman) - * rgw: swift: set Content-Length for account GET (#12158 Radoslav Zarzynski) - * rpm: always rebuild and install man pages for rpm (Owen Synge) - * rpm: misc fixes (Boris Ranto, Owen Synge, Ken Dreyer, Ira Cooper) - * systemd: logrotate fixes (Tim Seron, Lars Marowsky-Bree, Nathan Cutler) - * sysvinit compat: misc fixes (Owen Synge) - * test: misc fs test improvements (John Spray, Loic Dachary) - * test: python tests, linter cleanup (Alfredo Deza) - - -v9.0.2 -====== - -This development release features more of the OSD work queue -unification, randomized osd scrub times, a huge pile of librbd fixes, -more MDS repair and snapshot fixes, and a significant amount of work -on the tests and build infrastructure. - -Notable Changes ---------------- - -* buffer: some cleanup (Michal Jarzabek) -* build: cmake: fix nss linking (Danny Al-Gaaf) -* build: cmake: misc fixes (Orit Wasserman, Casey Bodley) -* build: install-deps: misc fixes (Loic Dachary) -* build: make_dist_tarball.sh (Sage Weil) -* ceph-detect-init: added Linux Mint (Michal Jarzabek) -* ceph-detect-init: robust init system detection (Owen Synge, Loic Dachary) -* ceph-disk: ensure 'zap' only operates on a full disk (#11272 Loic Dachary) -* ceph-disk: misc fixes to respect init system (Loic Dachary, Owen Synge) -* ceph-disk: support NVMe device partitions (#11612 Ilja Slepnev) -* ceph: fix 'df' units (Zhe Zhang) -* ceph: fix parsing in interactive cli mode (#11279 Kefu Chai) -* ceph-objectstore-tool: many many changes (David Zafman) -* ceph-post-file: misc fixes (Joey McDonald, Sage Weil) -* client: avoid sending unnecessary FLUSHSNAP messages (Yan, Zheng) -* client: exclude setfilelock when calculating oldest tid (Yan, Zheng) -* client: fix error handling in check_pool_perm (John Spray) -* client: fsync waits only for inode's caps to flush (Yan, Zheng) -* client: invalidate kernel dcache when cache size exceeds limits (Yan, Zheng) -* client: make fsync wait for unsafe dir operations (Yan, Zheng) -* client: pin lookup dentry to avoid inode being freed (Yan, Zheng) -* common: detect overflow of int config values (#11484 Kefu Chai) -* common: fix json parsing of utf8 (#7387 Tim Serong) -* common: fix leak of pthread_mutexattr (#11762 Ketor Meng) -* crush: respect default replicated ruleset config on map creation (Ilya Dryomov) -* deb, rpm: move ceph-objectstore-tool to ceph (Ken Dreyer) -* doc: man page updates (Kefu Chai) -* doc: misc updates (#11396 Nilamdyuti, Francois Lafont, Ken Dreyer, Kefu Chai) -* init-radosgw: merge with sysv version; fix enumeration (Sage Weil) -* librados: add config observer (Alistair Strachan) -* librbd: add const for single-client-only features (Josh Durgin) -* librbd: add deep-flatten operation (Jason Dillaman) -* librbd: avoid blocking aio API methods (#11056 Jason Dillaman) -* librbd: fix fast diff bugs (#11553 Jason Dillaman) -* librbd: fix image format detection (Zhiqiang Wang) -* librbd: fix lock ordering issue (#11577 Jason Dillaman) -* librbd: flatten/copyup fixes (Jason Dillaman) -* librbd: lockdep, helgrind validation (Jason Dillaman, Josh Durgin) -* librbd: only update image flags while hold exclusive lock (#11791 Jason Dillaman) -* librbd: return result code from close (#12069 Jason Dillaman) -* librbd: tolerate old osds when getting image metadata (#11549 Jason Dillaman) -* mds: do not add snapped items to bloom filter (Yan, Zheng) -* mds: fix handling for missing mydir dirfrag (#11641 John Spray) -* mds: fix rejoin (Yan, Zheng) -* mds: fix stra reintegration (Yan, Zheng) -* mds: fix suicide beason (John Spray) -* mds: misc repair improvements (John Spray) -* mds: misc snapshot fixes (Yan, Zheng) -* mds: respawn instead of suicide on blacklist (John Spray) -* misc coverity fixes (Danny Al-Gaaf) -* mon: add 'mon_metadata <id>' command (Kefu Chai) -* mon: add 'node ls ...' command (Kefu Chai) -* mon: disallow ec pools as tiers (#11650 Samuel Just) -* mon: fix mds beacon replies (#11590 Kefu Chai) -* mon: fix 'pg ls' sort order, state names (#11569 Kefu Chai) -* mon: normalize erasure-code profile for storage and comparison (Loic Dachary) -* mon: optionally specify osd id on 'osd create' (Mykola Golub) -* mon: 'osd tree' fixes (Kefu Chai) -* mon: prevent pool with snapshot state from being used as a tier (#11493 Sage Weil) -* mon: refine check_remove_tier checks (#11504 John Spray) -* mon: remove spurious who arg from 'mds rm ...' (John Spray) -* msgr: async: misc fixes (Haomai Wang) -* msgr: xio: fix ip and nonce (Raju Kurunkad) -* msgr: xio: improve lane assignment (Vu Pham) -* msgr: xio: misc fixes (Vu Pham, Cosey Bodley) -* osd: avoid transaction append in some cases (Sage Weil) -* osdc/Objecter: allow per-pool calls to op_cancel_writes (John Spray) -* osd: elminiate txn apend, ECSubWrite copy (Samuel Just) -* osd: filejournal: cleanup (David Zafman) -* osd: fix check_for_full (Henry Chang) -* osd: fix dirty accounting in make_writeable (Zhiqiang Wang) -* osd: fix osdmap dump of blacklist items (John Spray) -* osd: fix snap flushing from cache tier (again) (#11787 Samuel Just) -* osd: fix snap handling on promotion (#11296 Sam Just) -* osd: handle log split with overlapping entries (#11358 Samuel Just) -* osd: keyvaluestore: misc fixes (Varada Kari) -* osd: make suicide timeouts individually configurable (Samuel Just) -* osd: move scrub in OpWQ (Samuel Just) -* osd: pool size change triggers new interval (#11771 Samuel Just) -* osd: randomize scrub times (#10973 Kefu Chai) -* osd: refactor scrub and digest recording (Sage Weil) -* osd: refuse first write to EC object at non-zero offset (Jianpeng Ma) -* osd: stripe over small xattrs to fit in XFS's 255 byte inline limit (Sage Weil, Ning Yao) -* osd: sync object_map on syncfs (Samuel Just) -* osd: take excl lock of op is rw (Samuel Just) -* osd: WBThrottle cleanups (Jianpeng Ma) -* pycephfs: many fixes for bindings (Haomai Wang) -* rados: bench: add --no-verify option to improve performance (Piotr Dalek) -* rados: misc bench fixes (Dmitry Yatsushkevich) -* rbd: add disk usage tool (#7746 Jason Dillaman) -* rgw: alwasy check if token is expired (#11367 Anton Aksola, Riku Lehto) -* rgw: conversion tool to repair broken multipart objects (#12079 Yehuda Sadeh) -* rgw: do not enclose bucket header in quotes (#11860 Wido den Hollander) -* rgw: error out if frontend did not send all data (#11851 Yehuda Sadeh) -* rgw: fix assignment of copy obj attributes (#11563 Yehuda Sadeh) -* rgw: fix reset_loc (#11974 Yehuda Sadeh) -* rgw: improve content-length env var handling (#11419 Robin H. Johnson) -* rgw: only scan for objects not in a namespace (#11984 Yehuda Sadeh) -* rgw: remove trailing :port from HTTP_HOST header (Sage Weil) -* rgw: shard work over multiple librados instances (Pavan Rallabhandi) -* rgw: swift: enforce Content-Type in response (#12157 Radoslaw Zarzynski) -* rgw: use attrs from source bucket on copy (#11639 Javier M. Mellid) -* rocksdb: pass options as single string (Xiaoxi Chen) -* rpm: many spec file fixes (Owen Synge, Ken Dreyer) -* tests: fixes for rbd xstests (Douglas Fuller) -* tests: fix tiering health checks (Loic Dachary) -* tests for low-level performance (Haomai Wang) -* tests: many ec non-regression improvements (Loic Dachary) -* tests: many many ec test improvements (Loic Dachary) -* upstart: throttle restarts (#11798 Sage Weil, Greg Farnum) - - -v9.0.1 -====== - -This development release is delayed a bit due to tooling changes in the build -environment. As a result the next one (v9.0.2) will have a bit more work than -is usual. - -Highlights here include lots of RGW Swift fixes, RBD feature work -surrounding the new object map feature, more CephFS snapshot fixes, -and a few important CRUSH fixes. - -Notable Changes ---------------- - -* auth: cache/reuse crypto lib key objects, optimize msg signature check (Sage Weil) -* build: allow tcmalloc-minimal (Thorsten Behrens) -* build: do not build ceph-dencoder with tcmalloc (#10691 Boris Ranto) -* build: fix pg ref disabling (William A. Kennington III) -* build: install-deps.sh improvements (Loic Dachary) -* build: misc fixes (Boris Ranto, Ken Dreyer, Owen Synge) -* ceph-authtool: fix return code on error (Gerhard Muntingh) -* ceph-disk: fix zap sgdisk invocation (Owen Synge, Thorsten Behrens) -* ceph-disk: pass --cluster arg on prepare subcommand (Kefu Chai) -* ceph-fuse, libcephfs: drop inode when rmdir finishes (#11339 Yan, Zheng) -* ceph-fuse,libcephfs: fix uninline (#11356 Yan, Zheng) -* ceph-monstore-tool: fix store-copy (Huangjun) -* common: add perf counter descriptions (Alyona Kiseleva) -* common: fix throttle max change (Henry Chang) -* crush: fix crash from invalid 'take' argument (#11602 Shiva Rkreddy, Sage Weil) -* crush: fix divide-by-2 in straw2 (#11357 Yann Dupont, Sage Weil) -* deb: fix rest-bench-dbg and ceph-test-dbg dependendies (Ken Dreyer) -* doc: document region hostnames (Robin H. Johnson) -* doc: update release schedule docs (Loic Dachary) -* init-radosgw: run radosgw as root (#11453 Ken Dreyer) -* librados: fadvise flags per op (Jianpeng Ma) -* librbd: allow additional metadata to be stored with the image (Haomai Wang) -* librbd: better handling for dup flatten requests (#11370 Jason Dillaman) -* librbd: cancel in-flight ops on watch error (#11363 Jason Dillaman) -* librbd: default new images to format 2 (#11348 Jason Dillaman) -* librbd: fast diff implementation that leverages object map (Jason Dillaman) -* librbd: fix snapshot creation when other snap is active (#11475 Jason Dillaman) -* librbd: new diff_iterate2 API (Jason Dillaman) -* librbd: object map rebuild support (Jason Dillaman) -* logrotate.d: prefer service over invoke-rc.d (#11330 Win Hierman, Sage Weil) -* mds: avoid getting stuck in XLOCKDONE (#11254 Yan, Zheng) -* mds: fix integer truncateion on large client ids (Henry Chang) -* mds: many snapshot and stray fixes (Yan, Zheng) -* mds: persist completed_requests reliably (#11048 John Spray) -* mds: separate safe_pos in Journaler (#10368 John Spray) -* mds: snapshot rename support (#3645 Yan, Zheng) -* mds: warn when clients fail to advance oldest_client_tid (#10657 Yan, Zheng) -* misc cleanups and fixes (Danny Al-Gaaf) -* mon: fix average utilization calc for 'osd df' (Mykola Golub) -* mon: fix variance calc in 'osd df' (Sage Weil) -* mon: improve callout to crushtool (Mykola Golub) -* mon: prevent bucket deletion when referenced by a crush rule (#11602 Sage Weil) -* mon: prime pg_temp when CRUSH map changes (Sage Weil) -* monclient: flush_log (John Spray) -* msgr: async: many many fixes (Haomai Wang) -* msgr: simple: fix clear_pipe (#11381 Haomai Wang) -* osd: add latency perf counters for tier operations (Xinze Chi) -* osd: avoid multiple hit set insertions (Zhiqiang Wang) -* osd: break PG removal into multiple iterations (#10198 Guang Yang) -* osd: check scrub state when handling map (Jianpeng Ma) -* osd: fix endless repair when object is unrecoverable (Jianpeng Ma, Kefu Chai) -* osd: fix pg resurrection (#11429 Samuel Just) -* osd: ignore non-existent osds in unfound calc (#10976 Mykola Golub) -* osd: increase default max open files (Owen Synge) -* osd: prepopulate needs_recovery_map when only one peer has missing (#9558 Guang Yang) -* osd: relax reply order on proxy read (#11211 Zhiqiang Wang) -* osd: skip promotion for flush/evict op (Zhiqiang Wang) -* osd: write journal header on clean shutdown (Xinze Chi) -* qa: run-make-check.sh script (Loic Dachary) -* rados bench: misc fixes (Dmitry Yatsushkevich) -* rados: fix error message on failed pool removal (Wido den Hollander) -* radosgw-admin: add 'bucket check' function to repair bucket index (Yehuda Sadeh) -* rbd: allow unmapping by spec (Ilya Dryomov) -* rbd: deprecate --new-format option (Jason Dillman) -* rgw: do not set content-type if length is 0 (#11091 Orit Wasserman) -* rgw: don't use end_marker for namespaced object listing (#11437 Yehuda Sadeh) -* rgw: fail if parts not specified on multipart upload (#11435 Yehuda Sadeh) -* rgw: fix GET on swift account when limit == 0 (#10683 Radoslaw Zarzynski) -* rgw: fix broken stats in container listing (#11285 Radoslaw Zarzynski) -* rgw: fix bug in domain/subdomain splitting (Robin H. Johnson) -* rgw: fix civetweb max threads (#10243 Yehuda Sadeh) -* rgw: fix copy metadata, support X-Copied-From for swift (#10663 Radoslaw Zarzynski) -* rgw: fix locator for objects starting with _ (#11442 Yehuda Sadeh) -* rgw: fix mulitipart upload in retry path (#11604 Yehuda Sadeh) -* rgw: fix quota enforcement on POST (#11323 Sergey Arkhipov) -* rgw: fix return code on missing upload (#11436 Yehuda Sadeh) -* rgw: force content type header on responses with no body (#11438 Orit Wasserman) -* rgw: generate new object tag when setting attrs (#11256 Yehuda Sadeh) -* rgw: issue aio for first chunk before flush cached data (#11322 Guang Yang) -* rgw: make read user buckets backward compat (#10683 Radoslaw Zarzynski) -* rgw: merge manifests properly with prefix override (#11622 Yehuda Sadeh) -* rgw: return 412 on bad limit when listing buckets (#11613 Yehuda Sadeh) -* rgw: send ETag, Last-Modified for swift (#11087 Radoslaw Zarzynski) -* rgw: set content length on container GET, PUT, DELETE, HEAD (#10971, #11036 Radoslaw Zarzynski) -* rgw: support end marker on swift container GET (#10682 Radoslaw Zarzynski) -* rgw: swift: fix account listing (#11501 Radoslaw Zarzynski) -* rgw: swift: set content-length on keystone tokens (#11473 Herv Rousseau) -* rgw: use correct oid for gc chains (#11447 Yehuda Sadeh) -* rgw: use unique request id for civetweb (#10295 Orit Wasserman) -* rocksdb, leveldb: fix compact_on_mount (Xiaoxi Chen) -* rocksdb: add perf counters for get/put latency (Xinxin Shu) -* rpm: add suse firewall files (Tim Serong) -* rpm: misc systemd and suse fixes (Owen Synge, Nathan Cutler) - - - -v9.0.0 -====== - -This is the first development release for the Infernalis cycle, and -the first Ceph release to sport a version number from the new -numbering scheme. The "9" indicates this is the 9th release cycle--I -(for Infernalis) is the 9th letter. The first "0" indicates this is a -development release ("1" will mean release candidate and "2" will mean -stable release), and the final "0" indicates this is the first such -development release. - -A few highlights include: - -* a new 'ceph daemonperf' command to watch perfcounter stats in realtime -* reduced MDS memory usage -* many MDS snapshot fixes -* librbd can now store options in the image itself -* many fixes for RGW Swift API support -* OSD performance improvements -* many doc updates and misc bug fixes - -Notable Changes ---------------- - -* aarch64: add optimized version of crc32c (Yazen Ghannam, Steve Capper) -* auth: reinit NSS after fork() (#11128 Yan, Zheng) -* build: disable LTTNG by default (#11333 Josh Durgin) -* build: fix ppc build (James Page) -* build: install-deps: support OpenSUSE (Loic Dachary) -* build: misc cmake fixes (Matt Benjamin) -* ceph-disk: follow ceph-osd hints when creating journal (#9580 Sage Weil) -* ceph-disk: handle re-using existing partition (#10987 Loic Dachary) -* ceph-disk: improve parted output parsing (#10983 Loic Dachary) -* ceph-disk: make suppression work for activate-all and activate-journal (Dan van der Ster) -* ceph-disk: misc fixes (Alfredo Deza) -* ceph-fuse, libcephfs: don't clear COMPLETE when trimming null (Yan, Zheng) -* ceph-fuse, libcephfs: hold exclusive caps on dirs we "own" (#11226 Greg Farnum) -* ceph-fuse: do not require successful remount when unmounting (#10982 Greg Farnum) -* ceph: new 'ceph daemonperf' command (John Spray, Mykola Golub) -* common: PriorityQueue tests (Kefu Chai) -* common: add descriptions to perfcounters (Kiseleva Alyona) -* common: fix LTTNG vs fork issue (Josh Durgin) -* crush: fix has_v4_buckets (#11364 Sage Weil) -* crushtool: fix order of operations, usage (Sage Weil) -* debian: minor package reorg (Ken Dreyer) -* doc: docuemnt object corpus generation (#11099 Alexis Normand) -* doc: fix gender neutrality (Alexandre Maragone) -* doc: fix install doc (#10957 Kefu Chai) -* doc: fix sphinx issues (Kefu Chai) -* doc: mds data structure docs (Yan, Zheng) -* doc: misc updates (Nilamdyuti Goswami, Vartika Rai, Florian Haas, Loic Dachary, Simon Guinot, Andy Allan, Alistair Israel, Ken Dreyer, Robin Rehu, Lee Revell, Florian Marsylle, Thomas Johnson, Bosse Klykken, Travis Rhoden, Ian Kelling) -* doc: swift tempurls (#10184 Abhishek Lekshmanan) -* doc: switch doxygen integration back to breathe (#6115 Kefu Chai) -* erasure-code: update ISA-L to 2.13 (Yuan Zhou) -* gmock: switch to submodule (Danny Al-Gaaf, Loic Dachary) -* hadoop: add terasort test (Noah Watkins) -* java: fix libcephfs bindings (Noah Watkins) -* libcephfs,ceph-fuse: fix request resend on cap reconnect (#10912 Yan, Zheng) -* librados: define C++ flags from C constants (Josh Durgin) -* librados: fix last_force_resent handling (#11026 Jianpeng Ma) -* librados: fix memory leak from C_TwoContexts (Xiong Yiliang) -* librados: fix striper when stripe_count = 1 and stripe_unit != object_size (#11120 Yan, Zheng) -* librados: op perf counters (John Spray) -* librados: pybind: fix write() method return code (Javier Guerra) -* libradosstriper: fix leak (Danny Al-Gaaf) -* librbd: add purge_on_error cache behavior (Jianpeng Ma) -* librbd: misc aio fixes (#5488 Jason Dillaman) -* librbd: misc rbd fixes (#11478 #11113 #11342 #11380 Jason Dillaman, Zhiqiang Wang) -* librbd: readahead fixes (Zhiqiang Wang) -* librbd: store metadata, including config options, in image (Haomai Wang) -* mds: add 'damaged' state to MDSMap (John Spray) -* mds: add nicknames for perfcounters (John Spray) -* mds: disable problematic rstat propagation into snap parents (Yan, Zheng) -* mds: fix mydir replica issue with shutdown (#10743 John Spray) -* mds: fix out-of-order messages (#11258 Yan, Zheng) -* mds: fix shutdown with strays (#10744 John Spray) -* mds: fix snapshot fixes (Yan, Zheng) -* mds: fix stray handling (John Spray) -* mds: flush immediately in do_open_truncate (#11011 John Spray) -* mds: improve dump methods (John Spray) -* mds: misc journal cleanups and fixes (#10368 John Spray) -* mds: new SessionMap storage using omap (#10649 John Spray) -* mds: reduce memory consumption (Yan, Zheng) -* mds: throttle purge stray operations (#10390 John Spray) -* mds: tolerate clock jumping backwards (#11053 Yan, Zheng) -* misc coverity fixes (Danny Al-Gaaf) -* mon: do not deactivate last mds (#10862 John Spray) -* mon: make osd get pool 'all' only return applicable fields (#10891 Michal Jarzabek) -* mon: warn on bogus cache tier config (Jianpeng Ma) -* msg/async: misc bug fixes and updates (Haomai Wang) -* msg/simple: fix connect_seq assert (Haomai Wang) -* msg/xio: misc fixes (#10735 Matt Benjamin, Kefu Chai, Danny Al-Gaaf, Raju Kurunkad, Vu Pham) -* msg: unit tests (Haomai Wang) -* objectcacher: misc bug fixes (Jianpeng Ma) -* os/filestore: enlarge getxattr buffer size (Jianpeng Ma) -* osd: EIO injection (David Zhang) -* osd: add misc perfcounters (Xinze Chi) -* osd: add simple sleep injection in recovery (Sage Weil) -* osd: allow SEEK_HOLE/SEEK_DATA for sparse read (Zhiqiang Wang) -* osd: avoid dup omap sets for in pg metadata (Sage Weil) -* osd: clean up some constness, privateness (Kefu Chai) -* osd: erasure-code: drop entries according to LRU (Andreas-Joachim Peters) -* osd: fix negative degraded stats during backfill (Guang Yang) -* osd: misc fixes (Ning Yao, Kefu Chai, Xinze Chi, Zhiqiang Wang, Jianpeng Ma) -* pybind: pep8 cleanups (Danny Al-Gaaf) -* qa: fix filelock_interrupt.py test (Yan, Zheng) -* qa: improve ceph-disk tests (Loic Dachary) -* qa: improve docker build layers (Loic Dachary) -* rados: translate erno to string in CLI (#10877 Kefu Chai) -* rbd: accept map options config option (Ilya Dryomov) -* rbd: cli: fix arg parsing with --io-pattern (Dmitry Yatsushkevich) -* rbd: fix error messages (#2862 Rajesh Nambiar) -* rbd: update rbd man page (Ilya Dryomov) -* rbd: update xfstests tests (Douglas Fuller) -* rgw: add X-Timestamp for Swift containers (#10938 Radoslaw Zarzynski) -* rgw: add missing headers to Swift container details (#10666 Ahmad Faheem, Dmytro Iurchenko) -* rgw: add stats to headers for account GET (#10684 Yuan Zhou) -* rgw: do not prefecth data for HEAD requests (Guang Yang) -* rgw: don't clobber bucket/object owner when setting ACLs (#10978 Yehuda Sadeh) -* rgw: don't use rgw_socket_path if frontend is configured (#11160 Yehuda Sadeh) -* rgw: enforce Content-Lenth for POST on Swift cont/obj (#10661 Radoslaw Zarzynski) -* rgw: fix handling empty metadata items on Swift container (#11088 Radoslaw Zarzynski) -* rgw: fix log rotation (Wuxingyi) -* rgw: generate Date header for civetweb (#10873 Radoslaw Zarzynski) -* rgw: make init script wait for radosgw to stop (#11140 Dmitry Yatsushkevich) -* rgw: make quota/gc threads configurable (#11047 Guang Yang) -* rgw: pass in civetweb configurables (#10907 Yehuda Sadeh) -* rgw: rectify 202 Accepted in PUT response (#11148 Radoslaw Zarzynski) -* rgw: remove meta file after deleting bucket (#11149 Orit Wasserman) -* rgw: swift: allow setting attributes with COPY (#10662 Ahmad Faheem, Dmytro Iurchenko) -* rgw: swift: fix metadata handling on copy (#10645 Radoslaw Zarzynski) -* rgw: swift: send Last-Modified header (#10650 Radoslaw Zarzynski) -* rgw: update keystone cache with token info (#11125 Yehuda Sadeh) -* rgw: update to latest civetweb, enable config for IPv6 (#10965 Yehuda Sadeh) -* rocksdb: update to latest (Xiaoxi Chen) -* rpm: loosen ceph-test dependencies (Ken Dreyer) - diff --git a/doc/releases/jewel.rst b/doc/releases/jewel.rst deleted file mode 100644 index e76106013..000000000 --- a/doc/releases/jewel.rst +++ /dev/null @@ -1,3384 +0,0 @@ -===== -Jewel -===== - -Jewel is the 10th stable release of Ceph. It is named after the jewel -squid (Histioteuthis reversa). - - -v10.2.11 Jewel -============== - -This point releases brings a number of important bugfixes and has a few -important security fixes. This is expected to be the last Jewel release. We -recommend all Jewel 10.2.x users to upgrade. - -Notable Changes ---------------- - -* CVE 2018-1128: auth: cephx authorizer subject to replay attack (`issue#24836 <http://tracker.ceph.com/issues/24836>`_, Sage Weil) - -* CVE 2018-1129: auth: cephx signature check is weak (`issue#24837 <http://tracker.ceph.com/issues/24837>`_, Sage Weil) - -* CVE 2018-10861: mon: auth checks not correct for pool ops (`issue#24838 <http://tracker.ceph.com/issues/24838>`_, Jason Dillaman) - -* The RBD C API's rbd_discard method and the C++ API's Image::discard method - now enforce a maximum length of 2GB. This restriction prevents overflow of - the result code. - -* New OSDs will now use rocksdb for omap data by default, rather than - leveldb. omap is used by RGW bucket indexes and CephFS directories, - and when a single leveldb grows to 10s of GB with a high write or - delete workload, it can lead to high latency when leveldb's - single-threaded compaction cannot keep up. rocksdb supports multiple - threads for compaction, which avoids this problem. - -* The CephFS client now catches failures to clear dentries during startup - and refuses to start as consistency and untrimmable cache issues may - develop. The new option client_die_on_failed_dentry_invalidate (default: - true) may be turned off to allow the client to proceed (dangerous!). - -* In 10.2.10 and earlier releases, keyring caps were not checked for validity, - so the caps string could be anything. As of 10.2.11, caps strings are - validated and providing a keyring with an invalid caps string to, e.g., - "ceph auth add" will result in an error. - - -Changelog ---------- - -* admin: bump sphinx to 1.6 (`issue#21717 <http://tracker.ceph.com/issues/21717>`_, `pr#18166 <https://github.com/ceph/ceph/pull/18166>`_, Kefu Chai, Alfredo Deza) -* auth: ceph auth add does not sanity-check caps (`issue#22525 <http://tracker.ceph.com/issues/22525>`_, `pr#21367 <https://github.com/ceph/ceph/pull/21367>`_, Jing Li, Nathan Cutler, Kefu Chai, Sage Weil) -* build/ops: rpm: bump epoch ahead of ceph-common in RHEL base (`issue#20508 <http://tracker.ceph.com/issues/20508>`_, `pr#21190 <https://github.com/ceph/ceph/pull/21190>`_, Ken Dreyer) -* build/ops: upstart: radosgw-all does not start on boot if ceph-base is not installed (`issue#18313 <http://tracker.ceph.com/issues/18313>`_, `pr#16294 <https://github.com/ceph/ceph/pull/16294>`_, Ken Dreyer) -* ceph_authtool: add mode option (`issue#23513 <http://tracker.ceph.com/issues/23513>`_, `pr#21197 <https://github.com/ceph/ceph/pull/21197>`_, Sébastien Han) -* ceph-disk: factor out the retry logic into a decorator (`issue#21728 <http://tracker.ceph.com/issues/21728>`_, `pr#18169 <https://github.com/ceph/ceph/pull/18169>`_, Kefu Chai) -* ceph-disk: fix --runtime omission when enabling ceph-osd@$ID.service units for device-backed OSDs (`issue#21498 <http://tracker.ceph.com/issues/21498>`_, `pr#17942 <https://github.com/ceph/ceph/pull/17942>`_, Carl Xiong) -* ceph-disk flake8 test fails on very old, and very new, versions of flake8 (`issue#22207 <http://tracker.ceph.com/issues/22207>`_, `pr#19153 <https://github.com/ceph/ceph/pull/19153>`_, Nathan Cutler) -* cephfs: ceph.in: pass RADOS inst to LibCephFS (`issue#21406 <http://tracker.ceph.com/issues/21406>`_, `issue#21967 <http://tracker.ceph.com/issues/21967>`_, `pr#19907 <https://github.com/ceph/ceph/pull/19907>`_, Patrick Donnelly) -* cephfs: client::mkdirs not handle well when two clients send mkdir request for a same dir (`issue#20592 <http://tracker.ceph.com/issues/20592>`_, `pr#20271 <https://github.com/ceph/ceph/pull/20271>`_, dongdong tao) -* cephfs: client: prevent fallback to remount when dentry_invalidate_cb is true but root->dir is NULL (`issue#23211 <http://tracker.ceph.com/issues/23211>`_, `pr#21189 <https://github.com/ceph/ceph/pull/21189>`_, Zhi Zhang) -* cephfs: fix tmap_upgrade crash (`issue#23529 <http://tracker.ceph.com/issues/23529>`_, `pr#21208 <https://github.com/ceph/ceph/pull/21208>`_, "Yan, Zheng") -* cephfs: fuse client: ::rmdir() uses a deleted memory structure of dentry leads … (`issue#22536 <http://tracker.ceph.com/issues/22536>`_, `pr#19993 <https://github.com/ceph/ceph/pull/19993>`_, YunfeiGuan) -* cephfs-journal-tool: add "set pool_id" option (`issue#22631 <http://tracker.ceph.com/issues/22631>`_, `pr#20111 <https://github.com/ceph/ceph/pull/20111>`_, dongdong tao) -* cephfs-journal-tool: move shutdown to the deconstructor of MDSUtility (`issue#22734 <http://tracker.ceph.com/issues/22734>`_, `pr#20333 <https://github.com/ceph/ceph/pull/20333>`_, dongdong tao) -* cephfs: osdc: "FAILED assert(bh->last_write_tid > tid)" in powercycle-wip-yuri-master-1.19.18-distro-basic-smithi (`issue#22741 <http://tracker.ceph.com/issues/22741>`_, `pr#20312 <https://github.com/ceph/ceph/pull/20312>`_, "Yan, Zheng") -* cephfs: osdc/Journaler: make sure flush() writes enough data (`issue#22824 <http://tracker.ceph.com/issues/22824>`_, `pr#20435 <https://github.com/ceph/ceph/pull/20435>`_, "Yan, Zheng") -* cephfs: Processes stuck waiting for write with ceph-fuse (`issue#22008 <http://tracker.ceph.com/issues/22008>`_, `issue#22207 <http://tracker.ceph.com/issues/22207>`_, `pr#19141 <https://github.com/ceph/ceph/pull/19141>`_, "Yan, Zheng") -* ceph-fuse: failure to remount in startup test does not handle client_die_on_failed_remount properly (`issue#22269 <http://tracker.ceph.com/issues/22269>`_, `pr#21162 <https://github.com/ceph/ceph/pull/21162>`_, Patrick Donnelly) -* ceph.in: bypass codec when writing raw binary data (`issue#23185 <http://tracker.ceph.com/issues/23185>`_, `pr#20763 <https://github.com/ceph/ceph/pull/20763>`_, Oleh Prypin) -* ceph-objectstore-tool command to trim the pg log (`issue#23242 <http://tracker.ceph.com/issues/23242>`_, `pr#20882 <https://github.com/ceph/ceph/pull/20882>`_, Josh Durgin, David Zafman) -* ceph-objectstore-tool: "$OBJ get-omaphdr" and "$OBJ list-omap" scan all pgs instead of using specific pg (`issue#21327 <http://tracker.ceph.com/issues/21327>`_, `pr#20284 <https://github.com/ceph/ceph/pull/20284>`_, David Zafman) -* ceph.restart + ceph_manager.wait_for_clean is racy (`issue#15778 <http://tracker.ceph.com/issues/15778>`_, `pr#20508 <https://github.com/ceph/ceph/pull/20508>`_, Warren Usui, Sage Weil) -* ceph_volume_client: fix setting caps for IDs (`issue#21501 <http://tracker.ceph.com/issues/21501>`_, `pr#18084 <https://github.com/ceph/ceph/pull/18084>`_, Ramana Raja) -* class rbd.Image discard----OSError: [errno 2147483648] error discarding region (`issue#16465 <http://tracker.ceph.com/issues/16465>`_, `issue#21966 <http://tracker.ceph.com/issues/21966>`_, `pr#20287 <https://github.com/ceph/ceph/pull/20287>`_, Nathan Cutler, Huan Zhang, Jason Dillaman) -* cli/crushtools/build.t sometimes fails in jenkins' make check run (`issue#21758 <http://tracker.ceph.com/issues/21758>`_, `pr#21158 <https://github.com/ceph/ceph/pull/21158>`_, Kefu Chai) -* client reconnect gather race (`issue#22263 <http://tracker.ceph.com/issues/22263>`_, `pr#21163 <https://github.com/ceph/ceph/pull/21163>`_, "Yan, Zheng") -* client: release revoking Fc after invalidate cache (`issue#22652 <http://tracker.ceph.com/issues/22652>`_, `pr#19975 <https://github.com/ceph/ceph/pull/19975>`_, "Yan, Zheng") -* client: set client_try_dentry_invalidate to false by default (`issue#21423 <http://tracker.ceph.com/issues/21423>`_, `pr#17925 <https://github.com/ceph/ceph/pull/17925>`_, "Yan, Zheng") -* [cli] rename of non-existent image results in seg fault (`issue#21248 <http://tracker.ceph.com/issues/21248>`_, `pr#20280 <https://github.com/ceph/ceph/pull/20280>`_, Jason Dillaman) -* CLI unit formatting tests are broken (`issue#24733 <http://tracker.ceph.com/issues/24733>`_, `pr#22913 <https://github.com/ceph/ceph/pull/22913>`_, Jason Dillaman) -* common: compute SimpleLRU's size with contents.size() instead of lru.… (`issue#22613 <http://tracker.ceph.com/issues/22613>`_, `pr#19978 <https://github.com/ceph/ceph/pull/19978>`_, Xuehan Xu) -* common/config: set rocksdb_cache_size to OPT_U64 (`issue#22104 <http://tracker.ceph.com/issues/22104>`_, `pr#18850 <https://github.com/ceph/ceph/pull/18850>`_, Vikhyat Umrao, liuhongtong) -* common: fix typo in rados bench write JSON output (`issue#24199 <http://tracker.ceph.com/issues/24199>`_, `pr#22407 <https://github.com/ceph/ceph/pull/22407>`_, Sandor Zeestraten) -* config: lower default omap entries recovered at once (`issue#21897 <http://tracker.ceph.com/issues/21897>`_, `pr#19927 <https://github.com/ceph/ceph/pull/19927>`_, Josh Durgin) -* core: Addition of online osd 'omap'compaction command (`issue#19592 <http://tracker.ceph.com/issues/19592>`_, `pr#17101 <https://github.com/ceph/ceph/pull/17101>`_, liuchang0812, Sage Weil) -* core: global/signal_handler.cc: fix typo (`issue#21432 <http://tracker.ceph.com/issues/21432>`_, `pr#17883 <https://github.com/ceph/ceph/pull/17883>`_, Kefu Chai) -* core: librados: Double free in rados_getxattrs_next (`issue#22042 <http://tracker.ceph.com/issues/22042>`_, `pr#20381 <https://github.com/ceph/ceph/pull/20381>`_, Gu Zhongyan) -* core: Objecter::C_ObjectOperation_sparse_read throws/catches exceptions on -ENOENT (`issue#21844 <http://tracker.ceph.com/issues/21844>`_, `pr#18743 <https://github.com/ceph/ceph/pull/18743>`_, Jason Dillaman) -* Deleting a pool with active notify linger ops can result in seg fault (`issue#23966 <http://tracker.ceph.com/issues/23966>`_, `pr#22188 <https://github.com/ceph/ceph/pull/22188>`_, Kefu Chai, Jason Dillaman) -* doc: clarify Path Restriction instructions (`issue#16906 <http://tracker.ceph.com/issues/16906>`_, `pr#19795 <https://github.com/ceph/ceph/pull/19795>`_, huanwen ren) -* doc: clarify Path Restriction instructions (`issue#16906 <http://tracker.ceph.com/issues/16906>`_, `pr#19840 <https://github.com/ceph/ceph/pull/19840>`_, Drunkard Zhang) -* doc: remove region from INSTALL CEPH OBJECT GATEWAY (`issue#21610 <http://tracker.ceph.com/issues/21610>`_, `pr#18303 <https://github.com/ceph/ceph/pull/18303>`_, Orit Wasserman) -* Filestore rocksdb compaction readahead option not set by default (`issue#21505 <http://tracker.ceph.com/issues/21505>`_, `pr#20446 <https://github.com/ceph/ceph/pull/20446>`_, Mark Nelson) -* follow-on: osd: be_select_auth_object() sanity check oi soid (`issue#20471 <http://tracker.ceph.com/issues/20471>`_, `pr#20622 <https://github.com/ceph/ceph/pull/20622>`_, David Zafman) -* HashIndex: randomize split threshold by a configurable amount (`issue#15835 <http://tracker.ceph.com/issues/15835>`_, `pr#19906 <https://github.com/ceph/ceph/pull/19906>`_, Josh Durgin) -* include/fs_types: fix unsigned integer overflow (`issue#22494 <http://tracker.ceph.com/issues/22494>`_, `pr#19611 <https://github.com/ceph/ceph/pull/19611>`_, runsisi) -* install-deps.sh: point gcc to the one shipped by distro (`issue#22220 <http://tracker.ceph.com/issues/22220>`_, `pr#19461 <https://github.com/ceph/ceph/pull/19461>`_, Kefu Chai) -* install-deps.sh: readlink /usr/bin/gcc not /usr/bin/x86_64-linux-gnu-gcc (`issue#22220 <http://tracker.ceph.com/issues/22220>`_, `pr#19521 <https://github.com/ceph/ceph/pull/19521>`_, Kefu Chai) -* install-deps.sh: update g++ symlink also (`issue#22220 <http://tracker.ceph.com/issues/22220>`_, `pr#19656 <https://github.com/ceph/ceph/pull/19656>`_, Kefu Chai) -* journal: Message too long error when appending journal (`issue#23526 <http://tracker.ceph.com/issues/23526>`_, `pr#21215 <https://github.com/ceph/ceph/pull/21215>`_, Mykola Golub) -* [journal] tags are not being expired if no other clients are registered (`issue#21960 <http://tracker.ceph.com/issues/21960>`_, `pr#20282 <https://github.com/ceph/ceph/pull/20282>`_, Jason Dillaman) -* legal: remove doc license ambiguity (`issue#23336 <http://tracker.ceph.com/issues/23336>`_, `pr#20999 <https://github.com/ceph/ceph/pull/20999>`_, Nathan Cutler) -* librados: copy out data to users' buffer for xio (`issue#20616 <http://tracker.ceph.com/issues/20616>`_, `pr#17594 <https://github.com/ceph/ceph/pull/17594>`_, Vu Pham) -* librbd: cannot clone all image-metas if we have more than 64 key/value pairs (`issue#21814 <http://tracker.ceph.com/issues/21814>`_, `pr#21228 <https://github.com/ceph/ceph/pull/21228>`_, PCzhangPC) -* librbd: cannot copy all image-metas if we have more than 64 key/value pairs (`issue#21815 <http://tracker.ceph.com/issues/21815>`_, `pr#21203 <https://github.com/ceph/ceph/pull/21203>`_, PCzhangPC) -* librbd: create+truncate for whole-object layered discards (`issue#23285 <http://tracker.ceph.com/issues/23285>`_, `pr#21219 <https://github.com/ceph/ceph/pull/21219>`_, Jason Dillaman) -* librbd: list_children should not attempt to refresh image (`issue#21670 <http://tracker.ceph.com/issues/21670>`_, `pr#21224 <https://github.com/ceph/ceph/pull/21224>`_, Jason Dillaman) -* librbd: object map batch update might cause OSD suicide timeout (`issue#22716 <http://tracker.ceph.com/issues/22716>`_, `issue#21797 <http://tracker.ceph.com/issues/21797>`_, `pr#21220 <https://github.com/ceph/ceph/pull/21220>`_, Song Shun, Jason Dillaman) -* librbd: set deleted parent pointer to null (`issue#22158 <http://tracker.ceph.com/issues/22158>`_, `pr#19098 <https://github.com/ceph/ceph/pull/19098>`_, Jason Dillaman) -* log: Fix AddressSanitizer: new-delete-type-mismatch (`issue#23324 <http://tracker.ceph.com/issues/23324>`_, `pr#21084 <https://github.com/ceph/ceph/pull/21084>`_, Brad Hubbard) -* mds: FAILED assert(get_version() < pv) in CDir::mark_dirty (`issue#21584 <http://tracker.ceph.com/issues/21584>`_, `pr#21156 <https://github.com/ceph/ceph/pull/21156>`_, Yan, Zheng, "Yan, Zheng") -* mds: fix dump last_sent (`issue#22562 <http://tracker.ceph.com/issues/22562>`_, `pr#19961 <https://github.com/ceph/ceph/pull/19961>`_, dongdong tao) -* mds: fix integer overflow (`issue#21067 <http://tracker.ceph.com/issues/21067>`_, `pr#17188 <https://github.com/ceph/ceph/pull/17188>`_, Henry Chang) -* mds: fix scrub crash (`issue#22730 <http://tracker.ceph.com/issues/22730>`_, `pr#20335 <https://github.com/ceph/ceph/pull/20335>`_, dongdong tao) -* mds: session reference leak (`issue#22821 <http://tracker.ceph.com/issues/22821>`_, `pr#21175 <https://github.com/ceph/ceph/pull/21175>`_, Nathan Cutler, "Yan, Zheng") -* mds: unbalanced auth_pin/auth_unpin in RecoveryQueue code (`issue#22647 <http://tracker.ceph.com/issues/22647>`_, `pr#20067 <https://github.com/ceph/ceph/pull/20067>`_, "Yan, Zheng") -* mds: underwater dentry check in CDir::_omap_fetched is racy (`issue#23032 <http://tracker.ceph.com/issues/23032>`_, `pr#21185 <https://github.com/ceph/ceph/pull/21185>`_, Yan, Zheng) -* mon/LogMonitor: call no_reply() on ignored log message (`issue#24180 <http://tracker.ceph.com/issues/24180>`_, `pr#22431 <https://github.com/ceph/ceph/pull/22431>`_, Sage Weil) -* mon/MDSMonitor: no_reply on MMDSLoadTargets (`issue#23769 <http://tracker.ceph.com/issues/23769>`_, `pr#22189 <https://github.com/ceph/ceph/pull/22189>`_, Sage Weil) -* mon/OSDMonitor.cc: fix expected_num_objects interpret error (`issue#22530 <http://tracker.ceph.com/issues/22530>`_, `pr#22050 <https://github.com/ceph/ceph/pull/22050>`_, Yang Honggang) -* mon/OSDMonitor: fix dividing by zero in OSDUtilizationDumper (`issue#22662 <http://tracker.ceph.com/issues/22662>`_, `pr#20344 <https://github.com/ceph/ceph/pull/20344>`_, Mingxin Liu) -* ObjectStore/StoreTest.FiemapHoles/3 fails with kstore (`issue#21716 <http://tracker.ceph.com/issues/21716>`_, `pr#20143 <https://github.com/ceph/ceph/pull/20143>`_, Kefu Chai, Ning Yao) -* osd: also check the exsistence of clone obc for "CEPH_SNAPDIR" requests (`issue#17445 <http://tracker.ceph.com/issues/17445>`_, `pr#17707 <https://github.com/ceph/ceph/pull/17707>`_, Xuehan Xu) -* osdc/Objecter: prevent double-invocation of linger op callback (`issue#23872 <http://tracker.ceph.com/issues/23872>`_, `pr#21754 <https://github.com/ceph/ceph/pull/21754>`_, Jason Dillaman) -* osd: objecter sends out of sync with pg epochs for proxied ops (`issue#22123 <http://tracker.ceph.com/issues/22123>`_, `pr#20518 <https://github.com/ceph/ceph/pull/20518>`_, Sage Weil) -* osd ops (sent and?) arrive at osd out of order (`issue#19133 <http://tracker.ceph.com/issues/19133>`_, `issue#19139 <http://tracker.ceph.com/issues/19139>`_, `pr#17893 <https://github.com/ceph/ceph/pull/17893>`_, Jianpeng Ma, Sage Weil) -* osd: OSDMap cache assert on shutdown (`issue#21737 <http://tracker.ceph.com/issues/21737>`_, `pr#21184 <https://github.com/ceph/ceph/pull/21184>`_, Greg Farnum) -* osd: osd_scrub_during_recovery only considers primary, not replicas (`issue#18206 <http://tracker.ceph.com/issues/18206>`_, `pr#17815 <https://github.com/ceph/ceph/pull/17815>`_, David Zafman) -* osd/PrimaryLogPG: dump snap_trimq size (`issue#22448 <http://tracker.ceph.com/issues/22448>`_, `pr#21200 <https://github.com/ceph/ceph/pull/21200>`_, Piotr Dałek) -* osd: recover_replicas: object added to missing set for backfill, but is not in recovering, error! (`issue#18162 <http://tracker.ceph.com/issues/18162>`_, `issue#14513 <http://tracker.ceph.com/issues/14513>`_, `pr#18690 <https://github.com/ceph/ceph/pull/18690>`_, huangjun, Adam C. Emerson, David Zafman) -* osd: replica read can trigger cache promotion (`issue#20919 <http://tracker.ceph.com/issues/20919>`_, `pr#21199 <https://github.com/ceph/ceph/pull/21199>`_, Sage Weil) -* osd: update heartbeat peers when a new OSD is added (`issue#18004 <http://tracker.ceph.com/issues/18004>`_, `pr#20108 <https://github.com/ceph/ceph/pull/20108>`_, Pan Liu) -* performance: Only scan for omap corruption once (`issue#21328 <http://tracker.ceph.com/issues/21328>`_, `pr#18951 <https://github.com/ceph/ceph/pull/18951>`_, David Zafman) -* qa: failures from pjd fstest (`issue#21383 <http://tracker.ceph.com/issues/21383>`_, `pr#21152 <https://github.com/ceph/ceph/pull/21152>`_, "Yan, Zheng") -* qa: src/test/libcephfs/test.cc:376: Expected: (len) > (0), actual: -34 vs 0 (`issue#22221 <http://tracker.ceph.com/issues/22221>`_, `pr#21172 <https://github.com/ceph/ceph/pull/21172>`_, Patrick Donnelly) -* qa: use xfs instead of btrfs w/ filestore (`issue#20169 <http://tracker.ceph.com/issues/20169>`_, `issue#20911 <http://tracker.ceph.com/issues/20911>`_, `pr#18165 <https://github.com/ceph/ceph/pull/18165>`_, Sage Weil) -* qa: use xfs instead of btrfs w/ filestore (`issue#21481 <http://tracker.ceph.com/issues/21481>`_, `pr#17847 <https://github.com/ceph/ceph/pull/17847>`_, Patrick Donnelly) -* radosgw: fix awsv4 header line sort order (`issue#21607 <http://tracker.ceph.com/issues/21607>`_, `pr#18080 <https://github.com/ceph/ceph/pull/18080>`_, Marcus Watts) -* rbd: clean up warnings when mirror commands used on non-setup pool (`issue#21319 <http://tracker.ceph.com/issues/21319>`_, `pr#21227 <https://github.com/ceph/ceph/pull/21227>`_, Jason Dillaman) -* rbd: disk usage on empty pool no longer returns an error message (`issue#22200 <http://tracker.ceph.com/issues/22200>`_, `pr#19186 <https://github.com/ceph/ceph/pull/19186>`_, Jason Dillaman) -* [rbd] image-meta list does not return all entries (`issue#21179 <http://tracker.ceph.com/issues/21179>`_, `pr#20281 <https://github.com/ceph/ceph/pull/20281>`_, Jason Dillaman) -* rbd: is_qemu_running in qemu_rebuild_object_map.sh and qemu_dynamic_features.sh may return false positive (`issue#23502 <http://tracker.ceph.com/issues/23502>`_, `pr#21207 <https://github.com/ceph/ceph/pull/21207>`_, Mykola Golub) -* rbd: [journal] allocating a new tag after acquiring the lock should use on-disk committed position (`issue#22945 <http://tracker.ceph.com/issues/22945>`_, `pr#21206 <https://github.com/ceph/ceph/pull/21206>`_, Jason Dillaman) -* rbd: librbd: filter out potential race with image rename (`issue#18435 <http://tracker.ceph.com/issues/18435>`_, `pr#19855 <https://github.com/ceph/ceph/pull/19855>`_, Jason Dillaman) -* rbd ls -l crashes with SIGABRT (`issue#21558 <http://tracker.ceph.com/issues/21558>`_, `pr#19801 <https://github.com/ceph/ceph/pull/19801>`_, Jason Dillaman) -* rbd-mirror: cluster watcher should ensure it has latest OSD map (`issue#22461 <http://tracker.ceph.com/issues/22461>`_, `pr#19644 <https://github.com/ceph/ceph/pull/19644>`_, Jason Dillaman) -* rbd-mirror: fix potential infinite loop when formatting status message (`issue#22932 <http://tracker.ceph.com/issues/22932>`_, `pr#20418 <https://github.com/ceph/ceph/pull/20418>`_, Mykola Golub) -* rbd-mirror: ignore permission errors on rbd_mirroring object (`issue#20571 <http://tracker.ceph.com/issues/20571>`_, `pr#21225 <https://github.com/ceph/ceph/pull/21225>`_, Jason Dillaman) -* rbd-mirror: strip environment/CLI overrides for remote cluster (`issue#21894 <http://tracker.ceph.com/issues/21894>`_, `pr#21223 <https://github.com/ceph/ceph/pull/21223>`_, Jason Dillaman) -* [rbd-nbd] Fedora does not register resize events (`issue#22131 <http://tracker.ceph.com/issues/22131>`_, `pr#19115 <https://github.com/ceph/ceph/pull/19115>`_, Jason Dillaman) -* rbd-nbd: fix ebusy when do map (`issue#23528 <http://tracker.ceph.com/issues/23528>`_, `pr#21232 <https://github.com/ceph/ceph/pull/21232>`_, Li Wang) -* rbd: possible deadlock in various maintenance operations (`issue#22120 <http://tracker.ceph.com/issues/22120>`_, `pr#20285 <https://github.com/ceph/ceph/pull/20285>`_, Jason Dillaman) -* rbd: rbd crashes during map (`issue#21808 <http://tracker.ceph.com/issues/21808>`_, `pr#18843 <https://github.com/ceph/ceph/pull/18843>`_, Peter Keresztes Schmidt) -* rbd: rbd-mirror split brain test case can have a false-positive failure until teuthology (`issue#22485 <http://tracker.ceph.com/issues/22485>`_, `pr#21205 <https://github.com/ceph/ceph/pull/21205>`_, Jason Dillaman) -* rbd: TestLibRBD.RenameViaLockOwner may still fail with -ENOENT (`issue#23068 <http://tracker.ceph.com/issues/23068>`_, `pr#20627 <https://github.com/ceph/ceph/pull/20627>`_, Mykola Golub) -* repair_test fails due to race with osd start (`issue#20705 <http://tracker.ceph.com/issues/20705>`_, `pr#20146 <https://github.com/ceph/ceph/pull/20146>`_, Sage Weil) -* rgw: 15912 15673 (Fix duplicate tag removal during GC, cls/refcount: store and use list of retired tags) (`issue#20107 <http://tracker.ceph.com/issues/20107>`_, `pr#16708 <https://github.com/ceph/ceph/pull/16708>`_, Jens Rosenboom) -* rgw: abort in listing mapped nbd devices when running in a container (`issue#22012 <http://tracker.ceph.com/issues/22012>`_, `issue#22011 <http://tracker.ceph.com/issues/22011>`_, `pr#20286 <https://github.com/ceph/ceph/pull/20286>`_, Li Wang, Pan Liu) -* rgw: add ability to sync user stats from admin api (`issue#21301 <http://tracker.ceph.com/issues/21301>`_, `pr#20179 <https://github.com/ceph/ceph/pull/20179>`_, Nathan Johnson) -* rgw: add cors header rule check in cors option request (`issue#22002 <http://tracker.ceph.com/issues/22002>`_, `pr#19057 <https://github.com/ceph/ceph/pull/19057>`_, yuliyang) -* rgw: add radosgw-admin sync error trim to trim sync error log (`issue#23287 <http://tracker.ceph.com/issues/23287>`_, `pr#21210 <https://github.com/ceph/ceph/pull/21210>`_, fang yuxiang) -* rgw: add xml output header in RGWCopyObj_ObjStore_S3 response msg (`issue#22416 <http://tracker.ceph.com/issues/22416>`_, `pr#19887 <https://github.com/ceph/ceph/pull/19887>`_, Enming Zhang) -* rgw: automated trimming of datalog and mdlog (`issue#18227 <http://tracker.ceph.com/issues/18227>`_, `pr#20061 <https://github.com/ceph/ceph/pull/20061>`_, Casey Bodley) -* rgw: bi list entry count incremented on error, distorting error code (`issue#21205 <http://tracker.ceph.com/issues/21205>`_, `pr#18207 <https://github.com/ceph/ceph/pull/18207>`_, Nathan Cutler) -* rgw: boto3 v4 SignatureDoesNotMatch failure due to sorting of sse-kms headers (`issue#21832 <http://tracker.ceph.com/issues/21832>`_, `pr#18772 <https://github.com/ceph/ceph/pull/18772>`_, Nathan Cutler) -* rgw: bucket resharding should not update bucket ACL or user stats (`issue#22124 <http://tracker.ceph.com/issues/22124>`_, `pr#20421 <https://github.com/ceph/ceph/pull/20421>`_, Orit Wasserman) -* rgw: copying part without http header x-amz-copy-source-range will be mistaken for copying object (`issue#22729 <http://tracker.ceph.com/issues/22729>`_, `pr#21294 <https://github.com/ceph/ceph/pull/21294>`_, Malcolm Lee) -* rgw: core dump, recursive lock of RGWKeystoneTokenCache (`issue#23171 <http://tracker.ceph.com/issues/23171>`_, `pr#20639 <https://github.com/ceph/ceph/pull/20639>`_, Mark Kogan, Adam Kupczyk) -* rgw: data sync of versioned objects, note updating bi marker (`issue#18885 <http://tracker.ceph.com/issues/18885>`_, `pr#21213 <https://github.com/ceph/ceph/pull/21213>`_, Yehuda Sadeh) -* rgw: dont log EBUSY errors in 'sync error list' (`issue#22473 <http://tracker.ceph.com/issues/22473>`_, `pr#19908 <https://github.com/ceph/ceph/pull/19908>`_, Casey Bodley) -* rgw: ECANCELED in rgw_get_system_obj() leads to infinite loop (`issue#17996 <http://tracker.ceph.com/issues/17996>`_, `pr#20561 <https://github.com/ceph/ceph/pull/20561>`_, Yehuda Sadeh) -* rgw: file deadlock on lru evicting (`issue#22736 <http://tracker.ceph.com/issues/22736>`_, `pr#20076 <https://github.com/ceph/ceph/pull/20076>`_, Matt Benjamin) -* rgw: file write error (`issue#21455 <http://tracker.ceph.com/issues/21455>`_, `pr#18304 <https://github.com/ceph/ceph/pull/18304>`_, Yao Zongyou) -* rgw: fix chained cache invalidation to prevent cache size growth (`issue#22410 <http://tracker.ceph.com/issues/22410>`_, `pr#19469 <https://github.com/ceph/ceph/pull/19469>`_, Mark Kogan) -* rgw: fix doubled underscore with s3/swift server-side copy (`issue#22529 <http://tracker.ceph.com/issues/22529>`_, `pr#19747 <https://github.com/ceph/ceph/pull/19747>`_, Matt Benjamin) -* rgw: fix GET website response error code (`issue#22272 <http://tracker.ceph.com/issues/22272>`_, `pr#19488 <https://github.com/ceph/ceph/pull/19488>`_, Dmitry Plyakin) -* rgw: fix index update in dir_suggest_changes (`issue#24280 <http://tracker.ceph.com/issues/24280>`_, `pr#22677 <https://github.com/ceph/ceph/pull/22677>`_, Tianshan Qu) -* rgw: fix marker encoding problem (`issue#20463 <http://tracker.ceph.com/issues/20463>`_, `pr#17731 <https://github.com/ceph/ceph/pull/17731>`_, Orit Wasserman, Marcus Watts) -* rgw: fix swift anonymous access (`issue#22259 <http://tracker.ceph.com/issues/22259>`_, `pr#19194 <https://github.com/ceph/ceph/pull/19194>`_, Marcus Watts) -* rgw: Fix swift object expiry not deleting objects (`issue#22084 <http://tracker.ceph.com/issues/22084>`_, `pr#18925 <https://github.com/ceph/ceph/pull/18925>`_, Pavan Rallabhandi) -* rgw: fix the bug that part's index can't be removed after completing (`issue#19604 <http://tracker.ceph.com/issues/19604>`_, `pr#16763 <https://github.com/ceph/ceph/pull/16763>`_, Zhang Shaowen, Matt Benjamin) -* rgw: fix the max-uploads parameter not work (`issue#22825 <http://tracker.ceph.com/issues/22825>`_, `pr#20479 <https://github.com/ceph/ceph/pull/20479>`_, Xin Liao) -* rgw: inefficient buffer usage for PUTs (`issue#23207 <http://tracker.ceph.com/issues/23207>`_, `pr#21098 <https://github.com/ceph/ceph/pull/21098>`_, Marcus Watts) -* rgw: libcurl & ssl fixes (`issue#22951 <http://tracker.ceph.com/issues/22951>`_, `issue#23203 <http://tracker.ceph.com/issues/23203>`_, `issue#23162 <http://tracker.ceph.com/issues/23162>`_, `pr#20749 <https://github.com/ceph/ceph/pull/20749>`_, Marcus Watts, Abhishek Lekshmanan, Jesse Williamson) -* rgw: list bucket which enable versioning get wrong result when user marker (`issue#21500 <http://tracker.ceph.com/issues/21500>`_, `pr#20291 <https://github.com/ceph/ceph/pull/20291>`_, yuliyang) -* rgw: log includes zero byte sometimes (`issue#20037 <http://tracker.ceph.com/issues/20037>`_, `pr#17151 <https://github.com/ceph/ceph/pull/17151>`_, Abhishek Lekshmanan) -* rgw: make init env methods return an error (`issue#23039 <http://tracker.ceph.com/issues/23039>`_, `pr#20800 <https://github.com/ceph/ceph/pull/20800>`_, Abhishek Lekshmanan) -* RGW: Multipart upload may double the quota (`issue#21586 <http://tracker.ceph.com/issues/21586>`_, `pr#18121 <https://github.com/ceph/ceph/pull/18121>`_, Sibei Gao, Matt Benjamin) -* rgw: multisite: data sync status advances despite failure in RGWListBucketIndexesCR (`issue#21735 <http://tracker.ceph.com/issues/21735>`_, `pr#20269 <https://github.com/ceph/ceph/pull/20269>`_, Casey Bodley) -* rgw: multisite: Get bucket location which is located in another zonegroup, will return 301 Moved Permanently (`issue#21125 <http://tracker.ceph.com/issues/21125>`_, `pr#18305 <https://github.com/ceph/ceph/pull/18305>`_, Shasha Lu, lvshuhua, Jiaying Ren) -* rgw: null instance mtime incorrect when enable versioning (`issue#21743 <http://tracker.ceph.com/issues/21743>`_, `pr#20262 <https://github.com/ceph/ceph/pull/20262>`_, Shasha Lu) -* rgw: radosgw-admin: add an option to reset user stats (`issue#23335 <http://tracker.ceph.com/issues/23335>`_, `issue#23322 <http://tracker.ceph.com/issues/23322>`_, `pr#20877 <https://github.com/ceph/ceph/pull/20877>`_, Abhishek Lekshmanan) -* rgw: release cls lock if taken in RGWCompleteMultipart (`issue#21596 <http://tracker.ceph.com/issues/21596>`_, `issue#22368 <http://tracker.ceph.com/issues/22368>`_, `pr#18116 <https://github.com/ceph/ceph/pull/18116>`_, Casey Bodley, Matt Benjamin) -* rgw: resharding needs to set back the bucket ACL after link (`issue#22742 <http://tracker.ceph.com/issues/22742>`_, `pr#20039 <https://github.com/ceph/ceph/pull/20039>`_, Orit Wasserman) -* rgw: resolve Random 500 errors in Swift PutObject (22517) (`issue#22517 <http://tracker.ceph.com/issues/22517>`_, `issue#21560 <http://tracker.ceph.com/issues/21560>`_, `pr#19769 <https://github.com/ceph/ceph/pull/19769>`_, Adam C. Emerson, Matt Benjamin) -* rgw: rgw_file: recursive lane lock can occur in LRU drain (`issue#20374 <http://tracker.ceph.com/issues/20374>`_, `pr#17149 <https://github.com/ceph/ceph/pull/17149>`_, Matt Benjamin) -* rgw: S3 POST policy should not require Content-Type (`issue#20201 <http://tracker.ceph.com/issues/20201>`_, `pr#19635 <https://github.com/ceph/ceph/pull/19635>`_, Matt Benjamin) -* rgw: s3website error handler uses original object name (`issue#23201 <http://tracker.ceph.com/issues/23201>`_, `issue#20307 <http://tracker.ceph.com/issues/20307>`_, `pr#21100 <https://github.com/ceph/ceph/pull/21100>`_, liuhong, Casey Bodley) -* rgw: segfaults after running radosgw-admin data sync init (`issue#22083 <http://tracker.ceph.com/issues/22083>`_, `pr#19783 <https://github.com/ceph/ceph/pull/19783>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: segmentation fault when starting radosgw after reverting .rgw.root (`issue#21996 <http://tracker.ceph.com/issues/21996>`_, `pr#20292 <https://github.com/ceph/ceph/pull/20292>`_, Orit Wasserman, Casey Bodley) -* rgw: stale bucket index entry remains after object deletion (`issue#22555 <http://tracker.ceph.com/issues/22555>`_, `pr#20293 <https://github.com/ceph/ceph/pull/20293>`_, J. Eric Ivancich) -* rgw: system user can't delete bucket completely (`issue#22248 <http://tracker.ceph.com/issues/22248>`_, `pr#21212 <https://github.com/ceph/ceph/pull/21212>`_, Casey Bodley) -* rgw: tcmalloc (`issue#23469 <http://tracker.ceph.com/issues/23469>`_, `pr#21073 <https://github.com/ceph/ceph/pull/21073>`_, Matt Benjamin) -* rgw: upldate the max-buckets when the quota is uploaded (`issue#22745 <http://tracker.ceph.com/issues/22745>`_, `pr#20496 <https://github.com/ceph/ceph/pull/20496>`_, zhaokun) -* rgw: user creation can overwrite existing user even if different uid is given (`issue#21685 <http://tracker.ceph.com/issues/21685>`_, `pr#20074 <https://github.com/ceph/ceph/pull/20074>`_, Casey Bodley) -* RHEL 7.3 Selinux denials at OSD start (`issue#19200 <http://tracker.ceph.com/issues/19200>`_, `pr#18780 <https://github.com/ceph/ceph/pull/18780>`_, Boris Ranto) -* scrub errors not cleared on replicas can cause inconsistent pg state when replica takes over primary (`issue#23267 <http://tracker.ceph.com/issues/23267>`_, `pr#21194 <https://github.com/ceph/ceph/pull/21194>`_, David Zafman) -* snapset xattr corruption propagated from primary to other shards (`issue#20186 <http://tracker.ceph.com/issues/20186>`_, `issue#18409 <http://tracker.ceph.com/issues/18409>`_, `issue#21907 <http://tracker.ceph.com/issues/21907>`_, `pr#20331 <https://github.com/ceph/ceph/pull/20331>`_, David Zafman) -* systemd: Add explicit Before=ceph.target (`issue#21477 <http://tracker.ceph.com/issues/21477>`_, `pr#17841 <https://github.com/ceph/ceph/pull/17841>`_, Tim Serong) -* table of contents doesn't render for luminous/jewel docs (`issue#23780 <http://tracker.ceph.com/issues/23780>`_, `pr#21503 <https://github.com/ceph/ceph/pull/21503>`_, Alfredo Deza) -* test: Adjust for Jewel quirk caused of differences with master (`issue#23006 <http://tracker.ceph.com/issues/23006>`_, `pr#20463 <https://github.com/ceph/ceph/pull/20463>`_, David Zafman) -* test/CMakeLists: disable test_pidfile.sh (`issue#20975 <http://tracker.ceph.com/issues/20975>`_, `pr#20557 <https://github.com/ceph/ceph/pull/20557>`_, Sage Weil) -* test_health_warnings.sh can fail (`issue#21121 <http://tracker.ceph.com/issues/21121>`_, `pr#20289 <https://github.com/ceph/ceph/pull/20289>`_, Sage Weil) -* test/librbd: fixed metadata tests under upgrade scenarios (`issue#21911 <http://tracker.ceph.com/issues/21911>`_, `pr#18548 <https://github.com/ceph/ceph/pull/18548>`_, Jason Dillaman) -* test/librbd: utilize unique pool for cache tier testing (`issue#11502 <http://tracker.ceph.com/issues/11502>`_, `pr#20524 <https://github.com/ceph/ceph/pull/20524>`_, Jason Dillaman) -* tests: rbd_mirror_helpers.sh request_resync_image function saves image id to wrong variable (`issue#21663 <http://tracker.ceph.com/issues/21663>`_, `pr#19804 <https://github.com/ceph/ceph/pull/19804>`_, Jason Dillaman) -* tests: test_admin_socket.sh may fail on wait_for_clean (`issue#23499 <http://tracker.ceph.com/issues/23499>`_, `pr#21125 <https://github.com/ceph/ceph/pull/21125>`_, Mykola Golub) -* tests: tests/librbd: updated test_notify to handle new release lock semantics (`issue#21912 <http://tracker.ceph.com/issues/21912>`_, `pr#18560 <https://github.com/ceph/ceph/pull/18560>`_, Jason Dillaman) -* tests: unittest_pglog timeout (`issue#23504 <http://tracker.ceph.com/issues/23504>`_, `issue#18030 <http://tracker.ceph.com/issues/18030>`_, `pr#21135 <https://github.com/ceph/ceph/pull/21135>`_, Nathan Cutler, Loic Dachary) -* tools: ceph-objectstore-tool set-size should clear data-digest (`issue#22112 <http://tracker.ceph.com/issues/22112>`_, `pr#20070 <https://github.com/ceph/ceph/pull/20070>`_, David Zafman) -* Ubuntu amd64 client can not discover the ubuntu arm64 ceph cluster (`issue#19705 <http://tracker.ceph.com/issues/19705>`_, `pr#18294 <https://github.com/ceph/ceph/pull/18294>`_, Kefu Chai) - - - -v10.2.10 Jewel -============== - -This point release brings a number of important bugfixes in all major -components of Ceph, we recommend all Jewel 10.2.x users to upgrade. - -For a detailed list of changes refer to :download: `the complete changelog <../changelog/v10.2.10txt>` - - -Notable Changes ------------------ -* build/ops: Add fix subcommand to ceph-disk, fix SELinux denials, and speed up upgrade from non-SELinux enabled ceph to an SELinux enabled one (`issue#20077 <http://tracker.ceph.com/issues/20077>`_, `issue#20184 <http://tracker.ceph.com/issues/20184>`_, `issue#19545 <http://tracker.ceph.com/issues/19545>`_, `pr#14346 <https://github.com/ceph/ceph/pull/14346>`_, Boris Ranto) -* build/ops: deb: Fix logrotate packaging (`issue#19938 <http://tracker.ceph.com/issues/19938>`_, `pr#15428 <https://github.com/ceph/ceph/pull/15428>`_, Nathan Cutler) -* build/ops: extended, customizable systemd ceph-disk timeout (`issue#18740 <http://tracker.ceph.com/issues/18740>`_, `pr#15051 <https://github.com/ceph/ceph/pull/15051>`_, Alexey Sheplyakov) -* build/ops: rpm: fix python-Sphinx package name for SUSE (`issue#19924 <http://tracker.ceph.com/issues/19924>`_, `pr#15196 <https://github.com/ceph/ceph/pull/15196>`_, Nathan Cutler, Jan Matejek) -* build/ops: rpm: set subman cron attributes in spec file (`issue#20074 <http://tracker.ceph.com/issues/20074>`_, `pr#15473 <https://github.com/ceph/ceph/pull/15473>`_, Thomas Serlin) -* cephfs: ceph-fuse segfaults at mount time, assert in ceph::log::Log::stop (`issue#18157 <http://tracker.ceph.com/issues/18157>`_, `pr#16963 <https://github.com/ceph/ceph/pull/16963>`_, Greg Farnum) -* cephfs: df reports negative disk "used" value when quota exceed (`issue#20178 <http://tracker.ceph.com/issues/20178>`_, `pr#16151 <https://github.com/ceph/ceph/pull/16151>`_, John Spray) -* cephfs: get_quota_root sends lookupname op for every buffered write (`issue#20945 <http://tracker.ceph.com/issues/20945>`_, `pr#17396 <https://github.com/ceph/ceph/pull/17396>`_, Dan van der Ster) -* cephfs: osdc/Filer: truncate large file party by party (`issue#19755 <http://tracker.ceph.com/issues/19755>`_, `pr#15442 <https://github.com/ceph/ceph/pull/15442>`_, "Yan, Zheng") -* core: an OSD was seen getting ENOSPC even with osd_failsafe_full_ratio passed (`issue#20544 <http://tracker.ceph.com/issues/20544>`_, `issue#16878 <http://tracker.ceph.com/issues/16878>`_, `issue#19733 <http://tracker.ceph.com/issues/19733>`_, `issue#15912 <http://tracker.ceph.com/issues/15912>`_, `pr#15050 <https://github.com/ceph/ceph/pull/15050>`_, Sage Weil, David Zafman) -* core: disable skewed utilization warning by default (`issue#20730 <http://tracker.ceph.com/issues/20730>`_, `pr#17210 <https://github.com/ceph/ceph/pull/17210>`_, David Zafman) -* core: interval_set: optimize intersect_of insert operations (`issue#21229 <http://tracker.ceph.com/issues/21229>`_, `pr#17514 <https://github.com/ceph/ceph/pull/17514>`_, Zac Medico) -* core: kv: let ceph_logger destructed after db reset (`issue#21336 <http://tracker.ceph.com/issues/21336>`_, `pr#17626 <https://github.com/ceph/ceph/pull/17626>`_, wumingqiao) -* core: test_envlibrados_for_rocksdb.yaml fails on crypto restart (`issue#19741 <http://tracker.ceph.com/issues/19741>`_, `pr#16293 <https://github.com/ceph/ceph/pull/16293>`_, Kefu Chai) -* libradosstriper silently fails to delete empty objects in jewel (`issue#20325 <http://tracker.ceph.com/issues/20325>`_, `pr#15760 <https://github.com/ceph/ceph/pull/15760>`_, Stan K) -* librbd: fail IO request when exclusive lock cannot be obtained (`issue#20168 <http://tracker.ceph.com/issues/20168>`_, `issue#21251 <http://tracker.ceph.com/issues/21251>`_, `pr#17402 <https://github.com/ceph/ceph/pull/17402>`_, Jason Dillaman) -* librbd: prevent self-blacklisting during break lock (`issue#18666 <http://tracker.ceph.com/issues/18666>`_, `pr#17412 <https://github.com/ceph/ceph/pull/17412>`_, Jason Dillaman) -* librbd: reacquire lock should update lock owner client id (`issue#19929 <http://tracker.ceph.com/issues/19929>`_, `pr#17385 <https://github.com/ceph/ceph/pull/17385>`_, Jason Dillaman) -* mds: damage reporting by ino number is useless (`issue#18509 <http://tracker.ceph.com/issues/18509>`_, `issue#16016 <http://tracker.ceph.com/issues/16016>`_, `pr#14699 <https://github.com/ceph/ceph/pull/14699>`_, John Spray, Michal Jarzabek) -* mds: log rotation doesn't work if mds has respawned (`issue#19291 <http://tracker.ceph.com/issues/19291>`_, `pr#14673 <https://github.com/ceph/ceph/pull/14673>`_, Patrick Donnelly) -* mds: save projected path into inode_t::stray_prior_path (`issue#20340 <http://tracker.ceph.com/issues/20340>`_, `pr#16150 <https://github.com/ceph/ceph/pull/16150>`_, "Yan, Zheng") -* mon: crash on shutdown, lease_ack_timeout event (`issue#19825 <http://tracker.ceph.com/issues/19825>`_, `pr#15083 <https://github.com/ceph/ceph/pull/15083>`_, Kefu Chai, Michal Jarzabek, Alexey Sheplyakov) -* mon: Disallow enabling 'hashpspool' option to a pool without some kind of --i-understand-this-will-remap-all-pgs flag (`issue#18468 <http://tracker.ceph.com/issues/18468>`_, `pr#13507 <https://github.com/ceph/ceph/pull/13507>`_, Vikhyat Umrao) -* mon: factor mon_osd_full_ratio into MAX AVAIL calc (`issue#18522 <http://tracker.ceph.com/issues/18522>`_, `pr#15236 <https://github.com/ceph/ceph/pull/15236>`_, Sage Weil) -* mon: fail to form large quorum; msg/async busy loop (`issue#20230 <http://tracker.ceph.com/issues/20230>`_, `pr#15726 <https://github.com/ceph/ceph/pull/15726>`_, Haomai Wang, Michal Jarzabek) -* mon: fix force_pg_create pg stuck in creating bug (`issue#18298 <http://tracker.ceph.com/issues/18298>`_, `pr#17008 <https://github.com/ceph/ceph/pull/17008>`_, Alexey Sheplyakov) -* mon: osd crush set crushmap need sanity check (`issue#19302 <http://tracker.ceph.com/issues/19302>`_, `pr#16144 <https://github.com/ceph/ceph/pull/16144>`_, Loic Dachary) -* osd: Add heartbeat message for Jumbo Frames (MTU 9000) (`issue#20087 <http://tracker.ceph.com/issues/20087>`_, `issue#20323 <http://tracker.ceph.com/issues/20323>`_, `pr#16059 <https://github.com/ceph/ceph/pull/16059>`_, Piotr Dałek, Sage Weil, Greg Farnum) -* osd: fix infinite loops in fiemap (`issue#19996 <http://tracker.ceph.com/issues/19996>`_, `pr#15189 <https://github.com/ceph/ceph/pull/15189>`_, Sage Weil, Ning Yao) -* osd: leaked MOSDMap (`issue#18293 <http://tracker.ceph.com/issues/18293>`_, `pr#14943 <https://github.com/ceph/ceph/pull/14943>`_, Sage Weil) -* osd: objecter full_try behavior not consistent with osd (`issue#19430 <http://tracker.ceph.com/issues/19430>`_, `pr#15474 <https://github.com/ceph/ceph/pull/15474>`_, Sage Weil) -* osd: omap threadpool heartbeat is only reset every 100 values (`issue#20375 <http://tracker.ceph.com/issues/20375>`_, `pr#16167 <https://github.com/ceph/ceph/pull/16167>`_, Josh Durgin) -* osd: osd_internal_types: wake snaptrimmer on put_read lock, too (`issue#19131 <http://tracker.ceph.com/issues/19131>`_, `pr#16015 <https://github.com/ceph/ceph/pull/16015>`_, Sage Weil) -* osd: PrimaryLogPG: do not call on_shutdown() if (pg.deleting) (`issue#19902 <http://tracker.ceph.com/issues/19902>`_, `pr#15065 <https://github.com/ceph/ceph/pull/15065>`_, Kefu Chai) -* osd: rados ls on pool with no access returns no error (`issue#20043 <http://tracker.ceph.com/issues/20043>`_, `issue#19790 <http://tracker.ceph.com/issues/19790>`_, `pr#16473 <https://github.com/ceph/ceph/pull/16473>`_, Nathan Cutler, Kefu Chai, John Spray, Sage Weil, Brad Hubbard) -* osd: ReplicatedPG: solve cache tier osd high memory consumption (`issue#20464 <http://tracker.ceph.com/issues/20464>`_, `pr#16169 <https://github.com/ceph/ceph/pull/16169>`_, Peng Xie) -* osd: Reset() snaptrimmer on shutdown and do not default-abort on leaked pg refs (`issue#19931 <http://tracker.ceph.com/issues/19931>`_, `pr#15322 <https://github.com/ceph/ceph/pull/15322>`_, Greg Farnum) -* osd: scrub_to specifies clone ver, but transaction include head write ver (`issue#20041 <http://tracker.ceph.com/issues/20041>`_, `pr#16405 <https://github.com/ceph/ceph/pull/16405>`_, David Zafman) -* osd: unlock sdata_op_ordering_lock with sdata_lock hold to avoid missing wakeup signal (`issue#20427 <http://tracker.ceph.com/issues/20427>`_, `pr#15947 <https://github.com/ceph/ceph/pull/15947>`_, Alexey Sheplyakov) -* qa: add a sleep after restarting osd before "tell"ing it (`issue#16239 <http://tracker.ceph.com/issues/16239>`_, `pr#15475 <https://github.com/ceph/ceph/pull/15475>`_, Kefu Chai) -* rbd: api: is_exclusive_lock_owner shouldn't return -EBUSY (`issue#20182 <http://tracker.ceph.com/issues/20182>`_, `pr#16296 <https://github.com/ceph/ceph/pull/16296>`_, Jason Dillaman) -* rbd: cli: ensure positional arguments exist before casting (`issue#20185 <http://tracker.ceph.com/issues/20185>`_, `pr#16295 <https://github.com/ceph/ceph/pull/16295>`_, Jason Dillaman) -* rbd: cli: map with cephx disabled results in error message (`issue#19035 <http://tracker.ceph.com/issues/19035>`_, `pr#16297 <https://github.com/ceph/ceph/pull/16297>`_, Jason Dillaman) -* rbd: default features should be negotiated with the OSD (`issue#17010 <http://tracker.ceph.com/issues/17010>`_, `pr#14874 <https://github.com/ceph/ceph/pull/14874>`_, Mykola Golub, Jason Dillaman) -* rbd: Enabling mirroring for a pool with clones may fail (`issue#19798 <http://tracker.ceph.com/issues/19798>`_, `issue#19130 <http://tracker.ceph.com/issues/19130>`_, `pr#14663 <https://github.com/ceph/ceph/pull/14663>`_, Mykola Golub, Jason Dillaman) -* rbd-mirror: image sync should send NOCACHE advise flag (`issue#17127 <http://tracker.ceph.com/issues/17127>`_, `pr#16285 <https://github.com/ceph/ceph/pull/16285>`_, Mykola Golub) -* rbd: object-map: batch updates during trim operation (`issue#17356 <http://tracker.ceph.com/issues/17356>`_, `pr#15460 <https://github.com/ceph/ceph/pull/15460>`_, Mykola Golub, Venky Shankar, Nathan Cutler) -* rbd: Potential IO hang if image is flattened while read request is in-flight (`issue#19832 <http://tracker.ceph.com/issues/19832>`_, `pr#15464 <https://github.com/ceph/ceph/pull/15464>`_, Jason Dillaman) -* rbd: rbd_clone_copy_on_read ineffective with exclusive-lock (`issue#18888 <http://tracker.ceph.com/issues/18888>`_, `pr#16124 <https://github.com/ceph/ceph/pull/16124>`_, Nathan Cutler, Venky Shankar, Jason Dillaman) -* rbd: rbd-mirror: ensure missing images are re-synced when detected (`issue#19811 <http://tracker.ceph.com/issues/19811>`_, `pr#15488 <https://github.com/ceph/ceph/pull/15488>`_, Jason Dillaman) -* rbd: rbd-mirror: failover and failback of unmodified image results in split-brain (`issue#19858 <http://tracker.ceph.com/issues/19858>`_, `pr#14977 <https://github.com/ceph/ceph/pull/14977>`_, Jason Dillaman) -* rbd: rbd-nbd: kernel reported invalid device size (0, expected 1073741824) (`issue#19871 <http://tracker.ceph.com/issues/19871>`_, `pr#15463 <https://github.com/ceph/ceph/pull/15463>`_, Mykola Golub) -* rgw: add the remove-x-delete feature to cancel swift object expiration (`issue#19074 <http://tracker.ceph.com/issues/19074>`_, `pr#14659 <https://github.com/ceph/ceph/pull/14659>`_, Jing Wenjun) -* rgw: aws4: add rgw_s3_auth_aws4_force_boto2_compat conf option (`issue#16463 <http://tracker.ceph.com/issues/16463>`_, `pr#17009 <https://github.com/ceph/ceph/pull/17009>`_, Javier M. Mellid) -* rgw: bucket index check in radosgw-admin removes valid index (`issue#18470 <http://tracker.ceph.com/issues/18470>`_, `pr#16856 <https://github.com/ceph/ceph/pull/16856>`_, Zhang Shaowen, Pavan Rallabhandi) -* rgw: cls: ceph::timespan tag_timeout wrong units (`issue#20380 <http://tracker.ceph.com/issues/20380>`_, `pr#16289 <https://github.com/ceph/ceph/pull/16289>`_, Matt Benjamin) -* rgw: Custom data header support (`issue#19644 <http://tracker.ceph.com/issues/19644>`_, `pr#15966 <https://github.com/ceph/ceph/pull/15966>`_, Pavan Rallabhandi) -* rgw: datalog trim can't work as expected (`issue#20190 <http://tracker.ceph.com/issues/20190>`_, `pr#16299 <https://github.com/ceph/ceph/pull/16299>`_, Zhang Shaowen) -* rgw: Delete non-empty bucket in slave zonegroup (`issue#19313 <http://tracker.ceph.com/issues/19313>`_, `pr#15477 <https://github.com/ceph/ceph/pull/15477>`_, Zhang Shaowen) -* rgw: Do not decrement stats cache when the cache values are zero (`issue#20661 <http://tracker.ceph.com/issues/20661>`_, `issue#20934 <http://tracker.ceph.com/issues/20934>`_, `pr#16720 <https://github.com/ceph/ceph/pull/16720>`_, Aleksei Gutikov, Pavan Rallabhandi) -* rgw: fix crash caused by shard id out of range when listing data log (`issue#19732 <http://tracker.ceph.com/issues/19732>`_, `pr#15465 <https://github.com/ceph/ceph/pull/15465>`_, redickwang) -* rgw: fix hangs in RGWRealmReloader::reload on SIGHUP (`issue#20686 <http://tracker.ceph.com/issues/20686>`_, `pr#17281 <https://github.com/ceph/ceph/pull/17281>`_, fang.yuxiang) -* rgw: fix infinite loop in rest api for log list (`issue#20386 <http://tracker.ceph.com/issues/20386>`_, `pr#15988 <https://github.com/ceph/ceph/pull/15988>`_, xierui, Casey Bodley) -* rgw: fix race in RGWCompleteMultipart (`issue#20861 <http://tracker.ceph.com/issues/20861>`_, `pr#16767 <https://github.com/ceph/ceph/pull/16767>`_, Abhishek Varshney, Matt Benjamin) -* rgw: Fix up to 1000 entries at a time in check_bad_index_multipart (`issue#20772 <http://tracker.ceph.com/issues/20772>`_, `pr#16880 <https://github.com/ceph/ceph/pull/16880>`_, Orit Wasserman, Matt Benjamin) -* rgw: folders starting with _ underscore are not in bucket index (`issue#19432 <http://tracker.ceph.com/issues/19432>`_, `pr#16276 <https://github.com/ceph/ceph/pull/16276>`_, Giovani Rinaldi, Orit Wasserman) -* rgw: 'gc list --include-all' command infinite loop the first 1000 items (`issue#19978 <http://tracker.ceph.com/issues/19978>`_, `pr#15719 <https://github.com/ceph/ceph/pull/15719>`_, Shasha Lu, fang yuxiang) -* rgw: meta sync thread crash at RGWMetaSyncShardCR (`issue#20251 <http://tracker.ceph.com/issues/20251>`_, `pr#16711 <https://github.com/ceph/ceph/pull/16711>`_, fang yuxiang, Nathan Cutler) -* rgw: multipart copy-part remove '/' for s3 java sdk request header (`issue#20075 <http://tracker.ceph.com/issues/20075>`_, `pr#16266 <https://github.com/ceph/ceph/pull/16266>`_, donglingpeng) -* rgw: multipart parts on versioned bucket create versioned bucket index entries (`issue#19604 <http://tracker.ceph.com/issues/19604>`_, `issue#17964 <http://tracker.ceph.com/issues/17964>`_, `pr#17278 <https://github.com/ceph/ceph/pull/17278>`_, Zhang Shaowen) -* rgw: multisite: after CreateBucket is forwarded to master, local bucket may use different value for bucket index shards (`issue#19745 <http://tracker.ceph.com/issues/19745>`_, `pr#15450 <https://github.com/ceph/ceph/pull/15450>`_, Shasha Lu) -* rgw: multisite: bucket zonegroup redirect not working (`issue#19488 <http://tracker.ceph.com/issues/19488>`_, `pr#15448 <https://github.com/ceph/ceph/pull/15448>`_, Casey Bodley) -* rgw: multisite: fixes for meta sync across periods (`issue#18639 <http://tracker.ceph.com/issues/18639>`_, `pr#15556 <https://github.com/ceph/ceph/pull/15556>`_, Casey Bodley) -* rgw: multisite: lock is not released when RGWMetaSyncShardCR::full_sync() fails to write marker (`issue#18077 <http://tracker.ceph.com/issues/18077>`_, `pr#17155 <https://github.com/ceph/ceph/pull/17155>`_, Zhang Shaowen) -* rgw: multisite: log_meta on secondary zone causes continuous loop of metadata sync (`issue#20357 <http://tracker.ceph.com/issues/20357>`_, `issue#20244 <http://tracker.ceph.com/issues/20244>`_, `pr#17148 <https://github.com/ceph/ceph/pull/17148>`_, Orit Wasserman, Casey Bodley) -* rgw: multisite: memory leak on failed lease in RGWDataSyncShardCR (`issue#19861 <http://tracker.ceph.com/issues/19861>`_, `issue#19834 <http://tracker.ceph.com/issues/19834>`_, `issue#19446 <http://tracker.ceph.com/issues/19446>`_, `pr#15457 <https://github.com/ceph/ceph/pull/15457>`_, Casey Bodley, weiqiaomiao) -* rgw: multisite: operating bucket's acl&cors is not restricted on slave zone (`issue#16888 <http://tracker.ceph.com/issues/16888>`_, `pr#15453 <https://github.com/ceph/ceph/pull/15453>`_, Casey Bodley, Shasha Lu, Guo Zhandong) -* rgw: multisite: realm rename does not propagate to other clusters (`issue#19746 <http://tracker.ceph.com/issues/19746>`_, `pr#15454 <https://github.com/ceph/ceph/pull/15454>`_, Casey Bodley) -* rgw: multisite: rest api fails to decode large period on "period commit" (`issue#19505 <http://tracker.ceph.com/issues/19505>`_, `pr#15447 <https://github.com/ceph/ceph/pull/15447>`_, Casey Bodley) -* rgw: multisite: RGWPeriodPuller does not call RGWPeriod::reflect() on new period (`issue#19816 <http://tracker.ceph.com/issues/19816>`_, `issue#19817 <http://tracker.ceph.com/issues/19817>`_, `pr#17167 <https://github.com/ceph/ceph/pull/17167>`_, Casey Bodley) -* rgw: multisite: RGWRadosRemoveOmapKeysCR::request_complete return val is wrong (`issue#20539 <http://tracker.ceph.com/issues/20539>`_, `pr#17156 <https://github.com/ceph/ceph/pull/17156>`_, Shasha Lu) -* rgw: not initialized pointer cause rgw crash with ec data pool (`issue#20542 <http://tracker.ceph.com/issues/20542>`_, `pr#17164 <https://github.com/ceph/ceph/pull/17164>`_, Aleksei Gutikov, fang yuxiang) -* rgw: radosgw-admin: bucket rm with --bypass-gc and without --purge-data doesn't throw error message (`issue#20688 <http://tracker.ceph.com/issues/20688>`_, `pr#17159 <https://github.com/ceph/ceph/pull/17159>`_, Abhishek Varshney) -* rgw: radosgw-admin data sync run crash (`issue#20423 <http://tracker.ceph.com/issues/20423>`_, `pr#17165 <https://github.com/ceph/ceph/pull/17165>`_, Shasha Lu) -* rgw: radosgw-admin: fix bucket limit check argparse, div(0) (`issue#20966 <http://tracker.ceph.com/issues/20966>`_, `pr#16952 <https://github.com/ceph/ceph/pull/16952>`_, Matt Benjamin) -* rgw: reduce log level of 'storing entry at' in cls_log (`issue#19835 <http://tracker.ceph.com/issues/19835>`_, `pr#15455 <https://github.com/ceph/ceph/pull/15455>`_, Willem Jan Withagen) -* rgw: remove unnecessary 'error in read_id for object name: default' (`issue#19922 <http://tracker.ceph.com/issues/19922>`_, `pr#15197 <https://github.com/ceph/ceph/pull/15197>`_, weiqiaomiao) -* rgw: replace '+' with "%20" in canonical query string for s3 v4 auth (`issue#20501 <http://tracker.ceph.com/issues/20501>`_, `pr#16951 <https://github.com/ceph/ceph/pull/16951>`_, Zhang Shaowen, Matt Benjamin) -* rgw: rgw_common.cc: modify the end check in RGWHTTPArgs::sys_get (`issue#16072 <http://tracker.ceph.com/issues/16072>`_, `pr#16268 <https://github.com/ceph/ceph/pull/16268>`_, zhao kun) -* rgw: rgw_file: cannot delete bucket w/uxattrs (`issue#20061 <http://tracker.ceph.com/issues/20061>`_, `issue#20047 <http://tracker.ceph.com/issues/20047>`_, `issue#19214 <http://tracker.ceph.com/issues/19214>`_, `issue#20045 <http://tracker.ceph.com/issues/20045>`_, `pr#15459 <https://github.com/ceph/ceph/pull/15459>`_, Matt Benjamin) -* rgw: rgw_file: fix size and (c|m)time unix attrs in write_finish (`issue#19653 <http://tracker.ceph.com/issues/19653>`_, `pr#15449 <https://github.com/ceph/ceph/pull/15449>`_, Matt Benjamin) -* rgw: rgw_file: incorrect lane lock behavior in evict_block() (`issue#21141 <http://tracker.ceph.com/issues/21141>`_, `pr#17597 <https://github.com/ceph/ceph/pull/17597>`_, Matt Benjamin) -* rgw: rgw_file: prevent conflict of mkdir between restarts (`issue#20275 <http://tracker.ceph.com/issues/20275>`_, `pr#17147 <https://github.com/ceph/ceph/pull/17147>`_, Gui Hecheng) -* rgw: rgw_file: v3 write timer does not close open handles (`issue#19932 <http://tracker.ceph.com/issues/19932>`_, `pr#15456 <https://github.com/ceph/ceph/pull/15456>`_, Matt Benjamin) -* rgw: Segmentation fault when exporting rgw bucket in nfs-ganesha (`issue#20663 <http://tracker.ceph.com/issues/20663>`_, `pr#17285 <https://github.com/ceph/ceph/pull/17285>`_, Matt Benjamin) -* rgw: send data-log list infinitely (`issue#20951 <http://tracker.ceph.com/issues/20951>`_, `pr#17287 <https://github.com/ceph/ceph/pull/17287>`_, fang.yuxiang) -* rgw: set latest object's acl failed (`issue#18649 <http://tracker.ceph.com/issues/18649>`_, `pr#15451 <https://github.com/ceph/ceph/pull/15451>`_, Zhang Shaowen) -* rgw: Truncated objects (`issue#20107 <http://tracker.ceph.com/issues/20107>`_, `pr#17166 <https://github.com/ceph/ceph/pull/17166>`_, Yehuda Sadeh) -* rgw: uninitialized memory is accessed during creation of bucket's metadata (`issue#20774 <http://tracker.ceph.com/issues/20774>`_, `pr#17280 <https://github.com/ceph/ceph/pull/17280>`_, Radoslaw Zarzynski) -* rgw: usage logging on tenated buckets causes invalid memory reads (`issue#20779 <http://tracker.ceph.com/issues/20779>`_, `pr#17279 <https://github.com/ceph/ceph/pull/17279>`_, Radoslaw Zarzynski) -* rgw: user quota did not work well on multipart upload (`issue#19285 <http://tracker.ceph.com/issues/19285>`_, `issue#19602 <http://tracker.ceph.com/issues/19602>`_, `pr#17277 <https://github.com/ceph/ceph/pull/17277>`_, Zhang Shaowen) -* rgw: VersionIdMarker and NextVersionIdMarker are not returned when listing object versions (`issue#19886 <http://tracker.ceph.com/issues/19886>`_, `pr#16316 <https://github.com/ceph/ceph/pull/16316>`_, Zhang Shaowen) -* rgw: when uploading objects continuously into a versioned bucket, some objects will not sync (`issue#18208 <http://tracker.ceph.com/issues/18208>`_, `pr#15452 <https://github.com/ceph/ceph/pull/15452>`_, lvshuhua) -* tools: ceph cli: Rados object in state configuring race (`issue#16477 <http://tracker.ceph.com/issues/16477>`_, `pr#15762 <https://github.com/ceph/ceph/pull/15762>`_, Loic Dachary) -* tools: ceph-disk: dmcrypt cluster must default to ceph (`issue#20893 <http://tracker.ceph.com/issues/20893>`_, `pr#16870 <https://github.com/ceph/ceph/pull/16870>`_, Loic Dachary) -* tools: ceph-disk: don't activate suppressed journal devices (`issue#19489 <http://tracker.ceph.com/issues/19489>`_, `pr#16703 <https://github.com/ceph/ceph/pull/16703>`_, David Disseldorp) -* tools: ceph-disk: separate ceph-osd --check-needs-\* logs (`issue#19888 <http://tracker.ceph.com/issues/19888>`_, `pr#15503 <https://github.com/ceph/ceph/pull/15503>`_, Loic Dachary) -* tools: ceph-disk: systemd unit timesout too quickly (`issue#20229 <http://tracker.ceph.com/issues/20229>`_, `pr#17133 <https://github.com/ceph/ceph/pull/17133>`_, Loic Dachary) -* tools: ceph-disk: Use stdin for 'config-key put' command (`issue#21059 <http://tracker.ceph.com/issues/21059>`_, `pr#17084 <https://github.com/ceph/ceph/pull/17084>`_, Brad Hubbard, Loic Dachary, Sage Weil) -* tools: libradosstriper processes arbitrary printf placeholders in user input (`issue#20240 <http://tracker.ceph.com/issues/20240>`_, `pr#17574 <https://github.com/ceph/ceph/pull/17574>`_, Stan K) - - -v10.2.9 Jewel -============= - -This point release fixes a regression introduced in v10.2.8. - -We recommend that all Jewel users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.9.txt>`. - - -Notable Changes ---------------- - -* cephfs: Damaged MDS with 10.2.8 (`issue#20599 <http://tracker.ceph.com/issues/20599>`_, `pr#16282 <https://github.com/ceph/ceph/pull/16282>`_, Nathan Cutler) - - - -v10.2.8 Jewel -============= - -This point release brought a number of important bugfixes in all major -components of Ceph. However, it also introduced a regression that could cause -MDS damage, and a new release, v10.2.9, was published to address this. -Therefore, Jewel users should *not* upgrade to this version - instead, we -recommend upgrading directly to v10.2.9. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.8.txt>`. - -OSD Removal Caveat ------------------- - -There was a bug introduced in Jewel (#19119) that broke the mapping behavior -when an "out" OSD that still existed in the CRUSH map was removed with 'osd rm'. -This could result in 'misdirected op' and other errors. The bug is now fixed, -but the fix itself introduces the same risk because the behavior may vary between -clients and OSDs. To avoid problems, please ensure that all OSDs are removed -from the CRUSH map before deleting them. That is, be sure to do:: - - ceph osd crush rm osd.123 - -before:: - - ceph osd rm osd.123 - -Snap Trimmer Improvements -------------------------- - -This release greatly improves control and throttling of the snap trimmer. It -introduces the "osd max trimming pgs" option (defaulting to 2), which limits -how many PGs on an OSD can be trimming snapshots at a time. And it restores -the safe use of the "osd snap trim sleep" option, which defaults to 0 but -otherwise adds the given number of seconds in delay between every dispatch -of trim operations to the underlying system. - -Other Notable Changes ---------------------- - -* build/ops: "osd marked itself down" will not recognised if host runs mon + osd on shutdown/reboot (`issue#18516 <http://tracker.ceph.com/issues/18516>`_, `pr#13492 <https://github.com/ceph/ceph/pull/13492>`_, Boris Ranto) -* build/ops: ceph-base package missing dependency for psmisc (`issue#19129 <http://tracker.ceph.com/issues/19129>`_, `pr#13786 <https://github.com/ceph/ceph/pull/13786>`_, Nathan Cutler) -* build/ops: enable build of ceph-resource-agents package on rpm-based os (`issue#17613 <http://tracker.ceph.com/issues/17613>`_, `issue#19546 <http://tracker.ceph.com/issues/19546>`_, `pr#13606 <https://github.com/ceph/ceph/pull/13606>`_, Nathan Cutler) -* build/ops: rbdmap.service not included in debian packaging (jewel-only) (`issue#19547 <http://tracker.ceph.com/issues/19547>`_, `pr#14383 <https://github.com/ceph/ceph/pull/14383>`_, Ken Dreyer) -* cephfs: Journaler may execute on_safe contexts prematurely (`issue#20055 <http://tracker.ceph.com/issues/20055>`_, `pr#15468 <https://github.com/ceph/ceph/pull/15468>`_, "Yan, Zheng") -* cephfs: MDS assert failed when shutting down (`issue#19204 <http://tracker.ceph.com/issues/19204>`_, `pr#14683 <https://github.com/ceph/ceph/pull/14683>`_, John Spray) -* cephfs: MDS goes readonly writing backtrace for a file whose data pool has been removed (`issue#19401 <http://tracker.ceph.com/issues/19401>`_, `pr#14682 <https://github.com/ceph/ceph/pull/14682>`_, John Spray) -* cephfs: MDS server crashes due to inconsistent metadata (`issue#19406 <http://tracker.ceph.com/issues/19406>`_, `pr#14676 <https://github.com/ceph/ceph/pull/14676>`_, John Spray) -* cephfs: No output for ceph mds rmfailed 0 --yes-i-really-mean-it command (`issue#16709 <http://tracker.ceph.com/issues/16709>`_, `pr#14674 <https://github.com/ceph/ceph/pull/14674>`_, John Spray) -* cephfs: Test failure: test_data_isolated (tasks.cephfs.test_volume_client.TestVolumeClient) (`issue#18914 <http://tracker.ceph.com/issues/18914>`_, `pr#14685 <https://github.com/ceph/ceph/pull/14685>`_, "Yan, Zheng") -* cephfs: Test failure: test_open_inode (`issue#18661 <http://tracker.ceph.com/issues/18661>`_, `pr#14669 <https://github.com/ceph/ceph/pull/14669>`_, John Spray) -* cephfs: The mount point break off when mds switch hanppened (`issue#19437 <http://tracker.ceph.com/issues/19437>`_, `pr#14679 <https://github.com/ceph/ceph/pull/14679>`_, Guan yunfei) -* cephfs: ceph-fuse does not recover after lost connection to MDS (`issue#16743 <http://tracker.ceph.com/issues/16743>`_, `issue#18757 <http://tracker.ceph.com/issues/18757>`_, `pr#14698 <https://github.com/ceph/ceph/pull/14698>`_, Kefu Chai, Henrik Korkuc, Patrick Donnelly) -* cephfs: client: fix the cross-quota rename boundary check conditions (`issue#18699 <http://tracker.ceph.com/issues/18699>`_, `pr#14667 <https://github.com/ceph/ceph/pull/14667>`_, Greg Farnum) -* cephfs: mds is crushed, after I set about 400 64KB xattr kv pairs to a file (`issue#19033 <http://tracker.ceph.com/issues/19033>`_, `pr#14684 <https://github.com/ceph/ceph/pull/14684>`_, Yang Honggang) -* cephfs: non-local quota changes not visible until some IO is done (`issue#17939 <http://tracker.ceph.com/issues/17939>`_, `pr#15466 <https://github.com/ceph/ceph/pull/15466>`_, John Spray, Nathan Cutler) -* cephfs: normalize file open flags internally used by cephfs (`issue#18872 <http://tracker.ceph.com/issues/18872>`_, `issue#19890 <http://tracker.ceph.com/issues/19890>`_, `pr#15000 <https://github.com/ceph/ceph/pull/15000>`_, Jan Fajerski, "Yan, Zheng") -* common: monitor creation with IPv6 public network segfaults (`issue#19371 <http://tracker.ceph.com/issues/19371>`_, `pr#14324 <https://github.com/ceph/ceph/pull/14324>`_, Fabian Grünbichler) -* common: radosstriper: protect aio_write API from calls with 0 bytes (`issue#14609 <http://tracker.ceph.com/issues/14609>`_, `pr#13254 <https://github.com/ceph/ceph/pull/13254>`_, Sebastien Ponce) -* core: Objecter::epoch_barrier isn't respected in _op_submit() (`issue#19396 <http://tracker.ceph.com/issues/19396>`_, `pr#14332 <https://github.com/ceph/ceph/pull/14332>`_, Ilya Dryomov) -* core: clear divergent_priors set off disk (`issue#17916 <http://tracker.ceph.com/issues/17916>`_, `pr#14596 <https://github.com/ceph/ceph/pull/14596>`_, Greg Farnum) -* core: improve snap trimming, enable restriction of parallelism (`issue#19241 <http://tracker.ceph.com/issues/19241>`_, `pr#14492 <https://github.com/ceph/ceph/pull/14492>`_, Samuel Just, Greg Farnum) -* core: os/filestore/HashIndex: be loud about splits (`issue#18235 <http://tracker.ceph.com/issues/18235>`_, `pr#13788 <https://github.com/ceph/ceph/pull/13788>`_, Dan van der Ster) -* core: os/filestore: fix clang static check warn use-after-free (`issue#19311 <http://tracker.ceph.com/issues/19311>`_, `pr#14044 <https://github.com/ceph/ceph/pull/14044>`_, liuchang0812, yaoning) -* core: transient jerasure unit test failures (`issue#18070 <http://tracker.ceph.com/issues/18070>`_, `issue#17762 <http://tracker.ceph.com/issues/17762>`_, `issue#18128 <http://tracker.ceph.com/issues/18128>`_, `issue#17951 <http://tracker.ceph.com/issues/17951>`_, `pr#14701 <https://github.com/ceph/ceph/pull/14701>`_, Kefu Chai, Pan Liu, Loic Dachary, Jason Dillaman) -* core: two instances of omap_digest mismatch (`issue#18533 <http://tracker.ceph.com/issues/18533>`_, `pr#14204 <https://github.com/ceph/ceph/pull/14204>`_, Samuel Just, David Zafman) -* doc: Improvements to crushtool manpage (`issue#19649 <http://tracker.ceph.com/issues/19649>`_, `pr#14635 <https://github.com/ceph/ceph/pull/14635>`_, Loic Dachary, Nathan Cutler) -* doc: PendingReleaseNotes: note about 19119 (`issue#19119 <http://tracker.ceph.com/issues/19119>`_, `pr#13732 <https://github.com/ceph/ceph/pull/13732>`_, Sage Weil) -* doc: admin ops: fix the quota section (`issue#19397 <http://tracker.ceph.com/issues/19397>`_, `pr#14654 <https://github.com/ceph/ceph/pull/14654>`_, Chu, Hua-Rong) -* doc: radosgw-admin: add the 'object stat' command to usage (`issue#19013 <http://tracker.ceph.com/issues/19013>`_, `pr#13872 <https://github.com/ceph/ceph/pull/13872>`_, Pavan Rallabhandi) -* doc: rgw S3 create bucket should not do response in json (`issue#18889 <http://tracker.ceph.com/issues/18889>`_, `pr#13874 <https://github.com/ceph/ceph/pull/13874>`_, Abhishek Lekshmanan) -* fs: Invalid error code returned by MDS is causing a kernel client WARNING (`issue#19205 <http://tracker.ceph.com/issues/19205>`_, `pr#13831 <https://github.com/ceph/ceph/pull/13831>`_, Jan Fajerski, xie xingguo) -* librbd: Incomplete declaration for ContextWQ in librbd/Journal.h (`issue#18862 <http://tracker.ceph.com/issues/18862>`_, `pr#14152 <https://github.com/ceph/ceph/pull/14152>`_, Boris Ranto) -* librbd: Issues with C API image metadata retrieval functions (`issue#19588 <http://tracker.ceph.com/issues/19588>`_, `pr#14666 <https://github.com/ceph/ceph/pull/14666>`_, Mykola Golub) -* librbd: Possible deadlock performing a synchronous API action while refresh in-progress (`issue#18419 <http://tracker.ceph.com/issues/18419>`_, `pr#13154 <https://github.com/ceph/ceph/pull/13154>`_, Jason Dillaman) -* librbd: is_exclusive_lock_owner API should ping OSD (`issue#19287 <http://tracker.ceph.com/issues/19287>`_, `pr#14481 <https://github.com/ceph/ceph/pull/14481>`_, Jason Dillaman) -* librbd: remove image header lock assertions (`issue#18244 <http://tracker.ceph.com/issues/18244>`_, `pr#13809 <https://github.com/ceph/ceph/pull/13809>`_, Jason Dillaman) -* mds: C_MDSInternalNoop::complete doesn't free itself (`issue#19501 <http://tracker.ceph.com/issues/19501>`_, `pr#14677 <https://github.com/ceph/ceph/pull/14677>`_, "Yan, Zheng") -* mds: Too many stat ops when trying to probe a large file (`issue#19955 <http://tracker.ceph.com/issues/19955>`_, `pr#15472 <https://github.com/ceph/ceph/pull/15472>`_, "Yan, Zheng") -* mds: avoid reusing deleted inode in StrayManager::_purge_stray_logged (`issue#18877 <http://tracker.ceph.com/issues/18877>`_, `pr#14670 <https://github.com/ceph/ceph/pull/14670>`_, Zhi Zhang) -* mds: enable start when session ino info is corrupt (`issue#19708 <http://tracker.ceph.com/issues/19708>`_, `issue#16842 <http://tracker.ceph.com/issues/16842>`_, `pr#14700 <https://github.com/ceph/ceph/pull/14700>`_, John Spray) -* mds: fragment space check can cause replayed request fail (`issue#18660 <http://tracker.ceph.com/issues/18660>`_, `pr#14668 <https://github.com/ceph/ceph/pull/14668>`_, "Yan, Zheng") -* mds: heartbeat timeout during rejoin, when working with large amount of caps/inodes (`issue#19118 <http://tracker.ceph.com/issues/19118>`_, `pr#14672 <https://github.com/ceph/ceph/pull/14672>`_, John Spray) -* mds: issue new caps when sending reply to client (`issue#19635 <http://tracker.ceph.com/issues/19635>`_, `pr#15438 <https://github.com/ceph/ceph/pull/15438>`_, "Yan, Zheng") -* mon: OSDMonitor: make 'osd crush move ...' work on osds (`issue#18587 <http://tracker.ceph.com/issues/18587>`_, `pr#13261 <https://github.com/ceph/ceph/pull/13261>`_, Sage Weil) -* mon: fix 'sortbitwise' warning on jewel (`issue#20578 <http://tracker.ceph.com/issues/20578>`_, `pr#15208 <https://github.com/ceph/ceph/pull/15208>`_, huanwen ren, Sage Weil) -* mon: make get_mon_log_message() atomic (`issue#19427 <http://tracker.ceph.com/issues/19427>`_, `pr#14587 <https://github.com/ceph/ceph/pull/14587>`_, Kefu Chai) -* mon: remove bad rocksdb option (`issue#19392 <http://tracker.ceph.com/issues/19392>`_, `pr#14236 <https://github.com/ceph/ceph/pull/14236>`_, Sage Weil) -* msg: IPv6 Heartbeat packets are not marked with DSCP QoS - simple messenger (`issue#18887 <http://tracker.ceph.com/issues/18887>`_, `pr#13450 <https://github.com/ceph/ceph/pull/13450>`_, Yan Jun, Robin H. Johnson) -* msg: set close on exec flag (`issue#16390 <http://tracker.ceph.com/issues/16390>`_, `pr#13585 <https://github.com/ceph/ceph/pull/13585>`_, Kefu Chai) -* osd: --flush-journal: sporadic segfaults on exit (`issue#18820 <http://tracker.ceph.com/issues/18820>`_, `pr#13477 <https://github.com/ceph/ceph/pull/13477>`_, Alexey Sheplyakov) -* osd: Give requested scrubs a higher priority (`issue#15789 <http://tracker.ceph.com/issues/15789>`_, `pr#14686 <https://github.com/ceph/ceph/pull/14686>`_, David Zafman) -* osd: Implement asynchronous scrub sleep (`issue#19986 <http://tracker.ceph.com/issues/19986>`_, `issue#19497 <http://tracker.ceph.com/issues/19497>`_, `pr#15529 <https://github.com/ceph/ceph/pull/15529>`_, Brad Hubbard) -* osd: Object level shard errors are tracked and used if no auth available (`issue#20089 <http://tracker.ceph.com/issues/20089>`_, `pr#15416 <https://github.com/ceph/ceph/pull/15416>`_, David Zafman) -* osd: ReplicatedPG: try with pool's use-gmt setting if hitset archive not found (`issue#19185 <http://tracker.ceph.com/issues/19185>`_, `pr#13827 <https://github.com/ceph/ceph/pull/13827>`_, Kefu Chai) -* osd: allow client throttler to be adjusted on-fly, without restart (`issue#18791 <http://tracker.ceph.com/issues/18791>`_, `pr#13214 <https://github.com/ceph/ceph/pull/13214>`_, Piotr Dałek) -* osd: bypass readonly ops when osd full (`issue#19394 <http://tracker.ceph.com/issues/19394>`_, `pr#14181 <https://github.com/ceph/ceph/pull/14181>`_, Jianpeng Ma, yaoning) -* osd: degraded and misplaced status output inaccurate (`issue#18619 <http://tracker.ceph.com/issues/18619>`_, `pr#14325 <https://github.com/ceph/ceph/pull/14325>`_, David Zafman) -* osd: new added OSD always down when full flag is set (`issue#15025 <http://tracker.ceph.com/issues/15025>`_, `pr#14326 <https://github.com/ceph/ceph/pull/14326>`_, Mingxin Liu) -* osd: pg_pool_t::encode(): be compatible with Hammer <= 0.94.6 (`issue#19508 <http://tracker.ceph.com/issues/19508>`_, `pr#14392 <https://github.com/ceph/ceph/pull/14392>`_, Alexey Sheplyakov) -* osd: pre-jewel "osd rm" incrementals are misinterpreted (`issue#19119 <http://tracker.ceph.com/issues/19119>`_, `pr#13884 <https://github.com/ceph/ceph/pull/13884>`_, Ilya Dryomov) -* osd: preserve allocation hint attribute during recovery (`issue#19083 <http://tracker.ceph.com/issues/19083>`_, `pr#13647 <https://github.com/ceph/ceph/pull/13647>`_, yaoning) -* osd: promote throttle parameters are reversed (`issue#19773 <http://tracker.ceph.com/issues/19773>`_, `pr#14791 <https://github.com/ceph/ceph/pull/14791>`_, Mark Nelson) -* osd: reindex properly on pg log split (`issue#18975 <http://tracker.ceph.com/issues/18975>`_, `pr#14047 <https://github.com/ceph/ceph/pull/14047>`_, Alexey Sheplyakov) -* osd: restrict want_acting to up+acting on recovery completion (`issue#18929 <http://tracker.ceph.com/issues/18929>`_, `pr#13541 <https://github.com/ceph/ceph/pull/13541>`_, Sage Weil) -* rbd-nbd: check /sys/block/nbdX/size to ensure kernel mapped correctly (`issue#18335 <http://tracker.ceph.com/issues/18335>`_, `pr#13932 <https://github.com/ceph/ceph/pull/13932>`_, Mykola Golub, Alexey Sheplyakov) -* rbd: [api] temporarily restrict (rbd\_)mirror_peer_add from adding multiple peers (`issue#19256 <http://tracker.ceph.com/issues/19256>`_, `pr#14664 <https://github.com/ceph/ceph/pull/14664>`_, Jason Dillaman) -* rbd: qemu crash triggered by network issues (`issue#18436 <http://tracker.ceph.com/issues/18436>`_, `pr#13244 <https://github.com/ceph/ceph/pull/13244>`_, Jason Dillaman) -* rbd: rbd --pool=x rename y z does not work (`issue#18326 <http://tracker.ceph.com/issues/18326>`_, `pr#14148 <https://github.com/ceph/ceph/pull/14148>`_, Gaurav Kumar Garg) -* rbd: systemctl stop rbdmap unmaps all rbds and not just the ones in /etc/ceph/rbdmap (`issue#18884 <http://tracker.ceph.com/issues/18884>`_, `issue#18262 <http://tracker.ceph.com/issues/18262>`_, `pr#14083 <https://github.com/ceph/ceph/pull/14083>`_, David Disseldorp, Nathan Cutler) -* rgw: "cluster [WRN] bad locator @X on object @X...." in cluster log (`issue#18980 <http://tracker.ceph.com/issues/18980>`_, `pr#14064 <https://github.com/ceph/ceph/pull/14064>`_, Casey Bodley) -* rgw: 'radosgw-admin sync status' on master zone of non-master zonegroup (`issue#18091 <http://tracker.ceph.com/issues/18091>`_, `pr#13779 <https://github.com/ceph/ceph/pull/13779>`_, Jing Wenjun) -* rgw: Change loglevel to 20 for 'System already converted' message (`issue#18919 <http://tracker.ceph.com/issues/18919>`_, `pr#13834 <https://github.com/ceph/ceph/pull/13834>`_, Vikhyat Umrao) -* rgw: Use decoded URI when verifying TempURL (`issue#18590 <http://tracker.ceph.com/issues/18590>`_, `pr#13724 <https://github.com/ceph/ceph/pull/13724>`_, Alexey Sheplyakov) -* rgw: a few cases where rgw_obj is incorrectly initialized (`issue#19096 <http://tracker.ceph.com/issues/19096>`_, `pr#13842 <https://github.com/ceph/ceph/pull/13842>`_, Yehuda Sadeh) -* rgw: add apis to support ragweed suite (`issue#19804 <http://tracker.ceph.com/issues/19804>`_, `pr#14851 <https://github.com/ceph/ceph/pull/14851>`_, Yehuda Sadeh) -* rgw: add bucket size limit check to radosgw-admin (`issue#17925 <http://tracker.ceph.com/issues/17925>`_, `pr#14787 <https://github.com/ceph/ceph/pull/14787>`_, Matt Benjamin) -* rgw: allow system users to read SLO parts (`issue#19027 <http://tracker.ceph.com/issues/19027>`_, `pr#14752 <https://github.com/ceph/ceph/pull/14752>`_, Casey Bodley) -* rgw: don't return skew time in pre-signed url (`issue#18828 <http://tracker.ceph.com/issues/18828>`_, `issue#18829 <http://tracker.ceph.com/issues/18829>`_, `pr#14605 <https://github.com/ceph/ceph/pull/14605>`_, liuchang0812) -* rgw: failure to create s3 type subuser from admin rest api (`issue#16682 <http://tracker.ceph.com/issues/16682>`_, `pr#14815 <https://github.com/ceph/ceph/pull/14815>`_, snakeAngel2015) -* rgw: fix break inside of yield in RGWFetchAllMetaCR (`issue#17655 <http://tracker.ceph.com/issues/17655>`_, `pr#14066 <https://github.com/ceph/ceph/pull/14066>`_, Casey Bodley) -* rgw: fix failed to create bucket if a non-master zonegroup has a single zone (`issue#19756 <http://tracker.ceph.com/issues/19756>`_, `pr#14766 <https://github.com/ceph/ceph/pull/14766>`_, weiqiaomiao) -* rgw: health check errors out incorrectly (`issue#19025 <http://tracker.ceph.com/issues/19025>`_, `pr#13865 <https://github.com/ceph/ceph/pull/13865>`_, Pavan Rallabhandi) -* rgw: list_plain_entries() stops before bi_log entries (`issue#19876 <http://tracker.ceph.com/issues/19876>`_, `pr#15383 <https://github.com/ceph/ceph/pull/15383>`_, Casey Bodley) -* rgw: multisite: fetch_remote_obj() gets wrong version when copying from remote (`issue#19599 <http://tracker.ceph.com/issues/19599>`_, `pr#14607 <https://github.com/ceph/ceph/pull/14607>`_, Zhang Shaowen, Casey Bodley) -* rgw: multisite: some yields in RGWMetaSyncShardCR::full_sync() resume in incremental_sync() (`issue#18076 <http://tracker.ceph.com/issues/18076>`_, `pr#13837 <https://github.com/ceph/ceph/pull/13837>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: only append zonegroups to rest params if not empty (`issue#20078 <http://tracker.ceph.com/issues/20078>`_, `pr#15312 <https://github.com/ceph/ceph/pull/15312>`_, Yehuda Sadeh, Karol Mroz) -* rgw: pullup civet chunked (`issue#19736 <http://tracker.ceph.com/issues/19736>`_, `pr#14776 <https://github.com/ceph/ceph/pull/14776>`_, Matt Benjamin) -* rgw: rgw_file: fix event expire check, don't expire directories being read (`issue#19623 <http://tracker.ceph.com/issues/19623>`_, `issue#19270 <http://tracker.ceph.com/issues/19270>`_, `issue#19625 <http://tracker.ceph.com/issues/19625>`_, `issue#19624 <http://tracker.ceph.com/issues/19624>`_, `issue#19634 <http://tracker.ceph.com/issues/19634>`_, `issue#19435 <http://tracker.ceph.com/issues/19435>`_, `pr#14653 <https://github.com/ceph/ceph/pull/14653>`_, Gui Hecheng, Matt Benjamin) -* rgw: swift: disable revocation thread under certain circumstances (`issue#19499 <http://tracker.ceph.com/issues/19499>`_, `issue#9493 <http://tracker.ceph.com/issues/9493>`_, `pr#14789 <https://github.com/ceph/ceph/pull/14789>`_, Marcus Watts) -* rgw: the swift container acl does not support field .ref (`issue#18484 <http://tracker.ceph.com/issues/18484>`_, `pr#13833 <https://github.com/ceph/ceph/pull/13833>`_, Jing Wenjun) -* rgw: typo in rgw_admin.cc (`issue#19026 <http://tracker.ceph.com/issues/19026>`_, `pr#13863 <https://github.com/ceph/ceph/pull/13863>`_, Ronak Jain) -* rgw: unsafe access in RGWListBucket_ObjStore_SWIFT::send_response() (`issue#19249 <http://tracker.ceph.com/issues/19249>`_, `pr#14661 <https://github.com/ceph/ceph/pull/14661>`_, Yehuda Sadeh) -* rgw: upgrade to multisite v2 fails if there is a zone without zone info (`issue#19231 <http://tracker.ceph.com/issues/19231>`_, `pr#14136 <https://github.com/ceph/ceph/pull/14136>`_, Danny Al-Gaaf, Orit Wasserman) -* rgw: use separate http_manager for read_sync_status (`issue#19236 <http://tracker.ceph.com/issues/19236>`_, `pr#14195 <https://github.com/ceph/ceph/pull/14195>`_, Casey Bodley, Shasha Lu) -* rgw: when converting region_map we need to use rgw_zone_root_pool (`issue#19195 <http://tracker.ceph.com/issues/19195>`_, `pr#14143 <https://github.com/ceph/ceph/pull/14143>`_, Orit Wasserman) -* rgw: zonegroupmap set does not work (`issue#19498 <http://tracker.ceph.com/issues/19498>`_, `issue#18725 <http://tracker.ceph.com/issues/18725>`_, `pr#14660 <https://github.com/ceph/ceph/pull/14660>`_, Orit Wasserman, Casey Bodley) -* rgw:fix memory leaks in data/md sync (`issue#20088 <http://tracker.ceph.com/issues/20088>`_, `pr#15382 <https://github.com/ceph/ceph/pull/15382>`_, weiqiaomiao) -* tests: 'ceph auth import -i' overwrites caps, should alert user before overwrite (`issue#18932 <http://tracker.ceph.com/issues/18932>`_, `pr#13544 <https://github.com/ceph/ceph/pull/13544>`_, Vikhyat Umrao) -* tests: New upgrade test for #19508 (`issue#19829 <http://tracker.ceph.com/issues/19829>`_, `issue#19508 <http://tracker.ceph.com/issues/19508>`_, `pr#14930 <https://github.com/ceph/ceph/pull/14930>`_, Nathan Cutler) -* tests: [ FAILED ] TestLibRBD.ImagePollIO in upgrade:client-upgrade-kraken-distro-basic-smithi (`issue#18617 <http://tracker.ceph.com/issues/18617>`_, `pr#13107 <https://github.com/ceph/ceph/pull/13107>`_, Jason Dillaman) -* tests: [librados_test_stub] cls_cxx_map_get_XYZ methods don't return correct value (`issue#19597 <http://tracker.ceph.com/issues/19597>`_, `pr#14665 <https://github.com/ceph/ceph/pull/14665>`_, Jason Dillaman) -* tests: additional rbd-mirror test stability improvements (`issue#18935 <http://tracker.ceph.com/issues/18935>`_, `pr#14154 <https://github.com/ceph/ceph/pull/14154>`_, Jason Dillaman) -* tests: api_misc: [ FAILED ] LibRadosMiscConnectFailure.ConnectFailure (`issue#15368 <http://tracker.ceph.com/issues/15368>`_, `pr#14763 <https://github.com/ceph/ceph/pull/14763>`_, Sage Weil) -* tests: buffer overflow in test LibCephFS.DirLs (`issue#18941 <http://tracker.ceph.com/issues/18941>`_, `pr#14671 <https://github.com/ceph/ceph/pull/14671>`_, "Yan, Zheng") -* tests: clone workunit using the branch specified by task (`issue#19429 <http://tracker.ceph.com/issues/19429>`_, `pr#14371 <https://github.com/ceph/ceph/pull/14371>`_, Kefu Chai, Dan Mick) -* tests: drop upgrade/hammer-jewel-x (`issue#20574 <http://tracker.ceph.com/issues/20574>`_, `pr#15933 <https://github.com/ceph/ceph/pull/15933>`_, Nathan Cutler) -* tests: dummy suite fails in OpenStack (`issue#18259 <http://tracker.ceph.com/issues/18259>`_, `pr#14070 <https://github.com/ceph/ceph/pull/14070>`_, Nathan Cutler) -* tests: eliminate race condition in Thrasher constructor (`issue#18799 <http://tracker.ceph.com/issues/18799>`_, `pr#13608 <https://github.com/ceph/ceph/pull/13608>`_, Nathan Cutler) -* tests: enable quotas for pre-luminous quota tests (`issue#20412 <http://tracker.ceph.com/issues/20412>`_, `pr#15936 <https://github.com/ceph/ceph/pull/15936>`_, Patrick Donnelly) -* tests: fix oversight in yaml comment (`issue#20581 <http://tracker.ceph.com/issues/20581>`_, `pr#14449 <https://github.com/ceph/ceph/pull/14449>`_, Nathan Cutler) -* tests: move swift.py task from teuthology to ceph, phase one (jewel) (`issue#20392 <http://tracker.ceph.com/issues/20392>`_, `pr#15870 <https://github.com/ceph/ceph/pull/15870>`_, Nathan Cutler, Sage Weil, Warren Usui, Greg Farnum, Ali Maredia, Tommi Virtanen, Zack Cerza, Sam Lang, Yehuda Sadeh, Joe Buck, Josh Durgin) -* tests: qa/Fixed upgrade sequence to 10.2.0 -> 10.2.7 -> latest -x (10.2.8) (`issue#20572 <http://tracker.ceph.com/issues/20572>`_, `pr#16089 <https://github.com/ceph/ceph/pull/16089>`_, Yuri Weinstein) -* tests: qa/suites/upgrade/hammer-x: set "sortbitwise" for jewel clusters (`issue#20342 <http://tracker.ceph.com/issues/20342>`_, `pr#15842 <https://github.com/ceph/ceph/pull/15842>`_, Nathan Cutler) -* tests: qa/workunits/rados/test-upgrade-\*: whitelist tests for master (part 1) (`issue#20577 <http://tracker.ceph.com/issues/20577>`_, `pr#15360 <https://github.com/ceph/ceph/pull/15360>`_, Sage Weil) -* tests: qa/workunits/rados/test-upgrade-\*: whitelist tests for master (part 2) (`issue#20576 <http://tracker.ceph.com/issues/20576>`_, `pr#15778 <https://github.com/ceph/ceph/pull/15778>`_, Kefu Chai) -* tests: qa/workunits/rados/test-upgrade-\*: whitelist tests the right way (`issue#20575 <http://tracker.ceph.com/issues/20575>`_, `pr#15824 <https://github.com/ceph/ceph/pull/15824>`_, Kefu Chai) -* tests: rados: sleep before ceph tell osd.0 flush_pg_stats after restart (`issue#16239 <http://tracker.ceph.com/issues/16239>`_, `issue#20489 <http://tracker.ceph.com/issues/20489>`_, `pr#14710 <https://github.com/ceph/ceph/pull/14710>`_, Kefu Chai, Nathan Cutler) -* tests: run upgrade/client-upgrade on latest CentOS 7.3 (`issue#20573 <http://tracker.ceph.com/issues/20573>`_, `pr#16088 <https://github.com/ceph/ceph/pull/16088>`_, Nathan Cutler) -* tests: run-rbd-unit-tests.sh assert in lockdep_will_lock, TestLibRBD.ObjectMapConsistentSnap (`issue#17447 <http://tracker.ceph.com/issues/17447>`_, `pr#14150 <https://github.com/ceph/ceph/pull/14150>`_, Jason Dillaman) -* tests: systemd test backport to jewel (`issue#19717 <http://tracker.ceph.com/issues/19717>`_, `pr#14694 <https://github.com/ceph/ceph/pull/14694>`_, Vasu Kulkarni) -* tests: test/librados/tmap_migrate: g_ceph_context->put() upon return (`issue#20579 <http://tracker.ceph.com/issues/20579>`_, `pr#14809 <https://github.com/ceph/ceph/pull/14809>`_, Kefu Chai) -* tests: test_notify.py: rbd.InvalidArgument: error updating features for image test_notify_clone2 (`issue#19692 <http://tracker.ceph.com/issues/19692>`_, `pr#14680 <https://github.com/ceph/ceph/pull/14680>`_, Jason Dillaman) -* tests: upgrade/hammer-x failing with OSD has the store locked when Thrasher runs ceph-objectstore-tool on down PG (`issue#19556 <http://tracker.ceph.com/issues/19556>`_, `pr#14416 <https://github.com/ceph/ceph/pull/14416>`_, Nathan Cutler) -* tests: upgrade:hammer-x/stress-split-erasure-code-x86_64 fails in 10.2.8 integration testing (`issue#20413 <http://tracker.ceph.com/issues/20413>`_, `pr#15904 <https://github.com/ceph/ceph/pull/15904>`_, Nathan Cutler) -* tools: brag fails to count "in" mds (`issue#19192 <http://tracker.ceph.com/issues/19192>`_, `pr#14112 <https://github.com/ceph/ceph/pull/14112>`_, Oleh Prypin, Peng Zhang) -* tools: ceph-disk does not support cluster names different than 'ceph' (`issue#17821 <http://tracker.ceph.com/issues/17821>`_, `pr#14765 <https://github.com/ceph/ceph/pull/14765>`_, Loic Dachary) -* tools: ceph-disk: Racing between partition creation and device node creation (`issue#19428 <http://tracker.ceph.com/issues/19428>`_, `pr#14329 <https://github.com/ceph/ceph/pull/14329>`_, Erwan Velu) -* tools: ceph-disk: bluestore --setgroup incorrectly set with user (`issue#18955 <http://tracker.ceph.com/issues/18955>`_, `pr#13489 <https://github.com/ceph/ceph/pull/13489>`_, craigchi) -* tools: ceph-disk: ceph-disk list reports mount error for OSD having mount options with SELinux context (`issue#17331 <http://tracker.ceph.com/issues/17331>`_, `pr#14402 <https://github.com/ceph/ceph/pull/14402>`_, Brad Hubbard) -* tools: ceph-disk: do not setup_statedir on trigger (`issue#19941 <http://tracker.ceph.com/issues/19941>`_, `pr#15504 <https://github.com/ceph/ceph/pull/15504>`_, Loic Dachary) -* tools: ceph-disk: enable directory backed OSD at boot time (`issue#19628 <http://tracker.ceph.com/issues/19628>`_, `pr#14602 <https://github.com/ceph/ceph/pull/14602>`_, Loic Dachary) -* tools: rados: RadosImport::import should return an error if Rados::connect fails (`issue#19319 <http://tracker.ceph.com/issues/19319>`_, `pr#14113 <https://github.com/ceph/ceph/pull/14113>`_, Brad Hubbard) - - -v10.2.7 Jewel -============= - -This point release fixes several important bugs in RBD mirroring, librbd & RGW. - -We recommend that all v10.2.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.7.txt>`. - - -Notable Changes ---------------- - -* librbd: possible race in ExclusiveLock handle_peer_notification (`issue#19368 <http://tracker.ceph.com/issues/19368>`_, `pr#14233 <https://github.com/ceph/ceph/pull/14233>`_, Mykola Golub) -* osd: Increase priority for inactive PGs backfill (`issue#18350 <http://tracker.ceph.com/issues/18350>`_, `pr#13232 <https://github.com/ceph/ceph/pull/13232>`_, Bartłomiej Święcki) -* osd: Scrub improvements and other fixes (`issue#17857 <http://tracker.ceph.com/issues/17857>`_, `issue#18114 <http://tracker.ceph.com/issues/18114>`_, `issue#13937 <http://tracker.ceph.com/issues/13937>`_, `issue#18113 <http://tracker.ceph.com/issues/18113>`_, `pr#13146 <https://github.com/ceph/ceph/pull/13146>`_, Kefu Chai, David Zafman) -* osd: fix OSD network address in OSD heartbeat_check log message (`issue#18657 <http://tracker.ceph.com/issues/18657>`_, `pr#13108 <https://github.com/ceph/ceph/pull/13108>`_, Vikhyat Umrao) -* rbd-mirror: deleting a snapshot during sync can result in read errors (`issue#18990 <http://tracker.ceph.com/issues/18990>`_, `pr#13596 <https://github.com/ceph/ceph/pull/13596>`_, Jason Dillaman) -* rgw: 'period update' does not remove short_zone_ids of deleted zones (`issue#15618 <http://tracker.ceph.com/issues/15618>`_, `pr#14140 <https://github.com/ceph/ceph/pull/14140>`_, Casey Bodley) -* rgw: DUMPABLE flag is cleared by setuid preventing coredumps (`issue#19089 <http://tracker.ceph.com/issues/19089>`_, `pr#13844 <https://github.com/ceph/ceph/pull/13844>`_, Brad Hubbard) -* rgw: clear data_sync_cr if RGWDataSyncControlCR fails (`issue#17569 <http://tracker.ceph.com/issues/17569>`_, `pr#13886 <https://github.com/ceph/ceph/pull/13886>`_, Casey Bodley) -* rgw: fix openssl (`issue#11239 <http://tracker.ceph.com/issues/11239>`_, `issue#19098 <http://tracker.ceph.com/issues/19098>`_, `issue#16535 <http://tracker.ceph.com/issues/16535>`_, `pr#14215 <https://github.com/ceph/ceph/pull/14215>`_, Marcus Watts) -* rgw: fix swift cannot disable object versioning with empty X-Versions-Location (`issue#18852 <http://tracker.ceph.com/issues/18852>`_, `pr#13823 <https://github.com/ceph/ceph/pull/13823>`_, Jing Wenjun) -* rgw: librgw: RGWLibFS::setattr fails on directories (`issue#18808 <http://tracker.ceph.com/issues/18808>`_, `pr#13778 <https://github.com/ceph/ceph/pull/13778>`_, Matt Benjamin) -* rgw: make sending Content-Length in 204 and 304 controllable (`issue#16602 <http://tracker.ceph.com/issues/16602>`_, `pr#13503 <https://github.com/ceph/ceph/pull/13503>`_, Radoslaw Zarzynski, Matt Benjamin) -* rgw: multipart uploads copy part support (`issue#12790 <http://tracker.ceph.com/issues/12790>`_, `pr#13219 <https://github.com/ceph/ceph/pull/13219>`_, Yehuda Sadeh, Javier M. Mellid, Matt Benjamin) -* rgw: multisite: RGWMetaSyncShardControlCR gives up on EIO (`issue#19019 <http://tracker.ceph.com/issues/19019>`_, `pr#13867 <https://github.com/ceph/ceph/pull/13867>`_, Casey Bodley) -* rgw: radosgw/swift: clean up flush / newline behavior (`issue#18473 <http://tracker.ceph.com/issues/18473>`_, `pr#14100 <https://github.com/ceph/ceph/pull/14100>`_, Nathan Cutler, Marcus Watts, Matt Benjamin) -* rgw: radosgw/swift: clean up flush / newline behavior. (`issue#18473 <http://tracker.ceph.com/issues/18473>`_, `pr#13143 <https://github.com/ceph/ceph/pull/13143>`_, Marcus Watts, Matt Benjamin) -* rgw: rgw_fh: RGWFileHandle dtor must also cond-unlink from FHCache (`issue#19112 <http://tracker.ceph.com/issues/19112>`_, `pr#14231 <https://github.com/ceph/ceph/pull/14231>`_, Matt Benjamin) -* rgw: rgw_file: avoid interning .. in FHCache table and don't ref for them (`issue#19036 <http://tracker.ceph.com/issues/19036>`_, `pr#13848 <https://github.com/ceph/ceph/pull/13848>`_, Matt Benjamin) -* rgw: rgw_file: interned RGWFileHandle objects need parent refs (`issue#18650 <http://tracker.ceph.com/issues/18650>`_, `pr#13583 <https://github.com/ceph/ceph/pull/13583>`_, Matt Benjamin) -* rgw: rgw_file: restore (corrected) fix for dir partial match (return of FLAG_EXACT_MATCH) (`issue#19060 <http://tracker.ceph.com/issues/19060>`_, `issue#18992 <http://tracker.ceph.com/issues/18992>`_, `issue#19059 <http://tracker.ceph.com/issues/19059>`_, `pr#13858 <https://github.com/ceph/ceph/pull/13858>`_, Matt Benjamin) -* rgw: rgw_file: FHCache residence check should be exhaustive (`issue#19111 <http://tracker.ceph.com/issues/19111>`_, `pr#14169 <https://github.com/ceph/ceph/pull/14169>`_, Matt Benjamin) -* rgw: rgw_file: ensure valid_s3_object_name for directories, too (`issue#19066 <http://tracker.ceph.com/issues/19066>`_, `pr#13717 <https://github.com/ceph/ceph/pull/13717>`_, Matt Benjamin) -* rgw: rgw_file: fix marker computation (`issue#19018 <http://tracker.ceph.com/issues/19018>`_, `issue#18989 <http://tracker.ceph.com/issues/18989>`_, `issue#18992 <http://tracker.ceph.com/issues/18992>`_, `issue#18991 <http://tracker.ceph.com/issues/18991>`_, `pr#13869 <https://github.com/ceph/ceph/pull/13869>`_, Matt Benjamin) -* rgw: rgw_file: wip dir orphan (`issue#18992 <http://tracker.ceph.com/issues/18992>`_, `issue#18989 <http://tracker.ceph.com/issues/18989>`_, `issue#19018 <http://tracker.ceph.com/issues/19018>`_, `issue#18991 <http://tracker.ceph.com/issues/18991>`_, `pr#14205 <https://github.com/ceph/ceph/pull/14205>`_, Gui Hecheng, Matt Benjamin) -* rgw: rgw_file: various fixes (`pr#14206 <https://github.com/ceph/ceph/pull/14206>`_, Matt Benjamin) -* rgw: rgw_file: expand argv (`pr#14230 <https://github.com/ceph/ceph/pull/14230>`_, Matt Benjamin) - - -v10.2.6 Jewel -============= - -This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS. - -We recommend that all v10.2.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.6.txt>`. - -OSDs No Longer Send ENXIO by Default ------------------------------------- - -In previous versions, if a client sent an op to the wrong OSD, the OSD -would reply with ENXIO. The rationale here is that the client or OSD is -clearly buggy and we want to surface the error as clearly as possible. -We now only send the ENXIO reply if the osd_enxio_on_misdirected_op option -is enabled (it's off by default). This means that a VM using librbd that -previously would have gotten an EIO and gone read-only will now see a -blocked/hung IO instead. - -Other Notable Changes ---------------------- - -* build/ops: add hostname sanity check to run-{c}make-check.sh (`issue#18134 <http://tracker.ceph.com/issues/18134>`_, `pr#12302 <http://github.com/ceph/ceph/pull/12302>`_, Nathan Cutler) -* build/ops: add ldap lib to rgw lib deps based on build config (`issue#17313 <http://tracker.ceph.com/issues/17313>`_, `pr#13183 <http://github.com/ceph/ceph/pull/13183>`_, Nathan Cutler) -* build/ops: ceph-create-keys loops forever (`issue#17753 <http://tracker.ceph.com/issues/17753>`_, `pr#11884 <http://github.com/ceph/ceph/pull/11884>`_, Alfredo Deza) -* build/ops: ceph daemons DUMPABLE flag is cleared by setuid preventing coredumps (`issue#17650 <http://tracker.ceph.com/issues/17650>`_, `pr#11736 <http://github.com/ceph/ceph/pull/11736>`_, Patrick Donnelly) -* build/ops: fixed compilation error when --with-radowsgw=no (`issue#18512 <http://tracker.ceph.com/issues/18512>`_, `pr#12729 <http://github.com/ceph/ceph/pull/12729>`_, Pan Liu) -* build/ops: fixed the issue when --disable-server, compilation fails. (`issue#18120 <http://tracker.ceph.com/issues/18120>`_, `pr#12239 <http://github.com/ceph/ceph/pull/12239>`_, Pan Liu) -* build/ops: fix undefined crypto references with --with-xio (`issue#18133 <http://tracker.ceph.com/issues/18133>`_, `pr#12296 <http://github.com/ceph/ceph/pull/12296>`_, Nathan Cutler) -* build/ops: install-deps.sh based on /etc/os-release (`issue#18466 <http://tracker.ceph.com/issues/18466>`_, `issue#18198 <http://tracker.ceph.com/issues/18198>`_, `pr#12405 <http://github.com/ceph/ceph/pull/12405>`_, Jan Fajerski, Nitin A Kamble, Nathan Cutler) -* build/ops: Remove the runtime dependency on lsb_release (`issue#17425 <http://tracker.ceph.com/issues/17425>`_, `pr#11875 <http://github.com/ceph/ceph/pull/11875>`_, John Coyle, Brad Hubbard) -* build/ops: rpm: /etc/ceph/rbdmap is packaged with executable access rights (`issue#17395 <http://tracker.ceph.com/issues/17395>`_, `pr#11855 <http://github.com/ceph/ceph/pull/11855>`_, Ken Dreyer) -* build/ops: selinux: Allow ceph to manage tmp files (`issue#17436 <http://tracker.ceph.com/issues/17436>`_, `pr#13048 <http://github.com/ceph/ceph/pull/13048>`_, Boris Ranto) -* build/ops: systemd: Restart Mon after 10s in case of failure (`issue#18635 <http://tracker.ceph.com/issues/18635>`_, `pr#13058 <http://github.com/ceph/ceph/pull/13058>`_, Wido den Hollander) -* build/ops: systemd restarts Ceph Mon to quickly after failing to start (`issue#18635 <http://tracker.ceph.com/issues/18635>`_, `pr#13184 <http://github.com/ceph/ceph/pull/13184>`_, Wido den Hollander) -* ceph-disk: fix flake8 errors (`issue#17898 <http://tracker.ceph.com/issues/17898>`_, `pr#11976 <http://github.com/ceph/ceph/pull/11976>`_, Ken Dreyer) -* cephfs: fuse client crash when adding a new osd (`issue#17270 <http://tracker.ceph.com/issues/17270>`_, `pr#11860 <http://github.com/ceph/ceph/pull/11860>`_, John Spray) -* cli: ceph-disk: convert none str to str before printing it (`issue#18371 <http://tracker.ceph.com/issues/18371>`_, `pr#13187 <http://github.com/ceph/ceph/pull/13187>`_, Kefu Chai) -* client: Fix lookup of "/.." in jewel (`issue#18408 <http://tracker.ceph.com/issues/18408>`_, `pr#12766 <http://github.com/ceph/ceph/pull/12766>`_, Jeff Layton) -* client: fix stale entries in command table (`issue#17974 <http://tracker.ceph.com/issues/17974>`_, `pr#12137 <http://github.com/ceph/ceph/pull/12137>`_, John Spray) -* client: populate metadata during mount (`issue#18361 <http://tracker.ceph.com/issues/18361>`_, `pr#13085 <http://github.com/ceph/ceph/pull/13085>`_, John Spray) -* cli: implement functionality for adding, editing and removing omap values with binary keys (`issue#18123 <http://tracker.ceph.com/issues/18123>`_, `pr#12755 <http://github.com/ceph/ceph/pull/12755>`_, Jason Dillaman) -* common: Improve linux dcache hash algorithm (`issue#17599 <http://tracker.ceph.com/issues/17599>`_, `pr#11529 <http://github.com/ceph/ceph/pull/11529>`_, Yibo Cai) -* common: utime.h: fix timezone issue in round_to_* funcs. (`issue#14862 <http://tracker.ceph.com/issues/14862>`_, `pr#11508 <http://github.com/ceph/ceph/pull/11508>`_, Zhao Chao) -* doc: Python Swift client commands in Quick Developer Guide don't match configuration in vstart.sh (`issue#17746 <http://tracker.ceph.com/issues/17746>`_, `pr#13043 <http://github.com/ceph/ceph/pull/13043>`_, Ronak Jain) -* librbd: allow to open an image without opening parent image (`issue#18325 <http://tracker.ceph.com/issues/18325>`_, `pr#13130 <http://github.com/ceph/ceph/pull/13130>`_, Ricardo Dias) -* librbd: metadata_set API operation should not change global config setting (`issue#18465 <http://tracker.ceph.com/issues/18465>`_, `pr#13168 <http://github.com/ceph/ceph/pull/13168>`_, Mykola Golub) -* librbd: new API method to force break a peer's exclusive lock (`issue#15632 <http://tracker.ceph.com/issues/15632>`_, `issue#16773 <http://tracker.ceph.com/issues/16773>`_, `issue#17188 <http://tracker.ceph.com/issues/17188>`_, `issue#16988 <http://tracker.ceph.com/issues/16988>`_, `issue#17210 <http://tracker.ceph.com/issues/17210>`_, `issue#17251 <http://tracker.ceph.com/issues/17251>`_, `issue#18429 <http://tracker.ceph.com/issues/18429>`_, `issue#17227 <http://tracker.ceph.com/issues/17227>`_, `issue#18327 <http://tracker.ceph.com/issues/18327>`_, `issue#17015 <http://tracker.ceph.com/issues/17015>`_, `pr#12890 <http://github.com/ceph/ceph/pull/12890>`_, Danny Al-Gaaf, Mykola Golub, Jason Dillaman) -* librbd: properly order concurrent updates to the object map (`issue#16176 <http://tracker.ceph.com/issues/16176>`_, `pr#12909 <http://github.com/ceph/ceph/pull/12909>`_, Jason Dillaman) -* librbd: restore journal access when force disabling mirroring (`issue#17588 <http://tracker.ceph.com/issues/17588>`_, `pr#11916 <http://github.com/ceph/ceph/pull/11916>`_, Mykola Golub) -* mds: Cannot create deep directories when caps contain path=/somepath (`issue#17858 <http://tracker.ceph.com/issues/17858>`_, `pr#12154 <http://github.com/ceph/ceph/pull/12154>`_, Patrick Donnelly) -* mds: cephfs metadata pool: deep-scrub error omap_digest != best guess omap_digest (`issue#17177 <http://tracker.ceph.com/issues/17177>`_, `pr#12380 <http://github.com/ceph/ceph/pull/12380>`_, Yan, Zheng) -* mds: cephfs test failures (ceph.com/qa is broken, should be download.ceph.com/qa) (`issue#18574 <http://tracker.ceph.com/issues/18574>`_, `pr#13023 <http://github.com/ceph/ceph/pull/13023>`_, John Spray) -* mds: ceph-fuse crash during snapshot tests (`issue#18460 <http://tracker.ceph.com/issues/18460>`_, `pr#13120 <http://github.com/ceph/ceph/pull/13120>`_, Yan, Zheng) -* mds: ceph_volume_client: fix recovery from partial auth update (`issue#17216 <http://tracker.ceph.com/issues/17216>`_, `pr#11656 <http://github.com/ceph/ceph/pull/11656>`_, Ramana Raja) -* mds: ceph_volume_client.py : Error: Can't handle arrays of non-strings (`issue#17800 <http://tracker.ceph.com/issues/17800>`_, `pr#12325 <http://github.com/ceph/ceph/pull/12325>`_, Ramana Raja) -* mds: Cleanly reject session evict command when in replay (`issue#17801 <http://tracker.ceph.com/issues/17801>`_, `pr#12153 <http://github.com/ceph/ceph/pull/12153>`_, Yan, Zheng) -* mds: client segfault on ceph_rmdir path / (`issue#9935 <http://tracker.ceph.com/issues/9935>`_, `pr#13029 <http://github.com/ceph/ceph/pull/13029>`_, Michal Jarzabek) -* mds: Clients without pool-changing caps shouldn't be allowed to change pool_namespace (`issue#17798 <http://tracker.ceph.com/issues/17798>`_, `pr#12155 <http://github.com/ceph/ceph/pull/12155>`_, John Spray) -* mds: Decode errors on backtrace will crash MDS (`issue#18311 <http://tracker.ceph.com/issues/18311>`_, `pr#12836 <http://github.com/ceph/ceph/pull/12836>`_, Nathan Cutler, John Spray) -* mds: false failing to respond to cache pressure warning (`issue#17611 <http://tracker.ceph.com/issues/17611>`_, `pr#11861 <http://github.com/ceph/ceph/pull/11861>`_, Yan, Zheng) -* mds: finish clientreplay requests before requesting active state (`issue#18461 <http://tracker.ceph.com/issues/18461>`_, `pr#13113 <http://github.com/ceph/ceph/pull/13113>`_, Yan, Zheng) -* mds: fix incorrect assertion in Server::_dir_is_nonempty() (`issue#18578 <http://tracker.ceph.com/issues/18578>`_, `pr#13459 <http://github.com/ceph/ceph/pull/13459>`_, Yan, Zheng) -* mds: fix MDSMap upgrade decoding (`issue#17837 <http://tracker.ceph.com/issues/17837>`_, `pr#13139 <http://github.com/ceph/ceph/pull/13139>`_, John Spray, Patrick Donnelly) -* mds: fix missing ll_get for ll_walk (`issue#18086 <http://tracker.ceph.com/issues/18086>`_, `pr#13125 <http://github.com/ceph/ceph/pull/13125>`_, Gui Hecheng) -* mds: Fix mount root for ceph_mount users and change tarball format (`issue#18312 <http://tracker.ceph.com/issues/18312>`_, `issue#18254 <http://tracker.ceph.com/issues/18254>`_, `pr#12592 <http://github.com/ceph/ceph/pull/12592>`_, Jeff Layton) -* mds: fix null pointer dereference in Locker::handle_client_caps (`issue#18306 <http://tracker.ceph.com/issues/18306>`_, `pr#13060 <http://github.com/ceph/ceph/pull/13060>`_, Yan, Zheng) -* mds: lookup of /.. in returns -ENOENT (`issue#18408 <http://tracker.ceph.com/issues/18408>`_, `pr#12783 <http://github.com/ceph/ceph/pull/12783>`_, Jeff Layton) -* mds: MDS crashes on missing metadata object (`issue#18179 <http://tracker.ceph.com/issues/18179>`_, `pr#13119 <http://github.com/ceph/ceph/pull/13119>`_, Yan, Zheng) -* mds: mds fails to respawn if executable has changed (`issue#17531 <http://tracker.ceph.com/issues/17531>`_, `pr#11873 <http://github.com/ceph/ceph/pull/11873>`_, Patrick Donnelly) -* mds: MDS: false failing to respond to cache pressure warning (`issue#17716 <http://tracker.ceph.com/issues/17716>`_, `pr#11856 <http://github.com/ceph/ceph/pull/11856>`_, Yan, Zheng) -* mds: MDS goes damaged on blacklist (failed to read JournalPointer: -108 ((108) Cannot send after transport endpoint shutdown) (`issue#17236 <http://tracker.ceph.com/issues/17236>`_, `pr#11413 <http://github.com/ceph/ceph/pull/11413>`_, John Spray) -* mds: MDS long-time blocked ops. ceph-fuse locks up with getattr of file (`issue#17275 <http://tracker.ceph.com/issues/17275>`_, `pr#11858 <http://github.com/ceph/ceph/pull/11858>`_, Yan, Zheng) -* mds: speed up readdir by skipping unwanted dn (`issue#18519 <http://tracker.ceph.com/issues/18519>`_, `pr#12921 <http://github.com/ceph/ceph/pull/12921>`_, Xiaoxi Chen) -* mds: standby-replay daemons can sometimes miss events (`issue#17954 <http://tracker.ceph.com/issues/17954>`_, `pr#13126 <http://github.com/ceph/ceph/pull/13126>`_, John Spray) -* mon: cache tiering: base pool last_force_resend not respected (racing read got wrong version) (`issue#18366 <http://tracker.ceph.com/issues/18366>`_, `pr#13115 <http://github.com/ceph/ceph/pull/13115>`_, Sage Weil) -* mon: ceph osd down detection behaviour (`issue#18104 <http://tracker.ceph.com/issues/18104>`_, `pr#12677 <http://github.com/ceph/ceph/pull/12677>`_, xie xingguo) -* mon: Error EINVAL: removing mon.a at 172.21.15.16:6789/0, there will be 1 monitors (`issue#17725 <http://tracker.ceph.com/issues/17725>`_, `pr#11999 <http://github.com/ceph/ceph/pull/11999>`_, Joao Eduardo Luis) -* mon: health does not report pgs stuck in more than one state (`issue#17515 <http://tracker.ceph.com/issues/17515>`_, `pr#11660 <http://github.com/ceph/ceph/pull/11660>`_, Sage Weil) -* mon: monitor assertion failure when deactivating mds in (invalid) fscid 0 (`issue#17518 <http://tracker.ceph.com/issues/17518>`_, `pr#11862 <http://github.com/ceph/ceph/pull/11862>`_, Patrick Donnelly) -* mon: monitor cannot start because of FAILED assert(info.state == MDSMap::STATE_STANDBY) (`issue#18166 <http://tracker.ceph.com/issues/18166>`_, `pr#13123 <http://github.com/ceph/ceph/pull/13123>`_, John Spray, Patrick Donnelly) -* mon: osd flag health message is misleading (`issue#18175 <http://tracker.ceph.com/issues/18175>`_, `pr#13117 <http://github.com/ceph/ceph/pull/13117>`_, Sage Weil) -* mon: OSDMonitor: clear jewel+ feature bits when talking to Hammer OSD (`issue#18582 <http://tracker.ceph.com/issues/18582>`_, `pr#13131 <http://github.com/ceph/ceph/pull/13131>`_, Piotr Dałek) -* mon: OSDs marked OUT wrongly after monitor failover (`issue#17719 <http://tracker.ceph.com/issues/17719>`_, `pr#11947 <http://github.com/ceph/ceph/pull/11947>`_, Dong Wu) -* mon: peon wrongly delete routed pg stats op before receive pg stats ack (`issue#18458 <http://tracker.ceph.com/issues/18458>`_, `pr#13045 <http://github.com/ceph/ceph/pull/13045>`_, Mingxin Liu) -* mon: send updated monmap to its subscribers (`issue#17558 <http://tracker.ceph.com/issues/17558>`_, `pr#11743 <http://github.com/ceph/ceph/pull/11743>`_, Kefu Chai) -* msgr: don't truncate message sequence to 32-bits (`issue#16122 <http://tracker.ceph.com/issues/16122>`_, `pr#12416 <http://github.com/ceph/ceph/pull/12416>`_, Yan, Zheng) -* msgr: msg/simple: clear_pipe when wait() is mopping up pipes (`issue#15784 <http://tracker.ceph.com/issues/15784>`_, `pr#13062 <http://github.com/ceph/ceph/pull/13062>`_, Sage Weil) -* msgr: msg/simple/Pipe: error decoding addr (`issue#18072 <http://tracker.ceph.com/issues/18072>`_, `pr#12291 <http://github.com/ceph/ceph/pull/12291>`_, Sage Weil) -* osd: Add config option to disable new scrubs during recovery (`issue#17866 <http://tracker.ceph.com/issues/17866>`_, `pr#11944 <http://github.com/ceph/ceph/pull/11944>`_, Wido den Hollander) -* osd: collection_list shadow return value # (`issue#17713 <http://tracker.ceph.com/issues/17713>`_, `pr#11737 <http://github.com/ceph/ceph/pull/11737>`_, Haomai Wang) -* osd: do not send ENXIO on misdirected op by default (`issue#18751 <http://tracker.ceph.com/issues/18751>`_, `pr#13255 <http://github.com/ceph/ceph/pull/13255>`_, Sage Weil) -* osd: FileStore: fiemap cannot be totally retrieved in xfs when the number of extents > 1364 (`issue#17610 <http://tracker.ceph.com/issues/17610>`_, `pr#11998 <http://github.com/ceph/ceph/pull/11998>`_, Kefu Chai, Ning Yao) -* osd: leveldb corruption leads to Operation not permitted not handled and assert (`issue#18037 <http://tracker.ceph.com/issues/18037>`_, `pr#12789 <http://github.com/ceph/ceph/pull/12789>`_, Nathan Cutler) -* osd: limit omap data in push op (`issue#16128 <http://tracker.ceph.com/issues/16128>`_, `pr#11991 <http://github.com/ceph/ceph/pull/11991>`_, Wanlong Gao) -* osd: osd crashes when radosgw-admin bi list --max-entries=1 command runing (`issue#17745 <http://tracker.ceph.com/issues/17745>`_, `pr#11758 <http://github.com/ceph/ceph/pull/11758>`_, weiqiaomiao) -* osd: osd_max_backfills default has changed, documentation should reflect that. (`issue#17701 <http://tracker.ceph.com/issues/17701>`_, `pr#11735 <http://github.com/ceph/ceph/pull/11735>`_, huangjun) -* osd: OSDMonitor: only reject MOSDBoot based on up_from if inst matches (`issue#17899 <http://tracker.ceph.com/issues/17899>`_, `pr#12868 <http://github.com/ceph/ceph/pull/12868>`_, Samuel Just) -* osd: osd/PG: publish PG stats when backfill-related states change (`issue#18369 <http://tracker.ceph.com/issues/18369>`_, `pr#12875 <http://github.com/ceph/ceph/pull/12875>`_, Alexey Sheplyakov, Sage Weil) -* osd: Remove extra call to reg_next_scrub() during splits (`issue#16474 <http://tracker.ceph.com/issues/16474>`_, `pr#11606 <http://github.com/ceph/ceph/pull/11606>`_, David Zafman) -* osd: Revert "Merge pull request #12978 from asheplyakov/jewel-18581" (`issue#18809 <http://tracker.ceph.com/issues/18809>`_, `pr#13280 <http://github.com/ceph/ceph/pull/13280>`_, Samuel Just) -* osd: update_log_missing does not order correctly with osd_ops (`issue#17789 <http://tracker.ceph.com/issues/17789>`_, `pr#11997 <http://github.com/ceph/ceph/pull/11997>`_, Samuel Just) -* qa/tasks: backport rbd_fio fixes to jewel (`issue#13512 <http://tracker.ceph.com/issues/13512>`_, `pr#13104 <http://github.com/ceph/ceph/pull/13104>`_, Ilya Dryomov) -* qa/tasks/workunits: backport misc fixes to jewel (`issue#18336 <http://tracker.ceph.com/issues/18336>`_, `pr#12912 <http://github.com/ceph/ceph/pull/12912>`_, Sage Weil) -* rados: crash adding snap to purged_snaps in ReplicatedPG::WaitingOnReplicas (part 2) (`issue#15943 <http://tracker.ceph.com/issues/15943>`_, `issue#18504 <http://tracker.ceph.com/issues/18504>`_, `pr#12791 <http://github.com/ceph/ceph/pull/12791>`_, Samuel Just) -* rados: Memory leaks in object_list_begin and object_list_end (`issue#18252 <http://tracker.ceph.com/issues/18252>`_, `pr#13118 <http://github.com/ceph/ceph/pull/13118>`_, Brad Hubbard) -* rados: The request lock RPC message might be incorrectly ignored (`issue#17030 <http://tracker.ceph.com/issues/17030>`_, `pr#10865 <http://github.com/ceph/ceph/pull/10865>`_, Jason Dillaman) -* rbd: add image id block name prefix APIs (`issue#18270 <http://tracker.ceph.com/issues/18270>`_, `pr#12529 <http://github.com/ceph/ceph/pull/12529>`_, Jason Dillaman) -* rbd: add max_part and nbds_max options in rbd nbd map, in order to keep consistent with (`issue#18186 <http://tracker.ceph.com/issues/18186>`_, `pr#12426 <http://github.com/ceph/ceph/pull/12426>`_, Pan Liu) -* rbd: Attempting to remove an image w/ incompatible features results in partial removal (`issue#18315 <http://tracker.ceph.com/issues/18315>`_, `pr#13156 <http://github.com/ceph/ceph/pull/13156>`_, Dongsheng Yang) -* rbd: bench-write will crash if --io-size is 4G (`issue#18422 <http://tracker.ceph.com/issues/18422>`_, `pr#13129 <http://github.com/ceph/ceph/pull/13129>`_, Gaurav Kumar Garg) -* rbd: diff calculate can hide parent extents when examining first snapshot in clone (`issue#18068 <http://tracker.ceph.com/issues/18068>`_, `pr#12322 <http://github.com/ceph/ceph/pull/12322>`_, Jason Dillaman) -* rbd: Exclusive lock improperly initialized on read-only image when using snap_set API (`issue#17618 <http://tracker.ceph.com/issues/17618>`_, `pr#11852 <http://github.com/ceph/ceph/pull/11852>`_, Jason Dillaman) -* rbd: FAILED assert(m_processing == 0) while running test_lock_fence.sh (`issue#17973 <http://tracker.ceph.com/issues/17973>`_, `pr#12323 <http://github.com/ceph/ceph/pull/12323>`_, Venky Shankar) -* rbd: Improve error reporting from rbd feature enable/disable (`issue#16985 <http://tracker.ceph.com/issues/16985>`_, `pr#13157 <http://github.com/ceph/ceph/pull/13157>`_, Gaurav Kumar Garg) -* rbd: JournalMetadata flooding with errors when being blacklisted (`issue#18243 <http://tracker.ceph.com/issues/18243>`_, `pr#12739 <http://github.com/ceph/ceph/pull/12739>`_, Jason Dillaman) -* rbd: librbd: use proper snapshot when computing diff parent overlap (`issue#18200 <http://tracker.ceph.com/issues/18200>`_, `pr#12649 <http://github.com/ceph/ceph/pull/12649>`_, Xiaoxi Chen) -* rbd: partition func should be enabled When load nbd.ko for rbd-nbd (`issue#18115 <http://tracker.ceph.com/issues/18115>`_, `pr#12754 <http://github.com/ceph/ceph/pull/12754>`_, Pan Liu) -* rbd: Potential race when removing two-way mirroring image (`issue#18447 <http://tracker.ceph.com/issues/18447>`_, `pr#13233 <http://github.com/ceph/ceph/pull/13233>`_, Mykola Golub) -* rbd: [qa] crash in journal-enabled fsx run (`issue#18618 <http://tracker.ceph.com/issues/18618>`_, `pr#13128 <http://github.com/ceph/ceph/pull/13128>`_, Jason Dillaman) -* rbd: 'rbd du' of missing image does not return error (`issue#16987 <http://tracker.ceph.com/issues/16987>`_, `pr#11854 <http://github.com/ceph/ceph/pull/11854>`_, Dongsheng Yang) -* rbd: rbd-mirror: gmock warnings in bootstrap request unit tests (`issue#18048 <http://tracker.ceph.com/issues/18048>`_, `issue#18012 <http://tracker.ceph.com/issues/18012>`_, `issue#18156 <http://tracker.ceph.com/issues/18156>`_, `issue#16991 <http://tracker.ceph.com/issues/16991>`_, `issue#18051 <http://tracker.ceph.com/issues/18051>`_, `pr#12425 <http://github.com/ceph/ceph/pull/12425>`_, Mykola Golub) -* rbd: rbd-mirror: image sync object map reload logs message (`issue#16179 <http://tracker.ceph.com/issues/16179>`_, `pr#12753 <http://github.com/ceph/ceph/pull/12753>`_, runsisi) -* rbd: rbd-mirror: snap protect of non-layered image results in split-brain (`issue#16962 <http://tracker.ceph.com/issues/16962>`_, `pr#11869 <http://github.com/ceph/ceph/pull/11869>`_, Mykola Golub) -* rbd: [rbd-mirror] sporadic image replayer shut down failure (`issue#18441 <http://tracker.ceph.com/issues/18441>`_, `pr#13155 <http://github.com/ceph/ceph/pull/13155>`_, Jason Dillaman) -* rbd: rbd-nbd: disallow mapping images >2TB in size (`issue#17219 <http://tracker.ceph.com/issues/17219>`_, `pr#11870 <http://github.com/ceph/ceph/pull/11870>`_, Mykola Golub) -* rbd: rbd-nbd: invalid error code for "failed to read nbd request" messages (`issue#18242 <http://tracker.ceph.com/issues/18242>`_, `pr#12756 <http://github.com/ceph/ceph/pull/12756>`_, Mykola Golub) -* rbd: status json format has duplicated/overwritten key (`issue#18261 <http://tracker.ceph.com/issues/18261>`_, `pr#12741 <http://github.com/ceph/ceph/pull/12741>`_, Mykola Golub) -* rbd: TestLibRBD.DiscardAfterWrite doesn't handle rbd_skip_partial_discard = true (`issue#17750 <http://tracker.ceph.com/issues/17750>`_, `pr#11853 <http://github.com/ceph/ceph/pull/11853>`_, Jason Dillaman) -* rbd: truncate can cause unflushed snapshot data lose (`issue#17193 <http://tracker.ceph.com/issues/17193>`_, `pr#12324 <http://github.com/ceph/ceph/pull/12324>`_, Yan, Zheng) -* : ReplicatedBackend: take read locks for clone sources during recovery (`issue#17831 <http://tracker.ceph.com/issues/17831>`_, `issue#18583 <http://tracker.ceph.com/issues/18583>`_, `pr#12978 <http://github.com/ceph/ceph/pull/12978>`_, Samuel Just) -* rgw: add option to log custom HTTP headers (rgw_log_http_headers) (`issue#18891 <http://tracker.ceph.com/issues/18891>`_, `pr#12490 <http://github.com/ceph/ceph/pull/12490>`_, Matt Benjamin) -* rgw: add suport for Swift-at-root dependent features of Swift API (`issue#18526 <http://tracker.ceph.com/issues/18526>`_, `issue#16673 <http://tracker.ceph.com/issues/16673>`_, `pr#11497 <http://github.com/ceph/ceph/pull/11497>`_, Pritha Srivastava, Radoslaw Zarzynski, Pete Zaitcev, Abhishek Lekshmanan) -* rgw: add support for the prefix parameter in account listing of Swift API (`issue#17931 <http://tracker.ceph.com/issues/17931>`_, `pr#12258 <http://github.com/ceph/ceph/pull/12258>`_, Radoslaw Zarzynski) -* rgw: Add workaround for upgrade issues for older jewel versions (`issue#17820 <http://tracker.ceph.com/issues/17820>`_, `pr#12316 <http://github.com/ceph/ceph/pull/12316>`_, Orit Wasserman) -* rgw: be aware abount tenants on cls_user_bucket -> rgw_bucket conversion (`issue#18364 <http://tracker.ceph.com/issues/18364>`_, `issue#16355 <http://tracker.ceph.com/issues/16355>`_, `pr#13276 <http://github.com/ceph/ceph/pull/13276>`_, Radoslaw Zarzynski) -* rgw: bucket check remove _multipart_ prefix (`issue#13724 <http://tracker.ceph.com/issues/13724>`_, `pr#11470 <http://github.com/ceph/ceph/pull/11470>`_, Weijun Duan) -* rgw: bucket resharding (`issue#17549 <http://tracker.ceph.com/issues/17549>`_, `issue#17550 <http://tracker.ceph.com/issues/17550>`_, `pr#13341 <http://github.com/ceph/ceph/pull/13341>`_, Yehuda Sadeh, Robin H. Johnson) -* rgw: disable virtual hosting of buckets when no hostnames are configured (`issue#17440 <http://tracker.ceph.com/issues/17440>`_, `issue#15975 <http://tracker.ceph.com/issues/15975>`_, `issue#17136 <http://tracker.ceph.com/issues/17136>`_, `pr#11760 <http://github.com/ceph/ceph/pull/11760>`_, Casey Bodley, Robin H. Johnson) -* rgw: do not abort when accept a CORS request with short origin (`issue#18187 <http://tracker.ceph.com/issues/18187>`_, `pr#12397 <http://github.com/ceph/ceph/pull/12397>`_, LiuYang) -* rgw: don't store empty chains in gc (`issue#17897 <http://tracker.ceph.com/issues/17897>`_, `pr#12174 <http://github.com/ceph/ceph/pull/12174>`_, Yehuda Sadeh) -* rgw:fix for deleting objects name beginning and ending with underscores of one bucket using POST method of js sdk. (`issue#17888 <http://tracker.ceph.com/issues/17888>`_, `pr#12320 <http://github.com/ceph/ceph/pull/12320>`_, Casey Bodley) -* rgw: fix period update crash (`issue#18631 <http://tracker.ceph.com/issues/18631>`_, `pr#13273 <http://github.com/ceph/ceph/pull/13273>`_, Orit Wasserman) -* rgw: fix put_acls for objects starting and ending with underscore (`issue#17625 <http://tracker.ceph.com/issues/17625>`_, `pr#11675 <http://github.com/ceph/ceph/pull/11675>`_, Orit Wasserman) -* rgw: fix use of marker in List::list_objects() (`issue#18331 <http://tracker.ceph.com/issues/18331>`_, `pr#13358 <http://github.com/ceph/ceph/pull/13358>`_, Yehuda Sadeh) -* rgw: for the create_bucket api, if the input creation_time is zero, we … (`issue#16597 <http://tracker.ceph.com/issues/16597>`_, `pr#11990 <http://github.com/ceph/ceph/pull/11990>`_, weiqiaomiao) -* rgw: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection (`issue#15557 <http://tracker.ceph.com/issues/15557>`_, `pr#10661 <http://github.com/ceph/ceph/pull/10661>`_, Pavan Rallabhandi) -* rgw: json encode/decode of RGWBucketInfo missing index_type field (`issue#17755 <http://tracker.ceph.com/issues/17755>`_, `pr#11759 <http://github.com/ceph/ceph/pull/11759>`_, Yehuda Sadeh) -* rgw: ldap: enforce simple_bind w/LDAPv3 redux (`issue#18339 <http://tracker.ceph.com/issues/18339>`_, `pr#12678 <http://github.com/ceph/ceph/pull/12678>`_, Weibing Zhang) -* rgw: leak from RGWMetaSyncShardCR::incremental_sync (`issue#18412 <http://tracker.ceph.com/issues/18412>`_, `issue#18300 <http://tracker.ceph.com/issues/18300>`_, `pr#13004 <http://github.com/ceph/ceph/pull/13004>`_, Casey Bodley, Sage Weil) -* rgw: leak in RGWFetchAllMetaCR (`issue#17812 <http://tracker.ceph.com/issues/17812>`_, `pr#11872 <http://github.com/ceph/ceph/pull/11872>`_, Casey Bodley) -* rgw: librgw: objects created from s3 apis are not visible from nfs mount point (`issue#18651 <http://tracker.ceph.com/issues/18651>`_, `pr#13177 <http://github.com/ceph/ceph/pull/13177>`_, Matt Benjamin) -* rgw: log name instead of id for SystemMetaObj on failure (`issue#15776 <http://tracker.ceph.com/issues/15776>`_, `pr#12622 <http://github.com/ceph/ceph/pull/12622>`_, Wido den Hollander, Abhishek Lekshmanan) -* rgw: multimds: mds entering up:replay and processing down mds aborts (`issue#17670 <http://tracker.ceph.com/issues/17670>`_, `pr#11857 <http://github.com/ceph/ceph/pull/11857>`_, Patrick Donnelly) -* rgw: multipart upload copy (`issue#12790 <http://tracker.ceph.com/issues/12790>`_, `pr#13068 <http://github.com/ceph/ceph/pull/13068>`_, Yehuda Sadeh, Javier M. Mellid, Matt Benjamin) -* rgw: multisite: after finishing full sync on a bucket, incremental sync starts over from the beginning (`issue#17661 <http://tracker.ceph.com/issues/17661>`_, `issue#17624 <http://tracker.ceph.com/issues/17624>`_, `pr#11864 <http://github.com/ceph/ceph/pull/11864>`_, Zengran Zhang, Casey Bodley) -* rgw: multisite: assert(next) failed in RGWMetaSyncCR (`issue#17044 <http://tracker.ceph.com/issues/17044>`_, `pr#11477 <http://github.com/ceph/ceph/pull/11477>`_, Casey Bodley) -* rgw: multisite: coroutine deadlock assertion on error in FetchAllMetaCR (`issue#17571 <http://tracker.ceph.com/issues/17571>`_, `pr#11866 <http://github.com/ceph/ceph/pull/11866>`_, Casey Bodley) -* rgw: multisite: coroutine deadlock in RGWMetaSyncCR after ECANCELED errors (`issue#17465 <http://tracker.ceph.com/issues/17465>`_, `pr#12738 <http://github.com/ceph/ceph/pull/12738>`_, Casey Bodley) -* rgw: multisite doesn't retry RGWFetchAllMetaCR on failed lease (`issue#17047 <http://tracker.ceph.com/issues/17047>`_, `pr#11476 <http://github.com/ceph/ceph/pull/11476>`_, Casey Bodley) -* rgw: multisite: ECANCELED & 500 error on bucket delete (`issue#17698 <http://tracker.ceph.com/issues/17698>`_, `pr#12044 <http://github.com/ceph/ceph/pull/12044>`_, Casey Bodley) -* rgw: multisite: failed assertion in 'radosgw-admin bucket sync status' (`issue#18083 <http://tracker.ceph.com/issues/18083>`_, `pr#12314 <http://github.com/ceph/ceph/pull/12314>`_, Casey Bodley) -* rgw: multisite: fix ref counting of completions (`issue#17792 <http://tracker.ceph.com/issues/17792>`_, `issue#18414 <http://tracker.ceph.com/issues/18414>`_, `issue#17793 <http://tracker.ceph.com/issues/17793>`_, `issue#18407 <http://tracker.ceph.com/issues/18407>`_, `pr#13001 <http://github.com/ceph/ceph/pull/13001>`_, Casey Bodley) -* rgw: multisite: metadata master can get the wrong value for 'oldest_log_period' (`issue#16894 <http://tracker.ceph.com/issues/16894>`_, `pr#11868 <http://github.com/ceph/ceph/pull/11868>`_, Casey Bodley) -* rgw: multisite: obsolete 'radosgw-admin period prepare' command (`issue#17387 <http://tracker.ceph.com/issues/17387>`_, `pr#11574 <http://github.com/ceph/ceph/pull/11574>`_, Gaurav Kumar Garg) -* rgw: multisite: race between ReadSyncStatus and InitSyncStatus leads to EIO errors (`issue#17568 <http://tracker.ceph.com/issues/17568>`_, `pr#11865 <http://github.com/ceph/ceph/pull/11865>`_, Casey Bodley) -* rgw: multisite requests failing with '400 Bad Request' with civetweb 1.8 (`issue#17822 <http://tracker.ceph.com/issues/17822>`_, `pr#12313 <http://github.com/ceph/ceph/pull/12313>`_, Casey Bodley) -* rgw: multisite: segfault after changing value of rgw_data_log_num_shards (`issue#18488 <http://tracker.ceph.com/issues/18488>`_, `pr#13180 <http://github.com/ceph/ceph/pull/13180>`_, Casey Bodley) -* rgw: multisite: sync status reports master is on a different period (`issue#18064 <http://tracker.ceph.com/issues/18064>`_, `pr#13175 <http://github.com/ceph/ceph/pull/13175>`_, Abhishek Lekshmanan) -* rgw: multisite upgrade from hammer -> jewel ignores rgw_region_root_pool (`issue#17963 <http://tracker.ceph.com/issues/17963>`_, `pr#12156 <http://github.com/ceph/ceph/pull/12156>`_, Casey Bodley) -* rgw: radosgw-admin period update reverts deleted zonegroup (`issue#17239 <http://tracker.ceph.com/issues/17239>`_, `pr#13171 <http://github.com/ceph/ceph/pull/13171>`_, Orit Wasserman) -* rgw: Realm set does not create a new period (`issue#18333 <http://tracker.ceph.com/issues/18333>`_, `pr#13182 <http://github.com/ceph/ceph/pull/13182>`_, Orit Wasserman) -* rgw: remove spurious mount entries for RGW buckets (`issue#17850 <http://tracker.ceph.com/issues/17850>`_, `pr#12045 <http://github.com/ceph/ceph/pull/12045>`_, Matt Benjamin) -* rgw: Replacing '+' with "%20" in canonical uri for s3 v4 auth. (`issue#17076 <http://tracker.ceph.com/issues/17076>`_, `pr#12542 <http://github.com/ceph/ceph/pull/12542>`_, Pritha Srivastava) -* rgw: rgw-admin: missing command to modify placement targets (`issue#18078 <http://tracker.ceph.com/issues/18078>`_, `pr#12428 <http://github.com/ceph/ceph/pull/12428>`_, Yehuda Sadeh, Casey Bodley) -* rgw: RGWRados::get_system_obj() sends unnecessary stat request before read (`issue#17580 <http://tracker.ceph.com/issues/17580>`_, `pr#11867 <http://github.com/ceph/ceph/pull/11867>`_, Casey Bodley) -* rgw: rgw_rest_s3: apply missed base64 try-catch (`issue#17663 <http://tracker.ceph.com/issues/17663>`_, `pr#11672 <http://github.com/ceph/ceph/pull/11672>`_, Matt Benjamin) -* rgw: RGW will not list Argonaut-era bucket via HTTP (but radosgw-admin works) (`issue#17372 <http://tracker.ceph.com/issues/17372>`_, `pr#11863 <http://github.com/ceph/ceph/pull/11863>`_, Yehuda Sadeh) -* rgw: sends omap_getvals with (u64)-1 limit (`issue#17985 <http://tracker.ceph.com/issues/17985>`_, `pr#12419 <http://github.com/ceph/ceph/pull/12419>`_, Yehuda Sadeh, Sage Weil) -* rgw: slave zonegroup cannot enable the bucket versioning (`issue#18003 <http://tracker.ceph.com/issues/18003>`_, `pr#13173 <http://github.com/ceph/ceph/pull/13173>`_, Orit Wasserman) -* rgw: TempURL properly handles accounts created with the implicit tenant (`issue#17961 <http://tracker.ceph.com/issues/17961>`_, `pr#12079 <http://github.com/ceph/ceph/pull/12079>`_, Radoslaw Zarzynski) -* rgw: the value of total_time is wrong in the result of 'radosgw-admin log show' opt (`issue#17598 <http://tracker.ceph.com/issues/17598>`_, `pr#11876 <http://github.com/ceph/ceph/pull/11876>`_, weiqiaomiao) -* rgw: Unable to commit period zonegroup change (`issue#17364 <http://tracker.ceph.com/issues/17364>`_, `pr#12315 <http://github.com/ceph/ceph/pull/12315>`_, Orit Wasserman) -* rgw: valgrind "invalid read size 4" RGWGetObj (`issue#18071 <http://tracker.ceph.com/issues/18071>`_, `pr#12997 <http://github.com/ceph/ceph/pull/12997>`_, Matt Benjamin) -* rgw: work around curl_multi_wait bug with non-blocking reads (`issue#15915 <http://tracker.ceph.com/issues/15915>`_, `issue#16368 <http://tracker.ceph.com/issues/16368>`_, `issue#16695 <http://tracker.ceph.com/issues/16695>`_, `pr#11627 <http://github.com/ceph/ceph/pull/11627>`_, John Coyle, Casey Bodley) -* tests: add require_jewel_osds before upgrading last hammer node (`issue#18719 <http://tracker.ceph.com/issues/18719>`_, `pr#13161 <http://github.com/ceph/ceph/pull/13161>`_, Nathan Cutler) -* tests: add require_jewel_osds to upgrade/hammer-x/tiering (`issue#18920 <http://tracker.ceph.com/issues/18920>`_, `pr#13404 <http://github.com/ceph/ceph/pull/13404>`_, Nathan Cutler) -* tests: assertion failure in a radosgw-admin related task (`issue#17167 <http://tracker.ceph.com/issues/17167>`_, `pr#12764 <http://github.com/ceph/ceph/pull/12764>`_, Orit Wasserman) -* tests: Cannot reserve CentOS 7.2 smithi machines (`issue#18416 <http://tracker.ceph.com/issues/18416>`_, `issue#18401 <http://tracker.ceph.com/issues/18401>`_, `pr#13050 <http://github.com/ceph/ceph/pull/13050>`_, Nathan Cutler, Sage Weil, Yuri Weinstein) -* tests: ignore bogus ceph-objectstore-tool error in ceph_manager (`issue#16263 <http://tracker.ceph.com/issues/16263>`_, `pr#13240 <http://github.com/ceph/ceph/pull/13240>`_, Nathan Cutler, Kefu Chai) -* tests: objecter_requests workunit fails on wip branches (`issue#18393 <http://tracker.ceph.com/issues/18393>`_, `pr#12761 <http://github.com/ceph/ceph/pull/12761>`_, Sage Weil) -* tests: qa/suites/upgrade/hammer-x: break stress split ec symlinks (`issue#19006 <http://tracker.ceph.com/issues/19006>`_, `pr#13533 <http://github.com/ceph/ceph/pull/13533>`_, Nathan Cutler) -* tests: qa/suites/upgrade/hammer-x/stress-split: finish thrashing before final upgrade (`issue#19004 <http://tracker.ceph.com/issues/19004>`_, `pr#13222 <http://github.com/ceph/ceph/pull/13222>`_, Sage Weil) -* tests: qa/tasks/ceph_deploy.py: use dev option (`issue#18736 <http://tracker.ceph.com/issues/18736>`_, `pr#13106 <http://github.com/ceph/ceph/pull/13106>`_, Vasu Kulkarni) -* tests: qa/workunits/rbd: use more recent qemu-iotests that support Xenial (`issue#18149 <http://tracker.ceph.com/issues/18149>`_, `issue#10773 <http://tracker.ceph.com/issues/10773>`_, `pr#13103 <http://github.com/ceph/ceph/pull/13103>`_, Jason Dillaman) -* tests: remove qa/suites/buildpackages (`issue#18846 <http://tracker.ceph.com/issues/18846>`_, `pr#13299 <http://github.com/ceph/ceph/pull/13299>`_, Loic Dachary) -* tests: SUSE yaml facets in qa/distros/all are out of date (`issue#18856 <http://tracker.ceph.com/issues/18856>`_, `issue#18846 <http://tracker.ceph.com/issues/18846>`_, `pr#13331 <http://github.com/ceph/ceph/pull/13331>`_, Nathan Cutler) -* tests: update rbd/singleton/all/formatted-output.yaml to support ceph-ci (`issue#18440 <http://tracker.ceph.com/issues/18440>`_, `pr#12822 <http://github.com/ceph/ceph/pull/12822>`_, Nathan Cutler, Venky Shankar) -* tests: update Ubuntu image url after ceph.com refactor (`issue#18542 <http://tracker.ceph.com/issues/18542>`_, `pr#12959 <http://github.com/ceph/ceph/pull/12959>`_, Jason Dillaman) -* tests: upgrade:hammer-x: install firefly only on Ubuntu 14.04 (`issue#18089 <http://tracker.ceph.com/issues/18089>`_, `pr#13153 <http://github.com/ceph/ceph/pull/13153>`_, Nathan Cutler) -* tests: use ceph-jewel branch for s3tests (`issue#18384 <http://tracker.ceph.com/issues/18384>`_, `pr#12745 <http://github.com/ceph/ceph/pull/12745>`_, Nathan Cutler) -* tests: Workunits needlessly wget from git.ceph.com (`issue#18336 <http://tracker.ceph.com/issues/18336>`_, `issue#18271 <http://tracker.ceph.com/issues/18271>`_, `issue#18388 <http://tracker.ceph.com/issues/18388>`_, `pr#12686 <http://github.com/ceph/ceph/pull/12686>`_, Nathan Cutler, Sage Weil) -* test: temporarily disable fork()'ing tests (`issue#16556 <http://tracker.ceph.com/issues/16556>`_, `issue#17832 <http://tracker.ceph.com/issues/17832>`_, `pr#11953 <http://github.com/ceph/ceph/pull/11953>`_, John Spray) -* test: test fails due to The UNIX domain socket path (`issue#16014 <http://tracker.ceph.com/issues/16014>`_, `pr#12151 <http://github.com/ceph/ceph/pull/12151>`_, Loic Dachary) -* tools: ceph-disk: ceph-disk@.service races with ceph-osd@.service (`issue#17889 <http://tracker.ceph.com/issues/17889>`_, `issue#17813 <http://tracker.ceph.com/issues/17813>`_, `pr#12147 <http://github.com/ceph/ceph/pull/12147>`_, Loic Dachary) -* tools: ceph-disk --dmcrypt create must not require admin key (`issue#17849 <http://tracker.ceph.com/issues/17849>`_, `pr#12033 <http://github.com/ceph/ceph/pull/12033>`_, Loic Dachary) -* tools: ceph-disk prepare writes osd log 0 with root owner (`issue#18538 <http://tracker.ceph.com/issues/18538>`_, `pr#13025 <http://github.com/ceph/ceph/pull/13025>`_, Samuel Matzek) -* tools: crushtool --compile is create output despite of missing item (`issue#17306 <http://tracker.ceph.com/issues/17306>`_, `pr#11410 <http://github.com/ceph/ceph/pull/11410>`_, Kefu Chai) -* tools: rados bench seq must verify the hostname (`issue#17526 <http://tracker.ceph.com/issues/17526>`_, `pr#13049 <http://github.com/ceph/ceph/pull/13049>`_, Loic Dachary) -* tools: snapshotted RBD extent objects can't be manually evicted from a cache tier (`issue#17896 <http://tracker.ceph.com/issues/17896>`_, `pr#11968 <http://github.com/ceph/ceph/pull/11968>`_, Mingxin Liu) -* tools: systemd/ceph-disk: reduce ceph-disk flock contention (`issue#18049 <http://tracker.ceph.com/issues/18049>`_, `issue#13160 <http://tracker.ceph.com/issues/13160>`_, `pr#12210 <http://github.com/ceph/ceph/pull/12210>`_, David Disseldorp) - - -v10.2.5 Jewel -============= - -This point release fixes an important `regression introduced in v10.2.4 <http://tracker.ceph.com/issues/18185>`_. - -We recommend that all v10.2.x users upgrade. - -Notable Changes ---------------- -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.5.txt>`. - -* msg/simple/Pipe: avoid returning 0 on poll timeout (`issue#18185 <http://tracker.ceph.com/issues/18185>`_, `pr#12376 <https://github.com/ceph/ceph/pull/12376>`_, Sage Weil) - -v10.2.4 Jewel -============= - -This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS. - -We recommend that all v10.2.x users upgrade. Also note the following when upgrading from hammer - -Upgrading from hammer ---------------------- - -When the last hammer OSD in a cluster containing jewel MONs is -upgraded to jewel, as of 10.2.4 the jewel MONs will issue this -warning: "all OSDs are running jewel or later but the -'require_jewel_osds' osdmap flag is not set" and change the -cluster health status to HEALTH_WARN. - -This is a signal for the admin to do "ceph osd set require_jewel_osds" - by -doing this, the upgrade path is complete and no more pre-Jewel OSDs may be added -to the cluster. - - -Notable Changes ---------------- -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.4.txt>`. - -* build/ops: aarch64: Compiler-based detection of crc32 extended CPU type is broken (`issue#17516 <http://tracker.ceph.com/issues/17516>`_, `pr#11492 <http://github.com/ceph/ceph/pull/11492>`_, Alexander Graf) -* build/ops: allow building RGW with LDAP disabled (`issue#17312 <http://tracker.ceph.com/issues/17312>`_, `pr#11478 <http://github.com/ceph/ceph/pull/11478>`_, Daniel Gryniewicz) -* build/ops: backport 'logrotate: Run as root/ceph' (`issue#17381 <http://tracker.ceph.com/issues/17381>`_, `pr#11201 <http://github.com/ceph/ceph/pull/11201>`_, Boris Ranto) -* build/ops: ceph installs stuff in %_udevrulesdir but does not own that directory (`issue#16949 <http://tracker.ceph.com/issues/16949>`_, `pr#10862 <http://github.com/ceph/ceph/pull/10862>`_, Nathan Cutler) -* build/ops: ceph-osd-prestart.sh fails confusingly when data directory does not exist (`issue#17091 <http://tracker.ceph.com/issues/17091>`_, `pr#10812 <http://github.com/ceph/ceph/pull/10812>`_, Nathan Cutler) -* build/ops: disable LTTng-UST in openSUSE builds (`issue#16937 <http://tracker.ceph.com/issues/16937>`_, `pr#10794 <http://github.com/ceph/ceph/pull/10794>`_, Michel Normand) -* build/ops: i386 tarball gitbuilder failure on master (`issue#16398 <http://tracker.ceph.com/issues/16398>`_, `pr#10855 <http://github.com/ceph/ceph/pull/10855>`_, Vikhyat Umrao, Kefu Chai) -* build/ops: include more files in "make dist" tarball (`issue#17560 <http://tracker.ceph.com/issues/17560>`_, `pr#11431 <http://github.com/ceph/ceph/pull/11431>`_, Ken Dreyer) -* build/ops: incorrect value of CINIT_FLAG_DEFER_DROP_PRIVILEGES (`issue#16663 <http://tracker.ceph.com/issues/16663>`_, `pr#10278 <http://github.com/ceph/ceph/pull/10278>`_, Casey Bodley) -* build/ops: remove SYSTEMD_RUN from initscript (`issue#7627 <http://tracker.ceph.com/issues/7627>`_, `issue#16441 <http://tracker.ceph.com/issues/16441>`_, `issue#16440 <http://tracker.ceph.com/issues/16440>`_, `pr#9872 <http://github.com/ceph/ceph/pull/9872>`_, Vladislav Odintsov) -* build/ops: systemd: add install section to rbdmap.service file (`issue#17541 <http://tracker.ceph.com/issues/17541>`_, `pr#11158 <http://github.com/ceph/ceph/pull/11158>`_, Jelle vd Kooij) -* common: Enable/Disable of features is allowed even the features are already enabled/disabled (`issue#16079 <http://tracker.ceph.com/issues/16079>`_, `pr#11460 <http://github.com/ceph/ceph/pull/11460>`_, Lu Shi) -* common: Log.cc: Assign LOG_INFO priority to syslog calls (`issue#15808 <http://tracker.ceph.com/issues/15808>`_, `pr#11231 <http://github.com/ceph/ceph/pull/11231>`_, Brad Hubbard) -* common: Proxied operations shouldn't result in error messages if replayed (`issue#16130 <http://tracker.ceph.com/issues/16130>`_, `pr#11461 <http://github.com/ceph/ceph/pull/11461>`_, Vikhyat Umrao) -* common: Request exclusive lock if owner sends -ENOTSUPP for proxied maintenance op (`issue#16171 <http://tracker.ceph.com/issues/16171>`_, `pr#10784 <http://github.com/ceph/ceph/pull/10784>`_, Jason Dillaman) -* common: msgr/async: Messenger thread long time lock hold risk (`issue#15758 <http://tracker.ceph.com/issues/15758>`_, `pr#10761 <http://github.com/ceph/ceph/pull/10761>`_, Wei Jin) -* doc: fix description for rsize and rasize (`issue#17357 <http://tracker.ceph.com/issues/17357>`_, `pr#11171 <http://github.com/ceph/ceph/pull/11171>`_, Andreas Gerstmayr) -* filestore: can get stuck in an unbounded loop during scrub (`issue#17859 <http://tracker.ceph.com/issues/17859>`_, `pr#12001 <http://github.com/ceph/ceph/pull/12001>`_, Sage Weil) -* fs: Failure in snaptest-git-ceph.sh (`issue#17172 <http://tracker.ceph.com/issues/17172>`_, `pr#11419 <http://github.com/ceph/ceph/pull/11419>`_, Yan, Zheng) -* fs: Log path as well as ino when detecting metadata damage (`issue#16973 <http://tracker.ceph.com/issues/16973>`_, `pr#11418 <http://github.com/ceph/ceph/pull/11418>`_, John Spray) -* fs: client: FAILED assert(root_ancestor->qtree == __null) (`issue#16066 <http://tracker.ceph.com/issues/16066>`_, `issue#16067 <http://tracker.ceph.com/issues/16067>`_, `pr#10107 <http://github.com/ceph/ceph/pull/10107>`_, Yan, Zheng) -* fs: client: add missing client_lock for get_root (`issue#17197 <http://tracker.ceph.com/issues/17197>`_, `pr#10921 <http://github.com/ceph/ceph/pull/10921>`_, Patrick Donnelly) -* fs: client: fix shutdown with open inodes (`issue#16764 <http://tracker.ceph.com/issues/16764>`_, `pr#10958 <http://github.com/ceph/ceph/pull/10958>`_, John Spray) -* fs: client: nlink count is not maintained correctly (`issue#16668 <http://tracker.ceph.com/issues/16668>`_, `pr#10877 <http://github.com/ceph/ceph/pull/10877>`_, Jeff Layton) -* fs: multimds: allow_multimds not required when max_mds is set in ceph.conf at startup (`issue#17105 <http://tracker.ceph.com/issues/17105>`_, `pr#10997 <http://github.com/ceph/ceph/pull/10997>`_, Patrick Donnelly) -* librados: memory leaks from ceph::crypto (WITH_NSS) (`issue#17205 <http://tracker.ceph.com/issues/17205>`_, `pr#11409 <http://github.com/ceph/ceph/pull/11409>`_, Casey Bodley) -* librados: modify Pipe::connect() to return the error code (`issue#15308 <http://tracker.ceph.com/issues/15308>`_, `pr#11193 <http://github.com/ceph/ceph/pull/11193>`_, Vikhyat Umrao) -* librados: remove new setxattr overload to avoid breaking the C++ ABI (`issue#18058 <http://tracker.ceph.com/issues/18058>`_, `pr#12207 <http://github.com/ceph/ceph/pull/12207>`_, Josh Durgin) -* librbd: cannot disable journaling or remove non-mirrored, non-primary image (`issue#16740 <http://tracker.ceph.com/issues/16740>`_, `pr#11337 <http://github.com/ceph/ceph/pull/11337>`_, Jason Dillaman) -* librbd: discard after write can result in assertion failure (`issue#17695 <http://tracker.ceph.com/issues/17695>`_, `pr#11644 <http://github.com/ceph/ceph/pull/11644>`_, Jason Dillaman) -* librbd::Operations: update notification failed: (2) No such file or directory (`issue#17549 <http://tracker.ceph.com/issues/17549>`_, `pr#11420 <http://github.com/ceph/ceph/pull/11420>`_, Jason Dillaman) -* mds: Crash in Client::_invalidate_kernel_dcache when reconnecting during unmount (`issue#17253 <http://tracker.ceph.com/issues/17253>`_, `pr#11414 <http://github.com/ceph/ceph/pull/11414>`_, Yan, Zheng) -* mds: Duplicate damage table entries (`issue#17173 <http://tracker.ceph.com/issues/17173>`_, `pr#11412 <http://github.com/ceph/ceph/pull/11412>`_, John Spray) -* mds: Failure in dirfrag.sh (`issue#17286 <http://tracker.ceph.com/issues/17286>`_, `pr#11416 <http://github.com/ceph/ceph/pull/11416>`_, Yan, Zheng) -* mds: Failure in snaptest-git-ceph.sh (`issue#17271 <http://tracker.ceph.com/issues/17271>`_, `pr#11415 <http://github.com/ceph/ceph/pull/11415>`_, Yan, Zheng) -* mon: Ceph Status - Segmentation Fault (`issue#16266 <http://tracker.ceph.com/issues/16266>`_, `pr#11408 <http://github.com/ceph/ceph/pull/11408>`_, Brad Hubbard) -* mon: Display full flag in ceph status if full flag is set (`issue#15809 <http://tracker.ceph.com/issues/15809>`_, `pr#9388 <http://github.com/ceph/ceph/pull/9388>`_, Vikhyat Umrao) -* mon: Error EINVAL: removing mon.a at 172.21.15.16:6789/0, there will be 1 monitors (`issue#17725 <http://tracker.ceph.com/issues/17725>`_, `pr#12267 <http://github.com/ceph/ceph/pull/12267>`_, Joao Eduardo Luis) -* mon: OSDMonitor: only reject MOSDBoot based on up_from if inst matches (`issue#17899 <http://tracker.ceph.com/issues/17899>`_, `pr#12067 <http://github.com/ceph/ceph/pull/12067>`_, Samuel Just) -* mon: OSDMonitor: Missing nearfull flag set (`issue#17390 <http://tracker.ceph.com/issues/17390>`_, `pr#11272 <http://github.com/ceph/ceph/pull/11272>`_, Igor Podoski) -* mon: Upgrading 0.94.6 -> 0.94.9 saturating mon node networking (`issue#17365 <http://tracker.ceph.com/issues/17365>`_, `issue#17386 <http://tracker.ceph.com/issues/17386>`_, `pr#11679 <http://github.com/ceph/ceph/pull/11679>`_, Sage Weil, xie xingguo) -* mon: ceph mon Segmentation fault after set crush_ruleset ceph 10.2.2 (`issue#16653 <http://tracker.ceph.com/issues/16653>`_, `pr#10861 <http://github.com/ceph/ceph/pull/10861>`_, song baisen) -* mon: crash: crush/CrushWrapper.h: 940: FAILED assert(successful_detach) (`issue#16525 <http://tracker.ceph.com/issues/16525>`_, `pr#10496 <http://github.com/ceph/ceph/pull/10496>`_, Kefu Chai) -* mon: don't crash on invalid standby_for_fscid (`issue#17466 <http://tracker.ceph.com/issues/17466>`_, `pr#11389 <http://github.com/ceph/ceph/pull/11389>`_, John Spray) -* mon: fix missing osd metadata (again) (`issue#17685 <http://tracker.ceph.com/issues/17685>`_, `pr#11642 <http://github.com/ceph/ceph/pull/11642>`_, John Spray) -* mon: osdmonitor: decouple adjust_heartbeat_grace and min_down_reporters (`issue#17055 <http://tracker.ceph.com/issues/17055>`_, `pr#10757 <http://github.com/ceph/ceph/pull/10757>`_, Zengran Zhang) -* mon: the %USED of ceph df is wrong (`issue#16933 <http://tracker.ceph.com/issues/16933>`_, `pr#10860 <http://github.com/ceph/ceph/pull/10860>`_, Kefu Chai) -* osd: condition OSDMap encoding on features (`issue#18015 <http://tracker.ceph.com/issues/18015>`_, `pr#12167 <http://github.com/ceph/ceph/pull/12167>`_, Sage Weil) -* osd: PG::_update_calc_stats wrong for CRUSH_ITEM_NONE up set items (`issue#16998 <http://tracker.ceph.com/issues/16998>`_, `pr#10883 <http://github.com/ceph/ceph/pull/10883>`_, Samuel Just) -* osd: PG::choose_acting valgrind error or ./common/hobject.h: 182: FAILED assert(!max || (\*this == hobject_t(hobject_t::get_max()))) (`issue#13967 <http://tracker.ceph.com/issues/13967>`_, `pr#10885 <http://github.com/ceph/ceph/pull/10885>`_, Tao Chang) -* osd: Potential crash during journal::Replay shut down (`issue#16433 <http://tracker.ceph.com/issues/16433>`_, `pr#10645 <http://github.com/ceph/ceph/pull/10645>`_, Jason Dillaman) -* osd: add peer_addr in heartbeat_check log message (`issue#15762 <http://tracker.ceph.com/issues/15762>`_, `pr#9739 <http://github.com/ceph/ceph/pull/9739>`_, Vikhyat Umrao, Sage Weil) -* osd: adjust scrub boundary to object without SnapSet (`issue#17470 <http://tracker.ceph.com/issues/17470>`_, `pr#11311 <http://github.com/ceph/ceph/pull/11311>`_, Samuel Just) -* osd: ceph osd df does not show summarized info correctly if one or more OSDs are out (`issue#16706 <http://tracker.ceph.com/issues/16706>`_, `pr#10759 <http://github.com/ceph/ceph/pull/10759>`_, xie xingguo) -* osd: journal: do not prematurely flag object recorder as closed (`issue#17590 <http://tracker.ceph.com/issues/17590>`_, `pr#11634 <http://github.com/ceph/ceph/pull/11634>`_, Jason Dillaman) -* osd: mark_all_unfound_lost() leaves unapplied changes (`issue#16156 <http://tracker.ceph.com/issues/16156>`_, `pr#10886 <http://github.com/ceph/ceph/pull/10886>`_, Samuel Just) -* osd: segfault in ObjectCacher::FlusherThread (`issue#16610 <http://tracker.ceph.com/issues/16610>`_, `pr#10864 <http://github.com/ceph/ceph/pull/10864>`_, Yan, Zheng) -* qa: remove EnumerateObjects from librados upgrade tests (`pr#11728 <https://github.com/ceph/ceph/pull/11728>`_, Josh Durgin) -* rbd: Disabling pool mirror mode with registered peers results orphaned mirrored images (`issue#16984 <http://tracker.ceph.com/issues/16984>`_, `pr#10857 <http://github.com/ceph/ceph/pull/10857>`_, Jason Dillaman) -* rbd: ImageWatcher: use after free within C_UnwatchAndFlush (`issue#17289 <http://tracker.ceph.com/issues/17289>`_, `issue#17254 <http://tracker.ceph.com/issues/17254>`_, `pr#11466 <http://github.com/ceph/ceph/pull/11466>`_, Jason Dillaman) -* rbd: Prevent the creation of a clone from a non-primary mirrored image (`issue#16449 <http://tracker.ceph.com/issues/16449>`_, `pr#10650 <http://github.com/ceph/ceph/pull/10650>`_, Mykola Golub) -* rbd: RBD should restrict mirror enable/disable actions on parents/clones (`issue#16056 <http://tracker.ceph.com/issues/16056>`_, `pr#11459 <http://github.com/ceph/ceph/pull/11459>`_, zhuangzeqiang) -* rbd: TestJournalReplay: sporadic assert(m_state == STATE_READY || m_state == STATE_STOPPING) failure (`issue#17566 <http://tracker.ceph.com/issues/17566>`_, `pr#11590 <http://github.com/ceph/ceph/pull/11590>`_, Jason Dillaman) -* rbd: bench io-size should not be larger than image size (`issue#16967 <http://tracker.ceph.com/issues/16967>`_, `pr#10796 <http://github.com/ceph/ceph/pull/10796>`_, Jason Dillaman) -* rbd: ceph 10.2.2 rbd status on image format 2 returns (2) No such file or directory (`issue#16887 <http://tracker.ceph.com/issues/16887>`_, `pr#10652 <http://github.com/ceph/ceph/pull/10652>`_, Jason Dillaman) -* rbd: helgrind: TestLibRBD.TestIOPP potential deadlock closing an image with read-ahead enabled (`issue#17198 <http://tracker.ceph.com/issues/17198>`_, `pr#11463 <http://github.com/ceph/ceph/pull/11463>`_, Jason Dillaman) -* rbd: image.stat() call in librbdpy fails sometimes (`issue#17310 <http://tracker.ceph.com/issues/17310>`_, `pr#11464 <http://github.com/ceph/ceph/pull/11464>`_, Jason Dillaman) -* rbd: krbd qa scripts and concurrent.sh test fix (`issue#17223 <http://tracker.ceph.com/issues/17223>`_, `pr#11018 <http://github.com/ceph/ceph/pull/11018>`_, Ilya Dryomov) -* rbd: krbd-related CLI patches (`issue#17554 <http://tracker.ceph.com/issues/17554>`_, `pr#11400 <http://github.com/ceph/ceph/pull/11400>`_, Ilya Dryomov) -* rbd: mirror: improve resiliency of stress test case (`issue#16855 <http://tracker.ceph.com/issues/16855>`_, `issue#16555 <http://tracker.ceph.com/issues/16555>`_, `issue#14738 <http://tracker.ceph.com/issues/14738>`_, `issue#15259 <http://tracker.ceph.com/issues/15259>`_, `issue#17446 <http://tracker.ceph.com/issues/17446>`_, `issue#17355 <http://tracker.ceph.com/issues/17355>`_, `issue#16538 <http://tracker.ceph.com/issues/16538>`_, `issue#16974 <http://tracker.ceph.com/issues/16974>`_, `issue#17283 <http://tracker.ceph.com/issues/17283>`_, `issue#17317 <http://tracker.ceph.com/issues/17317>`_, `issue#17416 <http://tracker.ceph.com/issues/17416>`_, `issue#16227 <http://tracker.ceph.com/issues/16227>`_, `pr#11433 <http://github.com/ceph/ceph/pull/11433>`_, Mykola Golub, Ricardo Dias, Jason Dillaman) -* rbd: rbd-nbd IO hang (`issue#16921 <http://tracker.ceph.com/issues/16921>`_, `pr#11467 <http://github.com/ceph/ceph/pull/11467>`_, Jason Dillaman) -* rbd: update_features API needs to support backwards/forward compatibility (`issue#17330 <http://tracker.ceph.com/issues/17330>`_, `pr#11462 <http://github.com/ceph/ceph/pull/11462>`_, Jason Dillaman) -* rgw: COPY broke multipart files uploaded under dumpling (`issue#16435 <http://tracker.ceph.com/issues/16435>`_, `pr#10866 <http://github.com/ceph/ceph/pull/10866>`_, Yehuda Sadeh) -* rgw: Config parameter rgw keystone make new tenants in radosgw multitenancy does not work (`issue#17293 <http://tracker.ceph.com/issues/17293>`_, `pr#11473 <http://github.com/ceph/ceph/pull/11473>`_, SirishaGuduru) -* rgw: Do not archive metadata by default (`issue#17256 <http://tracker.ceph.com/issues/17256>`_, `pr#11321 <http://github.com/ceph/ceph/pull/11321>`_, Pavan Rallabhandi, Matt Benjamin) -* rgw: ERROR: got unexpected error when trying to read object: -2 (`issue#17111 <http://tracker.ceph.com/issues/17111>`_, `pr#11472 <http://github.com/ceph/ceph/pull/11472>`_, Yang Honggang) -* rgw: Modification for TEST S3 ACCESS section in INSTALL CEPH OBJECT GATEWAY page (`issue#15603 <http://tracker.ceph.com/issues/15603>`_, `pr#11475 <http://github.com/ceph/ceph/pull/11475>`_, la-sguduru) -* rgw: RGW loses realm/period/zonegroup/zone data: period overwritten if somewhere in the cluster is still running Hammer (`issue#17371 <http://tracker.ceph.com/issues/17371>`_, `pr#11519 <http://github.com/ceph/ceph/pull/11519>`_, Orit Wasserman) -* rgw: RGWDataSyncCR fails on errors from RGWListBucketIndexesCR (`issue#17073 <http://tracker.ceph.com/issues/17073>`_, `pr#11330 <http://github.com/ceph/ceph/pull/11330>`_, Casey Bodley) -* rgw: S3 object versioning fails when applied on a non-master zone (`issue#16494 <http://tracker.ceph.com/issues/16494>`_, `pr#11367 <http://github.com/ceph/ceph/pull/11367>`_, Yehuda Sadeh) -* rgw: add orphan options to radosgw-admin --help and man page (`issue#17281 <http://tracker.ceph.com/issues/17281>`_, `issue#17280 <http://tracker.ceph.com/issues/17280>`_, `pr#11139 <http://github.com/ceph/ceph/pull/11139>`_, Ken Dreyer, Thomas Serlin) -* rgw: back off bucket sync on failures, don't store marker (`issue#16742 <http://tracker.ceph.com/issues/16742>`_, `pr#11021 <http://github.com/ceph/ceph/pull/11021>`_, Yehuda Sadeh) -* rgw: combined LDAP backports (`issue#17544 <http://tracker.ceph.com/issues/17544>`_, `issue#17185 <http://tracker.ceph.com/issues/17185>`_, `pr#11332 <http://github.com/ceph/ceph/pull/11332>`_, Harald Klein, Matt Benjamin) -* rgw: cors auto memleak (`issue#16564 <http://tracker.ceph.com/issues/16564>`_, `pr#10656 <http://github.com/ceph/ceph/pull/10656>`_, Yan Jun) -* rgw: default quota fixes (`issue#16410 <http://tracker.ceph.com/issues/16410>`_, `pr#10832 <http://github.com/ceph/ceph/pull/10832>`_, Pavan Rallabhandi, Daniel Gryniewicz) -* rgw: doc: description of multipart part entity is wrong (`issue#17504 <http://tracker.ceph.com/issues/17504>`_, `pr#11342 <http://github.com/ceph/ceph/pull/11342>`_, weiqiaomiao) -* rgw: don't loop forever when reading data from 0 sized segment. (`issue#17692 <http://tracker.ceph.com/issues/17692>`_, `pr#11626 <http://github.com/ceph/ceph/pull/11626>`_, Marcus Watts) -* rgw: fix put_acls for objects starting and ending with underscore (`issue#17625 <http://tracker.ceph.com/issues/17625>`_, `pr#11669 <http://github.com/ceph/ceph/pull/11669>`_, Orit Wasserman) -* rgw: fix regression with handling double underscore (`issue#17443 <http://tracker.ceph.com/issues/17443>`_, `issue#16856 <http://tracker.ceph.com/issues/16856>`_, `pr#11563 <http://github.com/ceph/ceph/pull/11563>`_, Yehuda Sadeh, Orit Wasserman) -* rgw: handle empty POST condition (`issue#17635 <http://tracker.ceph.com/issues/17635>`_, `pr#11662 <http://github.com/ceph/ceph/pull/11662>`_, Yehuda Sadeh) -* rgw: metadata sync can skip markers for failed/incomplete entries (`issue#16759 <http://tracker.ceph.com/issues/16759>`_, `pr#10657 <http://github.com/ceph/ceph/pull/10657>`_, Yehuda Sadeh) -* rgw: nfs backports (`issue#17393 <http://tracker.ceph.com/issues/17393>`_, `issue#17311 <http://tracker.ceph.com/issues/17311>`_, `issue#17367 <http://tracker.ceph.com/issues/17367>`_, `issue#17319 <http://tracker.ceph.com/issues/17319>`_, `issue#17321 <http://tracker.ceph.com/issues/17321>`_, `issue#17322 <http://tracker.ceph.com/issues/17322>`_, `issue#17323 <http://tracker.ceph.com/issues/17323>`_, `issue#17325 <http://tracker.ceph.com/issues/17325>`_, `issue#17326 <http://tracker.ceph.com/issues/17326>`_, `issue#17327 <http://tracker.ceph.com/issues/17327>`_, `pr#11335 <http://github.com/ceph/ceph/pull/11335>`_, Min Chen, Yan Jun, Weibing Zhang, Matt Benjamin) -* rgw: period commit loses zonegroup changes: region_map converted repeatedly (`issue#17051 <http://tracker.ceph.com/issues/17051>`_, `pr#10890 <http://github.com/ceph/ceph/pull/10890>`_, Casey Bodley) -* rgw: period commit return error when the current period has a zonegroup which doesn't have a master zone (`issue#17110 <http://tracker.ceph.com/issues/17110>`_, `pr#10867 <http://github.com/ceph/ceph/pull/10867>`_, weiqiaomiao) -* rgw: radosgw daemon core when reopen logs (`issue#17036 <http://tracker.ceph.com/issues/17036>`_, `pr#10868 <http://github.com/ceph/ceph/pull/10868>`_, weiqiaomiao) -* rgw: rgw file uses too much CPU in gc/idle thread (`issue#16976 <http://tracker.ceph.com/issues/16976>`_, `pr#10889 <http://github.com/ceph/ceph/pull/10889>`_, Matt Benjamin) -* rgw: s3tests-test-readwrite failing with 500 (`issue#16930 <http://tracker.ceph.com/issues/16930>`_, `pr#11471 <http://github.com/ceph/ceph/pull/11471>`_, Yehuda Sadeh) -* rgw: upgrade from old multisite to new multisite fails (`issue#16751 <http://tracker.ceph.com/issues/16751>`_, `pr#10891 <http://github.com/ceph/ceph/pull/10891>`_, Orit Wasserman) -* rgw:response information is error when geting token of swift account (`issue#15195 <http://tracker.ceph.com/issues/15195>`_, `pr#11474 <http://github.com/ceph/ceph/pull/11474>`_, Qiankun Zheng) -* rgw:user email can modify to empty when it has values (`issue#13286 <http://tracker.ceph.com/issues/13286>`_, `pr#11469 <http://github.com/ceph/ceph/pull/11469>`_, Yehuda Sadeh, Weijun Duan) -* tests: ceph-disk must ignore debug monc (`issue#17607 <http://tracker.ceph.com/issues/17607>`_, `pr#11548 <http://github.com/ceph/ceph/pull/11548>`_, Loic Dachary) -* tests: fix TestClsRbd.mirror_image failure in upgrade:jewel-x-master-distro-basic-vps (`issue#16529 <http://tracker.ceph.com/issues/16529>`_, `pr#10888 <http://github.com/ceph/ceph/pull/10888>`_, Jason Dillaman) -* tests: scsi_debug fails /dev/disk/by-partuuid (`issue#17100 <http://tracker.ceph.com/issues/17100>`_, `pr#11411 <http://github.com/ceph/ceph/pull/11411>`_, Loic Dachary) -* tests: test/ceph_test_msgr: do not use Message::middle for holding transient… (`issue#17365 <http://tracker.ceph.com/issues/17365>`_, `issue#17728 <http://tracker.ceph.com/issues/17728>`_, `issue#16955 <http://tracker.ceph.com/issues/16955>`_, `pr#11742 <http://github.com/ceph/ceph/pull/11742>`_, Haomai Wang, Kefu Chai, Michal Jarzabek, Sage Weil) -* tools: Missing comma in ceph-create-keys causes concatenation of arguments (`issue#17815 <http://tracker.ceph.com/issues/17815>`_, `pr#11822 <http://github.com/ceph/ceph/pull/11822>`_, Patrick Donnelly) -* tools: add a tool to rebuild mon store from OSD (`issue#17179 <http://tracker.ceph.com/issues/17179>`_, `issue#17400 <http://tracker.ceph.com/issues/17400>`_, `pr#11126 <http://github.com/ceph/ceph/pull/11126>`_, Kefu Chai, xie xingguo) -* tools: ceph-create-keys: sometimes blocks forever if mds allow is set (`issue#16255 <http://tracker.ceph.com/issues/16255>`_, `pr#11417 <http://github.com/ceph/ceph/pull/11417>`_, John Spray) -* tools: ceph-disk should timeout when a lock cannot be acquired (`issue#16580 <http://tracker.ceph.com/issues/16580>`_, `pr#10758 <http://github.com/ceph/ceph/pull/10758>`_, Loic Dachary) -* tools: ceph-disk: expected systemd unit failures are confusing (`issue#15990 <http://tracker.ceph.com/issues/15990>`_, `pr#10884 <http://github.com/ceph/ceph/pull/10884>`_, Boris Ranto) -* tools: ceph-disk: using a regular file as a journal fails (`issue#16280 <http://tracker.ceph.com/issues/16280>`_, `issue#17662 <http://tracker.ceph.com/issues/17662>`_, `pr#11657 <http://github.com/ceph/ceph/pull/11657>`_, Jayashree Candadai, Anirudha Bose, Loic Dachary, Shylesh Kumar) -* tools: ceph-objectstore-tool crashes if --journal-path <a-directory> (`issue#17307 <http://tracker.ceph.com/issues/17307>`_, `pr#11407 <http://github.com/ceph/ceph/pull/11407>`_, Kefu Chai) -* tools: ceph-objectstore-tool: add a way to split filestore directories offline (`issue#17220 <http://tracker.ceph.com/issues/17220>`_, `pr#11252 <http://github.com/ceph/ceph/pull/11252>`_, Josh Durgin) -* tools: ceph-post-file: use new ssh key (`issue#14267 <http://tracker.ceph.com/issues/14267>`_, `pr#11746 <http://github.com/ceph/ceph/pull/11746>`_, David Galloway) - - -v10.2.3 Jewel -============= - -This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS. - -We recommend that all v10.2.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.3.txt>`. - -Notable Changes ---------------- - -* build/ops: 60-ceph-partuuid-workaround-rules still needed by debian jessie (udev 215-17) (`issue#16351 <http://tracker.ceph.com/issues/16351>`_, `pr#10653 <http://github.com/ceph/ceph/pull/10653>`_, runsisi, Loic Dachary) -* build/ops: ceph Resource Agent does not work with systemd (`issue#14828 <http://tracker.ceph.com/issues/14828>`_, `pr#9917 <http://github.com/ceph/ceph/pull/9917>`_, Nathan Cutler) -* build/ops: ceph-base requires parted (`issue#16095 <http://tracker.ceph.com/issues/16095>`_, `pr#10008 <http://github.com/ceph/ceph/pull/10008>`_, Ken Dreyer) -* build/ops: ceph-osd-prestart.sh contains Upstart-specific code (`issue#15984 <http://tracker.ceph.com/issues/15984>`_, `pr#10364 <http://github.com/ceph/ceph/pull/10364>`_, Nathan Cutler) -* build/ops: mount.ceph: move from ceph-base to ceph-common and add symlink in /sbin for SUSE (`issue#16598 <http://tracker.ceph.com/issues/16598>`_, `issue#16645 <http://tracker.ceph.com/issues/16645>`_, `pr#10357 <http://github.com/ceph/ceph/pull/10357>`_, Nathan Cutler, Dan Horák, Ricardo Dias, Kefu Chai) -* build/ops: need rocksdb commit 7ca731b12ce for ppc64le build (`issue#17092 <http://tracker.ceph.com/issues/17092>`_, `pr#10816 <http://github.com/ceph/ceph/pull/10816>`_, Nathan Cutler) -* build/ops: rpm: OBS needs ExclusiveArch (`issue#16936 <http://tracker.ceph.com/issues/16936>`_, `pr#10614 <http://github.com/ceph/ceph/pull/10614>`_, Michel Normand) -* cli: ceph command line tool chokes on ceph –w (the dash is unicode 'en dash' &ndash, copy-paste to reproduce) (`issue#12287 <http://tracker.ceph.com/issues/12287>`_, `pr#10420 <http://github.com/ceph/ceph/pull/10420>`_, Oleh Prypin, Kefu Chai) -* common: expose buffer const_iterator symbols (`issue#16899 <http://tracker.ceph.com/issues/16899>`_, `pr#10552 <http://github.com/ceph/ceph/pull/10552>`_, Noah Watkins) -* common: global-init: fixup chown of the run directory along with log and asok files (`issue#15607 <http://tracker.ceph.com/issues/15607>`_, `pr#8754 <http://github.com/ceph/ceph/pull/8754>`_, Karol Mroz) -* fs: ceph-fuse: link to libtcmalloc or jemalloc (`issue#16655 <http://tracker.ceph.com/issues/16655>`_, `pr#10303 <http://github.com/ceph/ceph/pull/10303>`_, Yan, Zheng) -* fs: client: crash in unmount when fuse_use_invalidate_cb is enabled (`issue#16137 <http://tracker.ceph.com/issues/16137>`_, `pr#10106 <http://github.com/ceph/ceph/pull/10106>`_, Yan, Zheng) -* fs: client: fstat cap release (`issue#15723 <http://tracker.ceph.com/issues/15723>`_, `pr#9562 <http://github.com/ceph/ceph/pull/9562>`_, Yan, Zheng, Noah Watkins) -* fs: essential backports for OpenStack Manila (`issue#15406 <http://tracker.ceph.com/issues/15406>`_, `issue#15614 <http://tracker.ceph.com/issues/15614>`_, `issue#15615 <http://tracker.ceph.com/issues/15615>`_, `pr#10453 <http://github.com/ceph/ceph/pull/10453>`_, John Spray, Ramana Raja, Xiaoxi Chen) -* fs: fix double-unlock on shutdown (`issue#17126 <http://tracker.ceph.com/issues/17126>`_, `pr#10847 <http://github.com/ceph/ceph/pull/10847>`_, Greg Farnum) -* fs: fix mdsmap print_summary with standby replays (`issue#15705 <http://tracker.ceph.com/issues/15705>`_, `pr#9547 <http://github.com/ceph/ceph/pull/9547>`_, John Spray) -* fs: fuse mounted file systems fails SAMBA CTDB ping_pong rw test with v9.0.2 (`issue#12653 <http://tracker.ceph.com/issues/12653>`_, `issue#15634 <http://tracker.ceph.com/issues/15634>`_, `pr#10108 <http://github.com/ceph/ceph/pull/10108>`_, Yan, Zheng) -* librados: Missing export for rados_aio_get_version in src/include/rados/librados.h (`issue#15535 <http://tracker.ceph.com/issues/15535>`_, `pr#9574 <http://github.com/ceph/ceph/pull/9574>`_, Jim Wright) -* librados: osd: bad flags can crash the osd (`issue#16012 <http://tracker.ceph.com/issues/16012>`_, `pr#9997 <http://github.com/ceph/ceph/pull/9997>`_, Sage Weil) -* librbd: Close journal and object map before flagging exclusive lock as released (`issue#16450 <http://tracker.ceph.com/issues/16450>`_, `pr#10053 <http://github.com/ceph/ceph/pull/10053>`_, Jason Dillaman) -* librbd: Crash when utilizing advisory locking API functions (`issue#16364 <http://tracker.ceph.com/issues/16364>`_, `pr#10051 <http://github.com/ceph/ceph/pull/10051>`_, Jason Dillaman) -* librbd: ExclusiveLock object leaked when switching to snapshot (`issue#16446 <http://tracker.ceph.com/issues/16446>`_, `pr#10054 <http://github.com/ceph/ceph/pull/10054>`_, Jason Dillaman) -* librbd: FAILED assert(object_no < m_object_map.size()) (`issue#16561 <http://tracker.ceph.com/issues/16561>`_, `pr#10647 <http://github.com/ceph/ceph/pull/10647>`_, Jason Dillaman) -* librbd: Image removal doesn't necessarily clean up all rbd_mirroring entries (`issue#16471 <http://tracker.ceph.com/issues/16471>`_, `pr#10009 <http://github.com/ceph/ceph/pull/10009>`_, Jason Dillaman) -* librbd: Object map/fast-diff invalidated if journal replays the same snap remove event (`issue#16350 <http://tracker.ceph.com/issues/16350>`_, `pr#10010 <http://github.com/ceph/ceph/pull/10010>`_, Jason Dillaman) -* librbd: Timeout sending mirroring notification shouldn't result in failure (`issue#16470 <http://tracker.ceph.com/issues/16470>`_, `pr#10052 <http://github.com/ceph/ceph/pull/10052>`_, Jason Dillaman) -* librbd: Whitelist EBUSY error from snap unprotect for journal replay (`issue#16445 <http://tracker.ceph.com/issues/16445>`_, `pr#10055 <http://github.com/ceph/ceph/pull/10055>`_, Jason Dillaman) -* librbd: cancel all tasks should wait until finisher is done (`issue#16517 <http://tracker.ceph.com/issues/16517>`_, `pr#9752 <http://github.com/ceph/ceph/pull/9752>`_, Haomai Wang) -* librbd: delay acquiring lock if image watch has failed (`issue#16923 <http://tracker.ceph.com/issues/16923>`_, `pr#10827 <http://github.com/ceph/ceph/pull/10827>`_, Jason Dillaman) -* librbd: fix missing return statement if failed to get mirror image state (`issue#16600 <http://tracker.ceph.com/issues/16600>`_, `pr#10144 <http://github.com/ceph/ceph/pull/10144>`_, runsisi) -* librbd: flag image as updated after proxying maintenance op (`issue#16404 <http://tracker.ceph.com/issues/16404>`_, `pr#9883 <http://github.com/ceph/ceph/pull/9883>`_, Jason Dillaman) -* librbd: mkfs.xfs slow performance with discards and object map (`issue#16707 <http://tracker.ceph.com/issues/16707>`_, `issue#16689 <http://tracker.ceph.com/issues/16689>`_, `pr#10649 <http://github.com/ceph/ceph/pull/10649>`_, Jason Dillaman) -* librbd: potential use after free on refresh error (`issue#16519 <http://tracker.ceph.com/issues/16519>`_, `pr#9952 <http://github.com/ceph/ceph/pull/9952>`_, Mykola Golub) -* librbd: rbd-nbd does not properly handle resize notifications (`issue#15715 <http://tracker.ceph.com/issues/15715>`_, `pr#10679 <http://github.com/ceph/ceph/pull/10679>`_, Mykola Golub) -* librbd: the option 'rbd_cache_writethrough_until_flush=true' dosn't work (`issue#16740 <http://tracker.ceph.com/issues/16740>`_, `issue#16386 <http://tracker.ceph.com/issues/16386>`_, `issue#16708 <http://tracker.ceph.com/issues/16708>`_, `issue#16654 <http://tracker.ceph.com/issues/16654>`_, `issue#16478 <http://tracker.ceph.com/issues/16478>`_, `pr#10797 <http://github.com/ceph/ceph/pull/10797>`_, Mykola Golub, xinxin shu, Xiaowei Chen, Jason Dillaman) -* mds: tell command blocks forever with async messenger (TestVolumeClient.test_evict_client failure) (`issue#16288 <http://tracker.ceph.com/issues/16288>`_, `pr#10501 <http://github.com/ceph/ceph/pull/10501>`_, Douglas Fuller) -* mds: Confusing MDS log message when shut down with stalled journaler reads (`issue#15689 <http://tracker.ceph.com/issues/15689>`_, `pr#9557 <http://github.com/ceph/ceph/pull/9557>`_, John Spray) -* mds: Deadlock on shutdown active rank while busy with metadata IO (`issue#16042 <http://tracker.ceph.com/issues/16042>`_, `pr#10502 <http://github.com/ceph/ceph/pull/10502>`_, Patrick Donnelly) -* mds: Failing file operations on kernel based cephfs mount point leaves unaccessible file behind on hammer 0.94.7 (`issue#16013 <http://tracker.ceph.com/issues/16013>`_, `pr#10199 <http://github.com/ceph/ceph/pull/10199>`_, Yan, Zheng) -* mds: Fix shutting down mds timed-out due to deadlock (`issue#16396 <http://tracker.ceph.com/issues/16396>`_, `pr#10500 <http://github.com/ceph/ceph/pull/10500>`_, Zhi Zhang) -* mds: MDSMonitor fixes (`issue#16136 <http://tracker.ceph.com/issues/16136>`_, `pr#9561 <http://github.com/ceph/ceph/pull/9561>`_, xie xingguo) -* mds: MDSMonitor::check_subs() is very buggy (`issue#16022 <http://tracker.ceph.com/issues/16022>`_, `pr#10103 <http://github.com/ceph/ceph/pull/10103>`_, Yan, Zheng) -* mds: Session::check_access() is buggy (`issue#16358 <http://tracker.ceph.com/issues/16358>`_, `pr#10105 <http://github.com/ceph/ceph/pull/10105>`_, Yan, Zheng) -* mds: StrayManager.cc: 520: FAILED assert(dnl->is_primary()) (`issue#15920 <http://tracker.ceph.com/issues/15920>`_, `pr#9559 <http://github.com/ceph/ceph/pull/9559>`_, Yan, Zheng) -* mds: enforce a dirfrag limit on entries (`issue#16164 <http://tracker.ceph.com/issues/16164>`_, `pr#10104 <http://github.com/ceph/ceph/pull/10104>`_, Patrick Donnelly) -* mds: fix SnapRealm::have_past_parents_open() (`issue#16299 <http://tracker.ceph.com/issues/16299>`_, `pr#10499 <http://github.com/ceph/ceph/pull/10499>`_, Yan, Zheng) -* mds: fix getattr starve setattr (`issue#16154 <http://tracker.ceph.com/issues/16154>`_, `pr#9560 <http://github.com/ceph/ceph/pull/9560>`_, Yan, Zheng) -* mds: wrongly treat symlink inode as normal file/dir when symlink inode is stale on kcephfs (`issue#15702 <http://tracker.ceph.com/issues/15702>`_, `pr#9405 <http://github.com/ceph/ceph/pull/9405>`_, Zhi Zhang) -* mon: "mon metadata" fails when only one monitor exists (`issue#15866 <http://tracker.ceph.com/issues/15866>`_, `pr#10654 <http://github.com/ceph/ceph/pull/10654>`_, John Spray, Kefu Chai) -* mon: Monitor: validate prefix on handle_command() (`issue#16297 <http://tracker.ceph.com/issues/16297>`_, `pr#10036 <http://github.com/ceph/ceph/pull/10036>`_, You Ji) -* mon: OSDMonitor: drop pg temps from not the current primary (`issue#16127 <http://tracker.ceph.com/issues/16127>`_, `pr#9998 <http://github.com/ceph/ceph/pull/9998>`_, Samuel Just) -* mon: prepare_pgtemp needs to only update up_thru if newer than the existing one (`issue#16185 <http://tracker.ceph.com/issues/16185>`_, `pr#10001 <http://github.com/ceph/ceph/pull/10001>`_, Samuel Just) -* msgr: AsyncConnection::lockmsg/async lockdep cycle: AsyncMessenger::lock, MDSDaemon::mds_lock, AsyncConnection::lock (`issue#16237 <http://tracker.ceph.com/issues/16237>`_, `pr#10004 <http://github.com/ceph/ceph/pull/10004>`_, Haomai Wang) -* msgr: async messenger mon crash (`issue#16378 <http://tracker.ceph.com/issues/16378>`_, `issue#16418 <http://tracker.ceph.com/issues/16418>`_, `pr#9996 <http://github.com/ceph/ceph/pull/9996>`_, Haomai Wang) -* msgr: backports of all asyncmsgr fixes to jewel (`issue#15503 <http://tracker.ceph.com/issues/15503>`_, `issue#15372 <http://tracker.ceph.com/issues/15372>`_, `pr#9633 <http://github.com/ceph/ceph/pull/9633>`_, Yan Jun, Haomai Wang, Piotr Dałek) -* msgr: msg/async: connection race hang (`issue#15849 <http://tracker.ceph.com/issues/15849>`_, `pr#10003 <http://github.com/ceph/ceph/pull/10003>`_, Haomai Wang) -* osd: FileStore: umount hang because sync thread doesn't exit (`issue#15695 <http://tracker.ceph.com/issues/15695>`_, `pr#9105 <http://github.com/ceph/ceph/pull/9105>`_, Kefu Chai) -* osd: Fixes for list-inconsistent-* (`issue#15766 <http://tracker.ceph.com/issues/15766>`_, `issue#16192 <http://tracker.ceph.com/issues/16192>`_, `issue#15719 <http://tracker.ceph.com/issues/15719>`_, `pr#9565 <http://github.com/ceph/ceph/pull/9565>`_, David Zafman) -* osd: New pools have bogus stuck inactive/unclean HEALTH_ERR messages until they are first active and clean (`issue#14952 <http://tracker.ceph.com/issues/14952>`_, `pr#10007 <http://github.com/ceph/ceph/pull/10007>`_, Sage Weil) -* osd: OSD crash with Hammer to Jewel Upgrade: void FileStore::init_temp_collections() (`issue#16672 <http://tracker.ceph.com/issues/16672>`_, `pr#10561 <http://github.com/ceph/ceph/pull/10561>`_, David Zafman) -* osd: OSD failed to subscribe skipped osdmaps after ceph osd pause (`issue#17023 <http://tracker.ceph.com/issues/17023>`_, `pr#10804 <http://github.com/ceph/ceph/pull/10804>`_, Kefu Chai) -* osd: ObjectCacher split BufferHead read fix (`issue#16002 <http://tracker.ceph.com/issues/16002>`_, `pr#10074 <http://github.com/ceph/ceph/pull/10074>`_, Greg Farnum) -* osd: ReplicatedBackend doesn't increment stats on pull, only push (`issue#16277 <http://tracker.ceph.com/issues/16277>`_, `pr#10421 <http://github.com/ceph/ceph/pull/10421>`_, Kefu Chai) -* osd: Scrub error: 0/1 pinned (`issue#15952 <http://tracker.ceph.com/issues/15952>`_, `pr#9576 <http://github.com/ceph/ceph/pull/9576>`_, Samuel Just) -* osd: crash adding snap to purged_snaps in ReplicatedPG::WaitingOnReplicas (`issue#15943 <http://tracker.ceph.com/issues/15943>`_, `pr#9575 <http://github.com/ceph/ceph/pull/9575>`_, Samuel Just) -* osd: partprobe intermittent issues during ceph-disk prepare (`issue#15176 <http://tracker.ceph.com/issues/15176>`_, `pr#10497 <http://github.com/ceph/ceph/pull/10497>`_, Marius Vollmer, Loic Dachary) -* osd: saw valgrind issues in ReplicatedPG::new_repop (`issue#16801 <http://tracker.ceph.com/issues/16801>`_, `pr#10760 <http://github.com/ceph/ceph/pull/10760>`_, Kefu Chai) -* osd: sparse_read on ec pool should return extends with correct offset (`issue#16138 <http://tracker.ceph.com/issues/16138>`_, `pr#10006 <http://github.com/ceph/ceph/pull/10006>`_, kofiliu) -* osd:sched_time not actually randomized (`issue#15890 <http://tracker.ceph.com/issues/15890>`_, `pr#9578 <http://github.com/ceph/ceph/pull/9578>`_, xie xingguo) -* rbd: ImageReplayer::is_replaying does not include flush state (`issue#16970 <http://tracker.ceph.com/issues/16970>`_, `pr#10790 <http://github.com/ceph/ceph/pull/10790>`_, Jason Dillaman) -* rbd: Journal duplicate op detection can cause lockdep error (`issue#16363 <http://tracker.ceph.com/issues/16363>`_, `pr#10044 <http://github.com/ceph/ceph/pull/10044>`_, Jason Dillaman) -* rbd: Journal needs to handle duplicate maintenance op tids (`issue#16362 <http://tracker.ceph.com/issues/16362>`_, `pr#10045 <http://github.com/ceph/ceph/pull/10045>`_, Jason Dillaman) -* rbd: Unable to disable journaling feature if in unexpected mirror state (`issue#16348 <http://tracker.ceph.com/issues/16348>`_, `pr#10042 <http://github.com/ceph/ceph/pull/10042>`_, Jason Dillaman) -* rbd: bashism in src/rbdmap (`issue#16608 <http://tracker.ceph.com/issues/16608>`_, `pr#10786 <http://github.com/ceph/ceph/pull/10786>`_, Jason Dillaman) -* rbd: doc: format 2 now is the default image format (`issue#17026 <http://tracker.ceph.com/issues/17026>`_, `pr#10732 <http://github.com/ceph/ceph/pull/10732>`_, Chengwei Yang) -* rbd: hen journaling is enabled, a flush request shouldn't flush the cache (`issue#15761 <http://tracker.ceph.com/issues/15761>`_, `pr#10041 <http://github.com/ceph/ceph/pull/10041>`_, Yuan Zhou) -* rbd: possible race condition during journal transition from replay to ready (`issue#16198 <http://tracker.ceph.com/issues/16198>`_, `pr#10047 <http://github.com/ceph/ceph/pull/10047>`_, Jason Dillaman) -* rbd: qa/workunits/rbd: respect RBD_CREATE_ARGS environment variable (`issue#16289 <http://tracker.ceph.com/issues/16289>`_, `pr#9721 <http://github.com/ceph/ceph/pull/9721>`_, Mykola Golub) -* rbd: rbd-mirror should disable proxied maintenance ops for non-primary image (`issue#16411 <http://tracker.ceph.com/issues/16411>`_, `pr#10050 <http://github.com/ceph/ceph/pull/10050>`_, Jason Dillaman) -* rbd: rbd-mirror: FAILED assert(m_local_image_ctx->object_map != nullptr) (`issue#16558 <http://tracker.ceph.com/issues/16558>`_, `pr#10646 <http://github.com/ceph/ceph/pull/10646>`_, Jason Dillaman) -* rbd: rbd-mirror: FAILED assert(m_on_update_status_finish == nullptr) (`issue#16956 <http://tracker.ceph.com/issues/16956>`_, `pr#10792 <http://github.com/ceph/ceph/pull/10792>`_, Jason Dillaman) -* rbd: rbd-mirror: FAILED assert(m_state == STATE_STOPPING) (`issue#16980 <http://tracker.ceph.com/issues/16980>`_, `pr#10791 <http://github.com/ceph/ceph/pull/10791>`_, Jason Dillaman) -* rbd: rbd-mirror: ensure replay status formatter has completed before stopping replay (`issue#16352 <http://tracker.ceph.com/issues/16352>`_, `pr#10043 <http://github.com/ceph/ceph/pull/10043>`_, Jason Dillaman) -* rbd: rbd-mirror: include local pool id in resync throttle unique key (`issue#16536 <http://tracker.ceph.com/issues/16536>`_, `issue#15239 <http://tracker.ceph.com/issues/15239>`_, `issue#16488 <http://tracker.ceph.com/issues/16488>`_, `issue#16491 <http://tracker.ceph.com/issues/16491>`_, `issue#16329 <http://tracker.ceph.com/issues/16329>`_, `issue#15108 <http://tracker.ceph.com/issues/15108>`_, `issue#15670 <http://tracker.ceph.com/issues/15670>`_, `pr#10678 <http://github.com/ceph/ceph/pull/10678>`_, Ricardo Dias, Jason Dillaman) -* rbd: rbd-mirror: potential race condition accessing local image journal (`issue#16230 <http://tracker.ceph.com/issues/16230>`_, `pr#10046 <http://github.com/ceph/ceph/pull/10046>`_, Jason Dillaman) -* rbd: rbd-mirror: reduce memory footprint during journal replay (`issue#16321 <http://tracker.ceph.com/issues/16321>`_, `issue#16489 <http://tracker.ceph.com/issues/16489>`_, `issue#16622 <http://tracker.ceph.com/issues/16622>`_, `issue#16539 <http://tracker.ceph.com/issues/16539>`_, `issue#16223 <http://tracker.ceph.com/issues/16223>`_, `issue#16349 <http://tracker.ceph.com/issues/16349>`_, `pr#10684 <http://github.com/ceph/ceph/pull/10684>`_, Mykola Golub, Jason Dillaman) -* rgw: A query on a static large object fails with 404 error (`issue#16015 <http://tracker.ceph.com/issues/16015>`_, `pr#9544 <http://github.com/ceph/ceph/pull/9544>`_, Radoslaw Zarzynski) -* rgw: Add zone rename to radosgw_admin (`issue#16934 <http://tracker.ceph.com/issues/16934>`_, `pr#10663 <http://github.com/ceph/ceph/pull/10663>`_, Shilpa Jagannath) -* rgw: Bucket index shards orphaned after bucket delete (`issue#16412 <http://tracker.ceph.com/issues/16412>`_, `pr#10525 <http://github.com/ceph/ceph/pull/10525>`_, Orit Wasserman) -* rgw: Bug when using port 443s in rgw. (`issue#16548 <http://tracker.ceph.com/issues/16548>`_, `pr#10664 <http://github.com/ceph/ceph/pull/10664>`_, Pritha Srivastava) -* rgw: Fallback to Host header for bucket name. (`issue#15975 <http://tracker.ceph.com/issues/15975>`_, `pr#10693 <http://github.com/ceph/ceph/pull/10693>`_, Robin H. Johnson) -* rgw: Fix civetweb IPv6 (`issue#16928 <http://tracker.ceph.com/issues/16928>`_, `pr#10580 <http://github.com/ceph/ceph/pull/10580>`_, Robin H. Johnson) -* rgw: Increase log level for messages occuring while running rgw admin command (`issue#16935 <http://tracker.ceph.com/issues/16935>`_, `pr#10765 <http://github.com/ceph/ceph/pull/10765>`_, Shilpa Jagannath) -* rgw: No Last-Modified, Content-Size and X-Object-Manifest headers if no segments in DLO manifest (`issue#15812 <http://tracker.ceph.com/issues/15812>`_, `pr#9265 <http://github.com/ceph/ceph/pull/9265>`_, Radoslaw Zarzynski) -* rgw: RGWPeriodPuller tries to pull from itself (`issue#16939 <http://tracker.ceph.com/issues/16939>`_, `pr#10764 <http://github.com/ceph/ceph/pull/10764>`_, Casey Bodley) -* rgw: Set Access-Control-Allow-Origin to a Asterisk if allowed in a rule (`issue#15348 <http://tracker.ceph.com/issues/15348>`_, `pr#9453 <http://github.com/ceph/ceph/pull/9453>`_, Wido den Hollander) -* rgw: Swift API returns double space usage and objects of account metadata (`issue#16188 <http://tracker.ceph.com/issues/16188>`_, `pr#10148 <http://github.com/ceph/ceph/pull/10148>`_, Albert Tu) -* rgw: account/container metadata not actually present in a request are deleted during POST through Swift API (`issue#15977 <http://tracker.ceph.com/issues/15977>`_, `issue#15779 <http://tracker.ceph.com/issues/15779>`_, `pr#9542 <http://github.com/ceph/ceph/pull/9542>`_, Radoslaw Zarzynski) -* rgw: add socket backlog setting for via ceph.conf (`issue#16406 <http://tracker.ceph.com/issues/16406>`_, `pr#10216 <http://github.com/ceph/ceph/pull/10216>`_, Feng Guo) -* rgw: add tenant support to multisite sync (`issue#16469 <http://tracker.ceph.com/issues/16469>`_, `issue#16121 <http://tracker.ceph.com/issues/16121>`_, `issue#16665 <http://tracker.ceph.com/issues/16665>`_, `pr#10845 <http://github.com/ceph/ceph/pull/10845>`_, Yehuda Sadeh, Josh Durgin, Casey Bodley, Pritha Srivastava) -* rgw: add_zone only clears master_zone if --master=false (`issue#15901 <http://tracker.ceph.com/issues/15901>`_, `pr#9327 <http://github.com/ceph/ceph/pull/9327>`_, Casey Bodley) -* rgw: aws4 parsing issue (`issue#15940 <http://tracker.ceph.com/issues/15940>`_, `issue#15939 <http://tracker.ceph.com/issues/15939>`_, `pr#9545 <http://github.com/ceph/ceph/pull/9545>`_, Yehuda Sadeh) -* rgw: aws4: add STREAMING-AWS4-HMAC-SHA256-PAYLOAD support (`issue#16146 <http://tracker.ceph.com/issues/16146>`_, `pr#10167 <http://github.com/ceph/ceph/pull/10167>`_, Radoslaw Zarzynski, Javier M. Mellid) -* rgw: backport merge of static sites fixes (`issue#15555 <http://tracker.ceph.com/issues/15555>`_, `issue#15532 <http://tracker.ceph.com/issues/15532>`_, `issue#15531 <http://tracker.ceph.com/issues/15531>`_, `pr#9568 <http://github.com/ceph/ceph/pull/9568>`_, Robin H. Johnson) -* rgw: can set negative max_buckets on RGWUserInfo (`issue#14534 <http://tracker.ceph.com/issues/14534>`_, `pr#10655 <http://github.com/ceph/ceph/pull/10655>`_, Yehuda Sadeh) -* rgw: cleanup radosgw-admin temp command as it was deprecated (`issue#16023 <http://tracker.ceph.com/issues/16023>`_, `pr#9390 <http://github.com/ceph/ceph/pull/9390>`_, Vikhyat Umrao) -* rgw: comparing return code to ERR_NOT_MODIFIED in rgw_rest_s3.cc (needs minus sign) (`issue#16327 <http://tracker.ceph.com/issues/16327>`_, `pr#9790 <http://github.com/ceph/ceph/pull/9790>`_, Nathan Cutler) -* rgw: custom metadata aren't camelcased in Swift's responses (`issue#15902 <http://tracker.ceph.com/issues/15902>`_, `pr#9267 <http://github.com/ceph/ceph/pull/9267>`_, Radoslaw Zarzynski) -* rgw: data sync stops after getting error in all data log sync shards (`issue#16530 <http://tracker.ceph.com/issues/16530>`_, `pr#10073 <http://github.com/ceph/ceph/pull/10073>`_, Yehuda Sadeh) -* rgw: default zone and zonegroup cannot be added to a realm (`issue#16839 <http://tracker.ceph.com/issues/16839>`_, `pr#10658 <http://github.com/ceph/ceph/pull/10658>`_, Casey Bodley) -* rgw: document multi tenancy (`issue#16635 <http://tracker.ceph.com/issues/16635>`_, `pr#10217 <http://github.com/ceph/ceph/pull/10217>`_, Pete Zaitcev) -* rgw: don't unregister request if request is not connected to manager (`issue#15911 <http://tracker.ceph.com/issues/15911>`_, `pr#9242 <http://github.com/ceph/ceph/pull/9242>`_, Yehuda Sadeh) -* rgw: failed to create bucket after upgrade from hammer to jewel (`issue#16627 <http://tracker.ceph.com/issues/16627>`_, `pr#10524 <http://github.com/ceph/ceph/pull/10524>`_, Orit Wasserman) -* rgw: fix ldap bindpw parsing (`issue#16286 <http://tracker.ceph.com/issues/16286>`_, `pr#10518 <http://github.com/ceph/ceph/pull/10518>`_, Matt Benjamin) -* rgw: fix multi-delete query param parsing. (`issue#16618 <http://tracker.ceph.com/issues/16618>`_, `pr#10188 <http://github.com/ceph/ceph/pull/10188>`_, Robin H. Johnson) -* rgw: improve support for Swift's object versioning. (`issue#15925 <http://tracker.ceph.com/issues/15925>`_, `pr#10710 <http://github.com/ceph/ceph/pull/10710>`_, Radoslaw Zarzynski) -* rgw: initial slashes are not properly handled in Swift's BulkDelete (`issue#15948 <http://tracker.ceph.com/issues/15948>`_, `pr#9316 <http://github.com/ceph/ceph/pull/9316>`_, Radoslaw Zarzynski) -* rgw: master: build failures with boost > 1.58 (`issue#16392 <http://tracker.ceph.com/issues/16392>`_, `issue#16391 <http://tracker.ceph.com/issues/16391>`_, `pr#10026 <http://github.com/ceph/ceph/pull/10026>`_, Abhishek Lekshmanan) -* rgw: multisite segfault on ~RGWRealmWatcher if realm was deleted (`issue#16817 <http://tracker.ceph.com/issues/16817>`_, `pr#10660 <http://github.com/ceph/ceph/pull/10660>`_, Casey Bodley) -* rgw: multisite sync races with deletes (`issue#16222 <http://tracker.ceph.com/issues/16222>`_, `issue#16464 <http://tracker.ceph.com/issues/16464>`_, `issue#16220 <http://tracker.ceph.com/issues/16220>`_, `issue#16143 <http://tracker.ceph.com/issues/16143>`_, `pr#10293 <http://github.com/ceph/ceph/pull/10293>`_, Yehuda Sadeh, Casey Bodley) -* rgw: multisite: preserve zone's extra pool (`issue#16712 <http://tracker.ceph.com/issues/16712>`_, `pr#10537 <http://github.com/ceph/ceph/pull/10537>`_, Abhishek Lekshmanan) -* rgw: object expirer's hints might be trimmed without processing in some circumstances (`issue#16705 <http://tracker.ceph.com/issues/16705>`_, `issue#16684 <http://tracker.ceph.com/issues/16684>`_, `pr#10763 <http://github.com/ceph/ceph/pull/10763>`_, Radoslaw Zarzynski) -* rgw: radosgw-admin failure for user create after upgrade from hammer to jewel (`issue#15937 <http://tracker.ceph.com/issues/15937>`_, `pr#9294 <http://github.com/ceph/ceph/pull/9294>`_, Orit Wasserman, Abhishek Lekshmanan) -* rgw: radosgw-admin: EEXIST messages for create operations (`issue#15720 <http://tracker.ceph.com/issues/15720>`_, `pr#9268 <http://github.com/ceph/ceph/pull/9268>`_, Abhishek Lekshmanan) -* rgw: radosgw-admin: inconsistency in uid/email handling (`issue#13598 <http://tracker.ceph.com/issues/13598>`_, `pr#10520 <http://github.com/ceph/ceph/pull/10520>`_, Matt Benjamin) -* rgw: realm pull fails when using apache frontend (`issue#15846 <http://tracker.ceph.com/issues/15846>`_, `pr#9266 <http://github.com/ceph/ceph/pull/9266>`_, Orit Wasserman) -* rgw: retry on bucket sync errors (`issue#16108 <http://tracker.ceph.com/issues/16108>`_, `pr#9425 <http://github.com/ceph/ceph/pull/9425>`_, Yehuda Sadeh) -* rgw: s3website: x-amz-website-redirect-location header returns malformed HTTP response (`issue#15531 <http://tracker.ceph.com/issues/15531>`_, `pr#9099 <http://github.com/ceph/ceph/pull/9099>`_, Robin H. Johnson) -* rgw: segfault in RGWOp_MDLog_Notify (`issue#16666 <http://tracker.ceph.com/issues/16666>`_, `pr#10662 <http://github.com/ceph/ceph/pull/10662>`_, Casey Bodley) -* rgw: segmentation fault on error_repo in data sync (`issue#16603 <http://tracker.ceph.com/issues/16603>`_, `pr#10523 <http://github.com/ceph/ceph/pull/10523>`_, Casey Bodley) -* rgw: selinux denials in RGW (`issue#16126 <http://tracker.ceph.com/issues/16126>`_, `pr#10519 <http://github.com/ceph/ceph/pull/10519>`_, Boris Ranto) -* rgw: support size suffixes for --max-size in radosgw-admin command (`issue#16004 <http://tracker.ceph.com/issues/16004>`_, `pr#9743 <http://github.com/ceph/ceph/pull/9743>`_, Vikhyat Umrao) -* rgw: updating CORS/ACLs might not work in some circumstances (`issue#15976 <http://tracker.ceph.com/issues/15976>`_, `pr#9543 <http://github.com/ceph/ceph/pull/9543>`_, Radoslaw Zarzynski) -* rgw: use zone endpoints instead of zonegroup endpoints (`issue#16834 <http://tracker.ceph.com/issues/16834>`_, `pr#10659 <http://github.com/ceph/ceph/pull/10659>`_, Casey Bodley) -* tests: improve rbd-mirror test case coverage (`issue#16197 <http://tracker.ceph.com/issues/16197>`_, `pr#9631 <http://github.com/ceph/ceph/pull/9631>`_, Mykola Golub, Jason Dillaman) -* tests: rados/test.sh workunit timesout on OpenStack (`issue#15403 <http://tracker.ceph.com/issues/15403>`_, `pr#8904 <http://github.com/ceph/ceph/pull/8904>`_, Loic Dachary) -* tools: ceph-disk: Accept bcache devices as data disks (`issue#13278 <http://tracker.ceph.com/issues/13278>`_, `pr#8497 <http://github.com/ceph/ceph/pull/8497>`_, Peter Sabaini) -* tools: rados: Add cleanup message with time to rados bench output (`issue#15704 <http://tracker.ceph.com/issues/15704>`_, `pr#9740 <http://github.com/ceph/ceph/pull/9740>`_, Vikhyat Umrao) -* tools: src/script/subman fails with KeyError: 'nband' (`issue#16961 <http://tracker.ceph.com/issues/16961>`_, `pr#10625 <http://github.com/ceph/ceph/pull/10625>`_, Loic Dachary, Ali Maredia) - - -v10.2.2 Jewel -============= - -This point release fixes several important bugs in RBD mirroring, RGW multi-site, CephFS, and RADOS. - -We recommend that all v10.2.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.2.txt>`. - -Notable Changes ---------------- - -* ceph: cli: exception when pool name has non-ascii characters (`issue#15913 <http://tracker.ceph.com/issues/15913>`_, `pr#9320 <http://github.com/ceph/ceph/pull/9320>`_, Ricardo Dias) -* ceph-disk: workaround gperftool hang (`issue#13522 <http://tracker.ceph.com/issues/13522>`_, `issue#16103 <http://tracker.ceph.com/issues/16103>`_, `pr#9427 <http://github.com/ceph/ceph/pull/9427>`_, Loic Dachary) -* cephfs: backports needed for Manila (`issue#15599 <http://tracker.ceph.com/issues/15599>`_, `issue#15417 <http://tracker.ceph.com/issues/15417>`_, `issue#15045 <http://tracker.ceph.com/issues/15045>`_, `pr#9430 <http://github.com/ceph/ceph/pull/9430>`_, John Spray, Ramana Raja, Xiaoxi Chen) -* ceph.spec.in: drop support for RHEL<7 and SUSE<1210 in jewel and above (`issue#15725 <http://tracker.ceph.com/issues/15725>`_, `issue#15627 <http://tracker.ceph.com/issues/15627>`_, `issue#13445 <http://tracker.ceph.com/issues/13445>`_, `issue#15822 <http://tracker.ceph.com/issues/15822>`_, `issue#15472 <http://tracker.ceph.com/issues/15472>`_, `issue#15987 <http://tracker.ceph.com/issues/15987>`_, `issue#15516 <http://tracker.ceph.com/issues/15516>`_, `issue#15549 <http://tracker.ceph.com/issues/15549>`_, `pr#8938 <http://github.com/ceph/ceph/pull/8938>`_, Boris Ranto, Sage Weil, Nathan Cutler, Lars Marowsky-Bree) -* ceph_test_librbd_fsx crashes during journal replay shut down (`issue#16123 <http://tracker.ceph.com/issues/16123>`_, `pr#9556 <http://github.com/ceph/ceph/pull/9556>`_, Jason Dillaman) -* client: fix bugs accidentally disabling readahead (`issue#16024 <http://tracker.ceph.com/issues/16024>`_, `pr#9656 <http://github.com/ceph/ceph/pull/9656>`_, Patrick Donnelly, Greg Farnum) -* cls_journal: initialize empty commit position upon client register (`issue#15757 <http://tracker.ceph.com/issues/15757>`_, `pr#9376 <http://github.com/ceph/ceph/pull/9376>`_, runsisi, Venky Shankar) -* cls::rbd: mirror_image_status_list returned max 64 items (`pr#9069 <http://github.com/ceph/ceph/pull/9069>`_, Mykola Golub) -* cls_rbd: mirror image status summary should read full directory (`issue#16178 <http://tracker.ceph.com/issues/16178>`_, `pr#9608 <http://github.com/ceph/ceph/pull/9608>`_, Jason Dillaman) -* common: BackoffThrottle spins unnecessarily with very small backoff while the throttle is full (`issue#15953 <http://tracker.ceph.com/issues/15953>`_, `pr#9579 <http://github.com/ceph/ceph/pull/9579>`_, Samuel Just) -* common: Do not link lttng into libglobal (`pr#9194 <http://github.com/ceph/ceph/pull/9194>`_, Karol Mroz) -* debian: install systemd target files (`issue#15573 <http://tracker.ceph.com/issues/15573>`_, `pr#8815 <http://github.com/ceph/ceph/pull/8815>`_, Kefu Chai, Sage Weil) -* doc: update mirroring guide to include pool/image status commands (`issue#15746 <http://tracker.ceph.com/issues/15746>`_, `pr#9180 <http://github.com/ceph/ceph/pull/9180>`_, Mykola Golub) -* librbd: Disabling journaling feature results in "Transport endpoint is not connected" error (`issue#15863 <http://tracker.ceph.com/issues/15863>`_, `pr#9548 <http://github.com/ceph/ceph/pull/9548>`_, Yuan Zhou) -* librbd: do not shut down exclusive lock while acquiring' (`issue#16291 <http://tracker.ceph.com/issues/16291>`_, `issue#16260 <http://tracker.ceph.com/issues/16260>`_, `pr#9691 <http://github.com/ceph/ceph/pull/9691>`_, Jason Dillaman) -* librbd: Initial python APIs to support mirroring (`issue#15656 <http://tracker.ceph.com/issues/15656>`_, `pr#9550 <http://github.com/ceph/ceph/pull/9550>`_, Mykola Golub) -* librbd: journal IO error results in failed assertion in AioCompletion (`issue#16077 <http://tracker.ceph.com/issues/16077>`_, `issue#15034 <http://tracker.ceph.com/issues/15034>`_, `issue#15791 <http://tracker.ceph.com/issues/15791>`_, `pr#9611 <http://github.com/ceph/ceph/pull/9611>`_, Hector Martin, Jason Dillaman) -* librbd: journal: live replay might skip entries from previous object set (`issue#15864 <http://tracker.ceph.com/issues/15864>`_, `issue#15665 <http://tracker.ceph.com/issues/15665>`_, `pr#9217 <http://github.com/ceph/ceph/pull/9217>`_, Jason Dillaman) -* librbd: journal: support asynchronous shutdown (`issue#15949 <http://tracker.ceph.com/issues/15949>`_, `issue#14530 <http://tracker.ceph.com/issues/14530>`_, `issue#15993 <http://tracker.ceph.com/issues/15993>`_, `pr#9373 <http://github.com/ceph/ceph/pull/9373>`_, Jason Dillaman) -* librbd: Metadata config overrides are applied synchronously (`issue#15928 <http://tracker.ceph.com/issues/15928>`_, `pr#9318 <http://github.com/ceph/ceph/pull/9318>`_, Jason Dillaman) -* librbd: Object Map is showing as invalid, even when Object Map is disabled for that Image. (`issue#16076 <http://tracker.ceph.com/issues/16076>`_, `pr#9555 <http://github.com/ceph/ceph/pull/9555>`_, xinxin shu) -* librbd: prevent error messages when journal externally disabled (`issue#16114 <http://tracker.ceph.com/issues/16114>`_, `pr#9610 <http://github.com/ceph/ceph/pull/9610>`_, Zhiqiang Wang, Jason Dillaman) -* librbd: recursive lock possible when disabling journaling (`issue#16235 <http://tracker.ceph.com/issues/16235>`_, `pr#9654 <http://github.com/ceph/ceph/pull/9654>`_, Jason Dillaman) -* librbd: refresh image if needed in mirror functions (`issue#16096 <http://tracker.ceph.com/issues/16096>`_, `pr#9609 <http://github.com/ceph/ceph/pull/9609>`_, Jon Bernard) -* librbd: remove should ignore mirror errors from older OSDs (`issue#16268 <http://tracker.ceph.com/issues/16268>`_, `pr#9692 <http://github.com/ceph/ceph/pull/9692>`_, Jason Dillaman) -* librbd: reuse ImageCtx::finisher and SafeTimer for lots of images case (`issue#13938 <http://tracker.ceph.com/issues/13938>`_, `pr#9580 <http://github.com/ceph/ceph/pull/9580>`_, Haomai Wang) -* librbd: validate image metadata configuration overrides (`issue#15522 <http://tracker.ceph.com/issues/15522>`_, `pr#9554 <http://github.com/ceph/ceph/pull/9554>`_, zhuangzeqiang) -* mds: order directories by hash and fix simultaneous readdir races (`issue#15508 <http://tracker.ceph.com/issues/15508>`_, `pr#9655 <http://github.com/ceph/ceph/pull/9655>`_, Yan, Zheng, Greg Farnum) -* mon: Hammer (0.94.3) OSD does not delete old OSD Maps in a timely fashion (maybe at all?) (`issue#13990 <http://tracker.ceph.com/issues/13990>`_, `pr#9100 <http://github.com/ceph/ceph/pull/9100>`_, Kefu Chai) -* mon/Monitor: memory leak on Monitor::handle_ping() (`issue#15793 <http://tracker.ceph.com/issues/15793>`_, `pr#9270 <http://github.com/ceph/ceph/pull/9270>`_, xie xingguo) -* osd: acting_primary not updated on split (`issue#15523 <http://tracker.ceph.com/issues/15523>`_, `pr#8968 <http://github.com/ceph/ceph/pull/8968>`_, Sage Weil) -* osd: boot race with noup being set (`issue#15678 <http://tracker.ceph.com/issues/15678>`_, `pr#9101 <http://github.com/ceph/ceph/pull/9101>`_, Sage Weil) -* osd: deadlock in OSD::_committed_osd_maps (`issue#15701 <http://tracker.ceph.com/issues/15701>`_, `pr#9103 <http://github.com/ceph/ceph/pull/9103>`_, Xinze Chi) -* osd: hobject_t::get_max() vs is_max() discrepancy (`issue#16113 <http://tracker.ceph.com/issues/16113>`_, `pr#9614 <http://github.com/ceph/ceph/pull/9614>`_, Samuel Just) -* osd: LibRadosWatchNotifyPPTests/LibRadosWatchNotifyPP.WatchNotify2Timeout/1 segv (`issue#15760 <http://tracker.ceph.com/issues/15760>`_, `pr#9104 <http://github.com/ceph/ceph/pull/9104>`_, Sage Weil) -* osd: remove reliance on FLAG_OMAP for reads (`pr#9638 <http://github.com/ceph/ceph/pull/9638>`_, Samuel Just) -* osd valgrind invalid reads/writes (`issue#15870 <http://tracker.ceph.com/issues/15870>`_, `pr#9237 <http://github.com/ceph/ceph/pull/9237>`_, Samuel Just) -* pybind: rbd API should default features parameter to None (`issue#15982 <http://tracker.ceph.com/issues/15982>`_, `pr#9553 <http://github.com/ceph/ceph/pull/9553>`_, Mykola Golub) -* qa: dynamic_features.sh races with image deletion (`issue#15500 <http://tracker.ceph.com/issues/15500>`_, `pr#9552 <http://github.com/ceph/ceph/pull/9552>`_, Mykola Golub) -* qa/workunits: ensure replay has started before checking position (`issue#16248 <http://tracker.ceph.com/issues/16248>`_, `pr#9674 <http://github.com/ceph/ceph/pull/9674>`_, Jason Dillaman) -* qa/workunits/rbd: fixed rbd_mirror teuthology runtime errors (`pr#9232 <http://github.com/ceph/ceph/pull/9232>`_, Jason Dillaman) -* radosgw-admin: fix 'period push' handling of --url (`issue#15926 <http://tracker.ceph.com/issues/15926>`_, `pr#9210 <http://github.com/ceph/ceph/pull/9210>`_, Casey Bodley) -* rbd-mirror: Delete local image mirror when remote image mirroring is disabled (`issue#15916 <http://tracker.ceph.com/issues/15916>`_, `issue#14421 <http://tracker.ceph.com/issues/14421>`_, `pr#9372 <http://github.com/ceph/ceph/pull/9372>`_, runsisi, Mykola Golub, Ricardo Dias) -* rbd-mirror: do not propagate deletions when pool unavailable (`issue#16229 <http://tracker.ceph.com/issues/16229>`_, `pr#9630 <http://github.com/ceph/ceph/pull/9630>`_, Jason Dillaman) -* rbd-mirror: do not re-use image id from mirror directory if creating image (`issue#16253 <http://tracker.ceph.com/issues/16253>`_, `pr#9673 <http://github.com/ceph/ceph/pull/9673>`_, Jason Dillaman) -* rbd-mirror: FAILED assert(!m_status_watcher) (`issue#16245 <http://tracker.ceph.com/issues/16245>`_, `issue#16290 <http://tracker.ceph.com/issues/16290>`_, `pr#9690 <http://github.com/ceph/ceph/pull/9690>`_, Mykola Golub) -* rbd-mirror: fix deletion propagation edge cases (`issue#16226 <http://tracker.ceph.com/issues/16226>`_, `pr#9629 <http://github.com/ceph/ceph/pull/9629>`_, Jason Dillaman) -* rbd-mirror: fix journal shut down ordering (`issue#16165 <http://tracker.ceph.com/issues/16165>`_, `pr#9628 <http://github.com/ceph/ceph/pull/9628>`_, Jason Dillaman) -* rbd-mirror: potential crash during image status update (`issue#15909 <http://tracker.ceph.com/issues/15909>`_, `pr#9226 <http://github.com/ceph/ceph/pull/9226>`_, Mykola Golub, Jason Dillaman) -* rbd-mirror: refresh image after creating sync point (`issue#16196 <http://tracker.ceph.com/issues/16196>`_, `pr#9627 <http://github.com/ceph/ceph/pull/9627>`_, Jason Dillaman) -* rbd-mirror: replicate cloned images (`issue#14937 <http://tracker.ceph.com/issues/14937>`_, `pr#9423 <http://github.com/ceph/ceph/pull/9423>`_, Jason Dillaman) -* rbd-mirror should disable the rbd cache for local images (`issue#15930 <http://tracker.ceph.com/issues/15930>`_, `pr#9317 <http://github.com/ceph/ceph/pull/9317>`_, Jason Dillaman) -* rbd-mirror: support bootstrap canceling (`issue#16201 <http://tracker.ceph.com/issues/16201>`_, `pr#9612 <http://github.com/ceph/ceph/pull/9612>`_, Mykola Golub) -* rbd-mirror: support multiple replicated pools (`issue#16045 <http://tracker.ceph.com/issues/16045>`_, `pr#9409 <http://github.com/ceph/ceph/pull/9409>`_, Jason Dillaman) -* rgw: fix manager selection when APIs customized (`issue#15974 <http://tracker.ceph.com/issues/15974>`_, `issue#15973 <http://tracker.ceph.com/issues/15973>`_, `pr#9245 <http://github.com/ceph/ceph/pull/9245>`_, Robin H. Johnson) -* rgw: keep track of written_objs correctly (`issue#15886 <http://tracker.ceph.com/issues/15886>`_, `pr#9239 <http://github.com/ceph/ceph/pull/9239>`_, Yehuda Sadeh) -* rpm: ceph gid mismatch on upgrade from hammer with pre-existing ceph user (SUSE) (`issue#15869 <http://tracker.ceph.com/issues/15869>`_, `pr#9424 <http://github.com/ceph/ceph/pull/9424>`_, Nathan Cutler) -* systemd: ceph-{mds,mon,osd,radosgw} systemd unit files need wants=time-sync.target (`issue#15419 <http://tracker.ceph.com/issues/15419>`_, `pr#8802 <http://github.com/ceph/ceph/pull/8802>`_, Nathan Cutler) -* test: failure in journal.sh workunit test (`issue#16011 <http://tracker.ceph.com/issues/16011>`_, `pr#9377 <http://github.com/ceph/ceph/pull/9377>`_, Mykola Golub) -* tests: rm -fr /tmp/*virtualenv* (`issue#16087 <http://tracker.ceph.com/issues/16087>`_, `pr#9403 <http://github.com/ceph/ceph/pull/9403>`_, Loic Dachary) - -v10.2.1 Jewel -============= - -This is the first bugfix release for Jewel. It contains several annoying -packaging and init system fixes and a range of important bugfixes across -RBD, RGW, and CephFS. - -We recommend that all v10.2.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v10.2.1.txt>`. - -Notable Changes ---------------- - -* cephfs: CephFSVolumeClient should isolate volumes by RADOS namespace (`issue#15400 <http://tracker.ceph.com/issues/15400>`_, `pr#8787 <http://github.com/ceph/ceph/pull/8787>`_, Xiaoxi Chen) -* cephfs: handle standby-replay nodes properly in upgrades (`issue#15591 <http://tracker.ceph.com/issues/15591>`_, `pr#8971 <http://github.com/ceph/ceph/pull/8971>`_, John Spray) -* ceph-{mds,mon,osd} packages need scriptlets with systemd code (`issue#14941 <http://tracker.ceph.com/issues/14941>`_, `pr#8801 <http://github.com/ceph/ceph/pull/8801>`_, Boris Ranto, Nathan Cutler) -* ceph_test_keyvaluedb: fix (`issue#15435 <http://tracker.ceph.com/issues/15435>`_, `pr#9051 <http://github.com/ceph/ceph/pull/9051>`_, Allen Samuels, Sage Weil) -* cmake: add missing source file to rbd_mirror/image_replayer (`pr#9052 <http://github.com/ceph/ceph/pull/9052>`_, Casey Bodley) -* cmake: fix rbd compile errors (`pr#9076 <http://github.com/ceph/ceph/pull/9076>`_, runsisi, Jason Dillaman) -* journal: incorrectly computed object offset within set (`issue#15765 <http://tracker.ceph.com/issues/15765>`_, `pr#9038 <http://github.com/ceph/ceph/pull/9038>`_, Jason Dillaman) -* librbd: client-side handling for incompatible object map sizes (`issue#15642 <http://tracker.ceph.com/issues/15642>`_, `pr#9039 <http://github.com/ceph/ceph/pull/9039>`_, Jason Dillaman) -* librbd: constrain size of AioWriteEvent journal entries (`issue#15750 <http://tracker.ceph.com/issues/15750>`_, `pr#9048 <http://github.com/ceph/ceph/pull/9048>`_, Jason Dillaman) -* librbd: does not crash if image header is too short (`pr#9044 <http://github.com/ceph/ceph/pull/9044>`_, Kefu Chai) -* librbd: Errors encountered disabling object-map while flatten is in-progress (`issue#15572 <http://tracker.ceph.com/issues/15572>`_, `pr#8869 <http://github.com/ceph/ceph/pull/8869>`_, Jason Dillaman) -* librbd: fix get/list mirror image status API (`issue#15771 <http://tracker.ceph.com/issues/15771>`_, `pr#9036 <http://github.com/ceph/ceph/pull/9036>`_, Mykola Golub) -* librbd: Parent image is closed twice if error encountered while opening (`issue#15574 <http://tracker.ceph.com/issues/15574>`_, `pr#8867 <http://github.com/ceph/ceph/pull/8867>`_, Jason Dillaman) -* librbd: possible double-free of object map invalidation request upon error (`issue#15643 <http://tracker.ceph.com/issues/15643>`_, `pr#8865 <http://github.com/ceph/ceph/pull/8865>`_, runsisi) -* librbd: possible race condition leads to use-after-free (`issue#15690 <http://tracker.ceph.com/issues/15690>`_, `pr#9009 <http://github.com/ceph/ceph/pull/9009>`_, Jason Dillaman) -* librbd: potential concurrent event processing during journal replay (`issue#15755 <http://tracker.ceph.com/issues/15755>`_, `pr#9040 <http://github.com/ceph/ceph/pull/9040>`_, Jason Dillaman) -* librbd: Potential double free of SetSnapRequest instance (`issue#15571 <http://tracker.ceph.com/issues/15571>`_, `pr#8803 <http://github.com/ceph/ceph/pull/8803>`_, runsisi) -* librbd: put the validation of image snap context earlier (`pr#9046 <http://github.com/ceph/ceph/pull/9046>`_, runsisi) -* librbd: reduce log level for image format 1 warning (`issue#15577 <http://tracker.ceph.com/issues/15577>`_, `pr#9003 <http://github.com/ceph/ceph/pull/9003>`_, Jason Dillaman) -* mds/MDSAuthCap parse no longer fails on paths with hyphens (`issue#15465 <http://tracker.ceph.com/issues/15465>`_, `pr#8969 <http://github.com/ceph/ceph/pull/8969>`_, John Spray) -* mds: MDS incarnation no longer gets lost after remove filesystem (`issue#15399 <http://tracker.ceph.com/issues/15399>`_, `pr#8970 <http://github.com/ceph/ceph/pull/8970>`_, John Spray) -* mon/OSDMonitor: avoid underflow in reweight-by-utilization if max_change=1 (`issue#15655 <http://tracker.ceph.com/issues/15655>`_, `pr#9006 <http://github.com/ceph/ceph/pull/9006>`_, Samuel Just) -* python: clone operation will fail if config overridden with "rbd default format = 1" (`issue#15685 <http://tracker.ceph.com/issues/15685>`_, `pr#8972 <http://github.com/ceph/ceph/pull/8972>`_, Jason Dillaman) -* radosgw-admin: add missing --zonegroup-id to usage (`issue#15650 <http://tracker.ceph.com/issues/15650>`_, `pr#9019 <http://github.com/ceph/ceph/pull/9019>`_, Casey Bodley) -* radosgw-admin: update usage for zone[group] modify (`issue#15651 <http://tracker.ceph.com/issues/15651>`_, `pr#9016 <http://github.com/ceph/ceph/pull/9016>`_, Casey Bodley) -* radosgw-admin: zonegroup remove command (`issue#15684 <http://tracker.ceph.com/issues/15684>`_, `pr#9015 <http://github.com/ceph/ceph/pull/9015>`_, Casey Bodley) -* rbd CLI to retrieve rbd mirror state for a pool / specific image (`issue#15144 <http://tracker.ceph.com/issues/15144>`_, `issue#14420 <http://tracker.ceph.com/issues/14420>`_, `pr#8868 <http://github.com/ceph/ceph/pull/8868>`_, Mykola Golub) -* rbd disk-usage CLI command should support calculating full image usage (`issue#14540 <http://tracker.ceph.com/issues/14540>`_, `pr#8870 <http://github.com/ceph/ceph/pull/8870>`_, Jason Dillaman) -* rbd: helpful error message on map failure (`issue#15721 <http://tracker.ceph.com/issues/15721>`_, `pr#9041 <http://github.com/ceph/ceph/pull/9041>`_, Venky Shankar) -* rbd: help message distinction between commands and aliases (`issue#15521 <http://tracker.ceph.com/issues/15521>`_, `pr#9004 <http://github.com/ceph/ceph/pull/9004>`_, Yongqiang He) -* rbd-mirror: admin socket commands to start/stop/restart mirroring (`issue#15718 <http://tracker.ceph.com/issues/15718>`_, `pr#9010 <http://github.com/ceph/ceph/pull/9010>`_, Mykola Golub, Josh Durgin) -* rbd-mirror can crash if start up is interrupted (`issue#15630 <http://tracker.ceph.com/issues/15630>`_, `pr#8866 <http://github.com/ceph/ceph/pull/8866>`_, Jason Dillaman) -* rbd-mirror: image sync needs to handle snapshot size and protection status (`issue#15110 <http://tracker.ceph.com/issues/15110>`_, `pr#9050 <http://github.com/ceph/ceph/pull/9050>`_, Jason Dillaman) -* rbd-mirror: lockdep error during bootstrap (`issue#15664 <http://tracker.ceph.com/issues/15664>`_, `pr#9008 <http://github.com/ceph/ceph/pull/9008>`_, Jason Dillaman) -* rbd-nbd: fix rbd-nbd aio callback error handling (`issue#15604 <http://tracker.ceph.com/issues/15604>`_, `pr#9005 <http://github.com/ceph/ceph/pull/9005>`_, Chang-Yi Lee) -* rgw: add AWS4 completion support for RGW_OP_SET_BUCKET_WEBSITE (`issue#15626 <http://tracker.ceph.com/issues/15626>`_, `pr#9018 <http://github.com/ceph/ceph/pull/9018>`_, Javier M. Mellid) -* rgw admin output (`issue#15747 <http://tracker.ceph.com/issues/15747>`_, `pr#9054 <http://github.com/ceph/ceph/pull/9054>`_, Casey Bodley) -* rgw: fix issue #15597 (`issue#15597 <http://tracker.ceph.com/issues/15597>`_, `pr#9020 <http://github.com/ceph/ceph/pull/9020>`_, Yehuda Sadeh) -* rgw: fix printing wrong X-Storage-Url in Swift's TempAuth. (`issue#15667 <http://tracker.ceph.com/issues/15667>`_, `pr#9021 <http://github.com/ceph/ceph/pull/9021>`_, Radoslaw Zarzynski) -* rgw: handle stripe transition when flushing final pending_data_bl (`issue#15745 <http://tracker.ceph.com/issues/15745>`_, `pr#9053 <http://github.com/ceph/ceph/pull/9053>`_, Yehuda Sadeh) -* rgw: leak fixes (`issue#15792 <http://tracker.ceph.com/issues/15792>`_, `pr#9022 <http://github.com/ceph/ceph/pull/9022>`_, Yehuda Sadeh) -* rgw: multisite: Issues with Deleting Buckets (`issue#15540 <http://tracker.ceph.com/issues/15540>`_, `pr#8930 <http://github.com/ceph/ceph/pull/8930>`_, Abhishek Lekshmanan) -* rgw: period commit fix (`issue#15828 <http://tracker.ceph.com/issues/15828>`_, `pr#9081 <http://github.com/ceph/ceph/pull/9081>`_, Casey Bodley) -* rgw: period delete fixes (`issue#15469 <http://tracker.ceph.com/issues/15469>`_, `pr#9047 <http://github.com/ceph/ceph/pull/9047>`_, Casey Bodley) -* rgw: radosgw-admin zone set cuts pool names short if name starts with a period (`issue#15598 <http://tracker.ceph.com/issues/15598>`_, `pr#9029 <http://github.com/ceph/ceph/pull/9029>`_, Yehuda Sadeh) -* rgw: segfault at RGWAsyncGetSystemObj (`issue#15565 <http://tracker.ceph.com/issues/15565>`_, `issue#15625 <http://tracker.ceph.com/issues/15625>`_, `pr#9017 <http://github.com/ceph/ceph/pull/9017>`_, Yehuda Sadeh) -* several backports (`issue#15588 <http://tracker.ceph.com/issues/15588>`_, `issue#15655 <http://tracker.ceph.com/issues/15655>`_, `pr#8853 <http://github.com/ceph/ceph/pull/8853>`_, Alexandre Derumier, xie xingguo, Alfredo Deza) -* systemd: fix typo in preset file (`pr#8843 <http://github.com/ceph/ceph/pull/8843>`_, Nathan Cutler) -* tests: make check fails on ext4 (`issue#15837 <http://tracker.ceph.com/issues/15837>`_, `pr#9063 <http://github.com/ceph/ceph/pull/9063>`_, Loic Dachary, Sage Weil) - - -v10.2.0 Jewel -============= - -This major release of Ceph is the foundation for the next -long-term stable release series. There have been many major changes since -the Infernalis (9.2.x) and Hammer (0.94.x) releases, and the upgrade -process is non-trivial. Please read these release notes carefully. - -Major Changes from Infernalis ------------------------------ - -- *CephFS*: - - * This is the first release in which CephFS is declared stable! - Several features are disabled by default, including snapshots and - multiple active MDS servers. - * The repair and disaster recovery tools are now feature-complete. - * A new cephfs-volume-manager module is included that provides a - high-level interface for creating "shares" for OpenStack Manila - and similar projects. - * There is now experimental support for multiple CephFS file systems - within a single cluster. - -- *RGW*: - - * The multisite feature has been almost completely rearchitected and - rewritten to support any number of clusters/sites, bidirectional - fail-over, and active/active configurations. - * You can now access radosgw buckets via NFS (experimental). - * The AWS4 authentication protocol is now supported. - * There is now support for S3 request payer buckets. - * The new multitenancy infrastructure improves compatibility with - Swift, which provides a separate container namespace for each - user/tenant. - * The OpenStack Keystone v3 API is now supported. There are a range - of other small Swift API features and compatibility improvements - as well, including bulk delete and SLO (static large objects). - -- *RBD*: - - * There is new support for mirroring (asynchronous replication) of - RBD images across clusters. This is implemented as a per-RBD - image journal that can be streamed across a WAN to another site, - and a new rbd-mirror daemon that performs the cross-cluster - replication. - * The exclusive-lock, object-map, fast-diff, and journaling features - can be enabled or disabled dynamically. The deep-flatten features - can be disabled dynamically but not re-enabled. - * The RBD CLI has been rewritten to provide command-specific help - and full bash completion support. - * RBD snapshots can now be renamed. - -- *RADOS*: - - * BlueStore, a new OSD backend, is included as an experimental - feature. The plan is for it to become the default backend in the - K or L release. - * The OSD now persists scrub results and provides a librados API to - query results in detail. - * We have revised our documentation to recommend *against* using - ext4 as the underlying filesystem for Ceph OSD daemons due to - problems supporting our long object name handling. - -Major Changes from Hammer -------------------------- - -- *General*: - - * Ceph daemons are now managed via systemd (with the exception of - Ubuntu Trusty, which still uses upstart). - * Ceph daemons run as 'ceph' user instead of 'root'. - * On Red Hat distros, there is also an SELinux policy. - -- *RADOS*: - - * The RADOS cache tier can now proxy write operations to the base - tier, allowing writes to be handled without forcing migration of - an object into the cache. - * The SHEC erasure coding support is no longer flagged as - experimental. SHEC trades some additional storage space for faster - repair. - * There is now a unified queue (and thus prioritization) of client - IO, recovery, scrubbing, and snapshot trimming. - * There have been many improvements to low-level repair tooling - (ceph-objectstore-tool). - * The internal ObjectStore API has been significantly cleaned up in order - to facilitate new storage backends like BlueStore. - -- *RGW*: - - * The Swift API now supports object expiration. - * There are many Swift API compatibility improvements. - -- *RBD*: - - * The ``rbd du`` command shows actual usage (quickly, when - object-map is enabled). - * The object-map feature has seen many stability improvements. - * The object-map and exclusive-lock features can be enabled or disabled - dynamically. - * You can now store user metadata and set persistent librbd options - associated with individual images. - * The new deep-flatten features allow flattening of a clone and all - of its snapshots. (Previously snapshots could not be flattened.) - * The export-diff command is now faster (it uses aio). There is also - a new fast-diff feature. - * The --size argument can be specified with a suffix for units - (e.g., ``--size 64G``). - * There is a new ``rbd status`` command that, for now, shows who has - the image open/mapped. - -- *CephFS*: - - * You can now rename snapshots. - * There have been ongoing improvements around administration, diagnostics, - and the check and repair tools. - * The caching and revocation of client cache state due to unused - inodes has been dramatically improved. - * The ceph-fuse client behaves better on 32-bit hosts. - -Distro compatibility --------------------- - -Starting with Infernalis, we have dropped support for many older -distributions so that we can move to a newer compiler toolchain (e.g., -C++11). Although it is still possible to build Ceph on older -distributions by installing backported development tools, we are not -building and publishing release packages for ceph.com. - -We now build packages for the following distributions and architectures: - -- x86_64: - - * CentOS 7.x. We have dropped support for CentOS 6 (and other RHEL 6 - derivatives, like Scientific Linux 6). - * Debian Jessie 8.x. Debian Wheezy 7.x's g++ has incomplete support - for C++11 (and no systemd). - * Ubuntu Xenial 16.04 and Trusty 14.04. Ubuntu Precise 12.04 is no - longer supported. - * Fedora 22 or later. - -- aarch64 / arm64: - - * Ubuntu Xenial 16.04. - -Upgrading from Infernalis or Hammer ------------------------------------ - -* We now recommend against using ``ext4`` as the underlying file - system for Ceph OSDs, especially when RGW or other users of long - RADOS object names are used. For more information about why, please - see `Filesystem Recommendations`_. - - If you have an existing cluster that uses ext4 for the OSDs but uses only - RBD and/or CephFS, then the ext4 limitations will not affect you. Before - upgrading, be sure add the following to ``ceph.conf`` to allow the OSDs to - start:: - - osd max object name len = 256 - osd max object namespace len = 64 - - Keep in mind that if you set these lower object name limits and - later decide to use RGW on this cluster, it will have problems - storing S3/Swift objects with long names. This startup check can also be - disabled via the below option, although this is not recommended:: - - osd check max object name len on startup = false - -.. _Filesystem Recommendations: ../configuration/filesystem-recommendations - -* There are no major compatibility changes since Infernalis. Simply - upgrading the daemons on each host and restarting all daemons is - sufficient. - -* The rbd CLI no longer accepts the deprecated '--image-features' option - during create, import, and clone operations. The '--image-feature' - option should be used instead. - -* The rbd legacy image format (version 1) is deprecated with the Jewel release. - Attempting to create a new version 1 RBD image will result in a warning. - Future releases of Ceph will remove support for version 1 RBD images. - -* The 'send_pg_creates' and 'map_pg_creates' mon CLI commands are - obsolete and no longer supported. - -* A new configure option 'mon_election_timeout' is added to specifically - limit max waiting time of monitor election process, which was previously - restricted by 'mon_lease'. - -* CephFS filesystems created using versions older than Firefly (0.80) must - use the new 'cephfs-data-scan tmap_upgrade' command after upgrading to - Jewel. See 'Upgrading' in the CephFS documentation for more information. - -* The 'ceph mds setmap' command has been removed. - -* The default RBD image features for new images have been updated to - enable the following: exclusive lock, object map, fast-diff, and - deep-flatten. These features are not currently supported by the RBD - kernel driver nor older RBD clients. They can be disabled on a per-image - basis via the RBD CLI, or the default features can be updated to the - pre-Jewel setting by adding the following to the client section of the Ceph - configuration file:: - - rbd default features = 1 - -* The rbd legacy image format (version 1) is deprecated with the Jewel - release. - -* After upgrading, users should set the 'sortbitwise' flag to enable the new - internal object sort order:: - - ceph osd set sortbitwise - - This flag is important for the new object enumeration API and for - new backends like BlueStore. - -* The rbd CLI no longer permits creating images and snapshots with potentially - ambiguous names (e.g. the '/' and '@' characters are disallowed). The - validation can be temporarily disabled by adding "--rbd-validate-names=false" - to the rbd CLI when creating an image or snapshot. It can also be disabled - by adding the following to the client section of the Ceph configuration file:: - - rbd validate names = false - -Upgrading from Hammer ---------------------- - -* All cluster nodes must first upgrade to Hammer v0.94.4 or a later - v0.94.z release; only then is it possible to upgrade to Jewel - 10.2.z. - -* For all distributions that support systemd (CentOS 7, Fedora, Debian - Jessie 8.x, OpenSUSE), ceph daemons are now managed using native systemd - files instead of the legacy sysvinit scripts. For example:: - - systemctl start ceph.target # start all daemons - systemctl status ceph-osd@12 # check status of osd.12 - - The main notable distro that is *not* yet using systemd is Ubuntu trusty - 14.04. (The next Ubuntu LTS, 16.04, will use systemd instead of upstart.) - -* Ceph daemons now run as user and group ``ceph`` by default. The - ceph user has a static UID assigned by Fedora and Debian (also used by - derivative distributions like RHEL/CentOS and Ubuntu). On SUSE the same - UID/GID as in Fedora and Debian will be used, *provided it is not already - assigned*. In the unlikely event the preferred UID or GID is assigned to a - different user/group, ceph will get a dynamically assigned UID/GID. - - If your systems already have a ceph user, upgrading the package will cause - problems. We suggest you first remove or rename the existing 'ceph' user - and 'ceph' group before upgrading. - - When upgrading, administrators have two options: - - #. Add the following line to ``ceph.conf`` on all hosts:: - - setuser match path = /var/lib/ceph/$type/$cluster-$id - - This will make the Ceph daemons run as root (i.e., not drop - privileges and switch to user ceph) if the daemon's data - directory is still owned by root. Newly deployed daemons will - be created with data owned by user ceph and will run with - reduced privileges, but upgraded daemons will continue to run as - root. - - #. Fix the data ownership during the upgrade. This is the - preferred option, but it is more work and can be very time - consuming. The process for each host is to: - - #. Upgrade the ceph package. This creates the ceph user and group. For - example:: - - ceph-deploy install --stable jewel HOST - - #. Stop the daemon(s):: - - service ceph stop # fedora, centos, rhel, debian - stop ceph-all # ubuntu - - #. Fix the ownership:: - - chown -R ceph:ceph /var/lib/ceph - chown -R ceph:ceph /var/log/ceph - - #. Restart the daemon(s):: - - start ceph-all # ubuntu - systemctl start ceph.target # debian, centos, fedora, rhel - - Alternatively, the same process can be done with a single daemon - type, for example by stopping only monitors and chowning only - ``/var/lib/ceph/mon``. - -* The on-disk format for the experimental KeyValueStore OSD backend has - changed. You will need to remove any OSDs using that backend before you - upgrade any test clusters that use it. - -* When a pool quota is reached, librados operations now block indefinitely, - the same way they do when the cluster fills up. (Previously they would return - -ENOSPC.) By default, a full cluster or pool will now block. If your - librados application can handle ENOSPC or EDQUOT errors gracefully, you can - get error returns instead by using the new librados OPERATION_FULL_TRY flag. - -* The return code for librbd's rbd_aio_read and Image::aio_read API methods no - longer returns the number of bytes read upon success. Instead, it returns 0 - upon success and a negative value upon failure. - -* 'ceph scrub', 'ceph compact' and 'ceph sync force' are now DEPRECATED. Users - should instead use 'ceph mon scrub', 'ceph mon compact' and - 'ceph mon sync force'. - -* 'ceph mon_metadata' should now be used as 'ceph mon metadata'. There is no - need to deprecate this command (same major release since it was first - introduced). - -* The `--dump-json` option of "osdmaptool" is replaced by `--dump json`. - -* The commands of "pg ls-by-{pool,primary,osd}" and "pg ls" now take "recovering" - instead of "recovery", to include the recovering pgs in the listed pgs. - -Upgrading from Firefly ----------------------- - -Upgrading directly from Firefly v0.80.z is not recommended. It is -possible to do a direct upgrade, but not without downtime, as all OSDs -must be stopped, upgraded, and then restarted. We recommend that -clusters be first upgraded to Hammer v0.94.6 or a later v0.94.z -release; only then is it possible to upgrade to Jewel 10.2.z for an -online upgrade (see below). - -To do an offline upgrade directly from Firefly, all Firefly OSDs must -be stopped and marked down before any Jewel OSDs will be allowed -to start up. This fencing is enforced by the Jewel monitor, so -you should use an upgrade procedure like: - - #. Upgrade Ceph on monitor hosts - #. Restart all ceph-mon daemons - #. Set noout:: - ceph osd set noout - #. Upgrade Ceph on all OSD hosts - #. Stop all ceph-osd daemons - #. Mark all OSDs down with something like:: - ceph osd down `seq 0 1000` - #. Start all ceph-osd daemons - #. Let the cluster settle and then unset noout:: - ceph osd unset noout - #. Upgrade and restart any remaining daemons (ceph-mds, radosgw) - -Notable Changes since Infernalis --------------------------------- - -* aarch64: add optimized version of crc32c (Yazen Ghannam, Steve Capper) -* Adding documentation on how to use new dynamic throttle scheme (`pr#8069 <http://github.com/ceph/ceph/pull/8069>`_, Somnath Roy) -* admin/build-doc: depend on zlib1g-dev and graphviz (`pr#7522 <http://github.com/ceph/ceph/pull/7522>`_, Ken Dreyer) -* auth: cache/reuse crypto lib key objects, optimize msg signature check (Sage Weil) -* auth: fail if rotating key is missing (do not spam log) (`pr#6473 <http://github.com/ceph/ceph/pull/6473>`_, Qiankun Zheng) -* auth: fix crash when bad keyring is passed (`pr#6698 <http://github.com/ceph/ceph/pull/6698>`_, Dunrong Huang) -* auth: make keyring without mon entity type return -EACCES (`pr#5734 <http://github.com/ceph/ceph/pull/5734>`_, Xiaowei Chen) -* AUTHORS: update email (`pr#7854 <http://github.com/ceph/ceph/pull/7854>`_, Yehuda Sadeh) -* auth: reinit NSS after fork() (#11128 Yan, Zheng) -* authtool: update --help and manpage to match code. (`pr#8456 <http://github.com/ceph/ceph/pull/8456>`_, Robin H. Johnson) -* autotools: fix out of tree build (Krxysztof Kosinski) -* autotools: improve make check output (Loic Dachary) -* Be more careful about directory fragmentation and scrubbing (`issue#15167 <http://tracker.ceph.com/issues/15167>`_, `pr#8180 <http://github.com/ceph/ceph/pull/8180>`_, Yan, Zheng) -* bluestore: latest and greatest (`issue#14210 <http://tracker.ceph.com/issues/14210>`_, `issue#13801 <http://tracker.ceph.com/issues/13801>`_, `pr#6896 <http://github.com/ceph/ceph/pull/6896>`_, xie.xingguo, Jianpeng Ma, YiQiang Chen, Sage Weil, Ning Yao) -* buffer: add invalidate_crc() (Piotr Dalek) -* buffer: add symmetry operator==() and operator!=() (`pr#7974 <http://github.com/ceph/ceph/pull/7974>`_, Kefu Chai) -* buffer: fix internal iterator invalidation on rebuild, get_contiguous (`pr#6962 <http://github.com/ceph/ceph/pull/6962>`_, Sage Weil) -* buffer: fix zero bug (#12252 Haomai Wang) -* buffer: hide iterator_impl symbols (`issue#14788 <http://tracker.ceph.com/issues/14788>`_, `pr#7688 <http://github.com/ceph/ceph/pull/7688>`_, Kefu Chai) -* buffer: increment history alloc as well in raw_combined (`issue#14955 <http://tracker.ceph.com/issues/14955>`_, `pr#7910 <http://github.com/ceph/ceph/pull/7910>`_, Samuel Just) -* buffer: make usable outside of ceph source again (`pr#6863 <http://github.com/ceph/ceph/pull/6863>`_, Josh Durgin) -* buffer: raw_combined allocations buffer and ref count together (`pr#7612 <http://github.com/ceph/ceph/pull/7612>`_, Sage Weil) -* buffer: some cleanup (Michal Jarzabek) -* buffer: use move construct to append/push_back/push_front (`pr#7455 <http://github.com/ceph/ceph/pull/7455>`_, Haomai Wang) -* build: Adding build requires (`pr#7742 <http://github.com/ceph/ceph/pull/7742>`_, Erwan Velu) -* build: a few armhf (32-bit build) fixes (`pr#7999 <http://github.com/ceph/ceph/pull/7999>`_, Eric Lee, Sage Weil) -* build: allow jemalloc with rocksdb-static (`pr#7368 <http://github.com/ceph/ceph/pull/7368>`_, Somnath Roy) -* build: allow tcmalloc-minimal (Thorsten Behrens) -* build: build internal plugins and classes as modules (`pr#6462 <http://github.com/ceph/ceph/pull/6462>`_, James Page) -* build: C++11 now supported -* build: cmake check fixes (`pr#6787 <http://github.com/ceph/ceph/pull/6787>`_, Orit Wasserman) -* build: cmake: fix nss linking (Danny Al-Gaaf) -* build: cmake: misc fixes (Orit Wasserman, Casey Bodley) -* build: cmake tweaks (`pr#6254 <http://github.com/ceph/ceph/pull/6254>`_, John Spray) -* build: disable LTTNG by default (#11333 Josh Durgin) -* build: do not build ceph-dencoder with tcmalloc (#10691 Boris Ranto) -* build: fix a few warnings (`pr#6847 <http://github.com/ceph/ceph/pull/6847>`_, Orit Wasserman) -* build: fix bz2-dev dependency (`pr#6948 <http://github.com/ceph/ceph/pull/6948>`_, Samuel Just) -* build: fix compiling warnings (`pr#8366 <http://github.com/ceph/ceph/pull/8366>`_, Dongsheng Yang) -* build: Fixing BTRFS issue at 'make check' (`pr#7805 <http://github.com/ceph/ceph/pull/7805>`_, Erwan Velu) -* build: fix Jenkins make check errors due to deep-scrub randomization (`pr#6671 <http://github.com/ceph/ceph/pull/6671>`_, David Zafman) -* build: fix junit detection on Fedora 22 (Ira Cooper) -* build: fix pg ref disabling (William A. Kennington III) -* build: fix ppc build (James Page) -* build: fix the autotools and cmake build (the new fusestore needs libfuse) (`pr#7393 <http://github.com/ceph/ceph/pull/7393>`_, Kefu Chai) -* build: fix warnings (`pr#7197 <http://github.com/ceph/ceph/pull/7197>`_, Kefu Chai, xie xingguo) -* build: fix warnings (`pr#7315 <http://github.com/ceph/ceph/pull/7315>`_, Kefu Chai) -* build: FreeBSD related fixes (`pr#7170 <http://github.com/ceph/ceph/pull/7170>`_, Mykola Golub) -* build: Gentoo: _FORTIFY_SOURCE fix. (`issue#13920 <http://tracker.ceph.com/issues/13920>`_, `pr#6739 <http://github.com/ceph/ceph/pull/6739>`_, Robin H. Johnson) -* build: install-deps: misc fixes (Loic Dachary) -* build: install-deps.sh improvements (Loic Dachary) -* build: install-deps: support OpenSUSE (Loic Dachary) -* build: kill warnings (`pr#7397 <http://github.com/ceph/ceph/pull/7397>`_, Kefu Chai) -* build: make_dist_tarball.sh (Sage Weil) -* build: many cmake improvements -* build: misc cmake fixes (Matt Benjamin) -* build: misc fixes (Boris Ranto, Ken Dreyer, Owen Synge) -* build: misc make check fixes (`pr#7153 <http://github.com/ceph/ceph/pull/7153>`_, Sage Weil) -* build: more CMake package check fixes (`pr#6108 <http://github.com/ceph/ceph/pull/6108>`_, Daniel Gryniewicz) -* build: move libexec scripts to standardize across distros (`issue#14687 <http://tracker.ceph.com/issues/14687>`_, `issue#14705 <http://tracker.ceph.com/issues/14705>`_, `issue#14723 <http://tracker.ceph.com/issues/14723>`_, `pr#7636 <http://github.com/ceph/ceph/pull/7636>`_, Nathan Cutler, Kefu Chai) -* build/ops: enable CR in CentOS 7 (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `pr#6844 <http://github.com/ceph/ceph/pull/6844>`_, Loic Dachary) -* build/ops: rbd-replay moved from ceph-test-dbg to ceph-common-dbg (`issue#13785 <http://tracker.ceph.com/issues/13785>`_, `pr#6578 <http://github.com/ceph/ceph/pull/6578>`_, Loic Dachary) -* build/ops: systemd ceph-disk unit must not assume /bin/flock (`issue#13975 <http://tracker.ceph.com/issues/13975>`_, `pr#6803 <http://github.com/ceph/ceph/pull/6803>`_, Loic Dachary) -* build: OSX build fixes (Yan, Zheng) -* build: Refrain from versioning and packaging EC testing plugins (`issue#14756 <http://tracker.ceph.com/issues/14756>`_, `issue#14723 <http://tracker.ceph.com/issues/14723>`_, `pr#7637 <http://github.com/ceph/ceph/pull/7637>`_, Nathan Cutler, Kefu Chai) -* build: remove rest-bench -* build: Respect TMPDIR for virtualenv. (`pr#8457 <http://github.com/ceph/ceph/pull/8457>`_, Robin H. Johnson) -* build: spdk submodule; cmake (`pr#7503 <http://github.com/ceph/ceph/pull/7503>`_, Kefu Chai) -* build: workaround an automake bug for "make check" (`issue#14723 <http://tracker.ceph.com/issues/14723>`_, `pr#7626 <http://github.com/ceph/ceph/pull/7626>`_, Kefu Chai) -* ceph-authtool: fix return code on error (Gerhard Muntingh) -* ceph: bash auto complete for CLI based on mon command descriptions (`pr#7693 <http://github.com/ceph/ceph/pull/7693>`_, Adam Kupczyk) -* ceph_daemon.py: Resolved ImportError to work with python3 (`pr#7937 <http://github.com/ceph/ceph/pull/7937>`_, Sarthak Munshi) -* ceph-detect-init: add debian/jessie test (`pr#8074 <http://github.com/ceph/ceph/pull/8074>`_, Kefu Chai) -* ceph-detect-init: added Linux Mint (Michal Jarzabek) -* ceph-detect-init: add missing test case (`pr#8105 <http://github.com/ceph/ceph/pull/8105>`_, Nathan Cutler) -* ceph-detect-init: fix py3 test (`pr#7025 <http://github.com/ceph/ceph/pull/7025>`_, Kefu Chai) -* ceph-detect-init: fix py3 test (`pr#7243 <http://github.com/ceph/ceph/pull/7243>`_, Kefu Chai) -* ceph_detect_init/__init__.py: remove shebang (`pr#7731 <http://github.com/ceph/ceph/pull/7731>`_, Nathan Cutler) -* ceph-detect-init: return correct value on recent SUSE distros (`issue#14770 <http://tracker.ceph.com/issues/14770>`_, `pr#7909 <http://github.com/ceph/ceph/pull/7909>`_, Nathan Cutler) -* ceph-detect-init: robust init system detection (Owen Synge) -* ceph-detect-init/run-tox.sh: FreeBSD: No init detect (`pr#8373 <http://github.com/ceph/ceph/pull/8373>`_, Willem Jan Withagen) -* ceph-detect-init: Ubuntu >= 15.04 uses systemd (`pr#6873 <http://github.com/ceph/ceph/pull/6873>`_, James Page) -* ceph-disk: Add destroy and deactivate option (`issue#7454 <http://tracker.ceph.com/issues/7454>`_, `pr#5867 <http://github.com/ceph/ceph/pull/5867>`_, Vicente Cheng) -* ceph-disk: add -f flag for btrfs mkfs (`pr#7222 <http://github.com/ceph/ceph/pull/7222>`_, Darrell Enns) -* ceph-disk: Add --setuser and --setgroup options for ceph-disk (`pr#7351 <http://github.com/ceph/ceph/pull/7351>`_, Mike Shuey) -* ceph-disk: ceph-disk list fails on /dev/cciss!c0d0 (`issue#13970 <http://tracker.ceph.com/issues/13970>`_, `issue#14233 <http://tracker.ceph.com/issues/14233>`_, `issue#14230 <http://tracker.ceph.com/issues/14230>`_, `pr#6879 <http://github.com/ceph/ceph/pull/6879>`_, Loic Dachary) -* ceph-disk: compare parted output with the dereferenced path (`issue#13438 <http://tracker.ceph.com/issues/13438>`_, `pr#6219 <http://github.com/ceph/ceph/pull/6219>`_, Joe Julian) -* ceph-disk: deactivate / destroy PATH arg are optional (`pr#7756 <http://github.com/ceph/ceph/pull/7756>`_, Loic Dachary) -* ceph-disk: do not always fail when re-using a partition (`pr#8508 <http://github.com/ceph/ceph/pull/8508>`_, You Ji) -* ceph-disk: ensure 'zap' only operates on a full disk (#11272 Loic Dachary) -* ceph-disk: fixes to respect init system (Loic Dachary, Owen Synge) -* ceph-disk: fix failures when preparing disks with udev > 214 (`issue#14080 <http://tracker.ceph.com/issues/14080>`_, `issue#14094 <http://tracker.ceph.com/issues/14094>`_, `pr#6926 <http://github.com/ceph/ceph/pull/6926>`_, Loic Dachary, Ilya Dryomov) -* ceph-disk: fix prepare --help (`pr#7758 <http://github.com/ceph/ceph/pull/7758>`_, Loic Dachary) -* ceph-disk: Fix trivial typo (`pr#7472 <http://github.com/ceph/ceph/pull/7472>`_, Brad Hubbard) -* ceph-disk: fix zap sgdisk invocation (Owen Synge, Thorsten Behrens) -* ceph-disk: flake8 fixes (`pr#7646 <http://github.com/ceph/ceph/pull/7646>`_, Loic Dachary) -* ceph-disk: follow ceph-osd hints when creating journal (#9580 Sage Weil) -* ceph-disk: get Nonetype when ceph-disk list with --format plain on single device. (`pr#6410 <http://github.com/ceph/ceph/pull/6410>`_, Vicente Cheng) -* ceph-disk: handle re-using existing partition (#10987 Loic Dachary) -* ceph-disk: improve parted output parsing (#10983 Loic Dachary) -* ceph-disk: Improving 'make check' for ceph-disk (`pr#7762 <http://github.com/ceph/ceph/pull/7762>`_, Erwan Velu) -* ceph-disk: install pip > 6.1 (#11952 Loic Dachary) -* ceph-disk: key management support (`issue#14669 <http://tracker.ceph.com/issues/14669>`_, `pr#7552 <http://github.com/ceph/ceph/pull/7552>`_, Loic Dachary) -* ceph-disk: make some arguments as required if necessary (`pr#7687 <http://github.com/ceph/ceph/pull/7687>`_, Dongsheng Yang) -* ceph-disk: make suppression work for activate-all and activate-journal (Dan van der Ster) -* ceph-disk: many fixes (Loic Dachary, Alfredo Deza) -* ceph-disk: pass --cluster arg on prepare subcommand (Kefu Chai) -* ceph-disk: s/dmcrpyt/dmcrypt/ (`issue#14838 <http://tracker.ceph.com/issues/14838>`_, `pr#7744 <http://github.com/ceph/ceph/pull/7744>`_, Loic Dachary, Frode Sandholtbraaten) -* ceph-disk: support bluestore (`issue#13422 <http://tracker.ceph.com/issues/13422>`_, `pr#7218 <http://github.com/ceph/ceph/pull/7218>`_, Loic Dachary, Sage Weil) -* ceph-disk: support for multipath devices (Loic Dachary) -* ceph-disk: support NVMe device partitions (#11612 Ilja Slepnev) -* ceph-disk/test: fix test_prepare.py::TestPrepare tests (`pr#7549 <http://github.com/ceph/ceph/pull/7549>`_, Kefu Chai) -* ceph-disk: warn for prepare partitions with bad GUIDs (`issue#13943 <http://tracker.ceph.com/issues/13943>`_, `pr#6760 <http://github.com/ceph/ceph/pull/6760>`_, David Disseldorp) -* ceph: fix 'df' units (Zhe Zhang) -* ceph: fix parsing in interactive cli mode (#11279 Kefu Chai) -* ceph: fix tell behavior (`pr#6329 <http://github.com/ceph/ceph/pull/6329>`_, David Zafman) -* cephfs-data-scan: many additions, improvements (John Spray) -* cephfs-data-scan: scan_frags (`pr#5941 <http://github.com/ceph/ceph/pull/5941>`_, John Spray) -* cephfs-data-scan: scrub tag filtering (#12133 and #12145) (`issue#12133 <http://tracker.ceph.com/issues/12133>`_, `issue#12145 <http://tracker.ceph.com/issues/12145>`_, `pr#5685 <http://github.com/ceph/ceph/pull/5685>`_, John Spray) -* ceph-fuse: add process to ceph-fuse --help (`pr#6821 <http://github.com/ceph/ceph/pull/6821>`_, Wei Feng) -* ceph-fuse: do not require successful remount when unmounting (#10982 Greg Farnum) -* ceph-fuse: fix double decreasing the count to trim caps (`issue#14319 <http://tracker.ceph.com/issues/14319>`_, `pr#7229 <http://github.com/ceph/ceph/pull/7229>`_, Zhi Zhang) -* ceph-fuse: fix double free of args (`pr#7015 <http://github.com/ceph/ceph/pull/7015>`_, Ilya Shipitsin) -* ceph-fuse: fix fsync() (`pr#6388 <http://github.com/ceph/ceph/pull/6388>`_, Yan, Zheng) -* ceph-fuse: Fix potential filehandle ref leak at umount (`issue#14800 <http://tracker.ceph.com/issues/14800>`_, `pr#7686 <http://github.com/ceph/ceph/pull/7686>`_, Zhi Zhang) -* ceph-fuse, libcephfs: don't clear COMPLETE when trimming null (Yan, Zheng) -* ceph-fuse, libcephfs: drop inode when rmdir finishes (#11339 Yan, Zheng) -* ceph-fuse,libcephfs: Fix client handling of "lost" open directories on shutdown (`issue#14996 <http://tracker.ceph.com/issues/14996>`_, `pr#7994 <http://github.com/ceph/ceph/pull/7994>`_, Yan, Zheng) -* ceph-fuse,libcephfs: fix free fds being exhausted eventually because freed fds are never put back (`issue#14798 <http://tracker.ceph.com/issues/14798>`_, `pr#7685 <http://github.com/ceph/ceph/pull/7685>`_, Zhi Zhang) -* ceph-fuse,libcephfs: fix uninline (#11356 Yan, Zheng) -* ceph-fuse, libcephfs: hold exclusive caps on dirs we "own" (#11226 Greg Farnum) -* ceph-fuse: mostly behave on 32-bit hosts (Yan, Zheng) -* ceph-fuse:print usage information when no parameter specified (`pr#6868 <http://github.com/ceph/ceph/pull/6868>`_, Bo Cai) -* ceph-fuse: rotate log file (`pr#8485 <http://github.com/ceph/ceph/pull/8485>`_, Sage Weil) -* ceph-fuse: While starting ceph-fuse, start the log thread first (`issue#13443 <http://tracker.ceph.com/issues/13443>`_, `pr#6224 <http://github.com/ceph/ceph/pull/6224>`_, Wenjun Huang) -* ceph: improve error output for 'tell' (#11101 Kefu Chai) -* ceph: improve the error message (`issue#11101 <http://tracker.ceph.com/issues/11101>`_, `pr#7106 <http://github.com/ceph/ceph/pull/7106>`_, Kefu Chai) -* ceph.in: avoid a broken pipe error when use ceph command (`issue#14354 <http://tracker.ceph.com/issues/14354>`_, `pr#7212 <http://github.com/ceph/ceph/pull/7212>`_, Bo Cai) -* ceph.in: correct dev python path for automake builds (`pr#8360 <http://github.com/ceph/ceph/pull/8360>`_, Josh Durgin) -* ceph.in: fix python libpath for automake as well (`pr#8362 <http://github.com/ceph/ceph/pull/8362>`_, Josh Durgin) -* ceph.in: Minor python3 specific changes (`pr#7947 <http://github.com/ceph/ceph/pull/7947>`_, Sarthak Munshi) -* ceph-kvstore-tool: handle bad out file on command line (`pr#6093 <http://github.com/ceph/ceph/pull/6093>`_, Kefu Chai) -* ceph-mds:add --help/-h (`pr#6850 <http://github.com/ceph/ceph/pull/6850>`_, Cilang Zhao) -* ceph-monstore-tool: fix store-copy (Huangjun) -* ceph: new 'ceph daemonperf' command (John Spray, Mykola Golub) -* ceph_objectstore_bench: fix race condition, bugs (`issue#13516 <http://tracker.ceph.com/issues/13516>`_, `pr#6681 <http://github.com/ceph/ceph/pull/6681>`_, Igor Fedotov) -* ceph-objectstore-tool: fix --dry-run for many ceph-objectstore-tool operations (`pr#6545 <http://github.com/ceph/ceph/pull/6545>`_, David Zafman) -* ceph-objectstore-tool: many many improvements (David Zafman) -* ceph-objectstore-tool: refactoring and cleanup (John Spray) -* ceph-post-file: misc fixes (Joey McDonald, Sage Weil) -* ceph-rest-api: fix fs/flag/set (`pr#8428 <http://github.com/ceph/ceph/pull/8428>`_, Sage Weil) -* ceph.spec.in: add BuildRequires: systemd (`issue#13860 <http://tracker.ceph.com/issues/13860>`_, `pr#6692 <http://github.com/ceph/ceph/pull/6692>`_, Nathan Cutler) -* ceph.spec.in: add copyright notice (`issue#14694 <http://tracker.ceph.com/issues/14694>`_, `pr#7569 <http://github.com/ceph/ceph/pull/7569>`_, Nathan Cutler) -* ceph.spec.in: add license declaration (`pr#7574 <http://github.com/ceph/ceph/pull/7574>`_, Nathan Cutler) -* ceph.spec.in: disable lttng and babeltrace explicitly (`issue#14844 <http://tracker.ceph.com/issues/14844>`_, `pr#7857 <http://github.com/ceph/ceph/pull/7857>`_, Kefu Chai) -* ceph.spec.in: do not install Ceph RA on systemd platforms (`issue#14828 <http://tracker.ceph.com/issues/14828>`_, `pr#7894 <http://github.com/ceph/ceph/pull/7894>`_, Nathan Cutler) -* ceph.spec.in: fix openldap and openssl build dependencies for SUSE (`issue#15138 <http://tracker.ceph.com/issues/15138>`_, `pr#8120 <http://github.com/ceph/ceph/pull/8120>`_, Nathan Cutler) -* ceph.spec.in: limit _smp_mflags when lowmem_builder is set in SUSE's OBS (`issue#13858 <http://tracker.ceph.com/issues/13858>`_, `pr#6691 <http://github.com/ceph/ceph/pull/6691>`_, Nathan Cutler) -* ceph_test_libcephfs: tolerate duplicated entries in readdir (`issue#14377 <http://tracker.ceph.com/issues/14377>`_, `pr#7246 <http://github.com/ceph/ceph/pull/7246>`_, Yan, Zheng) -* ceph_test_msgr: reduce test size to fix memory size (`pr#8127 <http://github.com/ceph/ceph/pull/8127>`_, Haomai Wang) -* ceph_test_msgr: Use send_message instead of keepalive to wakeup connection (`pr#6605 <http://github.com/ceph/ceph/pull/6605>`_, Haomai Wang) -* ceph_test_rados_misc: shorten mount timeout (`pr#8209 <http://github.com/ceph/ceph/pull/8209>`_, Sage Weil) -* ceph_test_rados: test pipelined reads (Zhiqiang Wang) -* check-generated.sh: can't source bash from sh (`pr#8521 <http://github.com/ceph/ceph/pull/8521>`_, Michal Jarzabek) -* cleanup (`pr#8058 <http://github.com/ceph/ceph/pull/8058>`_, Yehuda Sadeh, Orit Wasserman) -* cleanup: remove misc dead code (`pr#7201 <http://github.com/ceph/ceph/pull/7201>`_, Erwan Velu) -* client: a better check for MDS availability (`pr#6253 <http://github.com/ceph/ceph/pull/6253>`_, John Spray) -* client: add option to control how directory size is calculated (`pr#7323 <http://github.com/ceph/ceph/pull/7323>`_, Yan, Zheng) -* client: avoid creating orphan object in Client::check_pool_perm() (`issue#13782 <http://tracker.ceph.com/issues/13782>`_, `pr#6603 <http://github.com/ceph/ceph/pull/6603>`_, Yan, Zheng) -* client: avoid sending unnecessary FLUSHSNAP messages (Yan, Zheng) -* client: check if Fh is readable when processing a read (`issue#11517 <http://tracker.ceph.com/issues/11517>`_, `pr#7209 <http://github.com/ceph/ceph/pull/7209>`_, Yan, Zheng) -* client: close mds sessions in shutdown() (`pr#6269 <http://github.com/ceph/ceph/pull/6269>`_, John Spray) -* client: don't invalidate page cache when inode is no longer used (`pr#6380 <http://github.com/ceph/ceph/pull/6380>`_, Yan, Zheng) -* client: don't mark_down on command reply (`pr#6204 <http://github.com/ceph/ceph/pull/6204>`_, John Spray) -* client: drop prefix from ints (`pr#6275 <http://github.com/ceph/ceph/pull/6275>`_, John Coyle) -* client: exclude setfilelock when calculating oldest tid (Yan, Zheng) -* client: fix error handling in check_pool_perm (John Spray) -* client: flush kernel pagecache before creating snapshot (`issue#10436 <http://tracker.ceph.com/issues/10436>`_, `pr#7495 <http://github.com/ceph/ceph/pull/7495>`_, Yan, Zheng) -* client: fsync waits only for inode's caps to flush (Yan, Zheng) -* client: invalidate kernel dcache when cache size exceeds limits (Yan, Zheng) -* client: make fsync wait for unsafe dir operations (Yan, Zheng) -* client: modify a word in log (`pr#6906 <http://github.com/ceph/ceph/pull/6906>`_, YongQiang He) -* client: pin lookup dentry to avoid inode being freed (Yan, Zheng) -* client: properly trim unlinked inode (`issue#13903 <http://tracker.ceph.com/issues/13903>`_, `pr#7297 <http://github.com/ceph/ceph/pull/7297>`_, Yan, Zheng) -* client: removed unused Mutex from MetaRequest (`pr#7655 <http://github.com/ceph/ceph/pull/7655>`_, Greg Farnum) -* client: sys/file.h includes for flock operations (`pr#6282 <http://github.com/ceph/ceph/pull/6282>`_, John Coyle) -* client: use null snapc to check pool permission (`issue#13714 <http://tracker.ceph.com/issues/13714>`_, `pr#6497 <http://github.com/ceph/ceph/pull/6497>`_, Yan, Zheng) -* cls/cls_rbd.cc: fix misused metadata_name_from_key (`issue#13922 <http://tracker.ceph.com/issues/13922>`_, `pr#6661 <http://github.com/ceph/ceph/pull/6661>`_, Xiaoxi Chen) -* cls/cls_rbd: pass string by reference (`pr#7232 <http://github.com/ceph/ceph/pull/7232>`_, Jeffrey Lu) -* cls_hello: Fix grammatical error in description comment (`pr#7951 <http://github.com/ceph/ceph/pull/7951>`_, Brad Hubbard) -* cls_journal: fix -EEXIST checking (`pr#8413 <http://github.com/ceph/ceph/pull/8413>`_, runsisi) -* cls_rbd: add guards for error cases (`issue#14316 <http://tracker.ceph.com/issues/14316>`_, `issue#14317 <http://tracker.ceph.com/issues/14317>`_, `pr#7165 <http://github.com/ceph/ceph/pull/7165>`_, xie xingguo) -* cls_rbd: change object_map_update to return 0 on success, add logging (`pr#6467 <http://github.com/ceph/ceph/pull/6467>`_, Douglas Fuller) -* cls_rbd: enable object map checksums for object_map_save (`issue#14280 <http://tracker.ceph.com/issues/14280>`_, `pr#7149 <http://github.com/ceph/ceph/pull/7149>`_, Douglas Fuller) -* cls_rbd: fix -EEXIST checking in cls::rbd::image_set (`pr#8371 <http://github.com/ceph/ceph/pull/8371>`_, runsisi) -* cls_rbd: fix the test for ceph-dencoder (`pr#7793 <http://github.com/ceph/ceph/pull/7793>`_, Kefu Chai) -* cls_rbd: mirror_image_list should return global image id (`pr#8297 <http://github.com/ceph/ceph/pull/8297>`_, Jason Dillaman) -* cls_rbd: mirroring directory (`issue#14419 <http://tracker.ceph.com/issues/14419>`_, `pr#7620 <http://github.com/ceph/ceph/pull/7620>`_, Josh Durgin) -* cls_rbd: pass WILLNEED fadvise flags during object map update (`issue#15332 <http://tracker.ceph.com/issues/15332>`_, `pr#8380 <http://github.com/ceph/ceph/pull/8380>`_, Jason Dillaman) -* cls_rbd: protect against excessively large object maps (`issue#15121 <http://tracker.ceph.com/issues/15121>`_, `pr#8099 <http://github.com/ceph/ceph/pull/8099>`_, Jason Dillaman) -* cls_rbd: read_peers: update last_read on next cls_cxx_map_get_vals (`pr#8374 <http://github.com/ceph/ceph/pull/8374>`_, Mykola Golub) -* cls/rgw: fix FTBFS (`pr#8142 <http://github.com/ceph/ceph/pull/8142>`_, Kefu Chai) -* cls/rgw: fix use of timespan (`issue#15181 <http://tracker.ceph.com/issues/15181>`_, `pr#8212 <http://github.com/ceph/ceph/pull/8212>`_, Yehuda Sadeh) -* cmake: add common/fs_types.cc to libcommon (`pr#7898 <http://github.com/ceph/ceph/pull/7898>`_, Orit Wasserman) -* cmake: Add common/PluginRegistry.cc to CMakeLists.txt (`pr#6805 <http://github.com/ceph/ceph/pull/6805>`_, Pete Zaitcev) -* cmake: Added new unittests to make check (`pr#7572 <http://github.com/ceph/ceph/pull/7572>`_, Ali Maredia) -* cmake: Add ENABLE_GIT_VERSION to avoid rebuilding (`pr#7171 <http://github.com/ceph/ceph/pull/7171>`_, Kefu Chai) -* cmake: add ErasureCode.cc to jerasure plugins (`pr#7808 <http://github.com/ceph/ceph/pull/7808>`_, Casey Bodley) -* cmake: add FindOpenSSL.cmake (`pr#8106 <http://github.com/ceph/ceph/pull/8106>`_, Marcus Watts, Matt Benjamin) -* cmake: add KernelDevice.cc to libos_srcs (`pr#7507 <http://github.com/ceph/ceph/pull/7507>`_, Kefu Chai) -* cmake: add missing check for HAVE_EXECINFO_H (`pr#7270 <http://github.com/ceph/ceph/pull/7270>`_, Casey Bodley) -* cmake: add missing librbd image_watcher sources (`issue#14823 <http://tracker.ceph.com/issues/14823>`_, `pr#7717 <http://github.com/ceph/ceph/pull/7717>`_, Casey Bodley) -* cmake: add missing librbd/MirrorWatcher.cc and librd/ObjectWatcher.cc (`pr#8399 <http://github.com/ceph/ceph/pull/8399>`_, Orit Wasserman) -* cmake: add nss as a suffix for pk11pub.h (`pr#6556 <http://github.com/ceph/ceph/pull/6556>`_, Samuel Just) -* cmake: add rgw_basic_types.cc to librgw.a (`pr#6786 <http://github.com/ceph/ceph/pull/6786>`_, Orit Wasserman) -* cmake: add StandardPolicy.cc to librbd (`pr#8368 <http://github.com/ceph/ceph/pull/8368>`_, Kefu Chai) -* cmake: add TracepointProvider.cc to libcommon (`pr#6823 <http://github.com/ceph/ceph/pull/6823>`_, Orit Wasserman) -* cmake: avoid false-positive LDAP header detect (`pr#8100 <http://github.com/ceph/ceph/pull/8100>`_, Matt Benjamin) -* cmake: Build cython modules and change paths to bin/, lib/ (`pr#8351 <http://github.com/ceph/ceph/pull/8351>`_, John Spray, Ali Maredia) -* cmake: check for libsnappy in default path also (`pr#7366 <http://github.com/ceph/ceph/pull/7366>`_, Kefu Chai) -* cmake: cleanups and more features from automake (`pr#7103 <http://github.com/ceph/ceph/pull/7103>`_, Casey Bodley, Ali Maredia) -* cmake: define STRERROR_R_CHAR_P for GNU-specific strerror_r (`pr#6751 <http://github.com/ceph/ceph/pull/6751>`_, Ilya Dryomov) -* cmake: detect bzip2 and lz4 (`pr#7126 <http://github.com/ceph/ceph/pull/7126>`_, Kefu Chai) -* cmake: feb5 (`pr#7541 <http://github.com/ceph/ceph/pull/7541>`_, Matt Benjamin) -* cmake: fix build with bluestore (`pr#7099 <http://github.com/ceph/ceph/pull/7099>`_, John Spray) -* cmake: fix files list (`pr#6539 <http://github.com/ceph/ceph/pull/6539>`_, Yehuda Sadeh) -* cmake: fix mrun to handle cmake build structure (`pr#8237 <http://github.com/ceph/ceph/pull/8237>`_, Orit Wasserman) -* cmake: fix paths to various EC source files (`pr#7748 <http://github.com/ceph/ceph/pull/7748>`_, Ali Maredia, Matt Benjamin) -* cmake: fix the build of test_rados_api_list (`pr#8438 <http://github.com/ceph/ceph/pull/8438>`_, Kefu Chai) -* cmake: fix the build of tests (`pr#7523 <http://github.com/ceph/ceph/pull/7523>`_, Kefu Chai) -* cmake: fix the build on trusty (`pr#7249 <http://github.com/ceph/ceph/pull/7249>`_, Kefu Chai) -* cmake: For CMake version <= 2.8.11, use LINK_PRIVATE and LINK_PUBLIC (`pr#7474 <http://github.com/ceph/ceph/pull/7474>`_, Tao Chang) -* CMake: For CMake version <= 2.8.11, use LINK_PRIVATE (`pr#8422 <http://github.com/ceph/ceph/pull/8422>`_, Haomai Wang) -* cmake: let ceph-client-debug link with tcmalloc (`pr#7314 <http://github.com/ceph/ceph/pull/7314>`_, Kefu Chai) -* cmake: librbd and libjournal build fixes (`pr#6557 <http://github.com/ceph/ceph/pull/6557>`_, Ilya Dryomov) -* cmake: made rocksdb an imported library (`pr#7131 <http://github.com/ceph/ceph/pull/7131>`_, Ali Maredia) -* cmake: no need to run configure from run-cmake-check.sh (`pr#6959 <http://github.com/ceph/ceph/pull/6959>`_, Orit Wasserman) -* cmake (`pr#7849 <http://github.com/ceph/ceph/pull/7849>`_, Ali Maredia) -* cmake: Remove duplicate find_package libcurl line. (`pr#7972 <http://github.com/ceph/ceph/pull/7972>`_, Brad Hubbard) -* cmake: support ccache via a WITH_CCACHE build option (`pr#6875 <http://github.com/ceph/ceph/pull/6875>`_, John Coyle) -* cmake: test_build_libcephfs needs ${ALLOC_LIBS} (`pr#7300 <http://github.com/ceph/ceph/pull/7300>`_, Ali Maredia) -* cmake: update for recent librbd changes (`pr#6715 <http://github.com/ceph/ceph/pull/6715>`_, John Spray) -* cmake: update for recent rbd changes (`pr#6818 <http://github.com/ceph/ceph/pull/6818>`_, Mykola Golub) -* cmake: Use uname instead of arch. (`pr#6358 <http://github.com/ceph/ceph/pull/6358>`_, John Coyle) -* coc: fix typo in the apt-get command (`pr#6659 <http://github.com/ceph/ceph/pull/6659>`_, Chris Holcombe) -* common: add descriptions to perfcounters (Kiseleva Alyona) -* common: add generic plugin infrastructure (`pr#6696 <http://github.com/ceph/ceph/pull/6696>`_, Sage Weil) -* common: add latency perf counter for finisher (`pr#6175 <http://github.com/ceph/ceph/pull/6175>`_, Xinze Chi) -* common: add perf counter descriptions (Alyona Kiseleva) -* common/address_help.cc: fix the leak in entity_addr_from_url() (`issue#14132 <http://tracker.ceph.com/issues/14132>`_, `pr#6987 <http://github.com/ceph/ceph/pull/6987>`_, Qiankun Zheng) -* common: add thread names (`pr#5882 <http://github.com/ceph/ceph/pull/5882>`_, Igor Podoski) -* common: add zlib compression plugin (`pr#7437 <http://github.com/ceph/ceph/pull/7437>`_, Alyona Kiseleva, Kiseleva Alyona) -* common: admin socket commands for tcmalloc heap get/set operations (`pr#7512 <http://github.com/ceph/ceph/pull/7512>`_, Samuel Just) -* common: ake ceph_time clocks work under BSD (`pr#7340 <http://github.com/ceph/ceph/pull/7340>`_, Adam C. Emerson) -* common: allow enable/disable of optracker at runtime (`pr#5168 <http://github.com/ceph/ceph/pull/5168>`_, Jianpeng Ma) -* common: Allow OPT_INT settings with negative values (`issue#13829 <http://tracker.ceph.com/issues/13829>`_, `pr#7390 <http://github.com/ceph/ceph/pull/7390>`_, Brad Hubbard, Kefu Chai) -* common: assert: abort() rather than throw (`pr#6804 <http://github.com/ceph/ceph/pull/6804>`_, Adam C. Emerson) -* common: assert: __STRING macro is not defined by musl libc. (`pr#6210 <http://github.com/ceph/ceph/pull/6210>`_, John Coyle) -* common/bit_vector: use hard-coded value for block size (`issue#14747 <http://tracker.ceph.com/issues/14747>`_, `pr#7610 <http://github.com/ceph/ceph/pull/7610>`_, Jason Dillaman) -* common: buffer: add cached_crc and cached_crc_adjust counts to perf dump (`pr#6535 <http://github.com/ceph/ceph/pull/6535>`_, Ning Yao) -* common: buffer/assert minor fixes (`pr#6990 <http://github.com/ceph/ceph/pull/6990>`_, Matt Benjamin) -* common: bufferlist performance tuning (Piotr Dalek, Sage Weil) -* common: buffer: put a guard for stat() syscall during read_file (`pr#7956 <http://github.com/ceph/ceph/pull/7956>`_, xie xingguo) -* common: buffer: remove unneeded list destructor (`pr#6456 <http://github.com/ceph/ceph/pull/6456>`_, Michal Jarzabek) -* common/buffer: replace RWLock with spinlocks (`pr#7294 <http://github.com/ceph/ceph/pull/7294>`_, Piotr Dałek) -* common/ceph_context.cc:fix order of initialisers (`pr#6838 <http://github.com/ceph/ceph/pull/6838>`_, Michal Jarzabek) -* common: change the type of counter total/unhealthy_workers (`pr#7254 <http://github.com/ceph/ceph/pull/7254>`_, Guang Yang) -* common: default cluster name to config file prefix (`pr#7364 <http://github.com/ceph/ceph/pull/7364>`_, Javen Wu) -* common: Deprecate or free up a bunch of feature bits (`pr#8214 <http://github.com/ceph/ceph/pull/8214>`_, Samuel Just) -* common: detect overflow of int config values (#11484 Kefu Chai) -* common: Do not use non-portable constants in mutex_debug (`pr#7766 <http://github.com/ceph/ceph/pull/7766>`_, Adam C. Emerson) -* common: don't reverse hobject_t hash bits when zero (`pr#6653 <http://github.com/ceph/ceph/pull/6653>`_, Piotr Dałek) -* common: fix bit_vector extent calc (#12611 Jason Dillaman) -* common: fix json parsing of utf8 (#7387 Tim Serong) -* common: fix leak of pthread_mutexattr (#11762 Ketor Meng) -* common: fix LTTNG vs fork issue (Josh Durgin) -* common: fix OpTracker age histogram calculation (`pr#5065 <http://github.com/ceph/ceph/pull/5065>`_, Zhiqiang Wang) -* common: fix race during optracker switches between enabled/disabled mode (`pr#8330 <http://github.com/ceph/ceph/pull/8330>`_, xie xingguo) -* common: fix reset max in Throttle using perf reset command (`issue#13517 <http://tracker.ceph.com/issues/13517>`_, `pr#6300 <http://github.com/ceph/ceph/pull/6300>`_, Xinze Chi) -* common: fix throttle max change (Henry Chang) -* common: fix time_t cast in decode (`issue#15330 <http://tracker.ceph.com/issues/15330>`_, `pr#8419 <http://github.com/ceph/ceph/pull/8419>`_, Adam C. Emerson) -* common/Formatter: avoid newline if there is no output (`pr#5351 <http://github.com/ceph/ceph/pull/5351>`_, Aran85) -* common: improve shared_cache and simple_cache efficiency with hash table (`pr#6909 <http://github.com/ceph/ceph/pull/6909>`_, Ning Yao) -* common/lockdep: increase max lock names (`pr#6961 <http://github.com/ceph/ceph/pull/6961>`_, Sage Weil) -* common: log: Assign LOG_DEBUG priority to syslog calls (`issue#13993 <http://tracker.ceph.com/issues/13993>`_, `pr#6815 <http://github.com/ceph/ceph/pull/6815>`_, Brad Hubbard) -* common: log: predict log message buffer allocation size (`pr#6641 <http://github.com/ceph/ceph/pull/6641>`_, Adam Kupczyk) -* common: make mutex more efficient -* common: make work queue addition/removal thread safe (#12662 Jason Dillaman) -* common/MemoryModel: Added explicit feature check for mallinfo(). (`pr#6252 <http://github.com/ceph/ceph/pull/6252>`_, John Coyle) -* common: new timekeeping common code, and Objecter conversion (`pr#5782 <http://github.com/ceph/ceph/pull/5782>`_, Adam C. Emerson) -* common/obj_bencher.cc: bump the precision of bandwidth field (`pr#8021 <http://github.com/ceph/ceph/pull/8021>`_, Piotr Dałek) -* common/obj_bencher.cc: faster object name generation (`pr#7863 <http://github.com/ceph/ceph/pull/7863>`_, Piotr Dałek) -* common/obj_bencher.cc: fix verification crashing when there's no objects (`pr#5853 <http://github.com/ceph/ceph/pull/5853>`_, Piotr Dałek) -* common/obj_bencher.cc: make verify error fatal (`issue#14971 <http://tracker.ceph.com/issues/14971>`_, `pr#7897 <http://github.com/ceph/ceph/pull/7897>`_, Piotr Dałek) -* common: optimize debug logging code (`pr#6441 <http://github.com/ceph/ceph/pull/6441>`_, Adam Kupczyk) -* common: optimize debug logging (`pr#6307 <http://github.com/ceph/ceph/pull/6307>`_, Adam Kupczyk) -* common: optracker improvements (Zhiqiang Wang, Jianpeng Ma) -* common/page.cc: _page_mask has too many bits (`pr#7588 <http://github.com/ceph/ceph/pull/7588>`_, Dan Mick) -* common: perf counter for bufferlist history total alloc (`pr#6198 <http://github.com/ceph/ceph/pull/6198>`_, Xinze Chi) -* common: PriorityQueue tests (Kefu Chai) -* common: reduce CPU usage by making stringstream in stringify function thread local (`pr#6543 <http://github.com/ceph/ceph/pull/6543>`_, Evgeniy Firsov) -* common: re-enable backtrace support (`pr#6771 <http://github.com/ceph/ceph/pull/6771>`_, Jason Dillaman) -* common: set thread name from correct thread (`pr#7845 <http://github.com/ceph/ceph/pull/7845>`_, Igor Podoski) -* common: signal_handler: added support for using reentrant strsignal() implementations vs. sys_siglist[] (`pr#6796 <http://github.com/ceph/ceph/pull/6796>`_, John Coyle) -* common: snappy decompressor may assert when handling segmented input bufferlist (`issue#14400 <http://tracker.ceph.com/issues/14400>`_, `pr#7268 <http://github.com/ceph/ceph/pull/7268>`_, Igor Fedotov) -* common: some async compression infrastructure (Haomai Wang) -* common/str_map: cleanup: replaced get_str_map() function overloading by using default parameters for delimiters (`pr#7266 <http://github.com/ceph/ceph/pull/7266>`_, Sahithi R V) -* common/strtol.cc: fix the coverity warnings (`pr#7967 <http://github.com/ceph/ceph/pull/7967>`_, Kefu Chai) -* common: SubProcess: Avoid buffer corruption when calling err() (`issue#15011 <http://tracker.ceph.com/issues/15011>`_, `pr#8054 <http://github.com/ceph/ceph/pull/8054>`_, Erwan Velu) -* common: SubProcess: fix multiple definition bug (`pr#6790 <http://github.com/ceph/ceph/pull/6790>`_, Yunchuan Wen) -* common: Thread: move copy constructor and assignment op (`pr#5133 <http://github.com/ceph/ceph/pull/5133>`_, Michal Jarzabek) -* common: time: have skewing-now call non-skewing now (`pr#7466 <http://github.com/ceph/ceph/pull/7466>`_, Adam C. Emerson) -* common/TrackedOp: fix inaccurate counting for slow requests (`issue#14804 <http://tracker.ceph.com/issues/14804>`_, `pr#7690 <http://github.com/ceph/ceph/pull/7690>`_, xie xingguo) -* common: unit test for interval_set implementations (`pr#6 <http://github.com/ceph/ceph/pull/6>`_, Igor Fedotov) -* common: use namespace instead of subclasses for buffer (`pr#6686 <http://github.com/ceph/ceph/pull/6686>`_, Michal Jarzabek) -* common: various fixes from SCA runs (`pr#7680 <http://github.com/ceph/ceph/pull/7680>`_, Danny Al-Gaaf) -* common: WorkQueue: new PointerWQ base class for ContextWQ (`issue#13636 <http://tracker.ceph.com/issues/13636>`_, `pr#6525 <http://github.com/ceph/ceph/pull/6525>`_, Jason Dillaman) -* compat: use prefixed typeof extension (`pr#6216 <http://github.com/ceph/ceph/pull/6216>`_, John Coyle) -* config: add $data_dir/config to config search path (`pr#7377 <http://github.com/ceph/ceph/pull/7377>`_, Sage Weil) -* config: complains when a setting is not tracked (`issue#11692 <http://tracker.ceph.com/issues/11692>`_, `pr#7085 <http://github.com/ceph/ceph/pull/7085>`_, Kefu Chai) -* config: fix osd_crush_initial_weight (`pr#7975 <http://github.com/ceph/ceph/pull/7975>`_, You Ji) -* config: increase default async op threads (`pr#7802 <http://github.com/ceph/ceph/pull/7802>`_, Piotr Dałek) -* config_opts: disable filestore throttle soft backoff by default (`pr#8265 <http://github.com/ceph/ceph/pull/8265>`_, Samuel Just) -* configure.ac: boost_iostreams is required, not optional (`pr#7816 <http://github.com/ceph/ceph/pull/7816>`_, Hector Martin) -* configure.ac: macro fix (`pr#6769 <http://github.com/ceph/ceph/pull/6769>`_, Igor Podoski) -* configure.ac: make "--with-librocksdb-static" default to 'check' (`issue#14463 <http://tracker.ceph.com/issues/14463>`_, `pr#7317 <http://github.com/ceph/ceph/pull/7317>`_, Dan Mick) -* configure.ac: update help strings for cython (`pr#7856 <http://github.com/ceph/ceph/pull/7856>`_, Josh Durgin) -* configure: Add -D_LARGEFILE64_SOURCE to Linux build. (`pr#8402 <http://github.com/ceph/ceph/pull/8402>`_, Ira Cooper) -* configure: detect bz2 and lz4 (`issue#13850 <http://tracker.ceph.com/issues/13850>`_, `issue#13981 <http://tracker.ceph.com/issues/13981>`_, `pr#7030 <http://github.com/ceph/ceph/pull/7030>`_, Kefu Chai) -* correct radosgw-admin command (`pr#7006 <http://github.com/ceph/ceph/pull/7006>`_, YankunLi) -* crush: add --check to validate dangling names, max osd id (Kefu Chai) -* crush: add chooseleaf_stable tunable (`pr#6572 <http://github.com/ceph/ceph/pull/6572>`_, Sangdi Xu, Sage Weil) -* crush: add safety assert (`issue#14496 <http://tracker.ceph.com/issues/14496>`_, `pr#7344 <http://github.com/ceph/ceph/pull/7344>`_, songbaisen) -* crush: cleanup, sync with kernel (Ilya Dryomov) -* crush: clean up whitespace removal (`issue#14302 <http://tracker.ceph.com/issues/14302>`_, `pr#7157 <http://github.com/ceph/ceph/pull/7157>`_, songbaisen) -* crush/CrushTester: check for overlapped rules (`pr#7139 <http://github.com/ceph/ceph/pull/7139>`_, Kefu Chai) -* crush/CrushTester: workaround a bug in boost::icl (`pr#7560 <http://github.com/ceph/ceph/pull/7560>`_, Kefu Chai) -* crush: fix cli tests for new crush tunables (`pr#8107 <http://github.com/ceph/ceph/pull/8107>`_, Sage Weil) -* crush: fix crash from invalid 'take' argument (#11602 Shiva Rkreddy, Sage Weil) -* crush: fix divide-by-2 in straw2 (#11357 Yann Dupont, Sage Weil) -* crush: fix error log (`pr#8430 <http://github.com/ceph/ceph/pull/8430>`_, Wei Jin) -* crush: fix has_v4_buckets (#11364 Sage Weil) -* crush: fix subtree base weight on adjust_subtree_weight (#11855 Sage Weil) -* crush: fix typo (`pr#8518 <http://github.com/ceph/ceph/pull/8518>`_, Wei Jin) -* crush: reply quickly from get_immediate_parent (`issue#14334 <http://tracker.ceph.com/issues/14334>`_, `pr#7181 <http://github.com/ceph/ceph/pull/7181>`_, song baisen) -* crush: respect default replicated ruleset config on map creation (Ilya Dryomov) -* crushtool: Don't crash when called on a file that isn't a crushmap (`issue#8286 <http://tracker.ceph.com/issues/8286>`_, `pr#8038 <http://github.com/ceph/ceph/pull/8038>`_, Brad Hubbard) -* crushtool: fix order of operations, usage (Sage Weil) -* crushtool: improve usage/tip messages (`pr#7142 <http://github.com/ceph/ceph/pull/7142>`_, xie xingguo) -* crushtool: set type 0 name "device" for --build option (`pr#6824 <http://github.com/ceph/ceph/pull/6824>`_, Sangdi Xu) -* crush: update tunable docs. change default profile to jewel (`pr#7964 <http://github.com/ceph/ceph/pull/7964>`_, Sage Weil) -* crush: validate bucket id before indexing buckets array (`issue#13477 <http://tracker.ceph.com/issues/13477>`_, `pr#6246 <http://github.com/ceph/ceph/pull/6246>`_, Sage Weil) -* crypto: fix NSS leak (Jason Dillaman) -* crypto: fix unbalanced init/shutdown (#12598 Zheng Yan) -* deb: fix rest-bench-dbg and ceph-test-dbg dependendies (Ken Dreyer) -* debian/changelog: Remove stray 'v' in version (`pr#7936 <http://github.com/ceph/ceph/pull/7936>`_, Dan Mick) -* debian/changelog: Remove stray 'v' in version (`pr#7938 <http://github.com/ceph/ceph/pull/7938>`_, Dan Mick) -* debian: include cpio in build-requiers (`pr#7533 <http://github.com/ceph/ceph/pull/7533>`_, Rémi BUISSON) -* debian: minor package reorg (Ken Dreyer) -* debian: package librgw_file* tests (`pr#7930 <http://github.com/ceph/ceph/pull/7930>`_, Ken Dreyer) -* debian: packaging fixes for jewel (`pr#7807 <http://github.com/ceph/ceph/pull/7807>`_, Ken Dreyer, Ali Maredia) -* debian/rpm split servers (`issue#10587 <http://tracker.ceph.com/issues/10587>`_, `pr#7746 <http://github.com/ceph/ceph/pull/7746>`_, Ken Dreyer) -* debian/rules: put init-ceph in /etc/init.d/ceph, not ceph-base (`issue#15329 <http://tracker.ceph.com/issues/15329>`_, `pr#8406 <http://github.com/ceph/ceph/pull/8406>`_, Dan Mick) -* deb, rpm: move ceph-objectstore-tool to ceph (Ken Dreyer) -* doc: add ceph-detect-init(8) source to dist tarball (`pr#7933 <http://github.com/ceph/ceph/pull/7933>`_, Ken Dreyer) -* doc: add cinder backend section to rbd-openstack.rst (`pr#7923 <http://github.com/ceph/ceph/pull/7923>`_, RustShen) -* doc: adding "--allow-shrink" in decreasing the size of the rbd block to distinguish from the increasing option (`pr#7020 <http://github.com/ceph/ceph/pull/7020>`_, Yehua) -* doc: add orphans commands to radosgw-admin(8) (`issue#14637 <http://tracker.ceph.com/issues/14637>`_, `pr#7518 <http://github.com/ceph/ceph/pull/7518>`_, Ken Dreyer) -* doc: add v0.80.11 to the release timeline (`pr#6658 <http://github.com/ceph/ceph/pull/6658>`_, Loic Dachary) -* doc: admin/build-doc: add lxml dependencies on debian (`pr#6610 <http://github.com/ceph/ceph/pull/6610>`_, Ken Dreyer) -* doc: admin/build-doc: make paths absolute (`pr#7119 <http://github.com/ceph/ceph/pull/7119>`_, Dan Mick) -* doc: amend Fixes instructions in SubmittingPatches (`pr#8312 <http://github.com/ceph/ceph/pull/8312>`_, Nathan Cutler) -* doc: amend the rados.8 (`pr#7251 <http://github.com/ceph/ceph/pull/7251>`_, Kefu Chai) -* doc/architecture.rst: remove redundant word "across" (`pr#8179 <http://github.com/ceph/ceph/pull/8179>`_, Zhao Junwang) -* doc/cephfs/posix: update (`pr#6922 <http://github.com/ceph/ceph/pull/6922>`_, Sage Weil) -* doc: Clarify usage on starting single osd/mds/mon. (`pr#7641 <http://github.com/ceph/ceph/pull/7641>`_, Patrick Donnelly) -* doc: CodingStyle: fix broken URLs (`pr#6733 <http://github.com/ceph/ceph/pull/6733>`_, Kefu Chai) -* doc: correct typo 'restared' to 'restarted' (`pr#6734 <http://github.com/ceph/ceph/pull/6734>`_, Yilong Zhao) -* doc: detailed description of bugfixing workflow (`pr#7941 <http://github.com/ceph/ceph/pull/7941>`_, Nathan Cutler) -* doc/dev: add "Deploy a cluster for manual testing" section (`issue#15218 <http://tracker.ceph.com/issues/15218>`_, `pr#8228 <http://github.com/ceph/ceph/pull/8228>`_, Nathan Cutler) -* doc/dev: add section on interrupting a running suite (`pr#8116 <http://github.com/ceph/ceph/pull/8116>`_, Nathan Cutler) -* doc/dev: continue writing Testing in the cloud chapter (`pr#7960 <http://github.com/ceph/ceph/pull/7960>`_, Nathan Cutler) -* doc: dev: document ceph-qa-suite (`pr#6955 <http://github.com/ceph/ceph/pull/6955>`_, Loic Dachary) -* doc/dev/index: refactor/reorg (`pr#6792 <http://github.com/ceph/ceph/pull/6792>`_, Nathan Cutler) -* doc/dev/index.rst: begin writing Contributing to Ceph (`pr#6727 <http://github.com/ceph/ceph/pull/6727>`_, Nathan Cutler) -* doc/dev/index.rst: fix headings (`pr#6780 <http://github.com/ceph/ceph/pull/6780>`_, Nathan Cutler) -* doc/dev: integrate testing into the narrative (`pr#7946 <http://github.com/ceph/ceph/pull/7946>`_, Nathan Cutler) -* doc: dev: introduction to tests (`pr#6910 <http://github.com/ceph/ceph/pull/6910>`_, Loic Dachary) -* doc/dev: various refinements (`pr#7954 <http://github.com/ceph/ceph/pull/7954>`_, Nathan Cutler) -* doc: docuemnt object corpus generation (#11099 Alexis Normand) -* doc: document "readforward" and "readproxy" cache mode (`pr#7023 <http://github.com/ceph/ceph/pull/7023>`_, Kefu Chai) -* doc: document region hostnames (Robin H. Johnson) -* doc: download GPG key from download.ceph.com (`issue#13603 <http://tracker.ceph.com/issues/13603>`_, `pr#6384 <http://github.com/ceph/ceph/pull/6384>`_, Ken Dreyer) -* doc: draft notes for jewel (`pr#8211 <http://github.com/ceph/ceph/pull/8211>`_, Loic Dachary, Sage Weil) -* doc: file must be empty when writing layout fields of file use "setfattr" (`pr#6848 <http://github.com/ceph/ceph/pull/6848>`_, Cilang Zhao) -* doc: fix 0.94.4 and 0.94.5 ordering (`pr#7763 <http://github.com/ceph/ceph/pull/7763>`_, Loic Dachary) -* doc: Fixed incorrect name of a "List Multipart Upload Parts" Response Entity (`issue#14003 <http://tracker.ceph.com/issues/14003>`_, `pr#6829 <http://github.com/ceph/ceph/pull/6829>`_, Lenz Grimmer) -* doc: Fixes a CRUSH map step take argument (`pr#7327 <http://github.com/ceph/ceph/pull/7327>`_, Ivan Grcic) -* doc: Fixes a spelling error (`pr#6705 <http://github.com/ceph/ceph/pull/6705>`_, Jeremy Qian) -* doc: Fixes headline different font size and type (`pr#8328 <http://github.com/ceph/ceph/pull/8328>`_, scienceluo) -* doc: fix gender neutrality (Alexandre Maragone) -* doc: fixing image in section ERASURE CODING (`pr#7298 <http://github.com/ceph/ceph/pull/7298>`_, Rachana Patel) -* doc: fix install doc (#10957 Kefu Chai) -* doc: fix misleading configuration guide on cache tiering (`pr#7000 <http://github.com/ceph/ceph/pull/7000>`_, Yuan Zhou) -* doc: fix "mon osd down out subtree limit" option name (`pr#7164 <http://github.com/ceph/ceph/pull/7164>`_, François Lafont) -* doc: fix outdated content in cache tier (`pr#6272 <http://github.com/ceph/ceph/pull/6272>`_, Yuan Zhou) -* doc: fix S3 C# example (`pr#7027 <http://github.com/ceph/ceph/pull/7027>`_, Dunrong Huang) -* doc: fix sphinx issues (Kefu Chai) -* doc: fix typo, duplicated content etc. for Jewel release notes (`pr#8342 <http://github.com/ceph/ceph/pull/8342>`_, xie xingguo) -* doc: fix typo in cephfs/quota (`pr#6745 <http://github.com/ceph/ceph/pull/6745>`_, Drunkard Zhang) -* doc: fix typo, indention etc. (`pr#7829 <http://github.com/ceph/ceph/pull/7829>`_, xie xingguo) -* doc: fix typo in developer guide (`pr#6943 <http://github.com/ceph/ceph/pull/6943>`_, Nathan Cutler) -* doc: fix typo (`pr#7004 <http://github.com/ceph/ceph/pull/7004>`_, tianqing) -* doc: fix wrong type of hyphen (`pr#8252 <http://github.com/ceph/ceph/pull/8252>`_, xie xingguo) -* doc: initial draft of RBD mirroring admin documentation (`issue#15041 <http://tracker.ceph.com/issues/15041>`_, `pr#8169 <http://github.com/ceph/ceph/pull/8169>`_, Jason Dillaman) -* doc: INSTALL redirect to online documentation (`pr#6749 <http://github.com/ceph/ceph/pull/6749>`_, Loic Dachary) -* doc: little improvements for troubleshooting scrub issues (`pr#6827 <http://github.com/ceph/ceph/pull/6827>`_, Mykola Golub) -* doc: man page updates (Kefu Chai) -* doc: mds data structure docs (Yan, Zheng) -* doc: misc updates (Francois Lafont, Ken Dreyer, Kefu Chai, Owen Synge, Gael Fenet-Garde, Loic Dachary, Yannick Atchy-Dalama, Jiaying Ren, Kevin Caradant, Robert Maxime, Nicolas Yong, Germain Chipaux, Arthur Gorjux, Gabriel Sentucq, Clement Lebrun, Jean-Remi Deveaux, Clair Massot, Robin Tang, Thomas Laumondais, Jordan Dorne, Yuan Zhou, Valentin Thomas, Pierre Chaumont, Benjamin Troquereau, Benjamin Sesia, Vikhyat Umrao, Nilamdyuti Goswami, Vartika Rai, Florian Haas, Loic Dachary, Simon Guinot, Andy Allan, Alistair Israel, Ken Dreyer, Robin Rehu, Lee Revell, Florian Marsylle, Thomas Johnson, Bosse Klykken, Travis Rhoden, Ian Kelling) -* doc: Modified a note section in rbd-snapshot doc. (`pr#6908 <http://github.com/ceph/ceph/pull/6908>`_, Nilamdyuti Goswami) -* doc: note that cephfs auth stuff is new in jewel (`pr#6858 <http://github.com/ceph/ceph/pull/6858>`_, John Spray) -* doc: osd-config Add Configuration Options for op queue. (`pr#7837 <http://github.com/ceph/ceph/pull/7837>`_, Robert LeBlanc) -* doc: osd: s/schedued/scheduled/ (`pr#6872 <http://github.com/ceph/ceph/pull/6872>`_, Loic Dachary) -* doc/rados/api/librados-intro.rst: fix typo (`pr#7879 <http://github.com/ceph/ceph/pull/7879>`_, xie xingguo) -* doc/rados/operations/crush: fix the formatting (`pr#8306 <http://github.com/ceph/ceph/pull/8306>`_, Kefu Chai) -* doc: release-notes: draft v0.80.11 release notes (`pr#6374 <http://github.com/ceph/ceph/pull/6374>`_, Loic Dachary) -* doc: release-notes: draft v10.0.0 release notes (`pr#6666 <http://github.com/ceph/ceph/pull/6666>`_, Loic Dachary) -* doc/release-notes: fix indents (`pr#8345 <http://github.com/ceph/ceph/pull/8345>`_, Kefu Chai) -* doc/release-notes: v9.1.0 (`pr#6281 <http://github.com/ceph/ceph/pull/6281>`_, Loic Dachary) -* doc/releases-notes: fix build error (`pr#6483 <http://github.com/ceph/ceph/pull/6483>`_, Kefu Chai) -* doc: Remove Ceph Monitors do lots of fsync() (`issue#15288 <http://tracker.ceph.com/issues/15288>`_, `pr#8327 <http://github.com/ceph/ceph/pull/8327>`_, Vikhyat Umrao) -* doc: remove redundant space in ceph-authtool/monmaptool doc (`pr#7244 <http://github.com/ceph/ceph/pull/7244>`_, Jiaying Ren) -* doc: remove toctree items under Create CephFS (`pr#6241 <http://github.com/ceph/ceph/pull/6241>`_, Jevon Qiao) -* doc: remove unnecessary period in headline (`pr#6775 <http://github.com/ceph/ceph/pull/6775>`_, Marc Koderer) -* doc: rename the "Create a Ceph User" section and add verbage about… (`issue#13502 <http://tracker.ceph.com/issues/13502>`_, `pr#6297 <http://github.com/ceph/ceph/pull/6297>`_, ritz303) -* doc: revise SubmittingPatches (`pr#7292 <http://github.com/ceph/ceph/pull/7292>`_, Kefu Chai) -* doc: rgw admin uses "region list" not "regions list" (`pr#8517 <http://github.com/ceph/ceph/pull/8517>`_, Kris Jurka) -* doc: rgw explain keystone's verify ssl switch (`pr#7862 <http://github.com/ceph/ceph/pull/7862>`_, Abhishek Lekshmanan) -* doc: rgw: port changes from downstream to upstream (`pr#7264 <http://github.com/ceph/ceph/pull/7264>`_, Bara Ancincova) -* doc: rgw_region_root_pool option should be in [global] (`issue#15244 <http://tracker.ceph.com/issues/15244>`_, `pr#8271 <http://github.com/ceph/ceph/pull/8271>`_, Vikhyat Umrao) -* doc: rst style fix for pools document (`pr#6816 <http://github.com/ceph/ceph/pull/6816>`_, Drunkard Zhang) -* doc: script and guidelines for mirroring Ceph (`pr#7384 <http://github.com/ceph/ceph/pull/7384>`_, Wido den Hollander) -* docs: Fix styling of newly added mirror docs (`pr#6127 <http://github.com/ceph/ceph/pull/6127>`_, Wido den Hollander) -* doc: small fixes (`pr#7813 <http://github.com/ceph/ceph/pull/7813>`_, xiexingguo) -* doc: standardize @param (not @parma, @parmam, @params) (`pr#7714 <http://github.com/ceph/ceph/pull/7714>`_, Nathan Cutler) -* doc: SubmittingPatches: there is no next; only jewel (`pr#6811 <http://github.com/ceph/ceph/pull/6811>`_, Nathan Cutler) -* doc: swift tempurls (#10184 Abhishek Lekshmanan) -* doc: switch doxygen integration back to breathe (#6115 Kefu Chai) -* doc, tests: update all http://ceph.com/ to download.ceph.com (`pr#6435 <http://github.com/ceph/ceph/pull/6435>`_, Alfredo Deza) -* doc: Update ceph-disk manual page with new feature deactivate/destroy. (`pr#6637 <http://github.com/ceph/ceph/pull/6637>`_, Vicente Cheng) -* doc: Updated CloudStack RBD documentation (`pr#8308 <http://github.com/ceph/ceph/pull/8308>`_, Wido den Hollander) -* doc: update doc for with new pool settings (`pr#5951 <http://github.com/ceph/ceph/pull/5951>`_, Guang Yang) -* doc: Updated the rados command man page to include the --run-name opt… (`issue#12899 <http://tracker.ceph.com/issues/12899>`_, `pr#5900 <http://github.com/ceph/ceph/pull/5900>`_, ritz303) -* doc: update infernalis release notes (`pr#6575 <http://github.com/ceph/ceph/pull/6575>`_, vasukulkarni) -* doc: Update list of admin/build-doc dependencies (`issue#14070 <http://tracker.ceph.com/issues/14070>`_, `pr#6934 <http://github.com/ceph/ceph/pull/6934>`_, Nathan Cutler) -* doc: update radosgw-admin example (`pr#6256 <http://github.com/ceph/ceph/pull/6256>`_, YankunLi) -* doc: update release schedule docs (Loic Dachary) -* doc: update the OS recommendations for newer Ceph releases (`pr#6355 <http://github.com/ceph/ceph/pull/6355>`_, ritz303) -* doc: use 'ceph auth get-or-create' for creating RGW keyring (`pr#6930 <http://github.com/ceph/ceph/pull/6930>`_, Wido den Hollander) -* doc: very basic doc on mstart (`pr#8207 <http://github.com/ceph/ceph/pull/8207>`_, Abhishek Lekshmanan) -* drop envz.h includes (`pr#6285 <http://github.com/ceph/ceph/pull/6285>`_, John Coyle) -* erasure-code: cleanup (Kefu Chai) -* erasure-code: improve tests (Loic Dachary) -* erasure-code: shec: fix recovery bugs (Takanori Nakao, Shotaro Kawaguchi) -* erasure-code: update ISA-L to 2.13 (Yuan Zhou) -* fix FTBFS introduced by d0af316 (`pr#7792 <http://github.com/ceph/ceph/pull/7792>`_, Kefu Chai) -* fix: use right init_flags to finish CephContext (`pr#6549 <http://github.com/ceph/ceph/pull/6549>`_, Yunchuan Wen) -* fs: be more careful about the "mds setmap" command to prevent breakage (`issue#14380 <http://tracker.ceph.com/issues/14380>`_, `pr#7262 <http://github.com/ceph/ceph/pull/7262>`_, Yan, Zheng) -* ghobject_t: use # instead of ! as a separator (`pr#8055 <http://github.com/ceph/ceph/pull/8055>`_, Sage Weil) -* global: do not start two daemons with a single pid-file (`issue#13422 <http://tracker.ceph.com/issues/13422>`_, `pr#7075 <http://github.com/ceph/ceph/pull/7075>`_, shun song) -* global: do not start two daemons with a single pid-file (part 2) (`issue#13422 <http://tracker.ceph.com/issues/13422>`_, `pr#7463 <http://github.com/ceph/ceph/pull/7463>`_, Loic Dachary) -* global/global_init: expand metavariables in setuser_match_path (`issue#15365 <http://tracker.ceph.com/issues/15365>`_, `pr#8433 <http://github.com/ceph/ceph/pull/8433>`_, Sage Weil) -* global/signal_handler: print thread name in signal handler (`pr#8177 <http://github.com/ceph/ceph/pull/8177>`_, Jianpeng Ma) -* gmock: switch to submodule (Danny Al-Gaaf, Loic Dachary) -* hadoop: add terasort test (Noah Watkins) -* helgrind: additional race conditionslibrbd: journal replay should honor inter-event dependencies (`pr#7274 <http://github.com/ceph/ceph/pull/7274>`_, Jason Dillaman) -* helgrind: fix real (and imaginary) race conditions (`issue#14163 <http://tracker.ceph.com/issues/14163>`_, `pr#7208 <http://github.com/ceph/ceph/pull/7208>`_, Jason Dillaman) -* include/encoding: do not try to be clever with list encoding (`pr#7913 <http://github.com/ceph/ceph/pull/7913>`_, Sage Weil) -* init-ceph: do umount when the path exists. (`pr#6866 <http://github.com/ceph/ceph/pull/6866>`_, Xiaoxi Chen) -* init-ceph.in: allow case-insensitive true in `osd crush update on start' (`pr#7943 <http://github.com/ceph/ceph/pull/7943>`_, Eric Cook) -* init-ceph.in: skip ceph-disk if it is not present (`issue#10587 <http://tracker.ceph.com/issues/10587>`_, `pr#7286 <http://github.com/ceph/ceph/pull/7286>`_, Ken Dreyer) -* init-ceph: use getopt to make option processing more flexible (`issue#3015 <http://tracker.ceph.com/issues/3015>`_, `pr#6089 <http://github.com/ceph/ceph/pull/6089>`_, Nathan Cutler) -* init-radosgw: merge with sysv version; fix enumeration (Sage Weil) -* java: fix libcephfs bindings (Noah Watkins) -* journal: async methods to (un)register and update client (`pr#7832 <http://github.com/ceph/ceph/pull/7832>`_, Mykola Golub) -* journal: disconnect watch after watch error (`issue#14168 <http://tracker.ceph.com/issues/14168>`_, `pr#7113 <http://github.com/ceph/ceph/pull/7113>`_, Jason Dillaman) -* journal: fire replay complete event after reading last object (`issue#13924 <http://tracker.ceph.com/issues/13924>`_, `pr#6762 <http://github.com/ceph/ceph/pull/6762>`_, Jason Dillaman) -* journal: fix final result for JournalTrimmer::C_RemoveSet (`pr#8516 <http://github.com/ceph/ceph/pull/8516>`_, runsisi) -* journal: fix race condition between Future and journal shutdown (`issue#15364 <http://tracker.ceph.com/issues/15364>`_, `pr#8477 <http://github.com/ceph/ceph/pull/8477>`_, Jason Dillaman) -* journal: flush commit position on metadata shutdown (`pr#7385 <http://github.com/ceph/ceph/pull/7385>`_, Mykola Golub) -* journal: improve commit position tracking (`pr#7776 <http://github.com/ceph/ceph/pull/7776>`_, Jason Dillaman) -* journal: incremental improvements and fixes (`pr#6552 <http://github.com/ceph/ceph/pull/6552>`_, Mykola Golub) -* journal: prevent race injecting new records into overflowed object (`issue#15202 <http://tracker.ceph.com/issues/15202>`_, `pr#8220 <http://github.com/ceph/ceph/pull/8220>`_, Jason Dillaman) -* journal: reset commit_position_task_ctx pointer after task complete (`pr#7480 <http://github.com/ceph/ceph/pull/7480>`_, Mykola Golub) -* journal: re-use common threads between journalers (`pr#7906 <http://github.com/ceph/ceph/pull/7906>`_, Jason Dillaman) -* journal: support replaying beyond skipped splay objects (`pr#6687 <http://github.com/ceph/ceph/pull/6687>`_, Jason Dillaman) -* krbd: remove deprecated --quiet param from udevadm (`issue#13560 <http://tracker.ceph.com/issues/13560>`_, `pr#6394 <http://github.com/ceph/ceph/pull/6394>`_, Jason Dillaman) -* kv: fix bug in kv key optimization (`pr#6511 <http://github.com/ceph/ceph/pull/6511>`_, Sage Weil) -* kv: implement value_as_ptr() and use it in .get() (`pr#7052 <http://github.com/ceph/ceph/pull/7052>`_, Piotr Dałek) -* kv/KineticStore: fix broken split_key (`pr#6574 <http://github.com/ceph/ceph/pull/6574>`_, Haomai Wang) -* kv: optimize and clean up internal key/value interface (`pr#6312 <http://github.com/ceph/ceph/pull/6312>`_, Piotr Dałek, Sage Weil) -* libcephfs: add pread, pwrite (Jevon Qiao) -* libcephfs,ceph-fuse: cache cleanup (Zheng Yan) -* libcephfs,ceph-fuse: fix request resend on cap reconnect (#10912 Yan, Zheng) -* libcephfs: fix python tests and fix getcwd on missing dir (`pr#7901 <http://github.com/ceph/ceph/pull/7901>`_, John Spray) -* libcephfs: Improve portability by replacing loff_t type usage with off_t (`pr#6301 <http://github.com/ceph/ceph/pull/6301>`_, John Coyle) -* libcephfs: only check file offset on glibc platforms (`pr#6288 <http://github.com/ceph/ceph/pull/6288>`_, John Coyle) -* libcephfs: update LIBCEPHFS_VERSION to indicate the interface was changed (`pr#7551 <http://github.com/ceph/ceph/pull/7551>`_, Jevon Qiao) -* librados: add config observer (Alistair Strachan) -* librados: add c++ style osd/pg command interface (`pr#6893 <http://github.com/ceph/ceph/pull/6893>`_, Yunchuan Wen) -* librados: add FULL_TRY and FULL_FORCE flags for dealing with full clusters or pools (Sage Weil) -* librados: add src_fadvise_flags for copy-from (Jianpeng Ma) -* librados: aix gcc librados port (`pr#6675 <http://github.com/ceph/ceph/pull/6675>`_, Rohan Mars) -* librados: avoid malloc(0) (which can return NULL on some platforms) (`issue#13944 <http://tracker.ceph.com/issues/13944>`_, `pr#6779 <http://github.com/ceph/ceph/pull/6779>`_, Dan Mick) -* librados: cancel aio notification linger op upon completion (`pr#8102 <http://github.com/ceph/ceph/pull/8102>`_, Jason Dillaman) -* librados: check connection state in rados_monitor_log (`issue#14499 <http://tracker.ceph.com/issues/14499>`_, `pr#7350 <http://github.com/ceph/ceph/pull/7350>`_, David Disseldorp) -* librados: clean up Objecter.h (`pr#6731 <http://github.com/ceph/ceph/pull/6731>`_, Jie Wang) -* librados: define C++ flags from C constants (Josh Durgin) -* librados: detect laggy ops with objecter_timeout, not osd_timeout (`pr#7629 <http://github.com/ceph/ceph/pull/7629>`_, Greg Farnum) -* librados: do cleanup (`pr#6488 <http://github.com/ceph/ceph/pull/6488>`_, xie xingguo) -* librados: do not clear handle for aio_watch() (`pr#7771 <http://github.com/ceph/ceph/pull/7771>`_, xie xingguo) -* librados: fadvise flags per op (Jianpeng Ma) -* librados: fix examples/librados/Makefile error. (`pr#6320 <http://github.com/ceph/ceph/pull/6320>`_, You Ji) -* librados: fix last_force_resent handling (#11026 Jianpeng Ma) -* librados: fix memory leak from C_TwoContexts (Xiong Yiliang) -* librados: fix notify completion race (#13114 Sage Weil) -* librados: fix pool alignment API overflow issue (`issue#13715 <http://tracker.ceph.com/issues/13715>`_, `pr#6489 <http://github.com/ceph/ceph/pull/6489>`_, xie xingguo) -* librados: fix potential null pointer access when do pool_snap_list (`issue#13639 <http://tracker.ceph.com/issues/13639>`_, `pr#6422 <http://github.com/ceph/ceph/pull/6422>`_, xie xingguo) -* librados: fix PromoteOn2ndRead test for EC (`pr#6373 <http://github.com/ceph/ceph/pull/6373>`_, Sage Weil) -* librados: fix rare race where pool op callback may hang forever (`issue#13642 <http://tracker.ceph.com/issues/13642>`_, `pr#6426 <http://github.com/ceph/ceph/pull/6426>`_, xie xingguo) -* librados: fix several flaws introduced by the enumeration_objects API (`issue#14299 <http://tracker.ceph.com/issues/14299>`_, `issue#14301 <http://tracker.ceph.com/issues/14301>`_, `issue#14300 <http://tracker.ceph.com/issues/14300>`_, `pr#7156 <http://github.com/ceph/ceph/pull/7156>`_, xie xingguo) -* librados: fix striper when stripe_count = 1 and stripe_unit != object_size (#11120 Yan, Zheng) -* librados: fix test failure with new aio watch/unwatch API (`pr#7824 <http://github.com/ceph/ceph/pull/7824>`_, Jason Dillaman) -* librados: implement async watch/unwatch (`pr#7649 <http://github.com/ceph/ceph/pull/7649>`_, Haomai Wang) -* librados: include/rados/librados.h: fix typo (`pr#6741 <http://github.com/ceph/ceph/pull/6741>`_, Nathan Cutler) -* librados: init crush_location from config file. (`issue#13473 <http://tracker.ceph.com/issues/13473>`_, `pr#6243 <http://github.com/ceph/ceph/pull/6243>`_, Wei Luo) -* librados, libcephfs: randomize client nonces (Josh Durgin) -* librados: mix lock cycle (un)registering asok commands (`pr#7581 <http://github.com/ceph/ceph/pull/7581>`_, John Spray) -* librados: move to c++11 concurrency types (`pr#5931 <http://github.com/ceph/ceph/pull/5931>`_, Adam C. Emerson) -* librados: new style (sharded) object listing (`pr#6405 <http://github.com/ceph/ceph/pull/6405>`_, John Spray, Sage Weil) -* librados: op perf counters (John Spray) -* librados: potential null pointer access in list_(n)objects (`issue#13822 <http://tracker.ceph.com/issues/13822>`_, `pr#6639 <http://github.com/ceph/ceph/pull/6639>`_, xie xingguo) -* librados: pybind: fix binary omap values (Robin H. Johnson) -* librados: pybind: fix write() method return code (Javier Guerra) -* librados: race condition on aio_notify completion handling (`pr#7864 <http://github.com/ceph/ceph/pull/7864>`_, Jason Dillaman) -* librados: remove duplicate definitions for rados pool_stat_t and cluster_stat_t (`pr#7330 <http://github.com/ceph/ceph/pull/7330>`_, Igor Fedotov) -* librados: respect default_crush_ruleset on pool_create (#11640 Yuan Zhou) -* librados: Revert "rados: Add new field flags for ceph_osd_op.copy_get." (`pr#8486 <http://github.com/ceph/ceph/pull/8486>`_, Sage Weil) -* librados: shutdown finisher in a more graceful way (`pr#7519 <http://github.com/ceph/ceph/pull/7519>`_, xie xingguo) -* librados: Solaris port (`pr#6416 <http://github.com/ceph/ceph/pull/6416>`_, Rohan Mars) -* librados: stat2 with higher time precision (`pr#7915 <http://github.com/ceph/ceph/pull/7915>`_, Yehuda Sadeh, Matt Benjamin) -* librados: Striper: Fix incorrect push_front -> append_zero change (`pr#7578 <http://github.com/ceph/ceph/pull/7578>`_, Haomai Wang) -* libradosstriper: fix leak (Danny Al-Gaaf) -* librados_test_stub: protect against notify/unwatch race (`pr#7540 <http://github.com/ceph/ceph/pull/7540>`_, Jason Dillaman) -* librados: wrongly passed in argument for stat command (`issue#13703 <http://tracker.ceph.com/issues/13703>`_, `pr#6476 <http://github.com/ceph/ceph/pull/6476>`_, xie xingguo) -* librbd: add const for single-client-only features (Josh Durgin) -* librbd: add deep-flatten operation (Jason Dillaman) -* librbd: add purge_on_error cache behavior (Jianpeng Ma) -* librbd: allocate new journal tag after acquiring exclusive lock (`pr#7884 <http://github.com/ceph/ceph/pull/7884>`_, Jason Dillaman) -* librbd: allow additional metadata to be stored with the image (Haomai Wang) -* librbd: API: async open and close (`issue#14264 <http://tracker.ceph.com/issues/14264>`_, `pr#7259 <http://github.com/ceph/ceph/pull/7259>`_, Mykola Golub) -* librbd: automatically flush IO after blocking write operations (`issue#13913 <http://tracker.ceph.com/issues/13913>`_, `pr#6742 <http://github.com/ceph/ceph/pull/6742>`_, Jason Dillaman) -* librbd: avoid blocking aio API methods (#11056 Jason Dillaman) -* librbd: Avoid create two threads per image (`pr#7400 <http://github.com/ceph/ceph/pull/7400>`_, Haomai Wang) -* librbd: avoid throwing error if mirroring is unsupported (`pr#8417 <http://github.com/ceph/ceph/pull/8417>`_, Jason Dillaman) -* librbd: better handling for dup flatten requests (#11370 Jason Dillaman) -* librbd: better handling of exclusive lock transition period (`pr#7204 <http://github.com/ceph/ceph/pull/7204>`_, Jason Dillaman) -* librbd: block maintenance ops until after journal is ready (`issue#14510 <http://tracker.ceph.com/issues/14510>`_, `pr#7382 <http://github.com/ceph/ceph/pull/7382>`_, Jason Dillaman) -* librbd: block read requests until journal replayed (`pr#7627 <http://github.com/ceph/ceph/pull/7627>`_, Jason Dillaman) -* librbd: cancel in-flight ops on watch error (#11363 Jason Dillaman) -* librbd: check for presence of journal before attempting to remove (`issue#13912 <http://tracker.ceph.com/issues/13912>`_, `pr#6737 <http://github.com/ceph/ceph/pull/6737>`_, Jason Dillaman) -* librbd: clear error when older OSD doesn't support image flags (`issue#14122 <http://tracker.ceph.com/issues/14122>`_, `pr#7035 <http://github.com/ceph/ceph/pull/7035>`_, Jason Dillaman) -* librbd: correct include guard in RenameRequest.h (`pr#7143 <http://github.com/ceph/ceph/pull/7143>`_, Jason Dillaman) -* librbd: correct issues discovered during teuthology testing (`issue#14108 <http://tracker.ceph.com/issues/14108>`_, `issue#14107 <http://tracker.ceph.com/issues/14107>`_, `pr#6974 <http://github.com/ceph/ceph/pull/6974>`_, Jason Dillaman) -* librbd: correct issues discovered via valgrind memcheck (`pr#8132 <http://github.com/ceph/ceph/pull/8132>`_, Jason Dillaman) -* librbd: correct issues discovered when cache is disabled (`issue#14123 <http://tracker.ceph.com/issues/14123>`_, `pr#6979 <http://github.com/ceph/ceph/pull/6979>`_, Jason Dillaman) -* librbd: correct race conditions discovered during unit testing (`issue#14060 <http://tracker.ceph.com/issues/14060>`_, `pr#6923 <http://github.com/ceph/ceph/pull/6923>`_, Jason Dillaman) -* librbd: deadlock while attempting to flush AIO requests (`issue#13726 <http://tracker.ceph.com/issues/13726>`_, `pr#6508 <http://github.com/ceph/ceph/pull/6508>`_, Jason Dillaman) -* librbd: default new images to format 2 (#11348 Jason Dillaman) -* librbd: differentiate journal replay flush vs shut down (`pr#7698 <http://github.com/ceph/ceph/pull/7698>`_, Jason Dillaman) -* librbd: disable copy-on-read when not exclusive lock owner (`issue#14167 <http://tracker.ceph.com/issues/14167>`_, `pr#7129 <http://github.com/ceph/ceph/pull/7129>`_, Jason Dillaman) -* librbd: disable image mirroring when image is removed (`issue#15265 <http://tracker.ceph.com/issues/15265>`_, `pr#8375 <http://github.com/ceph/ceph/pull/8375>`_, Ricardo Dias) -* librbd: disallow unsafe rbd_op_threads values (`issue#15034 <http://tracker.ceph.com/issues/15034>`_, `pr#8459 <http://github.com/ceph/ceph/pull/8459>`_, Josh Durgin) -* librbd: do not ignore self-managed snapshot release result (`issue#14170 <http://tracker.ceph.com/issues/14170>`_, `pr#7043 <http://github.com/ceph/ceph/pull/7043>`_, Jason Dillaman) -* librbd: enable/disable image mirroring automatically for pool mode (`issue#15143 <http://tracker.ceph.com/issues/15143>`_, `pr#8204 <http://github.com/ceph/ceph/pull/8204>`_, Ricardo Dias) -* librbd: ensure copy-on-read requests are complete prior to closing parent image (`pr#6740 <http://github.com/ceph/ceph/pull/6740>`_, Jason Dillaman) -* librbd: ensure librados callbacks are flushed prior to destroying (`issue#14092 <http://tracker.ceph.com/issues/14092>`_, `pr#7040 <http://github.com/ceph/ceph/pull/7040>`_, Jason Dillaman) -* librbd: exit if parent's snap is gone during clone (`issue#14118 <http://tracker.ceph.com/issues/14118>`_, `pr#6968 <http://github.com/ceph/ceph/pull/6968>`_, xie xingguo) -* librbd: fadvise for copy, export, import (Jianpeng Ma) -* librbd: fast diff implementation that leverages object map (Jason Dillaman) -* librbd: fix enable objectmap feature issue (`issue#13558 <http://tracker.ceph.com/issues/13558>`_, `pr#6339 <http://github.com/ceph/ceph/pull/6339>`_, xinxin shu) -* librbd: fix fast diff bugs (#11553 Jason Dillaman) -* librbd: fix image format detection (Zhiqiang Wang) -* librbd: fix internal handling of dynamic feature updates (`pr#7299 <http://github.com/ceph/ceph/pull/7299>`_, Jason Dillaman) -* librbd: fix journal iohint (`pr#6917 <http://github.com/ceph/ceph/pull/6917>`_, Jianpeng Ma) -* librbd: fix known test case race condition failures (`issue#13969 <http://tracker.ceph.com/issues/13969>`_, `pr#6800 <http://github.com/ceph/ceph/pull/6800>`_, Jason Dillaman) -* librbd: fix lock ordering issue (#11577 Jason Dillaman) -* librbd: fix merge-diff for >2GB diff-files (`issue#14030 <http://tracker.ceph.com/issues/14030>`_, `pr#6889 <http://github.com/ceph/ceph/pull/6889>`_, Yunchuan Wen) -* librbd: fix potential memory leak (`issue#14332 <http://tracker.ceph.com/issues/14332>`_, `issue#14333 <http://tracker.ceph.com/issues/14333>`_, `pr#7174 <http://github.com/ceph/ceph/pull/7174>`_, xie xingguo) -* librbd: fix reads larger than the cache size (Lu Shi) -* librbd: fix snap_exists API return code overflow (`issue#14129 <http://tracker.ceph.com/issues/14129>`_, `pr#6986 <http://github.com/ceph/ceph/pull/6986>`_, xie xingguo) -* librbd: fix snapshot creation when other snap is active (#11475 Jason Dillaman) -* librbd: fix state machine race conditions during shut down (`pr#7761 <http://github.com/ceph/ceph/pull/7761>`_, Jason Dillaman) -* librbd: fix test case race condition for journaling ops (`pr#6877 <http://github.com/ceph/ceph/pull/6877>`_, Jason Dillaman) -* librbd: fix tracepoint parameter in diff_iterate (`pr#6892 <http://github.com/ceph/ceph/pull/6892>`_, Yunchuan Wen) -* librbd: flatten/copyup fixes (Jason Dillaman) -* librbd: flush and invalidate cache via admin socket (`issue#2468 <http://tracker.ceph.com/issues/2468>`_, `pr#6453 <http://github.com/ceph/ceph/pull/6453>`_, Mykola Golub) -* librbd: handle NOCACHE fadvise flag (Jinapeng Ma) -* librbd: handle unregistering the image watcher when disconnected (`pr#8094 <http://github.com/ceph/ceph/pull/8094>`_, Jason Dillaman) -* librbd: image refresh code paths converted to async state machines (`pr#6859 <http://github.com/ceph/ceph/pull/6859>`_, Jason Dillaman) -* librbd: include missing header for bool type (`pr#6798 <http://github.com/ceph/ceph/pull/6798>`_, Mykola Golub) -* librbd: initial collection of state machine unit tests (`pr#6703 <http://github.com/ceph/ceph/pull/6703>`_, Jason Dillaman) -* librbd: integrate journaling for maintenance operations (`pr#6625 <http://github.com/ceph/ceph/pull/6625>`_, Jason Dillaman) -* librbd: integrate journaling support for IO operations (`pr#6541 <http://github.com/ceph/ceph/pull/6541>`_, Jason Dillaman) -* librbd: integrate journal replay with fsx testing (`pr#7583 <http://github.com/ceph/ceph/pull/7583>`_, Jason Dillaman) -* librbd: journal framework for tracking exclusive lock transitions (`issue#13298 <http://tracker.ceph.com/issues/13298>`_, `pr#7529 <http://github.com/ceph/ceph/pull/7529>`_, Jason Dillaman) -* librbd: journaling-related lock dependency cleanup (`pr#6777 <http://github.com/ceph/ceph/pull/6777>`_, Jason Dillaman) -* librbd: journal replay needs to support re-executing maintenance ops (`issue#14822 <http://tracker.ceph.com/issues/14822>`_, `pr#7785 <http://github.com/ceph/ceph/pull/7785>`_, Jason Dillaman) -* librbd: journal replay should honor inter-event dependencies (`pr#7019 <http://github.com/ceph/ceph/pull/7019>`_, Jason Dillaman) -* librbd: journal shut down flush race condition (`issue#14434 <http://tracker.ceph.com/issues/14434>`_, `pr#7302 <http://github.com/ceph/ceph/pull/7302>`_, Jason Dillaman) -* librbd: lockdep, helgrind validation (Jason Dillaman, Josh Durgin) -* librbd: metadata filter fixes (Haomai Wang) -* librbd: misc aio fixes (#5488 Jason Dillaman) -* librbd: misc rbd fixes (#11478 #11113 #11342 #11380 Jason Dillaman, Zhiqiang Wang) -* librbd: new diff_iterate2 API (Jason Dillaman) -* librbd: not necessary to hold owner_lock while releasing snap id (`issue#13914 <http://tracker.ceph.com/issues/13914>`_, `pr#6736 <http://github.com/ceph/ceph/pull/6736>`_, Jason Dillaman) -* librbd: object map rebuild support (Jason Dillaman) -* librbd: only send signal when AIO completions queue empty (`pr#6729 <http://github.com/ceph/ceph/pull/6729>`_, Jianpeng Ma) -* librbd: only update image flags while hold exclusive lock (#11791 Jason Dillaman) -* librbd: optionally disable allocation hint (Haomai Wang) -* librbd: optionally validate new RBD pools for snapshot support (`issue#13633 <http://tracker.ceph.com/issues/13633>`_, `pr#6925 <http://github.com/ceph/ceph/pull/6925>`_, Jason Dillaman) -* librbd: partial revert of commit 9b0e359 (`issue#13969 <http://tracker.ceph.com/issues/13969>`_, `pr#6789 <http://github.com/ceph/ceph/pull/6789>`_, Jason Dillaman) -* librbd: perf counters might not be initialized on error (`issue#13740 <http://tracker.ceph.com/issues/13740>`_, `pr#6523 <http://github.com/ceph/ceph/pull/6523>`_, Jason Dillaman) -* librbd: perf section name: use hyphen to separate components (`issue#13719 <http://tracker.ceph.com/issues/13719>`_, `pr#6516 <http://github.com/ceph/ceph/pull/6516>`_, Mykola Golub) -* librbd: prevent race between resize requests (#12664 Jason Dillaman) -* librbd: properly handle replay of snap remove RPC message (`issue#14164 <http://tracker.ceph.com/issues/14164>`_, `pr#7042 <http://github.com/ceph/ceph/pull/7042>`_, Jason Dillaman) -* librbd: readahead fixes (Zhiqiang Wang) -* librbd: reduce mem copies to user-buffer during read (`pr#7548 <http://github.com/ceph/ceph/pull/7548>`_, Jianpeng Ma) -* librbd: reduce verbosity of common error condition logging (`issue#14234 <http://tracker.ceph.com/issues/14234>`_, `pr#7114 <http://github.com/ceph/ceph/pull/7114>`_, Jason Dillaman) -* librbd: refresh image if required before replaying journal ops (`issue#14908 <http://tracker.ceph.com/issues/14908>`_, `pr#7978 <http://github.com/ceph/ceph/pull/7978>`_, Jason Dillaman) -* librbd: remove canceled tasks from timer thread (`issue#14476 <http://tracker.ceph.com/issues/14476>`_, `pr#7329 <http://github.com/ceph/ceph/pull/7329>`_, Douglas Fuller) -* librbd: remove duplicate read_only test in librbd::async_flatten (`pr#5856 <http://github.com/ceph/ceph/pull/5856>`_, runsisi) -* librbd: remove last synchronous librados calls from open/close state machine (`pr#7839 <http://github.com/ceph/ceph/pull/7839>`_, Jason Dillaman) -* librbd: replaying a journal op post-refresh requires locking (`pr#8028 <http://github.com/ceph/ceph/pull/8028>`_, Jason Dillaman) -* librbd: resize should only update image size within header (`issue#13674 <http://tracker.ceph.com/issues/13674>`_, `pr#6447 <http://github.com/ceph/ceph/pull/6447>`_, Jason Dillaman) -* librbd: retrieve image name when opening by id (`pr#7736 <http://github.com/ceph/ceph/pull/7736>`_, Mykola Golub) -* librbd: return error if we fail to delete object_map head object (`issue#14098 <http://tracker.ceph.com/issues/14098>`_, `pr#6958 <http://github.com/ceph/ceph/pull/6958>`_, xie xingguo) -* librbd: return result code from close (#12069 Jason Dillaman) -* librbd: Revert "librbd: use task finisher per CephContext" (`issue#14780 <http://tracker.ceph.com/issues/14780>`_, `pr#7667 <http://github.com/ceph/ceph/pull/7667>`_, Josh Durgin) -* librbd: send notifications for mirroring status updates (`pr#8355 <http://github.com/ceph/ceph/pull/8355>`_, Jason Dillaman) -* librbd: several race conditions discovered under single CPU environment (`pr#7653 <http://github.com/ceph/ceph/pull/7653>`_, Jason Dillaman) -* librbd: simplify IO method signatures for 32bit environments (`pr#6700 <http://github.com/ceph/ceph/pull/6700>`_, Jason Dillaman) -* librbd: small fixes for error messages and readahead counter (`issue#14127 <http://tracker.ceph.com/issues/14127>`_, `pr#6983 <http://github.com/ceph/ceph/pull/6983>`_, xie xingguo) -* librbd: start perf counters after id is initialized (`issue#13720 <http://tracker.ceph.com/issues/13720>`_, `pr#6494 <http://github.com/ceph/ceph/pull/6494>`_, Mykola Golub) -* librbd: store metadata, including config options, in image (Haomai Wang) -* librbd: support eventfd for AIO completion notifications (`pr#5465 <http://github.com/ceph/ceph/pull/5465>`_, Haomai Wang) -* librbd: tolerate old osds when getting image metadata (#11549 Jason Dillaman) -* librbd: truncate does not need to mark the object as existing in the object map (`issue#14789 <http://tracker.ceph.com/issues/14789>`_, `pr#7772 <http://github.com/ceph/ceph/pull/7772>`_, xinxin shu) -* librbd: uninitialized state in snap remove state machine (`pr#6982 <http://github.com/ceph/ceph/pull/6982>`_, Jason Dillaman) -* librbd: update of mirror pool mode and mirror peer handling (`pr#7718 <http://github.com/ceph/ceph/pull/7718>`_, Jason Dillaman) -* librbd: use async librados notifications (`pr#7668 <http://github.com/ceph/ceph/pull/7668>`_, Jason Dillaman) -* librbd: use write_full when possible (Zhiqiang Wang) -* log: do not repeat errors to stderr (`issue#14616 <http://tracker.ceph.com/issues/14616>`_, `pr#7983 <http://github.com/ceph/ceph/pull/7983>`_, Sage Weil) -* log: fix data corruption race resulting from log rotation (#12465 Samuel Just) -* log: fix stack overflow when flushing large log lines (`issue#14707 <http://tracker.ceph.com/issues/14707>`_, `pr#7599 <http://github.com/ceph/ceph/pull/7599>`_, Igor Fedotov) -* logrotate.d: prefer service over invoke-rc.d (#11330 Win Hierman, Sage Weil) -* log: segv in a portable way (`issue#14856 <http://tracker.ceph.com/issues/14856>`_, `pr#7790 <http://github.com/ceph/ceph/pull/7790>`_, Kefu Chai) -* log: use delete[] (`pr#7904 <http://github.com/ceph/ceph/pull/7904>`_, Sage Weil) -* mailmap: add UMCloud affiliation (`pr#6820 <http://github.com/ceph/ceph/pull/6820>`_, Jiaying Ren) -* mailmap for 10.0.4 (`pr#7932 <http://github.com/ceph/ceph/pull/7932>`_, Abhishek Lekshmanan) -* mailmap: hange organization for Dongmao Zhang (`pr#7173 <http://github.com/ceph/ceph/pull/7173>`_, Dongmao Zhang) -* mailmap: Igor Podoski affiliation (`pr#7219 <http://github.com/ceph/ceph/pull/7219>`_, Igor Podoski) -* mailmap: Jewel updates (`pr#6750 <http://github.com/ceph/ceph/pull/6750>`_, Abhishek Lekshmanan) -* mailmap: modify member info (`pr#6468 <http://github.com/ceph/ceph/pull/6468>`_, Xiaowei Chen) -* mailmap: revise organization (`pr#6519 <http://github.com/ceph/ceph/pull/6519>`_, Li Wang) -* mailmap: Ubuntu Kylin name changed to Kylin Cloud (`pr#6532 <http://github.com/ceph/ceph/pull/6532>`_, Loic Dachary) -* mailmap: update .organizationmap (`pr#6565 <http://github.com/ceph/ceph/pull/6565>`_, chenji-kael) -* mailmap update (`pr#7210 <http://github.com/ceph/ceph/pull/7210>`_, M Ranga Swami Reddy) -* mailmap update (`pr#8522 <http://github.com/ceph/ceph/pull/8522>`_, M Ranga Swami Reddy) -* mailmap: updates for infernalis. (`pr#6495 <http://github.com/ceph/ceph/pull/6495>`_, Yann Dupont) -* mailmap: updates (`pr#6258 <http://github.com/ceph/ceph/pull/6258>`_, M Ranga Swami Reddy) -* mailmap: updates (`pr#6594 <http://github.com/ceph/ceph/pull/6594>`_, chenji-kael) -* mailmap updates (`pr#6992 <http://github.com/ceph/ceph/pull/6992>`_, Loic Dachary) -* mailmap updates (`pr#7189 <http://github.com/ceph/ceph/pull/7189>`_, Loic Dachary) -* mailmap updates (`pr#7528 <http://github.com/ceph/ceph/pull/7528>`_, Yann Dupont) -* mailmap updates (`pr#8256 <http://github.com/ceph/ceph/pull/8256>`_, Loic Dachary) -* mailmap: Xie Xingguo affiliation (`pr#6409 <http://github.com/ceph/ceph/pull/6409>`_, Loic Dachary) -* Makefile-env.am: set a default for CEPH_BUILD_VIRTUALENV (part 2) (`pr#8320 <http://github.com/ceph/ceph/pull/8320>`_, Loic Dachary) -* makefile: fix rbdmap manpage (`pr#8310 <http://github.com/ceph/ceph/pull/8310>`_, Kefu Chai) -* makefile: remove libedit from libclient.la (`pr#7284 <http://github.com/ceph/ceph/pull/7284>`_, Kefu Chai) -* makefiles: remove bz2-dev from dependencies (`issue#13981 <http://tracker.ceph.com/issues/13981>`_, `pr#6939 <http://github.com/ceph/ceph/pull/6939>`_, Piotr Dałek) -* man/8/ceph-disk: fix formatting issue (`pr#8003 <http://github.com/ceph/ceph/pull/8003>`_, Sage Weil) -* man/8/ceph-disk: fix formatting issue (`pr#8012 <http://github.com/ceph/ceph/pull/8012>`_, Sage Weil) -* man: document listwatchers cmd in "rados" manpage (`pr#7021 <http://github.com/ceph/ceph/pull/7021>`_, Kefu Chai) -* mdsa: A few more snapshot fixes, mostly around snapshotted inode/dentry tracking (`pr#7798 <http://github.com/ceph/ceph/pull/7798>`_, Yan, Zheng) -* mds: Add cmapv to ESessions default constructor initializer list (`pr#8403 <http://github.com/ceph/ceph/pull/8403>`_, John Coyle) -* mds: add 'damaged' state to MDSMap (John Spray) -* mds: add nicknames for perfcounters (John Spray) -* mds: add 'p' flag in auth caps to control setting pool in layout (`pr#6567 <http://github.com/ceph/ceph/pull/6567>`_, John Spray) -* mds: advance clientreplay when replying (`issue#14357 <http://tracker.ceph.com/issues/14357>`_, `pr#7216 <http://github.com/ceph/ceph/pull/7216>`_, John Spray) -* mds: allow client to request caps when opening file (`issue#14360 <http://tracker.ceph.com/issues/14360>`_, `pr#7952 <http://github.com/ceph/ceph/pull/7952>`_, Yan, Zheng) -* mds: avoid emitting cap warnigns before evicting session (John Spray) -* mds: avoid getting stuck in XLOCKDONE (#11254 Yan, Zheng) -* mds, client: add namespace to file_layout_t (previously ceph_file_layout) (`pr#7098 <http://github.com/ceph/ceph/pull/7098>`_, Yan, Zheng, Sage Weil) -* mds, client: fix locking around handle_conf_change (`issue#14365 <http://tracker.ceph.com/issues/14365>`_, `issue#14374 <http://tracker.ceph.com/issues/14374>`_, `pr#7312 <http://github.com/ceph/ceph/pull/7312>`_, John Spray) -* mds: disable problematic rstat propagation into snap parents (Yan, Zheng) -* mds: do not add snapped items to bloom filter (Yan, Zheng) -* mds: don't double-shutdown the timer when suiciding (`issue#14697 <http://tracker.ceph.com/issues/14697>`_, `pr#7616 <http://github.com/ceph/ceph/pull/7616>`_, Greg Farnum) -* mds: expose frags via asok (John Spray) -* mds: expose state of recovery to status ASOK command (`issue#14146 <http://tracker.ceph.com/issues/14146>`_, `pr#7068 <http://github.com/ceph/ceph/pull/7068>`_, Yan, Zheng) -* mds: Extend the existing pool access checking to include specific RADOS namespacse. (`pr#8444 <https://github.com/ceph/ceph/pull/8444>`_, Yan, Zheng) -* mds: filelock deadlock (`pr#7713 <http://github.com/ceph/ceph/pull/7713>`_, Yan, Zheng) -* mds: fix client capabilities during reconnect (client.XXXX isn't responding to mclientcaps(revoke)) (`issue#11482 <http://tracker.ceph.com/issues/11482>`_, `pr#6432 <http://github.com/ceph/ceph/pull/6432>`_, Yan, Zheng) -* mds: fix client cap/message replay order on restart (`issue#14254 <http://tracker.ceph.com/issues/14254>`_, `issue#13546 <http://tracker.ceph.com/issues/13546>`_, `pr#7199 <http://github.com/ceph/ceph/pull/7199>`_, Yan, Zheng) -* mds: fix expected holes in journal objects (#13167 Yan, Zheng) -* mds: fix file_layout_t legacy encoding snafu (`pr#8455 <http://github.com/ceph/ceph/pull/8455>`_, Sage Weil) -* mds: fix fsmap decode (`pr#8063 <http://github.com/ceph/ceph/pull/8063>`_, Greg Farnum) -* mds: fix FSMap upgrade with daemons in the map (`pr#8073 <http://github.com/ceph/ceph/pull/8073>`_, John Spray, Greg Farnum) -* mds: fix handling for missing mydir dirfrag (#11641 John Spray) -* mds: fix inode_t::compare() (`issue#15038 <http://tracker.ceph.com/issues/15038>`_, `pr#8014 <http://github.com/ceph/ceph/pull/8014>`_, Yan, Zheng) -* mds: fix integer truncateion on large client ids (Henry Chang) -* mds: fix mydir replica issue with shutdown (#10743 John Spray) -* mds: fix out-of-order messages (#11258 Yan, Zheng) -* mds: fix rejoin (Yan, Zheng) -* mds: fix scrub_path (`pr#6684 <http://github.com/ceph/ceph/pull/6684>`_, John Spray) -* mds: fix setting entire file layout in one setxattr (John Spray) -* mds: fix setvxattr (broken in a536d114) (`issue#14029 <http://tracker.ceph.com/issues/14029>`_, `pr#6941 <http://github.com/ceph/ceph/pull/6941>`_, John Spray) -* mds: fix shutdown (John Spray) -* mds: fix shutdown with strays (#10744 John Spray) -* mds: fix SnapServer crash on deleted pool (John Spray) -* mds: fix snapshot bugs (Yan, Zheng) -* mds: fix standby replay thread creation (`issue#14144 <http://tracker.ceph.com/issues/14144>`_, `pr#7132 <http://github.com/ceph/ceph/pull/7132>`_, John Spray) -* mds: fix stray handling (John Spray) -* mds: fix stray purging in 'stripe_count > 1' case (`issue#15050 <http://tracker.ceph.com/issues/15050>`_, `pr#8040 <http://github.com/ceph/ceph/pull/8040>`_, Yan, Zheng) -* mds: fix stray reintegration (Yan, Zheng) -* mds: fix suicide beacon (John Spray) -* mds: flush immediately in do_open_truncate (#11011 John Spray) -* mds: function parameter 'df' should be passed by reference (`pr#7490 <http://github.com/ceph/ceph/pull/7490>`_, Na Xie) -* mds: handle misc corruption issues (John Spray) -* mds: implement snapshot rename (`pr#5645 <http://github.com/ceph/ceph/pull/5645>`_, xinxin shu) -* mds: improve dump methods (John Spray) -* mds: judgment added to avoid the risk of visiting the NULL pointer (`pr#7358 <http://github.com/ceph/ceph/pull/7358>`_, Kongming Wu) -* mds: many fixes (Yan, Zheng, John Spray, Greg Farnum) -* mds: many snapshot and stray fixes (Yan, Zheng) -* mds: messages/MOSDOp: cast in assert to eliminate warnings (`issue#13625 <http://tracker.ceph.com/issues/13625>`_, `pr#6414 <http://github.com/ceph/ceph/pull/6414>`_, David Zafman) -* mds: misc fixes (Jianpeng Ma, Dan van der Ster, Zhang Zhi) -* mds: misc journal cleanups and fixes (#10368 John Spray) -* mds: misc repair improvements (John Spray) -* mds: misc snap fixes (Zheng Yan) -* mds: misc snapshot fixes (Yan, Zheng) -* mds: Multi-filesystem support (`issue#14952 <http://tracker.ceph.com/issues/14952>`_, `pr#6953 <http://github.com/ceph/ceph/pull/6953>`_, John Spray, Sage Weil) -* mds: new filtered MDS tell commands for sessions (`pr#6180 <http://github.com/ceph/ceph/pull/6180>`_, John Spray) -* mds: new SessionMap storage using omap (#10649 John Spray) -* mds: persist completed_requests reliably (#11048 John Spray) -* mds: properly set STATE_STRAY/STATE_ORPHAN for stray dentry/inode (`issue#13777 <http://tracker.ceph.com/issues/13777>`_, `pr#6553 <http://github.com/ceph/ceph/pull/6553>`_, Yan, Zheng) -* mds: Protect a number of unstable/experimental features behind durable flags (`pr#8383 <https://github.com/ceph/ceph/pull/8383>`_, Greg Farnum) -* mds: reduce memory consumption (Yan, Zheng) -* mds: repair the command option "--hot-standby" (`pr#6454 <http://github.com/ceph/ceph/pull/6454>`_, Wei Feng) -* mds: respawn instead of suicide on blacklist (John Spray) -* mds: ScrubStack and "tag path" command (`pr#5662 <http://github.com/ceph/ceph/pull/5662>`_, Yan, Zheng, John Spray, Greg Farnum) -* mds: separate safe_pos in Journaler (#10368 John Spray) -* mds/Session: use projected parent for auth path check (`issue#13364 <http://tracker.ceph.com/issues/13364>`_, `pr#6200 <http://github.com/ceph/ceph/pull/6200>`_, Sage Weil) -* mds: snapshot rename support (#3645 Yan, Zheng) -* mds: store layout on header object (#4161 John Spray) -* mds: tear down connections from `tell` commands (`issue#14048 <http://tracker.ceph.com/issues/14048>`_, `pr#6933 <http://github.com/ceph/ceph/pull/6933>`_, John Spray) -* mds: throttle purge stray operations (#10390 John Spray) -* mds: tolerate clock jumping backwards (#11053 Yan, Zheng) -* mds: warn when clients fail to advance oldest_client_tid (#10657 Yan, Zheng) -* mds: we should wait messenger when MDSDaemon suicide (`pr#6996 <http://github.com/ceph/ceph/pull/6996>`_, Wei Feng) -* messages/MOSDOp: clear reqid inc for v6 encoding (`issue#15230 <http://tracker.ceph.com/issues/15230>`_, `pr#8299 <http://github.com/ceph/ceph/pull/8299>`_, Sage Weil) -* Minor fixes around data scan in some scenarios (`pr#8115 <http://github.com/ceph/ceph/pull/8115>`_, Yan, Zheng) -* mirrors: Change contact e-mail address for se.ceph.com (`pr#8007 <http://github.com/ceph/ceph/pull/8007>`_, Wido den Hollander) -* mirrors: Updated scripts and documentation for mirrors (`pr#7847 <http://github.com/ceph/ceph/pull/7847>`_, Wido den Hollander) -* misc cleanups and fixes (Danny Al-Gaaf) -* misc coverity fixes (Danny Al-Gaaf) -* misc performance and cleanup (Nathan Cutler, Xinxin Shu) -* misc: use make_shared while creating shared_ptr (`pr#7769 <http://github.com/ceph/ceph/pull/7769>`_, Somnath Roy) -* mon: add an independent option for max election time (`pr#7245 <http://github.com/ceph/ceph/pull/7245>`_, Sangdi Xu) -* mon: add cache over MonitorDBStore (Kefu Chai) -* mon: add 'mon_metadata <id>' command (Kefu Chai) -* mon: add 'node ls ...' command (Kefu Chai) -* mon: add NOFORWARD, OBSOLETE, DEPRECATE flags for mon commands (Joao Eduardo Luis) -* mon: add `osd blacklist clear` (`pr#6945 <http://github.com/ceph/ceph/pull/6945>`_, John Spray) -* mon: add PG count to 'ceph osd df' output (Michal Jarzabek) -* mon: add RAW USED column to ceph df detail (`pr#7087 <http://github.com/ceph/ceph/pull/7087>`_, Ruifeng Yang) -* mon: block 'ceph osd pg-temp ...' if pg_temp update is already pending (`pr#6704 <http://github.com/ceph/ceph/pull/6704>`_, Sage Weil) -* mon: 'ceph osd metadata' can dump all osds (Haomai Wang) -* mon: clean up, reorg some mon commands (Joao Eduardo Luis) -* mon: cleanup set-quota error msg (`pr#7371 <http://github.com/ceph/ceph/pull/7371>`_, Abhishek Lekshmanan) -* monclient: avoid key renew storm on clock skew (`issue#12065 <http://tracker.ceph.com/issues/12065>`_, `pr#8258 <http://github.com/ceph/ceph/pull/8258>`_, Alexey Sheplyakov) -* monclient: flush_log (John Spray) -* mon: compact full epochs also (`issue#14537 <http://tracker.ceph.com/issues/14537>`_, `pr#7396 <http://github.com/ceph/ceph/pull/7396>`_, Kefu Chai) -* mon: consider pool size when creating pool (`issue#14509 <http://tracker.ceph.com/issues/14509>`_, `pr#7359 <http://github.com/ceph/ceph/pull/7359>`_, songbaisen) -* mon: consider the pool size when setting pool crush rule (`issue#14495 <http://tracker.ceph.com/issues/14495>`_, `pr#7341 <http://github.com/ceph/ceph/pull/7341>`_, song baisen) -* mon: degrade a log message to level 2 (`pr#6929 <http://github.com/ceph/ceph/pull/6929>`_, Kongming Wu) -* mon: detect kv backend failures (Sage Weil) -* mon: disallow >2 tiers (#11840 Kefu Chai) -* mon: disallow ec pools as tiers (#11650 Samuel Just) -* mon: do not deactivate last mds (#10862 John Spray) -* mon: do not send useless pg_create messages for split pgs (`pr#8247 <http://github.com/ceph/ceph/pull/8247>`_, Sage Weil) -* mon: don't require OSD W for MRemoveSnaps (`issue#13777 <http://tracker.ceph.com/issues/13777>`_, `pr#6601 <http://github.com/ceph/ceph/pull/6601>`_, John Spray) -* mon: drop useless rank init assignment (`issue#14508 <http://tracker.ceph.com/issues/14508>`_, `pr#7321 <http://github.com/ceph/ceph/pull/7321>`_, huanwen ren) -* mon: enable 'mon osd prime pg temp' by default (`pr#7838 <http://github.com/ceph/ceph/pull/7838>`_, Robert LeBlanc) -* mon: fix average utilization calc for 'osd df' (Mykola Golub) -* mon: fix calculation of %USED (`pr#7881 <http://github.com/ceph/ceph/pull/7881>`_, Adam Kupczyk) -* mon: fix ceph df pool available calculation for 0-weighted OSDs (`pr#6660 <http://github.com/ceph/ceph/pull/6660>`_, Chengyuan Li) -* mon: fix coding-style on PG related Monitor files (`pr#6881 <http://github.com/ceph/ceph/pull/6881>`_, Wido den Hollander) -* mon: fix CRUSH map test for new pools (Sage Weil) -* mon: fixes related to mondbstore->get() changes (`pr#6564 <http://github.com/ceph/ceph/pull/6564>`_, Piotr Dałek) -* mon: fix keyring permissions (`issue#14950 <http://tracker.ceph.com/issues/14950>`_, `pr#7880 <http://github.com/ceph/ceph/pull/7880>`_, Owen Synge) -* mon: fix locking in preinit error paths (`issue#14473 <http://tracker.ceph.com/issues/14473>`_, `pr#7353 <http://github.com/ceph/ceph/pull/7353>`_, huanwen ren) -* mon: fix log dump crash when debugging (Mykola Golub) -* mon: fix mds beacon replies (#11590 Kefu Chai) -* mon: fix metadata update race (Mykola Golub) -* mon: fix min_last_epoch_clean tracking (Kefu Chai) -* mon: fix monmap creation stamp (`pr#7459 <http://github.com/ceph/ceph/pull/7459>`_, duanweijun) -* mon: fix 'pg ls' sort order, state names (#11569 Kefu Chai) -* mon: fix refresh (#11470 Joao Eduardo Luis) -* mon: fix reuse of osd ids (clear osd info on osd deletion) (`issue#13988 <http://tracker.ceph.com/issues/13988>`_, `pr#6900 <http://github.com/ceph/ceph/pull/6900>`_, Loic Dachary, Sage Weil) -* mon: fix routed_request_tids leak (`pr#6102 <http://github.com/ceph/ceph/pull/6102>`_, Ning Yao) -* mon: fix sync of config-key data (`pr#7363 <http://github.com/ceph/ceph/pull/7363>`_, Xiaowei Chen) -* mon: fix the can't change subscribe level bug in monitoring log (`pr#7031 <http://github.com/ceph/ceph/pull/7031>`_, Zhiqiang Wang) -* mon: fix variance calc in 'osd df' (Sage Weil) -* mon: go into ERR state if multiple PGs are stuck inactive (`issue#13923 <http://tracker.ceph.com/issues/13923>`_, `pr#7253 <http://github.com/ceph/ceph/pull/7253>`_, Wido den Hollander) -* mon: improve callout to crushtool (Mykola Golub) -* mon: initialize last_* timestamps on new pgs to creation time (`issue#14952 <http://tracker.ceph.com/issues/14952>`_, `pr#7980 <http://github.com/ceph/ceph/pull/7980>`_, Sage Weil) -* mon: initialize recorded election epoch properly even when standalone (`issue#13627 <http://tracker.ceph.com/issues/13627>`_, `pr#6407 <http://github.com/ceph/ceph/pull/6407>`_, huanwen ren) -* mon: make blocked op messages more readable (Jianpeng Ma) -* mon: make clock skew checks sane (`issue#14175 <http://tracker.ceph.com/issues/14175>`_, `pr#7141 <http://github.com/ceph/ceph/pull/7141>`_, Joao Eduardo Luis) -* mon: make osd get pool 'all' only return applicable fields (#10891 Michal Jarzabek) -* mon: mark_down_pgs in lockstep with pg_map's osdmap epoch (`pr#8208 <http://github.com/ceph/ceph/pull/8208>`_, Sage Weil) -* mon/MDSMonitor: add confirmation to "ceph mds rmfailed" (`issue#14379 <http://tracker.ceph.com/issues/14379>`_, `pr#7248 <http://github.com/ceph/ceph/pull/7248>`_, Yan, Zheng) -* mon/MDSMonitor.cc: properly note beacon when health metrics changes (`issue#14684 <http://tracker.ceph.com/issues/14684>`_, `pr#7757 <http://github.com/ceph/ceph/pull/7757>`_, Yan, Zheng) -* mon: misc scaling fixes (Sage Weil) -* mon: modify a dout level in OSDMonitor.cc (`pr#6928 <http://github.com/ceph/ceph/pull/6928>`_, Yongqiang He) -* mon/MonClient: avoid null pointer error when configured incorrectly (`issue#14405 <http://tracker.ceph.com/issues/14405>`_, `pr#7276 <http://github.com/ceph/ceph/pull/7276>`_, Bo Cai) -* mon/MonClient: fix shutdown race (`issue#13992 <http://tracker.ceph.com/issues/13992>`_, `pr#8335 <http://github.com/ceph/ceph/pull/8335>`_, Sage Weil) -* mon/monitor: some clean up (`pr#7520 <http://github.com/ceph/ceph/pull/7520>`_, huanwen ren) -* mon: MonmapMonitor: don't expose uncommitted state to client (`pr#6854 <http://github.com/ceph/ceph/pull/6854>`_, Joao Eduardo Luis) -* mon: normalize erasure-code profile for storage and comparison (Loic Dachary) -* mon: only send mon metadata to supporting peers (Sage Weil) -* mon: optionally specify osd id on 'osd create' (Mykola Golub) -* mon/OSDMonitor: osdmap laggy set a maximum limit for interval (`pr#7109 <http://github.com/ceph/ceph/pull/7109>`_, Zengran Zhang) -* mon: osd [test-]reweight-by-{pg,utilization} command updates (`pr#7890 <http://github.com/ceph/ceph/pull/7890>`_, Dan van der Ster, Sage Weil) -* mon: 'osd tree' fixes (Kefu Chai) -* mon: paxos is_recovering calc error (`pr#7227 <http://github.com/ceph/ceph/pull/7227>`_, Weijun Duan) -* mon: periodic background scrub (Joao Eduardo Luis) -* mon/PGMap: show rd/wr iops separately in status reports (`pr#7072 <http://github.com/ceph/ceph/pull/7072>`_, Cilang Zhao) -* mon: PGMonitor: acting primary diff with cur_stat, should not set pg to stale (`pr#7083 <http://github.com/ceph/ceph/pull/7083>`_, Xiaowei Chen) -* mon/PGMonitor: reliably mark PGs state (`pr#8089 <http://github.com/ceph/ceph/pull/8089>`_, Sage Weil) -* mon: PG Monitor should report waiting for backfill (`issue#12744 <http://tracker.ceph.com/issues/12744>`_, `pr#7398 <http://github.com/ceph/ceph/pull/7398>`_, Abhishek Lekshmanan) -* mon/pgmonitor: use appropriate forced conversions in get_rule_avail (`pr#7705 <http://github.com/ceph/ceph/pull/7705>`_, huanwen ren) -* mon: prevent bucket deletion when referenced by a crush rule (#11602 Sage Weil) -* mon: prevent pgp_num > pg_num (#12025 Xinxin Shu) -* mon: prevent pool with snapshot state from being used as a tier (#11493 Sage Weil) -* mon: prime pg_temp when CRUSH map changes (Sage Weil) -* mon: reduce CPU and memory manager pressure of pg health check (`pr#7482 <http://github.com/ceph/ceph/pull/7482>`_, Piotr Dałek) -* mon: refine check_remove_tier checks (#11504 John Spray) -* mon: reject large max_mds values (#12222 John Spray) -* mon: remove 'mds setmap' (`issue#15136 <http://tracker.ceph.com/issues/15136>`_, `pr#8121 <http://github.com/ceph/ceph/pull/8121>`_, Sage Weil) -* mon: remove remove_legacy_versions() (`pr#8324 <http://github.com/ceph/ceph/pull/8324>`_, Kefu Chai) -* mon: remove spurious who arg from 'mds rm ...' (John Spray) -* mon: remove unnecessary comment for update_from_paxos (`pr#8400 <http://github.com/ceph/ceph/pull/8400>`_, Qinghua Jin) -* mon: remove unused variable (`issue#15292 <http://tracker.ceph.com/issues/15292>`_, `pr#8337 <http://github.com/ceph/ceph/pull/8337>`_, Javier M. Mellid) -* mon: revert MonitorDBStore's WholeStoreIteratorImpl::get (`issue#13742 <http://tracker.ceph.com/issues/13742>`_, `pr#6522 <http://github.com/ceph/ceph/pull/6522>`_, Piotr Dałek) -* mon: should not set isvalid = true when cephx_verify_authorizer return false (`issue#13525 <http://tracker.ceph.com/issues/13525>`_, `pr#6306 <http://github.com/ceph/ceph/pull/6306>`_, Ruifeng Yang) -* mon: show the pool quota info on ceph df detail command (`issue#14216 <http://tracker.ceph.com/issues/14216>`_, `pr#7094 <http://github.com/ceph/ceph/pull/7094>`_, song baisen) -* mon: some cleanup in MonmapMonitor.cc (`pr#7418 <http://github.com/ceph/ceph/pull/7418>`_, huanwen ren) -* mon: standardize Ceph removal commands (`pr#7939 <http://github.com/ceph/ceph/pull/7939>`_, Dongsheng Yang) -* mon: streamline session handling, fix memory leaks (Sage Weil) -* mon: support min_down_reporter by subtree level (default by host) (`pr#6709 <http://github.com/ceph/ceph/pull/6709>`_, Xiaoxi Chen) -* mon: unconfuse object count skew message (`pr#7882 <http://github.com/ceph/ceph/pull/7882>`_, Piotr Dałek) -* mon: unregister command on shutdown (`pr#7504 <http://github.com/ceph/ceph/pull/7504>`_, huanwen ren) -* mon: upgrades must pass through hammer (Sage Weil) -* mon: warn if pg(s) not scrubbed (`issue#13142 <http://tracker.ceph.com/issues/13142>`_, `pr#6440 <http://github.com/ceph/ceph/pull/6440>`_, Michal Jarzabek) -* mon: warn on bogus cache tier config (Jianpeng Ma) -* mount.ceph: memory leaks (`pr#6905 <http://github.com/ceph/ceph/pull/6905>`_, Qiankun Zheng) -* mount.fuse.ceph: better parsing of arguments passed to mount.fuse.ceph by mount command (`issue#14735 <http://tracker.ceph.com/issues/14735>`_, `pr#7607 <http://github.com/ceph/ceph/pull/7607>`_, Florent Bautista) -* mrun: update path to cmake binaries (`pr#8447 <http://github.com/ceph/ceph/pull/8447>`_, Casey Bodley) -* msg: add override to virutal methods (`pr#6977 <http://github.com/ceph/ceph/pull/6977>`_, Michal Jarzabek) -* msg: add thread safety for "random" Messenger + fix wrong usage of random functions (`pr#7650 <http://github.com/ceph/ceph/pull/7650>`_, Avner BenHanoch) -* msg/async: AsyncConnection: avoid debug log in cleanup_handler (`pr#7547 <http://github.com/ceph/ceph/pull/7547>`_, Haomai Wang) -* msg/async: AsyncMessenger: fix several bugs (`pr#7831 <http://github.com/ceph/ceph/pull/7831>`_, Haomai Wang) -* msg/async: AsyncMessenger: fix valgrind leak (`pr#7725 <http://github.com/ceph/ceph/pull/7725>`_, Haomai Wang) -* msg/async: avoid log spam on throttle (`issue#15031 <http://tracker.ceph.com/issues/15031>`_, `pr#8263 <http://github.com/ceph/ceph/pull/8263>`_, Kefu Chai) -* msg/async: bunch of fixes (`pr#7379 <http://github.com/ceph/ceph/pull/7379>`_, Piotr Dałek) -* msg/async: cleanup dead connection and misc things (`pr#7158 <http://github.com/ceph/ceph/pull/7158>`_, Haomai Wang) -* msg/async: don't calculate msg header crc when not needed (`pr#7815 <http://github.com/ceph/ceph/pull/7815>`_, Piotr Dałek) -* msg/async: don't use shared_ptr to manage EventCallback (`pr#7028 <http://github.com/ceph/ceph/pull/7028>`_, Haomai Wang) -* msg/async: Event: fix clock skew problem (`pr#7949 <http://github.com/ceph/ceph/pull/7949>`_, Wei Jin) -* msg/async: fix array boundary (`pr#7451 <http://github.com/ceph/ceph/pull/7451>`_, Wei Jin) -* msg: async: fix perf counter description and simplify _send_keepalive_or_ack (`pr#8046 <http://github.com/ceph/ceph/pull/8046>`_, xie xingguo) -* msg/async: fix potential race condition (`pr#7453 <http://github.com/ceph/ceph/pull/7453>`_, Haomai Wang) -* msg/async: fix send closed local_connection message problem (`pr#7255 <http://github.com/ceph/ceph/pull/7255>`_, Haomai Wang) -* msg/async: let receiver ack message ASAP (`pr#6478 <http://github.com/ceph/ceph/pull/6478>`_, Haomai Wang) -* msg/async: reduce extra tcp packet for message ack (`pr#7380 <http://github.com/ceph/ceph/pull/7380>`_, Haomai Wang) -* msg/async: remove experiment feature (`pr#7820 <http://github.com/ceph/ceph/pull/7820>`_, Haomai Wang) -* msg: async: small cleanups (`pr#7871 <http://github.com/ceph/ceph/pull/7871>`_, xie xingguo) -* msg/async: smarter MSG_MORE (`pr#7625 <http://github.com/ceph/ceph/pull/7625>`_, Piotr Dałek) -* msg: async: start over after failing to bind a port in specified range (`issue#14928 <http://tracker.ceph.com/issues/14928>`_, `issue#13002 <http://tracker.ceph.com/issues/13002>`_, `pr#7852 <http://github.com/ceph/ceph/pull/7852>`_, xie xingguo) -* msg/async: support of non-block connect in async messenger (`issue#12802 <http://tracker.ceph.com/issues/12802>`_, `pr#5848 <http://github.com/ceph/ceph/pull/5848>`_, Jianhui Yuan) -* msg/async: _try_send trim already sent for outcoming_bl more efficient (`pr#7970 <http://github.com/ceph/ceph/pull/7970>`_, Yan Jun) -* msg/async: will crash if enabling async msg because of an assertion (`pr#6640 <http://github.com/ceph/ceph/pull/6640>`_, Zhi Zhang) -* msg: filter out lo addr when bind osd addr (`pr#7012 <http://github.com/ceph/ceph/pull/7012>`_, Ji Chen) -* msgr: add ceph_perf_msgr tool (Hoamai Wang) -* msgr: async: fix seq handling (Haomai Wang) -* msgr: async: many many fixes (Haomai Wang) -* msg: removed unneeded includes from Dispatcher (`pr#6814 <http://github.com/ceph/ceph/pull/6814>`_, Michal Jarzabek) -* msg: remove duplicated code - local_delivery will now call 'enqueue' (`pr#7948 <http://github.com/ceph/ceph/pull/7948>`_, Avner BenHanoch) -* msg: remove unneeded inline (`pr#6989 <http://github.com/ceph/ceph/pull/6989>`_, Michal Jarzabek) -* msgr: fix large message data content length causing overflow (`pr#6809 <http://github.com/ceph/ceph/pull/6809>`_, Jun Huang, Haomai Wang) -* msgr: simple: fix clear_pipe (#11381 Haomai Wang) -* msgr: simple: fix connect_seq assert (Haomai Wang) -* msgr: xio: fastpath improvements (Raju Kurunkad) -* msgr: xio: fix ip and nonce (Raju Kurunkad) -* msgr: xio: improve lane assignment (Vu Pham) -* msgr: xio: misc fixes (#10735 Matt Benjamin, Kefu Chai, Danny Al-Gaaf, Raju Kurunkad, Vu Pham, Casey Bodley) -* msgr: xio: sync with accellio v1.4 (Vu Pham) -* msg: significantly reduce minimal memory usage of connections (`pr#7567 <http://github.com/ceph/ceph/pull/7567>`_, Piotr Dałek) -* msg/simple: pipe: memory leak when signature check failed (`pr#7096 <http://github.com/ceph/ceph/pull/7096>`_, Ruifeng Yang) -* msg/simple: remove unneeded friend declarations (`pr#6924 <http://github.com/ceph/ceph/pull/6924>`_, Michal Jarzabek) -* msg: unit tests (Haomai Wang) -* msg/xio: fix compilation (`pr#7479 <http://github.com/ceph/ceph/pull/7479>`_, Roi Dayan) -* msg/xio: fixes (`pr#7603 <http://github.com/ceph/ceph/pull/7603>`_, Roi Dayan) -* mstart: start rgw on different ports as well (`pr#8167 <http://github.com/ceph/ceph/pull/8167>`_, Abhishek Lekshmanan) -* nfs for rgw (Matt Benjamin, Orit Wasserman) (`pr#7634 <http://github.com/ceph/ceph/pull/7634>`_, Yehuda Sadeh, Matt Benjamin) -* objectcacher: misc bug fixes (Jianpeng Ma) -* objecter: avoid recursive lock of Objecter::rwlock (`pr#7343 <http://github.com/ceph/ceph/pull/7343>`_, Yan, Zheng) -* organizationmap: modify org mail info. (`pr#7240 <http://github.com/ceph/ceph/pull/7240>`_, Xiaowei Chen) -* os/bluestore: a few fixes (`pr#8193 <http://github.com/ceph/ceph/pull/8193>`_, Sage Weil) -* os/bluestore/BlueFS: Before reap ioct, it should wait io complete (`pr#8178 <http://github.com/ceph/ceph/pull/8178>`_, Jianpeng Ma) -* os/bluestore/BlueStore: Don't leak trim overlay data before write. (`pr#7895 <http://github.com/ceph/ceph/pull/7895>`_, Jianpeng Ma) -* os/bluestore: ceph-bluefs-tool fixes (`issue#15261 <http://tracker.ceph.com/issues/15261>`_, `pr#8292 <http://github.com/ceph/ceph/pull/8292>`_, Venky Shankar) -* os/bluestore: clone overlay data (`pr#7860 <http://github.com/ceph/ceph/pull/7860>`_, Jianpeng Ma) -* os/bluestore: fix assert (`issue#14436 <http://tracker.ceph.com/issues/14436>`_, `pr#7293 <http://github.com/ceph/ceph/pull/7293>`_, xie xingguo) -* os/bluestore: fix a typo in SPDK path parsing (`pr#7601 <http://github.com/ceph/ceph/pull/7601>`_, Jianjian Huo) -* os/bluestore: fix bluestore_wal_transaction_t encoding test (`pr#7342 <http://github.com/ceph/ceph/pull/7342>`_, Kefu Chai) -* os/bluestore: fix bluestore_wal_transaction_t encoding test (`pr#7419 <http://github.com/ceph/ceph/pull/7419>`_, Kefu Chai, Brad Hubbard) -* os/bluestore: insert new onode to the front position of onode LRU (`pr#7492 <http://github.com/ceph/ceph/pull/7492>`_, Jianjian Huo) -* os/bluestore/KernelDevice: force block size (`pr#8006 <http://github.com/ceph/ceph/pull/8006>`_, Sage Weil) -* os/bluestore: make bluestore_sync_transaction = true can work. (`pr#7674 <http://github.com/ceph/ceph/pull/7674>`_, Jianpeng Ma) -* os/bluestore/NVMEDevice: make IO thread using dpdk launch (`pr#8160 <http://github.com/ceph/ceph/pull/8160>`_, Haomai Wang) -* os/bluestore/NVMEDevice: refactor probe/attach codes and support zero command (`pr#7647 <http://github.com/ceph/ceph/pull/7647>`_, Haomai Wang) -* os/bluestore: revamp BlueFS bdev management and add perfcounters (`issue#15376 <http://tracker.ceph.com/issues/15376>`_, `pr#8431 <http://github.com/ceph/ceph/pull/8431>`_, Sage Weil) -* os/bluestore: small fixes in bluestore StupidAllocator (`pr#8101 <http://github.com/ceph/ceph/pull/8101>`_, Jianjian Huo) -* os/bluestore: use intrusive_ptr for Dir (`pr#7247 <http://github.com/ceph/ceph/pull/7247>`_, Igor Fedotov) -* osd: add cache hint when pushing raw clone during recovery (`pr#7069 <http://github.com/ceph/ceph/pull/7069>`_, Zhiqiang Wang) -* osd: Add config option osd_read_ec_check_for_errors for testing (`pr#5865 <http://github.com/ceph/ceph/pull/5865>`_, David Zafman) -* osd: add latency perf counters for tier operations (Xinze Chi) -* osd: add misc perfcounters (Xinze Chi) -* osd: add missing newline to usage message (`pr#7613 <http://github.com/ceph/ceph/pull/7613>`_, Willem Jan Withagen) -* osd: add osd op queue latency perfcounter (`pr#5793 <http://github.com/ceph/ceph/pull/5793>`_, Haomai Wang) -* osd: add pin/unpin support to cache tier (11066) (`pr#6326 <http://github.com/ceph/ceph/pull/6326>`_, Zhiqiang Wang) -* osd: add 'proxy' cache mode (`issue#12814 <http://tracker.ceph.com/issues/12814>`_, `pr#8210 <http://github.com/ceph/ceph/pull/8210>`_, Sage Weil) -* osd: add scrub persist/query API (`issue#13505 <http://tracker.ceph.com/issues/13505>`_, `pr#6898 <http://github.com/ceph/ceph/pull/6898>`_, Kefu Chai, Samuel Just) -* osd: add simple sleep injection in recovery (Sage Weil) -* osd: add the support of per pool scrub priority (`pr#7062 <http://github.com/ceph/ceph/pull/7062>`_, Zhiqiang Wang) -* osd: a fix for HeartbeatDispatcher and cleanups (`pr#7550 <http://github.com/ceph/ceph/pull/7550>`_, Kefu Chai) -* osd: Allow repair of history.last_epoch_started using config (`pr#6793 <http://github.com/ceph/ceph/pull/6793>`_, David Zafman) -* osd: allow SEEK_HOLE/SEEK_DATA for sparse read (Zhiqiang Wang) -* osd: auto repair EC pool (`issue#12754 <http://tracker.ceph.com/issues/12754>`_, `pr#6196 <http://github.com/ceph/ceph/pull/6196>`_, Guang Yang) -* osd: avoid calculating crush mapping for most ops (`pr#6371 <http://github.com/ceph/ceph/pull/6371>`_, Sage Weil) -* osd: avoid debug std::string initialization in PG::get/put (`pr#7117 <http://github.com/ceph/ceph/pull/7117>`_, Evgeniy Firsov) -* osd: avoid double-check for replaying and can_checkpoint() in FileStore::_check_replay_guard (`pr#6471 <http://github.com/ceph/ceph/pull/6471>`_, Ning Yao) -* osd: avoid duplicate op->mark_started in ReplicatedBackend (`pr#6689 <http://github.com/ceph/ceph/pull/6689>`_, Jacek J. Łakis) -* osd: avoid dup omap sets for in pg metadata (Sage Weil) -* osd: avoid FORCE updating digest been overwritten by MAYBE when comparing scrub map (`pr#7051 <http://github.com/ceph/ceph/pull/7051>`_, Zhiqiang Wang) -* osd: avoid multiple hit set insertions (Zhiqiang Wang) -* osd: avoid osd_op_thread suicide because osd_scrub_sleep (`pr#7009 <http://github.com/ceph/ceph/pull/7009>`_, Jianpeng Ma) -* osd: avoid transaction append in some cases (Sage Weil) -* osd: bail out of _committed_osd_maps if we are shutting down (`pr#8267 <http://github.com/ceph/ceph/pull/8267>`_, Samuel Just) -* osd: blockdevice: avoid implicit cast and add guard (`pr#7460 <http://github.com/ceph/ceph/pull/7460>`_, xie xingguo) -* osd: bluefs: fix alignment for odd page sizes (`pr#7900 <http://github.com/ceph/ceph/pull/7900>`_, Dan Mick) -* osd: bluestore: add 'override' to virtual functions (`pr#7886 <http://github.com/ceph/ceph/pull/7886>`_, Michal Jarzabek) -* osd: bluestore: allow _dump_onode dynamic accept log level (`pr#7995 <http://github.com/ceph/ceph/pull/7995>`_, Jianpeng Ma) -* osd: bluestore/blockdevice: use std::mutex et al (`pr#7568 <http://github.com/ceph/ceph/pull/7568>`_, Sage Weil) -* osd: bluestore: bluefs: fix several small bugs (`issue#14344 <http://tracker.ceph.com/issues/14344>`_, `issue#14343 <http://tracker.ceph.com/issues/14343>`_, `pr#7200 <http://github.com/ceph/ceph/pull/7200>`_, xie xingguo) -* osd: bluestore/BlueFS: initialize super block_size earlier in mkfs (`pr#7535 <http://github.com/ceph/ceph/pull/7535>`_, Sage Weil) -* osd: bluestore: don't include when building without libaio (`issue#14207 <http://tracker.ceph.com/issues/14207>`_, `pr#7169 <http://github.com/ceph/ceph/pull/7169>`_, Mykola Golub) -* osd: bluestore: fix bluestore onode_t attr leak (`pr#7125 <http://github.com/ceph/ceph/pull/7125>`_, Ning Yao) -* osd: bluestore: fix bluestore_wal_transaction_t encoding test (`pr#7168 <http://github.com/ceph/ceph/pull/7168>`_, Kefu Chai) -* osd: bluestore: fix check for write falling within the same extent (`issue#14954 <http://tracker.ceph.com/issues/14954>`_, `pr#7892 <http://github.com/ceph/ceph/pull/7892>`_, Jianpeng Ma) -* osd: BlueStore: fix fsck and blockdevice read-relevant issue (`pr#7362 <http://github.com/ceph/ceph/pull/7362>`_, xie xingguo) -* osd: BlueStore: fix null pointer access (`issue#14561 <http://tracker.ceph.com/issues/14561>`_, `pr#7435 <http://github.com/ceph/ceph/pull/7435>`_, xie xingguo) -* osd: bluestore: fix several bugs (`issue#14259 <http://tracker.ceph.com/issues/14259>`_, `issue#14353 <http://tracker.ceph.com/issues/14353>`_, `issue#14260 <http://tracker.ceph.com/issues/14260>`_, `issue#14261 <http://tracker.ceph.com/issues/14261>`_, `pr#7122 <http://github.com/ceph/ceph/pull/7122>`_, xie xingguo) -* osd: bluestore: fix space rebalancing, collection split, buffered reads (`pr#7196 <http://github.com/ceph/ceph/pull/7196>`_, Sage Weil) -* osd: bluestore: for overwrite a extent, allocate new extent on min_alloc_size write (`pr#7996 <http://github.com/ceph/ceph/pull/7996>`_, Jianpeng Ma) -* osd: bluestore: improve fs-type verification and tidy up (`pr#7651 <http://github.com/ceph/ceph/pull/7651>`_, xie xingguo) -* osd: bluestore, kstore: fix nid overwritten logic (`issue#14407 <http://tracker.ceph.com/issues/14407>`_, `issue#14433 <http://tracker.ceph.com/issues/14433>`_, `pr#7283 <http://github.com/ceph/ceph/pull/7283>`_, xie xingguo) -* osd: bluestore: misc fixes (`pr#7658 <http://github.com/ceph/ceph/pull/7658>`_, Jianpeng Ma) -* osd: bluestore: more fixes (`pr#7130 <http://github.com/ceph/ceph/pull/7130>`_, Sage Weil) -* osd: BlueStore/NVMEDevice: fix compiling and fd leak (`pr#7496 <http://github.com/ceph/ceph/pull/7496>`_, xie xingguo) -* osd: bluestore: NVMEDevice: fix error handling (`pr#7799 <http://github.com/ceph/ceph/pull/7799>`_, xie xingguo) -* osd: bluestore: remove unneeded includes (`pr#7870 <http://github.com/ceph/ceph/pull/7870>`_, Michal Jarzabek) -* osd: bluestore: Revert NVMEDevice task cstor and refresh interface changes (`pr#7729 <http://github.com/ceph/ceph/pull/7729>`_, Haomai Wang) -* osd: bluestore updates, scrub fixes (`pr#8035 <http://github.com/ceph/ceph/pull/8035>`_, Sage Weil) -* osd: bluestore: use btree_map for allocator (`pr#7269 <http://github.com/ceph/ceph/pull/7269>`_, Igor Fedotov, Sage Weil) -* osd: break PG removal into multiple iterations (#10198 Guang Yang) -* osd: cache proxy-write support (Zhiqiang Wang, Samuel Just) -* osd: cache tier: add config option for eviction check list size (`pr#6997 <http://github.com/ceph/ceph/pull/6997>`_, Yuan Zhou) -* osd: call on_new_interval on newly split child PG (`issue#13962 <http://tracker.ceph.com/issues/13962>`_, `pr#6778 <http://github.com/ceph/ceph/pull/6778>`_, Sage Weil) -* osd: cancel failure reports if we fail to rebind network (`pr#6278 <http://github.com/ceph/ceph/pull/6278>`_, Xinze Chi) -* osdc: Fix race condition with tick_event and shutdown (`issue#14256 <http://tracker.ceph.com/issues/14256>`_, `pr#7151 <http://github.com/ceph/ceph/pull/7151>`_, Adam C. Emerson) -* osd: change mutex to spinlock to optimize thread context switch. (`pr#6492 <http://github.com/ceph/ceph/pull/6492>`_, Xiaowei Chen) -* osd: check do_shutdown before do_restart (`pr#6547 <http://github.com/ceph/ceph/pull/6547>`_, Xiaoxi Chen) -* osd: check health state before pre_booting (`issue#14181 <http://tracker.ceph.com/issues/14181>`_, `pr#7053 <http://github.com/ceph/ceph/pull/7053>`_, Xiaoxi Chen) -* osd: check scrub state when handling map (Jianpeng Ma) -* osd: clarify the scrub result report (`pr#6534 <http://github.com/ceph/ceph/pull/6534>`_, Li Wang) -* osd/ClassHandler: only dlclose() the classes not missing (`pr#8354 <http://github.com/ceph/ceph/pull/8354>`_, Kefu Chai) -* osd: clean up CMPXATTR checks (`pr#5961 <http://github.com/ceph/ceph/pull/5961>`_, Jianpeng Ma) -* osd: clean up some constness, privateness (Kefu Chai) -* osd: clean up temp object if copy-from fails (`pr#8487 <http://github.com/ceph/ceph/pull/8487>`_, Sage Weil) -* osd: clean up temp object if promotion fails (Jianpeng Ma) -* osd: clear pg_stat_queue after stopping pgs (`issue#14212 <http://tracker.ceph.com/issues/14212>`_, `pr#7091 <http://github.com/ceph/ceph/pull/7091>`_, Sage Weil) -* osdc/Objecter: allow per-pool calls to op_cancel_writes (John Spray) -* osdc/Objecter: dout log after assign tid (`pr#8202 <http://github.com/ceph/ceph/pull/8202>`_, Xinze Chi) -* osdc/Objecter: fix narrow race with tid assignment (`issue#14364 <http://tracker.ceph.com/issues/14364>`_, `pr#7981 <http://github.com/ceph/ceph/pull/7981>`_, Sage Weil) -* osdc/Objecter: use full pgid hash in PGNLS ops (`pr#8378 <http://github.com/ceph/ceph/pull/8378>`_, Sage Weil) -* osd: configure promotion based on write recency (Zhiqiang Wang) -* osd: consider high/low mode when putting agent to sleep (`issue#14752 <http://tracker.ceph.com/issues/14752>`_, `pr#7631 <http://github.com/ceph/ceph/pull/7631>`_, Sage Weil) -* osd: constrain collections to meta and PGs (normal and temp) (Sage Weil) -* osd: correctly handle small osd_scrub_interval_randomize_ratio (`pr#7147 <http://github.com/ceph/ceph/pull/7147>`_, Samuel Just) -* osd: defer decoding of MOSDRepOp/MOSDRepOpReply (`pr#6503 <http://github.com/ceph/ceph/pull/6503>`_, Xinze Chi) -* osd: delay populating in-memory PG log hashmaps (`pr#6425 <http://github.com/ceph/ceph/pull/6425>`_, Piotr Dałek) -* osd: disable filestore_xfs_extsize by default (`issue#14397 <http://tracker.ceph.com/issues/14397>`_, `pr#7265 <http://github.com/ceph/ceph/pull/7265>`_, Ken Dreyer) -* osd: do not keep ref of old osdmap in pg (`issue#13990 <http://tracker.ceph.com/issues/13990>`_, `pr#7007 <http://github.com/ceph/ceph/pull/7007>`_, Kefu Chai) -* osd: don't do random deep scrubs for user initiated scrubs (`pr#6673 <http://github.com/ceph/ceph/pull/6673>`_, David Zafman) -* osd: don't send dup MMonGetOSDMap requests (Sage Weil, Kefu Chai) -* osd: don't update epoch and rollback_info objects attrs if there is no need (`pr#6555 <http://github.com/ceph/ceph/pull/6555>`_, Ning Yao) -* osd: drop deprecated removal pg type (`pr#6970 <http://github.com/ceph/ceph/pull/6970>`_, Igor Podoski) -* osd: drop fiemap len=0 logic (`pr#7267 <http://github.com/ceph/ceph/pull/7267>`_, Sage Weil) -* osd: drop the interim set from load_pgs() (`pr#6277 <http://github.com/ceph/ceph/pull/6277>`_, Piotr Dałek) -* osd: dump number of missing objects for each peer with pg query (`pr#6058 <http://github.com/ceph/ceph/pull/6058>`_, Guang Yang) -* osd: duplicated clear for peer_missing (`pr#8315 <http://github.com/ceph/ceph/pull/8315>`_, Ning Yao) -* osd: EIO injection (David Zhang) -* osd: elminiate txn apend, ECSubWrite copy (Samuel Just) -* osd: enable perfcounters on sharded work queue mutexes (`pr#6455 <http://github.com/ceph/ceph/pull/6455>`_, Jacek J. Łakis) -* osd: ensure new osdmaps commit before publishing them to pgs (`issue#15073 <http://tracker.ceph.com/issues/15073>`_, `pr#8096 <http://github.com/ceph/ceph/pull/8096>`_, Sage Weil) -* osd: erasure-code: drop entries according to LRU (Andreas-Joachim Peters) -* osd: erasure-code: fix SHEC floating point bug (#12936 Loic Dachary) -* osd: erasure-code: update to ISA-L 2.14 (Yuan Zhou) -* osd: filejournal: cleanup (David Zafman) -* osd: FileJournal: _fdump wrongly returns if journal is currently unreadable. (`issue#13626 <http://tracker.ceph.com/issues/13626>`_, `pr#6406 <http://github.com/ceph/ceph/pull/6406>`_, xie xingguo) -* osd: FileJournal: fix return code of create method (`issue#14134 <http://tracker.ceph.com/issues/14134>`_, `pr#6988 <http://github.com/ceph/ceph/pull/6988>`_, xie xingguo) -* osd: FileJournal: reduce locking scope in write_aio_bl (`issue#12789 <http://tracker.ceph.com/issues/12789>`_, `pr#5670 <http://github.com/ceph/ceph/pull/5670>`_, Zhi Zhang) -* osd: filejournal: report journal entry count (`pr#7643 <http://github.com/ceph/ceph/pull/7643>`_, tianqing) -* osd: FileJournal: support batch peak and pop from writeq (`pr#6701 <http://github.com/ceph/ceph/pull/6701>`_, Xinze Chi) -* osd: FileStore: add a field indicate xattr only one chunk for set xattr. (`pr#6244 <http://github.com/ceph/ceph/pull/6244>`_, Jianpeng Ma) -* osd: FileStore: Added O_DSYNC write scheme (`pr#7752 <http://github.com/ceph/ceph/pull/7752>`_, Somnath Roy) -* osd: FileStore: add error check for object_map->sync() (`pr#7281 <http://github.com/ceph/ceph/pull/7281>`_, Chendi Xue) -* osd: FileStore: cleanup: remove obsolete option "filestore_xattr_use_omap" (`issue#14356 <http://tracker.ceph.com/issues/14356>`_, `pr#7217 <http://github.com/ceph/ceph/pull/7217>`_, Vikhyat Umrao) -* osd: filestore: clone using splice (Jianpeng Ma) -* osd: FileStore: conditional collection of drive metadata (`pr#6956 <http://github.com/ceph/ceph/pull/6956>`_, Somnath Roy) -* osd: filestore: FALLOC_FL_PUNCH_HOLE must be used with FALLOC_FL_KEEP_SIZE (`pr#7768 <http://github.com/ceph/ceph/pull/7768>`_, xinxin shu) -* osd: filestore: fast abort if statfs encounters ENOENT (`pr#7703 <http://github.com/ceph/ceph/pull/7703>`_, xie xingguo) -* osd: FileStore: fix initialization order for m_disable_wbthrottle (`pr#8067 <http://github.com/ceph/ceph/pull/8067>`_, Samuel Just) -* osd: filestore: fix race condition with split vs collection_move_rename and long object names (`issue#14766 <http://tracker.ceph.com/issues/14766>`_, `pr#8136 <http://github.com/ceph/ceph/pull/8136>`_, Samuel Just) -* osd: filestore: fix recursive lock (Xinxin Shu) -* osd: filestore: fix result code overwritten for clone (`issue#14817 <http://tracker.ceph.com/issues/14817>`_, `issue#14827 <http://tracker.ceph.com/issues/14827>`_, `pr#7711 <http://github.com/ceph/ceph/pull/7711>`_, xie xingguo) -* osd: filestore: fix wrong scope of result code for error cases during mkfs (`issue#14814 <http://tracker.ceph.com/issues/14814>`_, `pr#7704 <http://github.com/ceph/ceph/pull/7704>`_, xie xingguo) -* osd: filestore: fix wrong scope of result code for error cases during mount (`issue#14815 <http://tracker.ceph.com/issues/14815>`_, `pr#7707 <http://github.com/ceph/ceph/pull/7707>`_, xie xingguo) -* osd: FileStore: LFNIndex: remove redundant local variable 'obj'. (`issue#13552 <http://tracker.ceph.com/issues/13552>`_, `pr#6333 <http://github.com/ceph/ceph/pull/6333>`_, xiexingguo) -* osd: FileStore: modify the format of colon (`pr#7333 <http://github.com/ceph/ceph/pull/7333>`_, Donghai Xu) -* osd: FileStore:: optimize lfn_unlink (`pr#6649 <http://github.com/ceph/ceph/pull/6649>`_, Jianpeng Ma) -* osd: FileStore: potential memory leak if _fgetattrs fails (`issue#13597 <http://tracker.ceph.com/issues/13597>`_, `pr#6377 <http://github.com/ceph/ceph/pull/6377>`_, xie xingguo) -* osd: FileStore: print file name before osd assert if read file failed (`pr#7111 <http://github.com/ceph/ceph/pull/7111>`_, Ji Chen) -* osd: FileStore: remove __SWORD_TYPE dependency (`pr#6263 <http://github.com/ceph/ceph/pull/6263>`_, John Coyle) -* osd: FileStore: remove unused local variable 'handle' (`pr#6381 <http://github.com/ceph/ceph/pull/6381>`_, xie xingguo) -* osd: filestore: restructure journal and op queue throttling (`pr#7767 <http://github.com/ceph/ceph/pull/7767>`_, Samuel Just) -* osd: FileStore: support multiple ondisk finish and apply finishers (`pr#6486 <http://github.com/ceph/ceph/pull/6486>`_, Xinze Chi, Haomai Wang) -* osd: FileStore: use pwritev instead of lseek+writev (`pr#7349 <http://github.com/ceph/ceph/pull/7349>`_, Haomai Wang, Tao Chang) -* osd: fix bogus scrub results when missing a clone (`issue#12738 <http://tracker.ceph.com/issues/12738>`_, `issue#12740 <http://tracker.ceph.com/issues/12740>`_, `pr#5783 <http://github.com/ceph/ceph/pull/5783>`_, David Zafman) -* osd: fix broken balance / localized read handling (`issue#13491 <http://tracker.ceph.com/issues/13491>`_, `pr#6364 <http://github.com/ceph/ceph/pull/6364>`_, Jason Dillaman) -* osd: fix bug in last_* PG state timestamps (`pr#6517 <http://github.com/ceph/ceph/pull/6517>`_, Li Wang) -* osd: fix bugs for omap ops (`pr#8230 <http://github.com/ceph/ceph/pull/8230>`_, Jianpeng Ma) -* osd: fix check_for_full (Henry Chang) -* osd: fix ClassHandler::ClassData::get_filter() (`pr#6747 <http://github.com/ceph/ceph/pull/6747>`_, Yan, Zheng) -* osd: fix/clean up full map request handling (`pr#8446 <http://github.com/ceph/ceph/pull/8446>`_, Sage Weil) -* osd: fix debug message in OSD::is_healthy (`pr#6226 <http://github.com/ceph/ceph/pull/6226>`_, Xiaoxi Chen) -* osd: fix dirty accounting in make_writeable (Zhiqiang Wang) -* osd: fix dirtying info without correctly setting drity_info field (`pr#8275 <http://github.com/ceph/ceph/pull/8275>`_, xie xingguo) -* osd: fix dump_ops_in_flight races (`issue#8885 <http://tracker.ceph.com/issues/8885>`_, `pr#8044 <http://github.com/ceph/ceph/pull/8044>`_, David Zafman) -* osd: fix dup promotion lost op bug (Zhiqiang Wang) -* osd: fix endless repair when object is unrecoverable (Jianpeng Ma, Kefu Chai) -* osd: fix epoch check in handle_pg_create (`pr#8382 <http://github.com/ceph/ceph/pull/8382>`_, Samuel Just) -* osd: fixes for several cases where op result code was not checked or set (`issue#13566 <http://tracker.ceph.com/issues/13566>`_, `pr#6347 <http://github.com/ceph/ceph/pull/6347>`_, xie xingguo) -* osd: fix failure report handling during ms_handle_connect() (`pr#8348 <http://github.com/ceph/ceph/pull/8348>`_, xie xingguo) -* osd: fix FileStore::_destroy_collection error return code (`pr#6612 <http://github.com/ceph/ceph/pull/6612>`_, Ruifeng Yang) -* osd: fix forced prmootion for CALL ops (`issue#14745 <http://tracker.ceph.com/issues/14745>`_, `pr#7617 <http://github.com/ceph/ceph/pull/7617>`_, Sage Weil) -* osd: fix fusestore hanging during stop/quit (`issue#14786 <http://tracker.ceph.com/issues/14786>`_, `pr#7677 <http://github.com/ceph/ceph/pull/7677>`_, xie xingguo) -* osd: fix hitset object naming to use GMT (Kefu Chai) -* osd: fix inaccurate counter and skip over queueing an empty transaction (`pr#7754 <http://github.com/ceph/ceph/pull/7754>`_, xie xingguo) -* osd: fix incorrect throttle in WBThrottle (`pr#6713 <http://github.com/ceph/ceph/pull/6713>`_, Zhang Huan) -* osd: fix invalid list traversal in process_copy_chunk (`pr#7511 <http://github.com/ceph/ceph/pull/7511>`_, Samuel Just) -* osd: fix lack of object unblock when flush fails (`issue#14511 <http://tracker.ceph.com/issues/14511>`_, `pr#7584 <http://github.com/ceph/ceph/pull/7584>`_, Igor Fedotov) -* osd: fix log info (`pr#8273 <http://github.com/ceph/ceph/pull/8273>`_, Wei Jin) -* osd: fix misc memory leaks (Sage Weil) -* osd: fix MOSDOp encoding (`pr#6174 <http://github.com/ceph/ceph/pull/6174>`_, Sage Weil) -* osd: fix MOSDRepScrub reference counter in replica_scrub (`pr#6730 <http://github.com/ceph/ceph/pull/6730>`_, Jie Wang) -* osd: fix negative degraded stats during backfill (Guang Yang) -* osd: fix null pointer access and race condition (`issue#14072 <http://tracker.ceph.com/issues/14072>`_, `pr#6916 <http://github.com/ceph/ceph/pull/6916>`_, xie xingguo) -* osd: fix osdmap dump of blacklist items (John Spray) -* osd: fix overload of '==' operator for pg_stat_t (`issue#14921 <http://tracker.ceph.com/issues/14921>`_, `pr#7842 <http://github.com/ceph/ceph/pull/7842>`_, xie xingguo) -* osd: fix peek_queue locking in FileStore (Xinze Chi) -* osd: fix pg resurrection (#11429 Samuel Just) -* osd: fix promotion vs full cache tier (Samuel Just) -* osd: fix race condition for heartbeat_need_update (`issue#14387 <http://tracker.ceph.com/issues/14387>`_, `pr#7739 <http://github.com/ceph/ceph/pull/7739>`_, xie xingguo) -* osd: fix reactivate (check OSDSuperblock in mkfs() when we already have the superblock) (`issue#13586 <http://tracker.ceph.com/issues/13586>`_, `pr#6385 <http://github.com/ceph/ceph/pull/6385>`_, Vicente Cheng) -* osd: fix reference count, rare race condition etc. (`pr#8254 <http://github.com/ceph/ceph/pull/8254>`_, xie xingguo) -* osd: fix replay requeue when pg is still activating (#13116 Samuel Just) -* osd: fix return value from maybe_handle_cache_detail() (`pr#7593 <http://github.com/ceph/ceph/pull/7593>`_, Igor Fedotov) -* osd: fix rollback_info_trimmed_to before index() (`issue#13965 <http://tracker.ceph.com/issues/13965>`_, `pr#6801 <http://github.com/ceph/ceph/pull/6801>`_, Samuel Just) -* osd: fix scrub start hobject (`pr#7467 <http://github.com/ceph/ceph/pull/7467>`_, Sage Weil) -* osd: fix scrub stat bugs (Sage Weil, Samuel Just) -* osd: fix snap flushing from cache tier (again) (#11787 Samuel Just) -* osd: fix snap handling on promotion (#11296 Sam Just) -* osd: fix sparse-read result code checking logic (`issue#14151 <http://tracker.ceph.com/issues/14151>`_, `pr#7016 <http://github.com/ceph/ceph/pull/7016>`_, xie xingguo) -* osd: fix temp-clearing (David Zafman) -* osd: fix temp object removal after upgrade (`issue#13862 <http://tracker.ceph.com/issues/13862>`_, `pr#6976 <http://github.com/ceph/ceph/pull/6976>`_, David Zafman) -* osd: fix tick relevant issues (`pr#8369 <http://github.com/ceph/ceph/pull/8369>`_, xie xingguo) -* osd: fix trivial scrub bug (`pr#6533 <http://github.com/ceph/ceph/pull/6533>`_, Li Wang) -* osd: fix two scrub relevant issues (`pr#8462 <http://github.com/ceph/ceph/pull/8462>`_, xie xingguo) -* osd: fix unnecessary object promotion when deleting from cache pool (`issue#13894 <http://tracker.ceph.com/issues/13894>`_, `pr#7537 <http://github.com/ceph/ceph/pull/7537>`_, Igor Fedotov) -* osd: fix wip (l_osd_op_wip) perf counter and remove repop_map (`pr#7077 <http://github.com/ceph/ceph/pull/7077>`_, Xinze Chi) -* osd: fix wrongly placed assert and some cleanups (`pr#6766 <http://github.com/ceph/ceph/pull/6766>`_, xiexingguo, xie xingguo) -* osd: fix wrong return type of find_osd_on_ip() (`issue#14872 <http://tracker.ceph.com/issues/14872>`_, `pr#7812 <http://github.com/ceph/ceph/pull/7812>`_, xie xingguo) -* osd: fix wrong use of right parenthesis in localized read logic (`pr#6566 <http://github.com/ceph/ceph/pull/6566>`_, Jie Wang) -* osd: force promotion for ops EC can't handle (Zhiqiang Wang) -* osd: ghobject_t: use ! instead of @ as a separator (`pr#7595 <http://github.com/ceph/ceph/pull/7595>`_, Sage Weil) -* osd: handle dup pg_create that races with pg deletion (`pr#8033 <http://github.com/ceph/ceph/pull/8033>`_, Sage Weil) -* osd: handle log split with overlapping entries (#11358 Samuel Just) -* osd: ignore non-existent osds in unfound calc (#10976 Mykola Golub) -* osd: improve behavior on machines with large memory pages (Steve Capper) -* osd: improve temperature calculation for cache tier agent (`pr#4737 <http://github.com/ceph/ceph/pull/4737>`_, MingXin Liu) -* osd: include a temp namespace within each collection/pgid (Sage Weil) -* osd: increase default max open files (Owen Synge) -* osd: initialize last_recalibrate field at construction (`pr#8071 <http://github.com/ceph/ceph/pull/8071>`_, xie xingguo) -* osd: init started to 0 (`issue#13206 <http://tracker.ceph.com/issues/13206>`_, `pr#6107 <http://github.com/ceph/ceph/pull/6107>`_, Sage Weil) -* osd: KeyValueStore: don't queue NULL context (`pr#6783 <http://github.com/ceph/ceph/pull/6783>`_, Haomai Wang) -* osd: KeyValueStore: fix return code of mkfs (`pr#7036 <http://github.com/ceph/ceph/pull/7036>`_, xie xingguo) -* osd: KeyValueStore: fix the name's typo of keyvaluestore_default_strip_size (`pr#6375 <http://github.com/ceph/ceph/pull/6375>`_, Zhi Zhang) -* osd: KeyValueStore: fix wrongly placed assert (`issue#14176 <http://tracker.ceph.com/issues/14176>`_, `issue#14178 <http://tracker.ceph.com/issues/14178>`_, `pr#7047 <http://github.com/ceph/ceph/pull/7047>`_, xie xingguo) -* osd: keyvaluestore: misc fixes (Varada Kari) -* osd: kstore: fix a race condition in _txc_finish() (`pr#7804 <http://github.com/ceph/ceph/pull/7804>`_, Jianjian Huo) -* osd: kstore: latency breakdown (`pr#7850 <http://github.com/ceph/ceph/pull/7850>`_, James Liu) -* osd: kstore: several small fixes (`issue#14351 <http://tracker.ceph.com/issues/14351>`_, `issue#14352 <http://tracker.ceph.com/issues/14352>`_, `pr#7213 <http://github.com/ceph/ceph/pull/7213>`_, xie xingguo) -* osd: kstore: small fixes to kstore (`issue#14204 <http://tracker.ceph.com/issues/14204>`_, `pr#7095 <http://github.com/ceph/ceph/pull/7095>`_, xie xingguo) -* osd: kstore: sync up kstore with recent bluestore updates (`pr#7681 <http://github.com/ceph/ceph/pull/7681>`_, Jianjian Huo) -* osd: low and high speed flush modes (Mingxin Liu) -* osd: make backend and block device code a bit more generic (`pr#6759 <http://github.com/ceph/ceph/pull/6759>`_, Sage Weil) -* osd: make list_missing query missing_loc.needs_recovery_map (`pr#6298 <http://github.com/ceph/ceph/pull/6298>`_, Guang Yang) -* osd: make suicide timeouts individually configurable (Samuel Just) -* osdmap: remove unused local variables (`pr#6864 <http://github.com/ceph/ceph/pull/6864>`_, luo kexue) -* osdmap: rm nonused variable (`pr#8423 <http://github.com/ceph/ceph/pull/8423>`_, Wei Jin) -* osd: memstore: fix alignment of Page for test_pageset (`pr#7587 <http://github.com/ceph/ceph/pull/7587>`_, Casey Bodley) -* osd: memstore: fix two bugs (`pr#6963 <http://github.com/ceph/ceph/pull/6963>`_, Casey Bodley, Sage Weil) -* osd: merge local_t and op_t txn to single one (`pr#6439 <http://github.com/ceph/ceph/pull/6439>`_, Xinze Chi) -* osd: merge multiple setattr calls into a setattrs call (Xinxin Shu) -* osd: min_write_recency_for_promote & min_read_recency_for_promote are tiering only (`pr#8081 <http://github.com/ceph/ceph/pull/8081>`_, huanwen ren) -* osd: misc FileStore fixes (`issue#14192 <http://tracker.ceph.com/issues/14192>`_, `issue#14188 <http://tracker.ceph.com/issues/14188>`_, `issue#14194 <http://tracker.ceph.com/issues/14194>`_, `issue#14187 <http://tracker.ceph.com/issues/14187>`_, `issue#14186 <http://tracker.ceph.com/issues/14186>`_, `pr#7059 <http://github.com/ceph/ceph/pull/7059>`_, xie xingguo) -* osd: misc fixes (Ning Yao, Kefu Chai, Xinze Chi, Zhiqiang Wang, Jianpeng Ma) -* osd: misc optimization for map utilization (`pr#6950 <http://github.com/ceph/ceph/pull/6950>`_, Ning Yao) -* osd, mon: fix exit issue (`pr#7420 <http://github.com/ceph/ceph/pull/7420>`_, Jiaying Ren) -* osd,mon: log leveldb and rocksdb to ceph log (`pr#6921 <http://github.com/ceph/ceph/pull/6921>`_, Sage Weil) -* osd: more fixes for incorrectly dirtying info; resend reply for duplicated scrub-reserve req (`pr#8291 <http://github.com/ceph/ceph/pull/8291>`_, xie xingguo) -* osd: move newest decode version of MOSDOp and MOSDOpReply to the front (`pr#6642 <http://github.com/ceph/ceph/pull/6642>`_, Jacek J. Łakis) -* osd: move scrub in OpWQ (Samuel Just) -* osd: new and delete ObjectStore::Transaction in a function is not necessary (`pr#6299 <http://github.com/ceph/ceph/pull/6299>`_, Ruifeng Yang) -* osd: newstore: misc updates (including kv and os/fs stuff) (`pr#6609 <http://github.com/ceph/ceph/pull/6609>`_, Sage Weil) -* osd: newstore prototype (Sage Weil) -* osd: note down the number of missing clones (`pr#6654 <http://github.com/ceph/ceph/pull/6654>`_, Kefu Chai) -* osd: ObjectStore internal API refactor (Sage Weil) -* osd: Omap small bugs adapted (`pr#6669 <http://github.com/ceph/ceph/pull/6669>`_, Jianpeng Ma, David Zafman) -* osd: optimize clone write path if object-map is enabled (`pr#6403 <http://github.com/ceph/ceph/pull/6403>`_, xinxin shu) -* osd: optimize get_object_context (`pr#6305 <http://github.com/ceph/ceph/pull/6305>`_, Jianpeng Ma) -* osd: optimize MOSDOp/do_op/handle_op (`pr#5211 <http://github.com/ceph/ceph/pull/5211>`_, Jacek J. Lakis) -* osd: optimize scrub subset_last_update calculation (`pr#6518 <http://github.com/ceph/ceph/pull/6518>`_, Li Wang) -* osd: optimize the session_handle_reset function (`issue#14182 <http://tracker.ceph.com/issues/14182>`_, `pr#7054 <http://github.com/ceph/ceph/pull/7054>`_, songbaisen) -* osd: os/chain_xattr: On linux use linux/limits.h for XATTR_NAME_MAX. (`pr#6343 <http://github.com/ceph/ceph/pull/6343>`_, John Coyle) -* osd/OSD.cc: finish full_map_request every MOSDMap message. (`issue#15130 <http://tracker.ceph.com/issues/15130>`_, `pr#8147 <http://github.com/ceph/ceph/pull/8147>`_, Xiaoxi Chen) -* osd/OSD: fix build_past_intervals_parallel (`pr#8215 <http://github.com/ceph/ceph/pull/8215>`_, David Zafman) -* osd/OSDMap: fix typo in summarize_mapping_stats (`pr#8088 <http://github.com/ceph/ceph/pull/8088>`_, Sage Weil) -* osd: OSDMap: reset osd_primary_affinity shared_ptr when deepish_copy_from (`issue#14686 <http://tracker.ceph.com/issues/14686>`_, `pr#7553 <http://github.com/ceph/ceph/pull/7553>`_, Xinze Chi) -* osd: OSDService: Fix typo in osdmap comment (`pr#7275 <http://github.com/ceph/ceph/pull/7275>`_, Brad Hubbard) -* osd: os: skip checking pg_meta object existance in FileStore (`pr#6870 <http://github.com/ceph/ceph/pull/6870>`_, Ning Yao) -* osd: partial revert of "ReplicatedPG: result code not correctly set in some cases." (`issue#13796 <http://tracker.ceph.com/issues/13796>`_, `pr#6622 <http://github.com/ceph/ceph/pull/6622>`_, Sage Weil) -* osd: peer_features includes self (David Zafman) -* osd: PG::activate(): handle unexpected cached_removed_snaps more gracefully (`issue#14428 <http://tracker.ceph.com/issues/14428>`_, `pr#7309 <http://github.com/ceph/ceph/pull/7309>`_, Alexey Sheplyakov) -* osd/PG: indicate in pg query output whether ignore_history_les would help (`pr#8156 <http://github.com/ceph/ceph/pull/8156>`_, Sage Weil) -* osd: PGLog: clean up read_log (`pr#7092 <http://github.com/ceph/ceph/pull/7092>`_, Jie Wang) -* osd/PGLog: fix warning (`pr#8057 <http://github.com/ceph/ceph/pull/8057>`_, Sage Weil) -* osd: pg_pool_t: add dictionary for pool options (`issue#13077 <http://tracker.ceph.com/issues/13077>`_, `pr#6081 <http://github.com/ceph/ceph/pull/6081>`_, Mykola Golub) -* osd/PG: set epoch_created and parent_split_bits for child pg (`issue#15426 <http://tracker.ceph.com/issues/15426>`_, `pr#8552 <http://github.com/ceph/ceph/pull/8552>`_, Kefu Chai) -* osd: pool size change triggers new interval (#11771 Samuel Just) -* osd: prepopulate needs_recovery_map when only one peer has missing (#9558 Guang Yang) -* osd: prevent osd_recovery_sleep from causing recovery-thread suicide (`pr#7065 <http://github.com/ceph/ceph/pull/7065>`_, Jianpeng Ma) -* osd: probabilistic cache tier promotion throttling (`pr#7465 <http://github.com/ceph/ceph/pull/7465>`_, Sage Weil) -* osd: randomize deep scrubbing (`pr#6550 <http://github.com/ceph/ceph/pull/6550>`_, Dan van der Ster, Herve Rousseau) -* osd: randomize scrub times (#10973 Kefu Chai) -* osd: recovery, peering fixes (#11687 Samuel Just) -* osd: reduce memory consumption of some structs (`pr#6475 <http://github.com/ceph/ceph/pull/6475>`_, Piotr Dałek) -* osd: reduce string use in coll_t::calc_str() (`pr#6505 <http://github.com/ceph/ceph/pull/6505>`_, Igor Podoski) -* osd: refactor scrub and digest recording (Sage Weil) -* osd: refuse first write to EC object at non-zero offset (Jianpeng Ma) -* osd: relax reply order on proxy read (#11211 Zhiqiang Wang) -* osd: release related sources when scrub is interrupted (`pr#6744 <http://github.com/ceph/ceph/pull/6744>`_, Jianpeng Ma) -* osd: release the message throttle when OpRequest unregistered (`issue#14248 <http://tracker.ceph.com/issues/14248>`_, `pr#7148 <http://github.com/ceph/ceph/pull/7148>`_, Samuel Just) -* osd: remove __SWORD_TYPE dependency (`pr#6262 <http://github.com/ceph/ceph/pull/6262>`_, John Coyle) -* osd: remove unused OSDMap::set_weightf() (`issue#14369 <http://tracker.ceph.com/issues/14369>`_, `pr#7231 <http://github.com/ceph/ceph/pull/7231>`_, huanwen ren) -* osd: remove up_thru_pending field, which is never used (`pr#7991 <http://github.com/ceph/ceph/pull/7991>`_, xie xingguo) -* osd: reorder bool fields in PGLog struct (`pr#6279 <http://github.com/ceph/ceph/pull/6279>`_, Piotr Dałek) -* osd: Replace snprintf with faster implementation in eversion_t::get_key_name (`pr#7121 <http://github.com/ceph/ceph/pull/7121>`_, Evgeniy Firsov) -* osd/ReplicatedPG: be more careful about calling publish_stats_to_osd() (`issue#14962 <http://tracker.ceph.com/issues/14962>`_, `pr#8039 <http://github.com/ceph/ceph/pull/8039>`_, Greg Farnum) -* osd: replicatedpg: break out loop if we encounter fatal error during do_pg_op() (`issue#14922 <http://tracker.ceph.com/issues/14922>`_, `pr#7844 <http://github.com/ceph/ceph/pull/7844>`_, xie xingguo) -* osd: ReplicatedPG: clean up unused function (`pr#7211 <http://github.com/ceph/ceph/pull/7211>`_, Xiaowei Chen) -* osd/ReplicatedPG: clear watches on change after applying repops (`issue#15151 <http://tracker.ceph.com/issues/15151>`_, `pr#8163 <http://github.com/ceph/ceph/pull/8163>`_, Sage Weil) -* osd/ReplicatedPG: fix promotion recency logic (`issue#14320 <http://tracker.ceph.com/issues/14320>`_, `pr#6702 <http://github.com/ceph/ceph/pull/6702>`_, Sage Weil) -* osd: ReplicatedPG: remove unused local variables (`issue#13575 <http://tracker.ceph.com/issues/13575>`_, `pr#6360 <http://github.com/ceph/ceph/pull/6360>`_, xiexingguo) -* osd/ReplicatedPG::_rollback_to: update the OMAP flag (`issue#14777 <http://tracker.ceph.com/issues/14777>`_, `pr#8495 <http://github.com/ceph/ceph/pull/8495>`_, Samuel Just) -* osd: repop and lost-unfound overhaul (`pr#7765 <http://github.com/ceph/ceph/pull/7765>`_, Samuel Just) -* osd: require firefly features (David Zafman) -* osd: reset primary and up_primary when building a new past_interval. (`issue#13471 <http://tracker.ceph.com/issues/13471>`_, `pr#6240 <http://github.com/ceph/ceph/pull/6240>`_, xiexingguo) -* osd: resolve boot vs NOUP set + clear race (`pr#7483 <http://github.com/ceph/ceph/pull/7483>`_, Sage Weil) -* osd: scrub: do not assign value if read error (`pr#6568 <http://github.com/ceph/ceph/pull/6568>`_, Li Wang) -* osd/ScrubStore: remove unused function (`pr#8045 <http://github.com/ceph/ceph/pull/8045>`_, Kefu Chai) -* osd: set initial crush weight with more precision (Sage Weil) -* osd: several small cleanups (`pr#7055 <http://github.com/ceph/ceph/pull/7055>`_, xie xingguo) -* osd: SHEC no longer experimental -* osd: shut down if we flap too many times in a short period (`pr#6708 <http://github.com/ceph/ceph/pull/6708>`_, Xiaoxi Chen) -* osd: skip promote for writefull w/ FADVISE_DONTNEED/NOCACHE (`pr#7010 <http://github.com/ceph/ceph/pull/7010>`_, Jianpeng Ma) -* osd: skip promotion for flush/evict op (Zhiqiang Wang) -* osd: slightly reduce actual size of pg_log_entry_t (`pr#6690 <http://github.com/ceph/ceph/pull/6690>`_, Piotr Dałek) -* osd: small fixes to memstore (`issue#14228 <http://tracker.ceph.com/issues/14228>`_, `issue#14229 <http://tracker.ceph.com/issues/14229>`_, `issue#14227 <http://tracker.ceph.com/issues/14227>`_, `pr#7107 <http://github.com/ceph/ceph/pull/7107>`_, xie xingguo) -* osd: stripe over small xattrs to fit in XFS's 255 byte inline limit (Sage Weil, Ning Yao) -* osd: support pool level recovery_priority and recovery_op_priority (`pr#5953 <http://github.com/ceph/ceph/pull/5953>`_, Guang Yang) -* osd: sync object_map on syncfs (Samuel Just) -* osd: take excl lock of op is rw (Samuel Just) -* osd: throttle evict ops (Yunchuan Wen) -* osd: try evicting after flushing is done (`pr#5630 <http://github.com/ceph/ceph/pull/5630>`_, Zhiqiang Wang) -* osd: upgrades must pass through hammer (Sage Weil) -* osd: use a temp object for recovery (Sage Weil) -* osd: use atomic to generate ceph_tid (`pr#7017 <http://github.com/ceph/ceph/pull/7017>`_, Evgeniy Firsov) -* osd: use blkid to collection partition information (Joseph Handzik) -* osd: use optimized is_zero in object_stat_sum_t.is_zero() (`pr#7203 <http://github.com/ceph/ceph/pull/7203>`_, Piotr Dałek) -* osd: use pg id (without shard) when referring the PG (`pr#6236 <http://github.com/ceph/ceph/pull/6236>`_, Guang Yang) -* osd: use SEEK_HOLE / SEEK_DATA for sparse copy (Xinxin Shu) -* osd: utime_t, eversion_t, osd_stat_sum_t encoding optimization (`pr#6902 <http://github.com/ceph/ceph/pull/6902>`_, Xinze Chi) -* osd: WBThrottle cleanups (Jianpeng Ma) -* osd: WeightedPriorityQueue: move to intrusive containers (`pr#7654 <http://github.com/ceph/ceph/pull/7654>`_, Robert LeBlanc) -* osd: write file journal optimization (`pr#6484 <http://github.com/ceph/ceph/pull/6484>`_, Xinze Chi) -* osd: write journal header on clean shutdown (Xinze Chi) -* os/filestore: enlarge getxattr buffer size (Jianpeng Ma) -* os/filestore/FileJournal: set block size via config option (`pr#7628 <http://github.com/ceph/ceph/pull/7628>`_, Sage Weil) -* os/filestore: fix punch hole usage in _zero (`pr#8050 <http://github.com/ceph/ceph/pull/8050>`_, Sage Weil) -* os/filestore: fix result handling logic of destroy_collection (`pr#7721 <http://github.com/ceph/ceph/pull/7721>`_, xie xingguo) -* os/filestore: force lfn attrs to be written atomically, restructure name length limits (`pr#8496 <http://github.com/ceph/ceph/pull/8496>`_, Samuel Just) -* os/filestore: require offset == length == 0 for full object read; add test (`pr#7957 <http://github.com/ceph/ceph/pull/7957>`_, Jianpeng Ma) -* os/fs: fix io_getevents argument (`pr#7355 <http://github.com/ceph/ceph/pull/7355>`_, Jingkai Yuan) -* os/fusestore: add error handling (`pr#7395 <http://github.com/ceph/ceph/pull/7395>`_, xie xingguo) -* os/keyvaluestore: kill KeyValueStore (`pr#7320 <http://github.com/ceph/ceph/pull/7320>`_, Haomai Wang) -* os/kstore: insert new onode to the front position of onode LRU (`pr#7505 <http://github.com/ceph/ceph/pull/7505>`_, xie xingguo) -* os/ObjectStore: add custom move operations for ObjectStore::Transaction (`pr#7303 <http://github.com/ceph/ceph/pull/7303>`_, Casey Bodley) -* os/ObjectStore: add noexcept to ensure move ctor is used (`pr#8421 <http://github.com/ceph/ceph/pull/8421>`_, Kefu Chai) -* os/ObjectStore: fix _update_op for split dest_cid (`pr#8364 <http://github.com/ceph/ceph/pull/8364>`_, Sage Weil) -* os/ObjectStore: implement more efficient get_encoded_bytes() (`pr#7775 <http://github.com/ceph/ceph/pull/7775>`_, Piotr Dałek) -* os/ObjectStore: make device uuid probe output something friendly (`pr#8418 <http://github.com/ceph/ceph/pull/8418>`_, Sage Weil) -* os/ObjectStore: try_move_rename in transaction append and add coverage to store_test (`issue#15205 <http://tracker.ceph.com/issues/15205>`_, `pr#8359 <http://github.com/ceph/ceph/pull/8359>`_, Samuel Just) -* packaging: add build dependency on python devel package (`pr#7205 <http://github.com/ceph/ceph/pull/7205>`_, Josh Durgin) -* packaging: make infernalis -> jewel upgrade work (`issue#15047 <http://tracker.ceph.com/issues/15047>`_, `pr#8034 <http://github.com/ceph/ceph/pull/8034>`_, Nathan Cutler) -* packaging: move cephfs repair tools to ceph-common (`issue#15145 <http://tracker.ceph.com/issues/15145>`_, `pr#8133 <http://github.com/ceph/ceph/pull/8133>`_, Boris Ranto, Ken Dreyer) -* PG: pg down state blocked by osd.x, lost osd.x cannot solve peering stuck (`issue#13531 <http://tracker.ceph.com/issues/13531>`_, `pr#6317 <http://github.com/ceph/ceph/pull/6317>`_, Xiaowei Chen) -* pybind: add ceph_volume_client interface for Manila and similar frameworks (`pr#6205 <http://github.com/ceph/ceph/pull/6205>`_, John Spray) -* pybind: add flock to libcephfs python bindings (`pr#7902 <http://github.com/ceph/ceph/pull/7902>`_, John Spray) -* pybind/cephfs: add symlink and its unit test (`pr#6323 <http://github.com/ceph/ceph/pull/6323>`_, Shang Ding) -* pybind: decode empty string in conf_parse_argv() correctly (`pr#6711 <http://github.com/ceph/ceph/pull/6711>`_, Josh Durgin) -* pybind: Ensure correct python flags are passed (`pr#7663 <http://github.com/ceph/ceph/pull/7663>`_, James Page) -* pybind: fix build failure, remove extraneous semicolon in method (`issue#14371 <http://tracker.ceph.com/issues/14371>`_, `pr#7235 <http://github.com/ceph/ceph/pull/7235>`_, Abhishek Lekshmanan) -* pybind: flag an RBD image as closed regardless of result code (`pr#8005 <http://github.com/ceph/ceph/pull/8005>`_, Jason Dillaman) -* pybind: Implementation of rados_ioctx_snapshot_rollback (`pr#6878 <http://github.com/ceph/ceph/pull/6878>`_, Florent Manens) -* pybind/Makefile.am: Prevent race creating CYTHON_BUILD_DIR (`issue#15276 <http://tracker.ceph.com/issues/15276>`_, `pr#8356 <http://github.com/ceph/ceph/pull/8356>`_, Dan Mick) -* pybind: move cephfs to Cython (`pr#7745 <http://github.com/ceph/ceph/pull/7745>`_, John Spray, Mehdi Abaakouk) -* pybind: pep8 cleanups (Danny Al-Gaaf) -* pybind: port the rbd bindings to Cython (`issue#13115 <http://tracker.ceph.com/issues/13115>`_, `pr#6768 <http://github.com/ceph/ceph/pull/6768>`_, Hector Martin) -* pybind/rados: fix object lifetime issues and other bugs in aio (`pr#7778 <http://github.com/ceph/ceph/pull/7778>`_, Hector Martin) -* pybind/rados: python3 fix (`pr#8331 <http://github.com/ceph/ceph/pull/8331>`_, Mehdi Abaakouk) -* pybind/rados: use __dealloc__ since __del__ is ignored by cython (`pr#7692 <http://github.com/ceph/ceph/pull/7692>`_, Mehdi Abaakouk) -* pybind: remove next() on iterators (`pr#7706 <http://github.com/ceph/ceph/pull/7706>`_, Mehdi Abaakouk) -* pybind: replace __del__ with __dealloc__ for rbd (`pr#7708 <http://github.com/ceph/ceph/pull/7708>`_, Josh Durgin) -* pybind: support ioctx:exec (`pr#6795 <http://github.com/ceph/ceph/pull/6795>`_, Noah Watkins) -* pybind/test_rbd: fix test_create_defaults (`issue#14279 <http://tracker.ceph.com/issues/14279>`_, `pr#7155 <http://github.com/ceph/ceph/pull/7155>`_, Josh Durgin) -* pybind: use correct subdir for rados install-exec rule (`pr#7684 <http://github.com/ceph/ceph/pull/7684>`_, Josh Durgin) -* pycephfs: many fixes for bindings (Haomai Wang) -* python binding of librados with cython (`pr#7621 <http://github.com/ceph/ceph/pull/7621>`_, Mehdi Abaakouk) -* python: use pip instead of python setup.py (`pr#7605 <http://github.com/ceph/ceph/pull/7605>`_, Loic Dachary) -* qa: add workunit to run ceph_test_rbd_mirror (`pr#8221 <http://github.com/ceph/ceph/pull/8221>`_, Josh Durgin) -* qa: disable rbd/qemu-iotests test case 055 on RHEL/CentOSlibrbd: journal replay should honor inter-event dependencies (`issue#14385 <http://tracker.ceph.com/issues/14385>`_, `pr#7272 <http://github.com/ceph/ceph/pull/7272>`_, Jason Dillaman) -* qa: erasure-code benchmark plugin selection (`pr#6685 <http://github.com/ceph/ceph/pull/6685>`_, Loic Dachary) -* qa: fix filelock_interrupt.py test (Yan, Zheng) -* qa: improve ceph-disk tests (Loic Dachary) -* qa: improve docker build layers (Loic Dachary) -* qa/krbd: Expunge generic/247 (`pr#6831 <http://github.com/ceph/ceph/pull/6831>`_, Douglas Fuller) -* qa: run-make-check.sh script (Loic Dachary) -* qa: update rest test cephfs calls (`issue#15309 <http://tracker.ceph.com/issues/15309>`_, `pr#8372 <http://github.com/ceph/ceph/pull/8372>`_, John Spray) -* qa: update rest test cephfs calls (part 2) (`issue#15309 <http://tracker.ceph.com/issues/15309>`_, `pr#8393 <http://github.com/ceph/ceph/pull/8393>`_, John Spray) -* qa/workunits/cephtool/test.sh: false positive fail on /tmp/obj1. (`pr#6837 <http://github.com/ceph/ceph/pull/6837>`_, Robin H. Johnson) -* qa/workunits/cephtool/test.sh: no ./ (`pr#6748 <http://github.com/ceph/ceph/pull/6748>`_, Sage Weil) -* qa/workunits/cephtool/test.sh: wait longer in ceph_watch_start() (`issue#14910 <http://tracker.ceph.com/issues/14910>`_, `pr#7861 <http://github.com/ceph/ceph/pull/7861>`_, Kefu Chai) -* qa/workunits: merge_diff shouldn't attempt to use striping (`issue#14165 <http://tracker.ceph.com/issues/14165>`_, `pr#7041 <http://github.com/ceph/ceph/pull/7041>`_, Jason Dillaman) -* qa/workunits/rados/test.sh: capture stderr too (`pr#8004 <http://github.com/ceph/ceph/pull/8004>`_, Sage Weil) -* qa/workunits/rados/test.sh: test tmap_migrate (`pr#8114 <http://github.com/ceph/ceph/pull/8114>`_, Sage Weil) -* qa/workunits/rbd: do not use object map during read flag testing (`pr#8104 <http://github.com/ceph/ceph/pull/8104>`_, Jason Dillaman) -* qa/workunits/rbd: new online maintenance op tests (`pr#8216 <http://github.com/ceph/ceph/pull/8216>`_, Jason Dillaman) -* qa/workunits/rbd: rbd-nbd test should use sudo for map/unmap ops (`issue#14221 <http://tracker.ceph.com/issues/14221>`_, `pr#7101 <http://github.com/ceph/ceph/pull/7101>`_, Jason Dillaman) -* qa/workunits/rbd: use POSIX function definition (`issue#15104 <http://tracker.ceph.com/issues/15104>`_, `pr#8068 <http://github.com/ceph/ceph/pull/8068>`_, Nathan Cutler) -* qa/workunits/rest/test.py: add confirmation to 'mds setmap' (`issue#14606 <http://tracker.ceph.com/issues/14606>`_, `pr#7982 <http://github.com/ceph/ceph/pull/7982>`_, Sage Weil) -* qa/workunits/rest/test.py: don't use newfs (`pr#8191 <http://github.com/ceph/ceph/pull/8191>`_, Sage Weil) -* qa/workunits/snaps: move snap tests into fs sub-directory (`pr#6496 <http://github.com/ceph/ceph/pull/6496>`_, Yan, Zheng) -* rados: add ceph:: namespace to bufferlist type (`pr#8059 <http://github.com/ceph/ceph/pull/8059>`_, Noah Watkins) -* rados: add --striper option to use libradosstriper (#10759 Sebastien Ponce) -* rados: bench: add --no-verify option to improve performance (Piotr Dalek) -* rados: bench: fix off-by-one to avoid writing past object_size (`pr#6677 <http://github.com/ceph/ceph/pull/6677>`_, Tao Chang) -* rados bench: misc fixes (Dmitry Yatsushkevich) -* rados: fix bug for write bench (`pr#7851 <http://github.com/ceph/ceph/pull/7851>`_, James Liu) -* rados: fix error message on failed pool removal (Wido den Hollander) -* radosgw-admin: add 'bucket check' function to repair bucket index (Yehuda Sadeh) -* radosgw-admin: allow (`pr#8529 <http://github.com/ceph/ceph/pull/8529>`_, Orit Wasserman) -* radosgw-admin: Checking the legality of the parameters (`issue#13018 <http://tracker.ceph.com/issues/13018>`_, `pr#5879 <http://github.com/ceph/ceph/pull/5879>`_, Qiankun Zheng) -* radosgw-admin: Create --secret-key alias for --secret (`issue#5821 <http://tracker.ceph.com/issues/5821>`_, `pr#5335 <http://github.com/ceph/ceph/pull/5335>`_, Yuan Zhou) -* radosgw-admin: fix for 'realm pull' (`pr#8404 <http://github.com/ceph/ceph/pull/8404>`_, Casey Bodley) -* radosgw-admin: fix subuser modify output (#12286 Guce) -* radosgw-admin: metadata list user should return an empty list when user pool is empty (`issue#13596 <http://tracker.ceph.com/issues/13596>`_, `pr#6465 <http://github.com/ceph/ceph/pull/6465>`_, Orit Wasserman) -* radosgw-admin: 'period commit' supplies user-readable error messages (`pr#8264 <http://github.com/ceph/ceph/pull/8264>`_, Casey Bodley) -* rados: handle --snapid arg properly (Abhishek Lekshmanan) -* rados: implement rm --force option to force remove when full (`pr#6202 <http://github.com/ceph/ceph/pull/6202>`_, Xiaowei Chen) -* rados: improve bench buffer handling, performance (Piotr Dalek) -* rados: misc bench fixes (Dmitry Yatsushkevich) -* rados: new options for write benchmark (`pr#6340 <http://github.com/ceph/ceph/pull/6340>`_, Joaquim Rocha) -* rados: new pool import implementation (John Spray) -* rados: translate errno to string in CLI (#10877 Kefu Chai) -* rbd: accept map options config option (Ilya Dryomov) -* rbd: accept --user, refuse -i command-line optionals (`pr#6590 <http://github.com/ceph/ceph/pull/6590>`_, Ilya Dryomov) -* rbd: add disk usage tool (#7746 Jason Dillaman) -* rbd: additional validation for striping parameters (`pr#6914 <http://github.com/ceph/ceph/pull/6914>`_, Na Xie) -* rbd: add missing command aliases to refactored CLI (`issue#13806 <http://tracker.ceph.com/issues/13806>`_, `pr#6606 <http://github.com/ceph/ceph/pull/6606>`_, Jason Dillaman) -* rbd: add --object-size option, deprecate --order (`issue#12112 <http://tracker.ceph.com/issues/12112>`_, `pr#6830 <http://github.com/ceph/ceph/pull/6830>`_, Vikhyat Umrao) -* rbd: add pool name to disambiguate rbd admin socket commands (`pr#6904 <http://github.com/ceph/ceph/pull/6904>`_, wuxiangwei) -* rbd: add RBD pool mirroring configuration API + CLI (`pr#6129 <http://github.com/ceph/ceph/pull/6129>`_, Jason Dillaman) -* rbd: add support for mirror image promotion/demotion/resync (`pr#8138 <http://github.com/ceph/ceph/pull/8138>`_, Jason Dillaman) -* rbd: allow librados to prune the command-line for config overrides (`issue#15250 <http://tracker.ceph.com/issues/15250>`_, `pr#8282 <http://github.com/ceph/ceph/pull/8282>`_, Jason Dillaman) -* rbd: allow unmapping by spec (Ilya Dryomov) -* rbd: cli: fix arg parsing with --io-pattern (Dmitry Yatsushkevich) -* rbd: clone operation should default to image format 2 (`pr#8119 <http://github.com/ceph/ceph/pull/8119>`_, Jason Dillaman) -* rbd: correct an output string for merge-diff (`pr#7046 <http://github.com/ceph/ceph/pull/7046>`_, Kongming Wu) -* rbd: deprecate image format 1 (`pr#7841 <http://github.com/ceph/ceph/pull/7841>`_, Jason Dillaman) -* rbd: deprecate --new-format option (Jason Dillman) -* rbd: dynamically generated bash completion (`issue#13494 <http://tracker.ceph.com/issues/13494>`_, `pr#6316 <http://github.com/ceph/ceph/pull/6316>`_, Jason Dillaman) -* rbd: fix build with "--without-rbd" (`issue#14058 <http://tracker.ceph.com/issues/14058>`_, `pr#6899 <http://github.com/ceph/ceph/pull/6899>`_, Piotr Dałek) -* rbd: fix clone isssue (`issue#13553 <http://tracker.ceph.com/issues/13553>`_, `pr#6334 <http://github.com/ceph/ceph/pull/6334>`_, xinxin shu) -* rbd: fix error messages (#2862 Rajesh Nambiar) -* rbd: fixes for refactored CLI and related tests (`pr#6738 <http://github.com/ceph/ceph/pull/6738>`_, Ilya Dryomov) -* rbd: fix init-rbdmap CMDPARAMS (`issue#13214 <http://tracker.ceph.com/issues/13214>`_, `pr#6109 <http://github.com/ceph/ceph/pull/6109>`_, Sage Weil) -* rbd: fix link issues (Jason Dillaman) -* rbd: fix static initialization ordering issues (`pr#6978 <http://github.com/ceph/ceph/pull/6978>`_, Mykola Golub) -* rbd-fuse: image name can not include snap name (`pr#7044 <http://github.com/ceph/ceph/pull/7044>`_, Yongqiang He) -* rbd-fuse: implement mv operation (`pr#6938 <http://github.com/ceph/ceph/pull/6938>`_, wuxiangwei) -* rbd: improve CLI arg parsing, usage (Ilya Dryomov) -* rbd: journal: configuration via conf, cli, api and some fixes (`pr#6665 <http://github.com/ceph/ceph/pull/6665>`_, Mykola Golub) -* rbd: journal reset should disable/re-enable journaling feature (`issue#15097 <http://tracker.ceph.com/issues/15097>`_, `pr#8490 <http://github.com/ceph/ceph/pull/8490>`_, Jason Dillaman) -* rbd: make config changes actually apply (`pr#6520 <http://github.com/ceph/ceph/pull/6520>`_, Mykola Golub) -* rbdmap: add manpage (`issue#15212 <http://tracker.ceph.com/issues/15212>`_, `pr#8224 <http://github.com/ceph/ceph/pull/8224>`_, Nathan Cutler) -* rbdmap: systemd support (`issue#13374 <http://tracker.ceph.com/issues/13374>`_, `pr#6479 <http://github.com/ceph/ceph/pull/6479>`_, Boris Ranto) -* rbd: merge_diff test should use new --object-size parameter instead of --order (`issue#14106 <http://tracker.ceph.com/issues/14106>`_, `pr#6972 <http://github.com/ceph/ceph/pull/6972>`_, Na Xie, Jason Dillaman) -* rbd-mirror: asok commands to get status and flush on Mirror and Replayer level (`pr#8235 <http://github.com/ceph/ceph/pull/8235>`_, Mykola Golub) -* rbd-mirror: enabling/disabling pool mirroring should update the mirroring directory (`issue#15217 <http://tracker.ceph.com/issues/15217>`_, `pr#8261 <http://github.com/ceph/ceph/pull/8261>`_, Ricardo Dias) -* rbd-mirror: fix image replay test failures (`pr#8158 <http://github.com/ceph/ceph/pull/8158>`_, Jason Dillaman) -* rbd-mirror: fix long termination due to 30sec wait in main loop (`pr#8185 <http://github.com/ceph/ceph/pull/8185>`_, Mykola Golub) -* rbd-mirror: fix missing increment for iterators (`pr#8352 <http://github.com/ceph/ceph/pull/8352>`_, runsisi) -* rbd-mirror: ImageReplayer async start/stop (`pr#7944 <http://github.com/ceph/ceph/pull/7944>`_, Mykola Golub) -* rbd-mirror: ImageReplayer improvements (`pr#7759 <http://github.com/ceph/ceph/pull/7759>`_, Mykola Golub) -* rbd-mirror: implement ImageReplayer (`pr#7614 <http://github.com/ceph/ceph/pull/7614>`_, Mykola Golub) -* rbd-mirror: initial failover / failback support (`pr#8287 <http://github.com/ceph/ceph/pull/8287>`_, Jason Dillaman) -* rbd-mirror: integrate with image sync state machine (`pr#8079 <http://github.com/ceph/ceph/pull/8079>`_, Jason Dillaman) -* rbd-mirror: make remote context respect env and argv config params (`pr#8182 <http://github.com/ceph/ceph/pull/8182>`_, Mykola Golub) -* rbd-mirror: minor fix-ups for initial skeleton implementation (`pr#7958 <http://github.com/ceph/ceph/pull/7958>`_, Mykola Golub) -* rbd-mirror: prevent enabling/disabling an image's mirroring when not in image mode (`issue#15267 <http://tracker.ceph.com/issues/15267>`_, `pr#8332 <http://github.com/ceph/ceph/pull/8332>`_, Ricardo Dias) -* rbd-mirror: remote to local cluster image sync (`pr#7979 <http://github.com/ceph/ceph/pull/7979>`_, Jason Dillaman) -* rbd-mirror: switch fsid over to mirror uuid (`issue#15238 <http://tracker.ceph.com/issues/15238>`_, `pr#8280 <http://github.com/ceph/ceph/pull/8280>`_, Ricardo Dias) -* rbd-mirror: use pool/image names in asok commands (`pr#8159 <http://github.com/ceph/ceph/pull/8159>`_, Mykola Golub) -* rbd-mirror: use the mirroring directory to detect candidate images (`issue#15142 <http://tracker.ceph.com/issues/15142>`_, `pr#8162 <http://github.com/ceph/ceph/pull/8162>`_, Ricardo Dias) -* rbd-mirror: workaround for intermingled lockdep singletons (`pr#8476 <http://github.com/ceph/ceph/pull/8476>`_, Jason Dillaman) -* rbd: must specify both of stripe-unit and stripe-count when specifying stripingv2 feature (`pr#7026 <http://github.com/ceph/ceph/pull/7026>`_, Donghai Xu) -* rbd-nbd: add copyright (`pr#7166 <http://github.com/ceph/ceph/pull/7166>`_, Li Wang) -* rbd-nbd: fix up return code handling (`pr#7215 <http://github.com/ceph/ceph/pull/7215>`_, Mykola Golub) -* rbd-nbd: network block device (NBD) support for RBD (`pr#6657 <http://github.com/ceph/ceph/pull/6657>`_, Yunchuan Wen, Li Wang) -* rbd-nbd: small improvements in logging and forking (`pr#7127 <http://github.com/ceph/ceph/pull/7127>`_, Mykola Golub) -* rbd: output formatter may not be closed upon error (`issue#13711 <http://tracker.ceph.com/issues/13711>`_, `pr#6706 <http://github.com/ceph/ceph/pull/6706>`_, xie xingguo) -* rbd: rbdmap improvements (`pr#6445 <http://github.com/ceph/ceph/pull/6445>`_, Boris Ranto) -* rbd: rbd order will be place in 22, when set to 0 in the config_opt (`issue#14139 <http://tracker.ceph.com/issues/14139>`_, `issue#14047 <http://tracker.ceph.com/issues/14047>`_, `pr#6886 <http://github.com/ceph/ceph/pull/6886>`_, huanwen ren) -* rbd: rbd-replay-prep and rbd-replay improvements (Jason Dillaman) -* rbd: recognize queue_depth kernel option (Ilya Dryomov) -* rbd: refactor cli command handling (`pr#5987 <http://github.com/ceph/ceph/pull/5987>`_, Jason Dillaman) -* rbd/run_cli_tests.sh: Reflect test failures (`issue#14825 <http://tracker.ceph.com/issues/14825>`_, `pr#7781 <http://github.com/ceph/ceph/pull/7781>`_, Zack Cerza) -* rbd: stripe unit/count set incorrectly from config (`pr#6593 <http://github.com/ceph/ceph/pull/6593>`_, Mykola Golub) -* rbd: striping parameters should support 64bit integers (`pr#6942 <http://github.com/ceph/ceph/pull/6942>`_, Na Xie) -* rbd: support for enabling/disabling mirroring on specific images (`issue#13296 <http://tracker.ceph.com/issues/13296>`_, `pr#8056 <http://github.com/ceph/ceph/pull/8056>`_, Ricardo Dias) -* rbd: support G and T units for CLI (Abhishek Lekshmanan) -* rbd: support negative boolean command-line optionals (`issue#13784 <http://tracker.ceph.com/issues/13784>`_, `pr#6607 <http://github.com/ceph/ceph/pull/6607>`_, Jason Dillaman) -* rbd: unbreak rbd map + cephx_sign_messages option (`pr#6583 <http://github.com/ceph/ceph/pull/6583>`_, Ilya Dryomov) -* rbd: update default image features (`pr#7846 <http://github.com/ceph/ceph/pull/7846>`_, Jason Dillaman) -* rbd: update rbd man page (Ilya Dryomov) -* rbd: update xfstests tests (Douglas Fuller) -* rbd: use default order from configuration when not specified (`pr#6965 <http://github.com/ceph/ceph/pull/6965>`_, Yunchuan Wen) -* rbd: use image-spec and snap-spec in help (Vikhyat Umrao, Ilya Dryomov) -* release-notes: draft v0.94.4 release notes (`pr#5907 <http://github.com/ceph/ceph/pull/5907>`_, Loic Dachary) -* release-notes: draft v0.94.4 release notes (`pr#6195 <http://github.com/ceph/ceph/pull/6195>`_, Loic Dachary) -* release-notes: draft v0.94.4 release notes (`pr#6238 <http://github.com/ceph/ceph/pull/6238>`_, Loic Dachary) -* release-notes: draft v0.94.6 release notes (`issue#13356 <http://tracker.ceph.com/issues/13356>`_, `pr#7689 <http://github.com/ceph/ceph/pull/7689>`_, Abhishek Varshney, Loic Dachary) -* release-notes: draft v10.0.3 release notes (`pr#7592 <http://github.com/ceph/ceph/pull/7592>`_, Loic Dachary) -* release-notes: draft v10.0.4 release notes (`pr#7966 <http://github.com/ceph/ceph/pull/7966>`_, Loic Dachary) -* release-notes: draft v9.2.1 release notes (`issue#13750 <http://tracker.ceph.com/issues/13750>`_, `pr#7694 <http://github.com/ceph/ceph/pull/7694>`_, Abhishek Varshney) -* releases: what is merged where and when ? (`pr#8358 <http://github.com/ceph/ceph/pull/8358>`_, Loic Dachary) -* rest-bench: misc fixes (Shawn Chen) -* rest-bench: support https (#3968 Yuan Zhou) -* rgw: accept data only at the first time in response to a request (`pr#8084 <http://github.com/ceph/ceph/pull/8084>`_, sunspot) -* rgw: add a few more help options in admin interface (`pr#8410 <http://github.com/ceph/ceph/pull/8410>`_, Abhishek Lekshmanan) -* rgw: add a method to purge all associate keys when removing a subuser (`issue#12890 <http://tracker.ceph.com/issues/12890>`_, `pr#6002 <http://github.com/ceph/ceph/pull/6002>`_, Sangdi Xu) -* rgw: add a missing cap type (`pr#6774 <http://github.com/ceph/ceph/pull/6774>`_, Yehuda Sadeh) -* rgw: add an inspection to the field of type when assigning user caps (`pr#6051 <http://github.com/ceph/ceph/pull/6051>`_, Kongming Wu) -* rgw: add bucket request payment feature usage statistics integration (`issue#13834 <http://tracker.ceph.com/issues/13834>`_, `pr#6656 <http://github.com/ceph/ceph/pull/6656>`_, Javier M. Mellid) -* rgw: add compat header for TEMP_FAILURE_RETRY (`pr#6294 <http://github.com/ceph/ceph/pull/6294>`_, John Coyle) -* rgw: add default quota config (`pr#6400 <http://github.com/ceph/ceph/pull/6400>`_, Daniel Gryniewicz) -* rgw: add LifeCycle feature (`pr#6331 <http://github.com/ceph/ceph/pull/6331>`_, Ji Chen) -* rgw: add max multipart upload parts (#12146 Abshishek Dixit) -* rgw: add missing error code for admin op API (`pr#7037 <http://github.com/ceph/ceph/pull/7037>`_, Dunrong Huang) -* rgw: add missing headers to Swift container details (#10666 Ahmad Faheem, Dmytro Iurchenko) -* rgw: add stats to headers for account GET (#10684 Yuan Zhou) -* rgw: adds the radosgw-admin sync status command that gives a human readable status of the sync process at a specific zone (`pr#8030 <http://github.com/ceph/ceph/pull/8030>`_, Yehuda Sadeh) -* rgw: add support for caching of Keystone admin token. (`pr#7630 <http://github.com/ceph/ceph/pull/7630>`_, Radoslaw Zarzynski) -* rgw: add support for "end_marker" parameter for GET on Swift account. (`issue#10682 <http://tracker.ceph.com/issues/10682>`_, `pr#4216 <http://github.com/ceph/ceph/pull/4216>`_, Radoslaw Zarzynski) -* rgw: add support for getting Swift's DLO without manifest handling (`pr#6206 <http://github.com/ceph/ceph/pull/6206>`_, Radoslaw Zarzynski) -* rgw: add support for metadata upload during PUT on Swift container. (`pr#8002 <http://github.com/ceph/ceph/pull/8002>`_, Radoslaw Zarzynski) -* rgw: add support for Static Large Objects of Swift API (`issue#12886 <http://tracker.ceph.com/issues/12886>`_, `issue#13452 <http://tracker.ceph.com/issues/13452>`_, `pr#6643 <http://github.com/ceph/ceph/pull/6643>`_, Yehuda Sadeh, Radoslaw Zarzynski) -* rgw: add support for system requests over Swift API (`pr#7666 <http://github.com/ceph/ceph/pull/7666>`_, Radoslaw Zarzynski) -* rgw: add Trasnaction-Id to response (Abhishek Dixit) -* rgw: add X-Timestamp for Swift containers (#10938 Radoslaw Zarzynski) -* rgw: add zone delete to rgw-admin help (`pr#8184 <http://github.com/ceph/ceph/pull/8184>`_, Abhishek Lekshmanan) -* rgw: adjust error code when bucket does not exist in copy operation (`issue#14975 <http://tracker.ceph.com/issues/14975>`_, `pr#7916 <http://github.com/ceph/ceph/pull/7916>`_, Yehuda Sadeh) -* rgw: adjust the request_uri to support absoluteURI of http request (`issue#12917 <http://tracker.ceph.com/issues/12917>`_, `pr#7675 <http://github.com/ceph/ceph/pull/7675>`_, Wenjun Huang) -* rgw: admin api for retrieving usage info (Ji Chen) (`pr#8031 <http://github.com/ceph/ceph/pull/8031>`_, Yehuda Sadeh, Ji Chen) -* rgw_admin: orphans finish segfaults (`pr#6652 <http://github.com/ceph/ceph/pull/6652>`_, Igor Fedotov) -* rgw-admin: remove unused iterator and fix error message (`pr#8507 <http://github.com/ceph/ceph/pull/8507>`_, Karol Mroz) -* rgw_admin: remove unused parent_period arg (`pr#8411 <http://github.com/ceph/ceph/pull/8411>`_, Abhishek Lekshmanan) -* rgw: Allow an implicit tenant in case of Keystone (`pr#8139 <http://github.com/ceph/ceph/pull/8139>`_, Pete Zaitcev) -* rgw: allow authentication keystone with self signed certs (`issue#14853 <http://tracker.ceph.com/issues/14853>`_, `issue#13422 <http://tracker.ceph.com/issues/13422>`_, `pr#7777 <http://github.com/ceph/ceph/pull/7777>`_, Abhishek Lekshmanan) -* rgw: always check if token is expired (#11367 Anton Aksola, Riku Lehto) -* rgw: approximate AmazonS3 HostId error field. (`pr#7444 <http://github.com/ceph/ceph/pull/7444>`_, Robin H. Johnson) -* rgw: aws4 subdomain calling bugfix (`issue#15369 <http://tracker.ceph.com/issues/15369>`_, `pr#8472 <http://github.com/ceph/ceph/pull/8472>`_, Javier M. Mellid) -* rgw:bucket link now set the bucket.instance acl (bug fix) (`issue#11076 <http://tracker.ceph.com/issues/11076>`_, `pr#8037 <http://github.com/ceph/ceph/pull/8037>`_, Zengran Zhang) -* rgw: bucket request payment support (`issue#13427 <http://tracker.ceph.com/issues/13427>`_, `pr#6214 <http://github.com/ceph/ceph/pull/6214>`_, Javier M. Mellid) -* rgw: Bug fix for mtime anomalies in RadosGW and other places (`pr#7328 <http://github.com/ceph/ceph/pull/7328>`_, Adam C. Emerson, Casey Bodley) -* rgw: build-related fixes (`pr#8076 <http://github.com/ceph/ceph/pull/8076>`_, Yehuda Sadeh, Matt Benjamin) -* rgw: calculate payload hash in RGWPutObj_ObjStore only when necessary. (`pr#7869 <http://github.com/ceph/ceph/pull/7869>`_, Radoslaw Zarzynski) -* [rgw] Check return code in RGWFileHandle::write (`pr#7875 <http://github.com/ceph/ceph/pull/7875>`_, Brad Hubbard) -* rgw: check the return value when call fe->run() (`issue#14585 <http://tracker.ceph.com/issues/14585>`_, `pr#7457 <http://github.com/ceph/ceph/pull/7457>`_, wei qiaomiao) -* rgw: clarify the error message when trying to create an existed user (`pr#5938 <http://github.com/ceph/ceph/pull/5938>`_, Zeqiang Zhuang) -* rgw: cleanups to comments and messages (`pr#7633 <http://github.com/ceph/ceph/pull/7633>`_, Pete Zaitcev) -* rgw: content length (`issue#13582 <http://tracker.ceph.com/issues/13582>`_, `pr#6975 <http://github.com/ceph/ceph/pull/6975>`_, Yehuda Sadeh) -* rgw: conversion tool to repair broken multipart objects (#12079 Yehuda Sadeh) -* rgw: convert plain object to versioned (with null version) when removing (`issue#15243 <http://tracker.ceph.com/issues/15243>`_, `pr#8268 <http://github.com/ceph/ceph/pull/8268>`_, Yehuda Sadeh) -* rgw: delete default zone (`pr#7005 <http://github.com/ceph/ceph/pull/7005>`_, YankunLi) -* rgw: document layout of pools and objects (Pete Zaitcev) -* rgw: do not abort radowgw server when using admin op API with bad parameters (`issue#14190 <http://tracker.ceph.com/issues/14190>`_, `issue#14191 <http://tracker.ceph.com/issues/14191>`_, `pr#7063 <http://github.com/ceph/ceph/pull/7063>`_, Dunrong Huang) -* rgw: do not enclose bucket header in quotes (#11860 Wido den Hollander) -* rgw: do not prefetch data for HEAD requests (Guang Yang) -* rgw: do not preserve ACLs when copying object (#12370 Yehuda Sadeh) -* rgw: Do not send a Content-Type on a '304 Not Modified' response (`issue#15119 <http://tracker.ceph.com/issues/15119>`_, `pr#8253 <http://github.com/ceph/ceph/pull/8253>`_, Wido den Hollander) -* rgw: do not set content-type if length is 0 (#11091 Orit Wasserman) -* rgw: don't clobber bucket/object owner when setting ACLs (#10978 Yehuda Sadeh) -* rgw: don't use end_marker for namespaced object listing (#11437 Yehuda Sadeh) -* rgw: don't use rgw_socket_path if frontend is configured (#11160 Yehuda Sadeh) -* rgw: don't use s->bucket for metadata api path entry (`issue#14549 <http://tracker.ceph.com/issues/14549>`_, `pr#7408 <http://github.com/ceph/ceph/pull/7408>`_, Yehuda Sadeh) -* rgw: Drop a debugging message (`pr#7280 <http://github.com/ceph/ceph/pull/7280>`_, Pete Zaitcev) -* rgw: drop permissions of rgw/civetweb after startup (`issue#13600 <http://tracker.ceph.com/issues/13600>`_, `pr#8019 <http://github.com/ceph/ceph/pull/8019>`_, Karol Mroz) -* rgw: Drop unused usage_exit from rgw_admin.cc (`pr#7632 <http://github.com/ceph/ceph/pull/7632>`_, Pete Zaitcev) -* rgw: enforce Content-Length for POST on Swift cont/obj (#10661 Radoslaw Zarzynski) -* rgw: error out if frontend did not send all data (#11851 Yehuda Sadeh) -* rgw: expose the number of unhealthy workers through admin socket (Guang Yang) -* rgw: extend rgw_extended_http_attrs to affect Swift accounts and containers as well (`pr#5969 <http://github.com/ceph/ceph/pull/5969>`_, Radoslaw Zarzynski) -* rgw: fail if parts not specified on multipart upload (#11435 Yehuda Sadeh) -* rgw: fcgi should include acconfig (`pr#7760 <http://github.com/ceph/ceph/pull/7760>`_, Abhishek Lekshmanan) -* rgw_file: set owner uid, gid, and Unix mode on new objects (`pr#8321 <http://github.com/ceph/ceph/pull/8321>`_, Matt Benjamin) -* rgw: fix a glaring syntax error (`pr#6888 <http://github.com/ceph/ceph/pull/6888>`_, Pavan Rallabhandi) -* rgw: fix assignment of copy obj attributes (#11563 Yehuda Sadeh) -* rgw: fix a typo in error message (`pr#8434 <http://github.com/ceph/ceph/pull/8434>`_, Abhishek Lekshmanan) -* rgw: fix a typo in init-radosgw (`pr#6817 <http://github.com/ceph/ceph/pull/6817>`_, Zhi Zhang) -* rgw: fix broken stats in container listing (#11285 Radoslaw Zarzynski) -* rgw: fix bug in domain/subdomain splitting (Robin H. Johnson) -* rgw: fix casing of Content-Type header (Robin H. Johnson) -* rgw: fix civetweb max threads (#10243 Yehuda Sadeh) -* rgw: fix compilation warning (`pr#7160 <http://github.com/ceph/ceph/pull/7160>`_, Yehuda Sadeh) -* rgw: fix compiling error (`pr#8394 <http://github.com/ceph/ceph/pull/8394>`_, xie xingguo) -* rgw: fix Connection: header handling (#12298 Wido den Hollander) -* rgw: fix copy metadata, support X-Copied-From for swift (#10663 Radoslaw Zarzynski) -* rgw: fix data corruptions race condition (#11749 Wuxingyi) -* rgw: fix decoding of X-Object-Manifest from GET on Swift DLO (Radslow Rzarzynski) -* rgw: fixes for per-period metadata logs (`pr#7827 <http://github.com/ceph/ceph/pull/7827>`_, Casey Bodley) -* rgw: fix GET on swift account when limit == 0 (#10683 Radoslaw Zarzynski) -* rgw: fix handling empty metadata items on Swift container (#11088 Radoslaw Zarzynski) -* rgw: fix JSON response when getting user quota (#12117 Wuxingyi) -* rgw: fix locator for objects starting with _ (#11442 Yehuda Sadeh) -* rgw: fix lockdep false positive (`pr#8284 <http://github.com/ceph/ceph/pull/8284>`_, Yehuda Sadeh) -* rgw: fix log rotation (Wuxingyi) -* rgw: fix mdlog (`pr#8183 <http://github.com/ceph/ceph/pull/8183>`_, Orit Wasserman) -* rgw: fix mulitipart upload in retry path (#11604 Yehuda Sadeh) -* rgw: fix objects can not be displayed which object name does not cont… (`issue#12963 <http://tracker.ceph.com/issues/12963>`_, `pr#5738 <http://github.com/ceph/ceph/pull/5738>`_, Weijun Duan) -* rgw: fix openssl linkage (`pr#6513 <http://github.com/ceph/ceph/pull/6513>`_, Yehuda Sadeh) -* rgw: fix partial read issue in rgw_admin and rgw_tools (`pr#6761 <http://github.com/ceph/ceph/pull/6761>`_, Jiaying Ren) -* rgw: fix problem deleting objects begining with double underscores (`issue#15318 <http://tracker.ceph.com/issues/15318>`_, `pr#8488 <http://github.com/ceph/ceph/pull/8488>`_, Orit Wasserman) -* rgw: fix quota enforcement on POST (#11323 Sergey Arkhipov) -* rgw: fix reload on non Debian systems. (`pr#6482 <http://github.com/ceph/ceph/pull/6482>`_, Hervé Rousseau) -* rgw: fix reset_loc (#11974 Yehuda Sadeh) -* rgw: fix response of delete expired objects (`issue#13469 <http://tracker.ceph.com/issues/13469>`_, `pr#6228 <http://github.com/ceph/ceph/pull/6228>`_, Yuan Zhou) -* rgw: fix return code on missing upload (#11436 Yehuda Sadeh) -* rgw: Fix subuser harder with tenants (`pr#7618 <http://github.com/ceph/ceph/pull/7618>`_, Pete Zaitcev) -* rgw: fix swift API returning incorrect account metadata (`issue#13140 <http://tracker.ceph.com/issues/13140>`_, `pr#6047 <http://github.com/ceph/ceph/pull/6047>`_, Sangdi Xu) -* rgw: fix sysvinit script -* rgw: fix sysvinit script w/ multiple instances (Sage Weil, Pavan Rallabhandi) -* rgw: fix the build failure (`pr#6927 <http://github.com/ceph/ceph/pull/6927>`_, Kefu Chai) -* rgw: fix typo in RGWHTTPClient::process error message (`pr#6424 <http://github.com/ceph/ceph/pull/6424>`_, Brad Hubbard) -* rgw: fix wrong check for parse() return (`pr#6797 <http://github.com/ceph/ceph/pull/6797>`_, Dunrong Huang) -* rgw: fix wrong etag calculation during POST on S3 bucket. (`issue#11241 <http://tracker.ceph.com/issues/11241>`_, `pr#6030 <http://github.com/ceph/ceph/pull/6030>`_, Radoslaw Zarzynski) -* rgw: fix wrong handling of limit=0 during listing of Swift account. (`issue#14903 <http://tracker.ceph.com/issues/14903>`_, `pr#7821 <http://github.com/ceph/ceph/pull/7821>`_, Radoslaw Zarzynski) -* rgw: force content_type for swift bucket stats requests (#12095 Orit Wasserman) -* rgw: force content type header on responses with no body (#11438 Orit Wasserman) -* rgw: generate Date header for civetweb (#10873 Radoslaw Zarzynski) -* rgw: generate new object tag when setting attrs (#11256 Yehuda Sadeh) -* rgw: highres time stamps (`pr#8108 <http://github.com/ceph/ceph/pull/8108>`_, Yehuda Sadeh, Adam C. Emerson, Matt Benjamin) -* rgw: improve content-length env var handling (#11419 Robin H. Johnson) -* rgw: improved support for swift account metadata (Radoslaw Zarzynski) -* rgw: improve error handling in S3/Keystone integration (`pr#7597 <http://github.com/ceph/ceph/pull/7597>`_, Radoslaw Zarzynski) -* rgw: improve handling of already removed buckets in expirer (Radoslaw Rzarzynski) -* rgw: increase verbosity level on RGWObjManifest line (`pr#7285 <http://github.com/ceph/ceph/pull/7285>`_, magicrobotmonkey) -* rgw: indexless (`pr#7786 <http://github.com/ceph/ceph/pull/7786>`_, Yehuda Sadeh) -* rgw: issue aio for first chunk before flush cached data (#11322 Guang Yang) -* rgw: Jewel nfs fixes 3 (`pr#8460 <http://github.com/ceph/ceph/pull/8460>`_, Matt Benjamin) -* rgw: keystone v3 (`pr#7719 <http://github.com/ceph/ceph/pull/7719>`_, Mark Barnes, Radoslaw Zarzynski) -* rgw: ldap fixes (`pr#8168 <http://github.com/ceph/ceph/pull/8168>`_, Matt Benjamin) -* rgw_ldap: make ldap.h inclusion conditional (`pr#8500 <http://github.com/ceph/ceph/pull/8500>`_, Matt Benjamin) -* rgw: ldap (Matt Benjamin) (`pr#7985 <http://github.com/ceph/ceph/pull/7985>`_, Matt Benjamin) -* rgw: let radosgw-admin bucket stats return a standard josn (`pr#7029 <http://github.com/ceph/ceph/pull/7029>`_, Ruifeng Yang) -* rgw: link against system openssl (instead of dlopen at runtime) (`pr#6419 <http://github.com/ceph/ceph/pull/6419>`_, Sage Weil) -* rgw: link civetweb with openssl (Sage, Marcus Watts) (`pr#7825 <http://github.com/ceph/ceph/pull/7825>`_, Marcus Watts, Sage Weil) -* rgw: link payer info to usage logging (`pr#7918 <http://github.com/ceph/ceph/pull/7918>`_, Yehuda Sadeh, Javier M. Mellid) -* rgw: log to /var/log/ceph instead of /var/log/radosgw -* rgw: make init script wait for radosgw to stop (#11140 Dmitry Yatsushkevich) -* rgw: make max put size configurable (#6999 Yuan Zhou) -* rgw: make quota/gc threads configurable (#11047 Guang Yang) -* rgw: make read user buckets backward compat (#10683 Radoslaw Zarzynski) -* rgw: mdlog trim add usage prompt (`pr#6059 <http://github.com/ceph/ceph/pull/6059>`_, Weijun Duan) -* rgw: merge manifests properly with prefix override (#11622 Yehuda Sadeh) -* rgw: modify command stucking when operating radosgw-admin metadata list user (`pr#7032 <http://github.com/ceph/ceph/pull/7032>`_, Peiyang Liu) -* rgw: modify documents and help infos' descriptions to the usage of option date when executing command "log show" (`pr#6080 <http://github.com/ceph/ceph/pull/6080>`_, Kongming Wu) -* rgw: modify the conditional statement in parse_metadata_key method. (`pr#5875 <http://github.com/ceph/ceph/pull/5875>`_, Zengran Zhang) -* rgw: move signal.h dependency from rgw_front.h (`pr#7678 <http://github.com/ceph/ceph/pull/7678>`_, Matt Benjamin) -* rgw: Multipart ListPartsResult ETag quotes (`issue#15334 <http://tracker.ceph.com/issues/15334>`_, `pr#8387 <http://github.com/ceph/ceph/pull/8387>`_, Robin H. Johnson) -* rgw: multiple improvements regarding etag calculation for SLO/DLO of Swift API. (`pr#7764 <http://github.com/ceph/ceph/pull/7764>`_, Radoslaw Zarzynski) -* rgw: multiple Swift API compliance improvements for TempURL (Radoslaw Zarzynsk) (`issue#14806 <http://tracker.ceph.com/issues/14806>`_, `issue#11163 <http://tracker.ceph.com/issues/11163>`_, `pr#7891 <http://github.com/ceph/ceph/pull/7891>`_, Radoslaw Zarzynski) -* rgw: multisite fixes (`pr#8013 <http://github.com/ceph/ceph/pull/8013>`_, Yehuda Sadeh) -* rgw: multitenancy support (`pr#6784 <http://github.com/ceph/ceph/pull/6784>`_, Yehuda Sadeh, Pete Zaitcev) -* rgw: new multisite merge (`issue#14549 <http://tracker.ceph.com/issues/14549>`_, `pr#7709 <http://github.com/ceph/ceph/pull/7709>`_, Yehuda Sadeh, Orit Wasserman, Casey Bodley, Daniel Gryniewicz) -* rgw: only scan for objects not in a namespace (#11984 Yehuda Sadeh) -* rgw: orphan detection tool (Yehuda Sadeh) -* rgw: Parse --subuser better (`pr#7279 <http://github.com/ceph/ceph/pull/7279>`_, Pete Zaitcev) -* rgw: pass in civetweb configurables (#10907 Yehuda Sadeh) -* rgw: prevent anonymous user from reading bucket with authenticated read ACL (`issue#13207 <http://tracker.ceph.com/issues/13207>`_, `pr#6057 <http://github.com/ceph/ceph/pull/6057>`_, root) -* rgw: radosgw-admin bucket check --fix not work (`pr#7093 <http://github.com/ceph/ceph/pull/7093>`_, Weijun Duan) -* rgw: rectify 202 Accepted in PUT response (#11148 Radoslaw Zarzynski) -* rgw: refuse to calculate digest when the s3 secret key is empty (`issue#13133 <http://tracker.ceph.com/issues/13133>`_, `pr#6045 <http://github.com/ceph/ceph/pull/6045>`_, Sangdi Xu) -* rgw: remove duplicated code in RGWRados::get_bucket_info() (`pr#7413 <http://github.com/ceph/ceph/pull/7413>`_, liyankun) -* rgw: remove extra check in RGWGetObj::execute (`issue#12352 <http://tracker.ceph.com/issues/12352>`_, `pr#5262 <http://github.com/ceph/ceph/pull/5262>`_, Javier M. Mellid) -* rgw: remove meta file after deleting bucket (#11149 Orit Wasserman) -* rgw: remove trailing :port from HTTP_HOST header (Sage Weil) -* rgw: Remove unused code in PutMetadataAccount:execute (`pr#6668 <http://github.com/ceph/ceph/pull/6668>`_, Pete Zaitcev) -* rgw: remove unused variable in RGWPutMetadataBucket::execute (`pr#6735 <http://github.com/ceph/ceph/pull/6735>`_, Radoslaw Zarzynski) -* rgw: remove unused vector (`pr#7990 <http://github.com/ceph/ceph/pull/7990>`_, Na Xie) -* rgw: reset return code in when iterating over the bucket the objects (`issue#14826 <http://tracker.ceph.com/issues/14826>`_, `pr#7803 <http://github.com/ceph/ceph/pull/7803>`_, Orit Wasserman) -* rgw: retry RGWRemoteMetaLog::read_log_info() while master is down (`pr#8453 <http://github.com/ceph/ceph/pull/8453>`_, Casey Bodley) -* rgw: return 412 on bad limit when listing buckets (#11613 Yehuda Sadeh) -* rgw: Revert "rgw ldap" (`pr#8075 <http://github.com/ceph/ceph/pull/8075>`_, Yehuda Sadeh) -* rgw: rework X-Trans-Id header to conform with Swift API (Radoslaw Rzarzynski) -* rgw/rgw_admin:fix bug about list and stats command (`pr#8200 <http://github.com/ceph/ceph/pull/8200>`_, Qiankun Zheng) -* rgw/rgw_common.h: fix the RGWBucketInfo decoding (`pr#8154 <http://github.com/ceph/ceph/pull/8154>`_, Kefu Chai) -* rgw/rgw_common.h: fix the RGWBucketInfo decoding (`pr#8165 <http://github.com/ceph/ceph/pull/8165>`_, Kefu Chai) -* rgw: RGWLib::env is not used so remove it (`pr#7874 <http://github.com/ceph/ceph/pull/7874>`_, Brad Hubbard) -* rgw/rgw_orphan: check the return value of save_state (`pr#7544 <http://github.com/ceph/ceph/pull/7544>`_, Boris Ranto) -* rgw/rgw_resolve: fallback to res_query when res_nquery not implemented (`pr#6292 <http://github.com/ceph/ceph/pull/6292>`_, John Coyle) -* rgw: RGWZoneParams::create should not handle -EEXIST error (`pr#7927 <http://github.com/ceph/ceph/pull/7927>`_, Orit Wasserman) -* rgw: s3 encoding-type for get bucket (Jeff Weber) -* rgw: S3: set EncodingType in ListBucketResult (`pr#7712 <http://github.com/ceph/ceph/pull/7712>`_, Victor Makarov) -* rgw: send ETag, Last-Modified for swift (#11087 Radoslaw Zarzynski) -* rgw: set content length on container GET, PUT, DELETE, HEAD (#10971, #11036 Radoslaw Zarzynski) -* rgw: set max buckets per user in ceph.conf (Vikhyat Umrao) -* rgw: shard work over multiple librados instances (Pavan Rallabhandi) -* rgw: signature mismatch with escaped characters in url query portion (`issue#15358 <http://tracker.ceph.com/issues/15358>`_, `pr#8445 <http://github.com/ceph/ceph/pull/8445>`_, Javier M. Mellid) -* rgw: static large objects (Radoslaw Zarzynski, Yehuda Sadeh) -* rgw: store system object meta in cache when creating it (`issue#14678 <http://tracker.ceph.com/issues/14678>`_, `pr#7615 <http://github.com/ceph/ceph/pull/7615>`_, Yehuda Sadeh) -* rgw: support core file limit for radosgw daemon (`pr#6346 <http://github.com/ceph/ceph/pull/6346>`_, Guang Yang) -* rgw: support end marker on swift container GET (#10682 Radoslaw Zarzynski) -* rgw: support for aws authentication v4 (Javier M. Mellid) (`issue#10333 <http://tracker.ceph.com/issues/10333>`_, `pr#7720 <http://github.com/ceph/ceph/pull/7720>`_, Yehuda Sadeh, Javier M. Mellid) -* rgw: support for Swift expiration API (Radoslaw Rzarzynski, Yehuda Sadeh) -* rgw: support json format for admin policy API (Dunrong Huang) (`issue#14090 <http://tracker.ceph.com/issues/14090>`_, `pr#8036 <http://github.com/ceph/ceph/pull/8036>`_, Yehuda Sadeh, Dunrong Huang) -* rgw: swift: allow setting attributes with COPY (#10662 Ahmad Faheem, Dmytro Iurchenko) -* rgw: swift bulk delete (Radoslaw Zarzynski) -* rgw: swift: do not override sent content type (#12363 Orit Wasserman) -* rgw: swift: enforce Content-Type in response (#12157 Radoslaw Zarzynski) -* rgw: swift: fix account listing (#11501 Radoslaw Zarzynski) -* rgw: swift: fix metadata handling on copy (#10645 Radoslaw Zarzynski) -* rgw: swift: send Last-Modified header (#10650 Radoslaw Zarzynski) -* rgw: swift: set Content-Length for account GET (#12158 Radoslav Zarzynski) -* rgw: swift: set content-length on keystone tokens (#11473 Herv Rousseau) -* rgw: swift use Civetweb ssl can not get right url (`issue#13628 <http://tracker.ceph.com/issues/13628>`_, `pr#6408 <http://github.com/ceph/ceph/pull/6408>`_, Weijun Duan) -* rgw: swift versioning disabled (`pr#8066 <http://github.com/ceph/ceph/pull/8066>`_, Yehuda Sadeh, Radoslaw Zarzynski) -* rgw: sync fixes 3 (`pr#8170 <http://github.com/ceph/ceph/pull/8170>`_, Yehuda Sadeh) -* rgw: sync fixes 4 (`pr#8190 <http://github.com/ceph/ceph/pull/8190>`_, Yehuda Sadeh) -* rgw sync fixes (`pr#8095 <http://github.com/ceph/ceph/pull/8095>`_, Yehuda Sadeh) -* rgw: the map 'headers' is assigned a wrong value (`pr#8481 <http://github.com/ceph/ceph/pull/8481>`_, weiqiaomiao) -* rgw: try to parse Keystone token in order appropriate to configuration. (`pr#7822 <http://github.com/ceph/ceph/pull/7822>`_, Radoslaw Zarzynski) -* rgw: update keystone cache with token info (#11125 Yehuda Sadeh) -* rgw: update to latest civetweb, enable config for IPv6 (#10965 Yehuda Sadeh) -* rgw: use attrs from source bucket on copy (#11639 Javier M. Mellid) -* rgw: use correct oid for gc chains (#11447 Yehuda Sadeh) -* rgw:Use count fn in RGWUserBuckets for quota check (`pr#8294 <http://github.com/ceph/ceph/pull/8294>`_, Abhishek Lekshmanan) -* rgw: use pimpl pattern for RGWPeriodHistory (`pr#7809 <http://github.com/ceph/ceph/pull/7809>`_, Casey Bodley) -* rgw: user quota may not adjust on bucket removal (`issue#14507 <http://tracker.ceph.com/issues/14507>`_, `pr#7586 <http://github.com/ceph/ceph/pull/7586>`_, root) -* rgw: user rm is idempotent (Orit Wasserman) -* rgw: use smart pointer for C_Reinitwatch (`pr#6767 <http://github.com/ceph/ceph/pull/6767>`_, Orit Wasserman) -* rgw: use unique request id for civetweb (#10295 Orit Wasserman) -* rgw: warn on suspicious civetweb frontend parameters (`pr#6944 <http://github.com/ceph/ceph/pull/6944>`_, Matt Benjamin) -* rocksdb: add perf counters for get/put latency (Xinxin Shu) -* rocksdb: build with PORTABLE=1 (`pr#6311 <http://github.com/ceph/ceph/pull/6311>`_, Sage Weil) -* rocksdb, leveldb: fix compact_on_mount (Xiaoxi Chen) -* rocksdb: pass options as single string (Xiaoxi Chen) -* rocksdb: remove rdb source files from dist tarball (`issue#13554 <http://tracker.ceph.com/issues/13554>`_, `pr#6379 <http://github.com/ceph/ceph/pull/6379>`_, Kefu Chai) -* rocksdb: remove rdb sources from dist tarball (`issue#13554 <http://tracker.ceph.com/issues/13554>`_, `pr#7105 <http://github.com/ceph/ceph/pull/7105>`_, Venky Shankar) -* rocksdb: update to latest (Xiaoxi Chen) -* rocksdb: use native rocksdb makefile (and our autotools) (`pr#6290 <http://github.com/ceph/ceph/pull/6290>`_, Sage Weil) -* rpm: add suse firewall files (Tim Serong) -* rpm: always rebuild and install man pages for rpm (Owen Synge) -* rpm: ceph.spec.in: correctly declare systemd dependency for SLE/openSUSE (`pr#6114 <http://github.com/ceph/ceph/pull/6114>`_, Nathan Cutler) -* rpm: ceph.spec.in: fix libs-compat / devel-compat conditional (`issue#12315 <http://tracker.ceph.com/issues/12315>`_, `pr#5219 <http://github.com/ceph/ceph/pull/5219>`_, Ken Dreyer) -* rpm,deb: remove conditional BuildRequires for btrfs-progs (`issue#15042 <http://tracker.ceph.com/issues/15042>`_, `pr#8016 <http://github.com/ceph/ceph/pull/8016>`_, Erwan Velu) -* rpm: loosen ceph-test dependencies (Ken Dreyer) -* rpm: many spec file fixes (Owen Synge, Ken Dreyer) -* rpm: misc fixes (Boris Ranto, Owen Synge, Ken Dreyer, Ira Cooper) -* rpm: misc systemd and SUSE fixes (Owen Synge, Nathan Cutler) -* rpm: move %post(un) ldconfig calls to ceph-base (`issue#14940 <http://tracker.ceph.com/issues/14940>`_, `pr#7867 <http://github.com/ceph/ceph/pull/7867>`_, Nathan Cutler) -* rpm: move runtime dependencies to ceph-base and fix other packaging issues (`issue#14864 <http://tracker.ceph.com/issues/14864>`_, `pr#7826 <http://github.com/ceph/ceph/pull/7826>`_, Nathan Cutler) -* rpm: prefer UID/GID 167 when creating ceph user/group (`issue#15246 <http://tracker.ceph.com/issues/15246>`_, `pr#8277 <http://github.com/ceph/ceph/pull/8277>`_, Nathan Cutler) -* rpm: remove sub-package dependencies on "ceph" (`issue#15146 <http://tracker.ceph.com/issues/15146>`_, `pr#8137 <http://github.com/ceph/ceph/pull/8137>`_, Ken Dreyer) -* rpm: rhel 5.9 librados compile fix, moved blkid to RBD check/compilation (`issue#13177 <http://tracker.ceph.com/issues/13177>`_, `pr#5954 <http://github.com/ceph/ceph/pull/5954>`_, Rohan Mars) -* script: add missing stop_rgw variable to stop.sh script (`pr#7959 <http://github.com/ceph/ceph/pull/7959>`_, Karol Mroz) -* scripts: adjust mstart and mstop script to run with cmake build (`pr#6920 <http://github.com/ceph/ceph/pull/6920>`_, Orit Wasserman) -* scripts: release_notes can track original issue (`pr#6009 <http://github.com/ceph/ceph/pull/6009>`_, Abhishek Lekshmanan) -* script: subscription-manager support (`issue#14972 <http://tracker.ceph.com/issues/14972>`_, `pr#7907 <http://github.com/ceph/ceph/pull/7907>`_, Loic Dachary) -* selinux: allow log files to be located in /var/log/radosgw (`pr#7604 <http://github.com/ceph/ceph/pull/7604>`_, Boris Ranto) -* selinux policy (Boris Ranto, Milan Broz) -* selinux: Update policy to grant additional access (`issue#14870 <http://tracker.ceph.com/issues/14870>`_, `pr#7971 <http://github.com/ceph/ceph/pull/7971>`_, Boris Ranto) -* set 128MB tcmalloc cache size by bytes (`pr#8427 <http://github.com/ceph/ceph/pull/8427>`_, Star Guo) -* sstring.hh: return type from str_len(...) need not be const (`pr#7679 <http://github.com/ceph/ceph/pull/7679>`_, Matt Benjamin) -* stringify outputted error code and fix unmatched parentheses. (`pr#6998 <http://github.com/ceph/ceph/pull/6998>`_, xie.xingguo, xie xingguo) -* Striper: reduce assemble_result log level (`pr#8426 <http://github.com/ceph/ceph/pull/8426>`_, Jason Dillaman) -* submodules: revert an accidental change (`pr#7929 <http://github.com/ceph/ceph/pull/7929>`_, Yehuda Sadeh) -* systemd: correctly escape block device paths (`issue#14706 <http://tracker.ceph.com/issues/14706>`_, `pr#7579 <http://github.com/ceph/ceph/pull/7579>`_, James Page) -* systemd: drop any systemd imposed process/thread limits (`pr#8450 <http://github.com/ceph/ceph/pull/8450>`_, James Page) -* systemd: fix typos (`pr#6679 <http://github.com/ceph/ceph/pull/6679>`_, Tobias Suckow) -* systemd: logrotate fixes (Tim Serong, Lars Marowsky-Bree, Nathan Cutler) -* systemd: many fixes (Sage Weil, Owen Synge, Boris Ranto, Dan van der Ster) -* systemd: run daemons as user ceph -* systemd: set up environment in rbdmap unit file (`issue#14984 <http://tracker.ceph.com/issues/14984>`_, `pr#8222 <http://github.com/ceph/ceph/pull/8222>`_, Nathan Cutler) -* systemd: start/stop/restart ceph services by daemon type (`issue#13497 <http://tracker.ceph.com/issues/13497>`_, `pr#6276 <http://github.com/ceph/ceph/pull/6276>`_, Zhi Zhang) -* sysvinit: allow custom cluster names (`pr#6732 <http://github.com/ceph/ceph/pull/6732>`_, Richard Chan) -* sysvinit compat: misc fixes (Owen Synge) -* test: add missing shut_down mock method (`pr#8125 <http://github.com/ceph/ceph/pull/8125>`_, Jason Dillaman) -* test/bufferlist: Avoid false-positive tests (`pr#7955 <http://github.com/ceph/ceph/pull/7955>`_, Erwan Velu) -* test: ceph_test_rados: use less CPU (`pr#7513 <http://github.com/ceph/ceph/pull/7513>`_, Samuel Just) -* test/cli-integration/rbd: disable progress output (`issue#14931 <http://tracker.ceph.com/issues/14931>`_, `pr#7858 <http://github.com/ceph/ceph/pull/7858>`_, Josh Durgin) -* test: correct librbd errors discovered with unoptimized cmake build (`pr#7914 <http://github.com/ceph/ceph/pull/7914>`_, Jason Dillaman) -* test: create pools for rbd tests with different prefix (`pr#7738 <http://github.com/ceph/ceph/pull/7738>`_, Mykola Golub) -* test: enable test for bug #2339 which has been resolved. (`pr#7743 <http://github.com/ceph/ceph/pull/7743>`_, You Ji) -* test/encoding/readable.sh fix (`pr#6714 <http://github.com/ceph/ceph/pull/6714>`_, Igor Podoski) -* Test exit values on test.sh, fix tier.cc (`issue#15165 <http://tracker.ceph.com/issues/15165>`_, `pr#8266 <http://github.com/ceph/ceph/pull/8266>`_, Samuel Just) -* test: fix issues discovered via the rbd permissions test case (`pr#8129 <http://github.com/ceph/ceph/pull/8129>`_, Jason Dillaman) -* test: fix osd-scrub-snaps.sh (`pr#6697 <http://github.com/ceph/ceph/pull/6697>`_, Xinze Chi) -* test: Fix test to run with btrfs which has snap_### dirs (`issue#15347 <http://tracker.ceph.com/issues/15347>`_, `pr#8420 <http://github.com/ceph/ceph/pull/8420>`_, David Zafman) -* test: fixup and improvements for rbd-mirror test (`pr#8090 <http://github.com/ceph/ceph/pull/8090>`_, Mykola Golub) -* test: fix ut test failure caused by lfn change (`issue#15464 <http://tracker.ceph.com/issues/15464>`_, `pr#8544 <http://github.com/ceph/ceph/pull/8544>`_, xie xingguo) -* test: fix valgrind memcheck issues for rbd-mirror test cases (`issue#15354 <http://tracker.ceph.com/issues/15354>`_, `pr#8493 <http://github.com/ceph/ceph/pull/8493>`_, Jason Dillaman) -* test: handle exception thrown from close during rbd lock test (`pr#8124 <http://github.com/ceph/ceph/pull/8124>`_, Jason Dillaman) -* test/libcephfs/flock: add sys/file.h include for flock operations (`pr#6310 <http://github.com/ceph/ceph/pull/6310>`_, John Coyle) -* test/librados/test.cc: clean up EC pools' crush rules too (`issue#13878 <http://tracker.ceph.com/issues/13878>`_, `pr#6788 <http://github.com/ceph/ceph/pull/6788>`_, Loic Dachary, Dan Mick) -* test/librbd/fsx: Use c++11 std::mt19937 generator instead of random_r() (`pr#6332 <http://github.com/ceph/ceph/pull/6332>`_, John Coyle) -* test: misc fs test improvements (John Spray, Loic Dachary) -* test/mon/osd-erasure-code-profile: pick new mon port (`pr#7161 <http://github.com/ceph/ceph/pull/7161>`_, Sage Weil) -* test: more debug logging for TestWatchNotify (`pr#7737 <http://github.com/ceph/ceph/pull/7737>`_, Mykola Golub) -* test: new librbd flatten test case (`pr#7609 <http://github.com/ceph/ceph/pull/7609>`_, Jason Dillaman) -* test/osd: Relax the timing intervals in osd-markdown.sh (`pr#7899 <http://github.com/ceph/ceph/pull/7899>`_, Dan Mick) -* test_pool_create.sh: put test files in the test dir so they are cleaned up (`pr#8219 <http://github.com/ceph/ceph/pull/8219>`_, Josh Durgin) -* test/pybind/test_ceph_argparse: fix reweight-by-utilization tests (`pr#8027 <http://github.com/ceph/ceph/pull/8027>`_, Kefu Chai, Sage Weil) -* test: python tests, linter cleanup (Alfredo Deza) -* test/radosgw-admin: update the expected usage outputs (`pr#7723 <http://github.com/ceph/ceph/pull/7723>`_, Kefu Chai) -* test: rbd-mirror: add "switch to the next tag" test (`pr#8149 <http://github.com/ceph/ceph/pull/8149>`_, Mykola Golub) -* test: rbd-mirror: compare positions using all fields (`pr#8172 <http://github.com/ceph/ceph/pull/8172>`_, Mykola Golub) -* test: rbd-mirror: script improvements for manual testing (`pr#8325 <http://github.com/ceph/ceph/pull/8325>`_, Mykola Golub) -* test: reproducer for writeback CoW deadlock (`pr#8009 <http://github.com/ceph/ceph/pull/8009>`_, Jason Dillaman) -* test/rgw: add multisite test for meta sync across periods (`pr#7887 <http://github.com/ceph/ceph/pull/7887>`_, Casey Bodley) -* test_rgw_admin: use freopen for output redirection. (`pr#6303 <http://github.com/ceph/ceph/pull/6303>`_, John Coyle) -* tests: add const for ec test (`pr#6911 <http://github.com/ceph/ceph/pull/6911>`_, Michal Jarzabek) -* tests: add Ubuntu 16.04 xenial dockerfile (`pr#8519 <http://github.com/ceph/ceph/pull/8519>`_, Loic Dachary) -* tests: allow docker-test.sh to run under root (`issue#13355 <http://tracker.ceph.com/issues/13355>`_, `pr#6173 <http://github.com/ceph/ceph/pull/6173>`_, Loic Dachary) -* tests: allow object corpus readable test to skip specific incompat instances (`pr#6932 <http://github.com/ceph/ceph/pull/6932>`_, Igor Podoski) -* tests: centos7 needs the Continuous Release (CR) Repository enabled for (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `pr#6842 <http://github.com/ceph/ceph/pull/6842>`_, Brad Hubbard) -* tests: ceph-disk.sh: should use "readlink -f" instead (`pr#7594 <http://github.com/ceph/ceph/pull/7594>`_, Kefu Chai) -* tests: ceph-disk.sh: use "readlink -f" instead for fullpath (`pr#7606 <http://github.com/ceph/ceph/pull/7606>`_, Kefu Chai) -* tests: ceph-disk workunit uses configobj (`pr#6342 <http://github.com/ceph/ceph/pull/6342>`_, Loic Dachary) -* tests: ceph-helpers assert success getting backfills (`pr#6699 <http://github.com/ceph/ceph/pull/6699>`_, Loic Dachary) -* tests: ceph_test_keyvaluedb_iterators: fix broken test (`pr#6597 <http://github.com/ceph/ceph/pull/6597>`_, Haomai Wang) -* tests: concatenate test_rados_test_tool from src and qa (`issue#13691 <http://tracker.ceph.com/issues/13691>`_, `pr#6464 <http://github.com/ceph/ceph/pull/6464>`_, Loic Dachary) -* tests: configure with rocksdb by default (`issue#14220 <http://tracker.ceph.com/issues/14220>`_, `pr#7100 <http://github.com/ceph/ceph/pull/7100>`_, Loic Dachary) -* tests: destroy testprofile before creating one (`issue#13664 <http://tracker.ceph.com/issues/13664>`_, `pr#6446 <http://github.com/ceph/ceph/pull/6446>`_, Loic Dachary) -* tests: fix a few build warnings (`pr#7608 <http://github.com/ceph/ceph/pull/7608>`_, Sage Weil) -* tests: fixes for rbd xstests (Douglas Fuller) -* tests: fix failure for osd-scrub-snap.sh (`issue#13986 <http://tracker.ceph.com/issues/13986>`_, `pr#6890 <http://github.com/ceph/ceph/pull/6890>`_, Loic Dachary, Ning Yao) -* tests: Fix for make check. (`pr#7102 <http://github.com/ceph/ceph/pull/7102>`_, David Zafman) -* tests: Fixing broken test/cephtool-test-mon.sh test (`pr#8429 <http://github.com/ceph/ceph/pull/8429>`_, Erwan Velu) -* tests: fix race condition testing auto scrub (`issue#13592 <http://tracker.ceph.com/issues/13592>`_, `pr#6724 <http://github.com/ceph/ceph/pull/6724>`_, Xinze Chi, Loic Dachary) -* tests: fix test_rados_tools.sh rados lookup (`issue#13691 <http://tracker.ceph.com/issues/13691>`_, `pr#6502 <http://github.com/ceph/ceph/pull/6502>`_, Loic Dachary) -* tests: fix tiering health checks (Loic Dachary) -* tests: fix typo in TestClsRbd.snapshots test case (`issue#13727 <http://tracker.ceph.com/issues/13727>`_, `pr#6504 <http://github.com/ceph/ceph/pull/6504>`_, Jason Dillaman) -* tests: flush op work queue prior to destroying MockImageCtx (`issue#14092 <http://tracker.ceph.com/issues/14092>`_, `pr#7002 <http://github.com/ceph/ceph/pull/7002>`_, Jason Dillaman) -* tests for low-level performance (Haomai Wang) -* tests: ignore test-suite.log (`pr#6584 <http://github.com/ceph/ceph/pull/6584>`_, Loic Dachary) -* tests: Improving 'make check' execution time (`pr#8131 <http://github.com/ceph/ceph/pull/8131>`_, Erwan Velu) -* tests: many ec non-regression improvements (Loic Dachary) -* tests: many many ec test improvements (Loic Dachary) -* tests: notification slave needs to wait for master (`issue#13810 <http://tracker.ceph.com/issues/13810>`_, `pr#7220 <http://github.com/ceph/ceph/pull/7220>`_, Jason Dillaman) -* tests: --osd-scrub-load-threshold=2000 for more consistency (`issue#14027 <http://tracker.ceph.com/issues/14027>`_, `pr#6871 <http://github.com/ceph/ceph/pull/6871>`_, Loic Dachary) -* tests: osd-scrub-snaps.sh to display full osd logs on error (`issue#13986 <http://tracker.ceph.com/issues/13986>`_, `pr#6857 <http://github.com/ceph/ceph/pull/6857>`_, Loic Dachary) -* tests: port uniqueness reminder (`pr#6387 <http://github.com/ceph/ceph/pull/6387>`_, Loic Dachary) -* tests: restore run-cli-tests (`pr#6571 <http://github.com/ceph/ceph/pull/6571>`_, Loic Dachary, Sage Weil, Jason Dillaman) -* tests: snap rename and rebuild object map in client update test (`pr#7224 <http://github.com/ceph/ceph/pull/7224>`_, Jason Dillaman) -* tests: sync ceph-erasure-code-corpus for mktemp -d (`pr#7596 <http://github.com/ceph/ceph/pull/7596>`_, Loic Dachary) -* tests: test/librados/test.cc must create profile (`issue#13664 <http://tracker.ceph.com/issues/13664>`_, `pr#6452 <http://github.com/ceph/ceph/pull/6452>`_, Loic Dachary) -* tests: test_pidfile.sh lingering processes (`issue#14834 <http://tracker.ceph.com/issues/14834>`_, `pr#7734 <http://github.com/ceph/ceph/pull/7734>`_, Loic Dachary) -* tests: unittest_bufferlist: fix hexdump test (`pr#7152 <http://github.com/ceph/ceph/pull/7152>`_, Sage Weil) -* tests: unittest_ipaddr: fix segv (`pr#7154 <http://github.com/ceph/ceph/pull/7154>`_, Sage Weil) -* test/system/rados_list_parallel: print oid if rados_write fails (`issue#15240 <http://tracker.ceph.com/issues/15240>`_, `pr#8309 <http://github.com/ceph/ceph/pull/8309>`_, Kefu Chai) -* test/system/\*: use dynamically generated pool name (`issue#15240 <http://tracker.ceph.com/issues/15240>`_, `pr#8318 <http://github.com/ceph/ceph/pull/8318>`_, Kefu Chai) -* test/test-erasure-code.sh: disable pg_temp priming (`issue#15211 <http://tracker.ceph.com/issues/15211>`_, `pr#8260 <http://github.com/ceph/ceph/pull/8260>`_, Sage Weil) -* test: TestMirroringWatcher test cases were not closing images (`pr#8435 <http://github.com/ceph/ceph/pull/8435>`_, Jason Dillaman) -* test/TestPGLog: fix the FTBFS (`issue#14930 <http://tracker.ceph.com/issues/14930>`_, `pr#7855 <http://github.com/ceph/ceph/pull/7855>`_, Kefu Chai) -* test/test_pool_create.sh: fix port (`pr#8361 <http://github.com/ceph/ceph/pull/8361>`_, Sage Weil) -* test/time: no need to abs(uint64_t) for comparing (`pr#7726 <http://github.com/ceph/ceph/pull/7726>`_, Kefu Chai) -* test: update rbd integration cram tests for new default features (`pr#8001 <http://github.com/ceph/ceph/pull/8001>`_, Jason Dillaman) -* test: use sequential journal_tid for object cacher test (`issue#13877 <http://tracker.ceph.com/issues/13877>`_, `pr#6710 <http://github.com/ceph/ceph/pull/6710>`_, Josh Durgin) -* tools: add cephfs-table-tool 'take_inos' (`pr#6655 <http://github.com/ceph/ceph/pull/6655>`_, John Spray) -* tools/cephfs: add tmap_upgrade (`pr#7003 <http://github.com/ceph/ceph/pull/7003>`_, John Spray) -* tools/cephfs: fix overflow writing header to fixed size buffer (#13816) (`pr#6617 <http://github.com/ceph/ceph/pull/6617>`_, John Spray) -* tools/cephfs: fix tmap_upgrade (`issue#15135 <http://tracker.ceph.com/issues/15135>`_, `pr#8128 <http://github.com/ceph/ceph/pull/8128>`_, John Spray) -* tools: ceph_monstore_tool: add inflate-pgmap command (`issue#14217 <http://tracker.ceph.com/issues/14217>`_, `pr#7097 <http://github.com/ceph/ceph/pull/7097>`_, Kefu Chai) -* tools: ceph-monstore-update-crush: add "--test" when testing crushmap (`pr#6418 <http://github.com/ceph/ceph/pull/6418>`_, Kefu Chai) -* tools: Fix layout handing in cephfs-data-scan (#13898) (`pr#6719 <http://github.com/ceph/ceph/pull/6719>`_, John Spray) -* tools: monstore: add 'show-versions' command. (`pr#7073 <http://github.com/ceph/ceph/pull/7073>`_, Cilang Zhao) -* tools/rados: reduce "rados put" memory usage by op_size (`pr#7928 <http://github.com/ceph/ceph/pull/7928>`_, Piotr Dałek) -* tools:remove duplicate references (`pr#5917 <http://github.com/ceph/ceph/pull/5917>`_, Bo Cai) -* tools: support printing part cluster map in readable fashion (`issue#13079 <http://tracker.ceph.com/issues/13079>`_, `pr#5921 <http://github.com/ceph/ceph/pull/5921>`_, Bo Cai) -* unittest_compression_zlib: do not assume buffer will be null terminated (`pr#8064 <http://github.com/ceph/ceph/pull/8064>`_, Sage Weil) -* unittest_erasure_code_plugin: fix deadlock (Alpine) (`pr#8314 <http://github.com/ceph/ceph/pull/8314>`_, John Coyle) -* unittest_osdmap: default crush tunables now firefly (`pr#8098 <http://github.com/ceph/ceph/pull/8098>`_, Sage Weil) -* upstart: throttle restarts (#11798 Sage Weil, Greg Farnum) -* vstart: fix up cmake paths when VSTART_DEST is given (`pr#8363 <http://github.com/ceph/ceph/pull/8363>`_, Casey Bodley) -* vstart: grant full access to Swift testing account (`pr#6239 <http://github.com/ceph/ceph/pull/6239>`_, Yuan Zhou) -* vstart: make -k with optional mon_num. (`pr#8251 <http://github.com/ceph/ceph/pull/8251>`_, Jianpeng Ma) -* vstart: set cephfs root uid/gid to caller (`pr#6255 <http://github.com/ceph/ceph/pull/6255>`_, John Spray) -* vstart.sh: add mstart, mstop, mrun wrappers for running multiple vstart-style test clusters out of src tree (`pr#6901 <http://github.com/ceph/ceph/pull/6901>`_, Yehuda Sadeh) -* vstart.sh: avoid race condition starting rgw via vstart.sh (`issue#14829 <http://tracker.ceph.com/issues/14829>`_, `pr#7727 <http://github.com/ceph/ceph/pull/7727>`_, Javier M. Mellid) -* vstart.sh: silence a harmless msg where btrfs is not found (`pr#7640 <http://github.com/ceph/ceph/pull/7640>`_, Patrick Donnelly) -* xio: add prefix to xio msgr logs (`pr#8148 <http://github.com/ceph/ceph/pull/8148>`_, Roi Dayan) -* xio: fix compilation against latest accelio (`pr#8022 <http://github.com/ceph/ceph/pull/8022>`_, Roi Dayan) -* xio: fix incorrect ip being assigned in case of multiple RDMA ports (`pr#7747 <http://github.com/ceph/ceph/pull/7747>`_, Subramanyam Varanasi) -* xio: remove duplicate assignment of peer addr (`pr#8025 <http://github.com/ceph/ceph/pull/8025>`_, Roi Dayan) -* xio: remove redundant magic methods (`pr#7773 <http://github.com/ceph/ceph/pull/7773>`_, Roi Dayan) -* xio: remove unused variable (`pr#8023 <http://github.com/ceph/ceph/pull/8023>`_, Roi Dayan) -* xio: xio_init needs to be called before any other xio function (`pr#8227 <http://github.com/ceph/ceph/pull/8227>`_, Roi Dayan) -* xxhash: use clone of xxhash.git; add .gitignore (`pr#7986 <http://github.com/ceph/ceph/pull/7986>`_, Sage Weil) diff --git a/doc/releases/kraken.rst b/doc/releases/kraken.rst deleted file mode 100644 index 3d39e3293..000000000 --- a/doc/releases/kraken.rst +++ /dev/null @@ -1,2337 +0,0 @@ -====== -Kraken -====== - -Kraken is the 11th stable release of Ceph. It is named after the -mythical kraken, a legendary sea monster in Scandinavian folklore with -cephalopod-like appearance. - -v11.2.1 Kraken -============== - -This is the first bugfix release for Kraken, and probably the last release of -the Kraken series (Kraken will be declared "End Of Life" (EOL) when Luminous -is declared stable). It contains a large number of bugfixes across all Ceph -components. - -We recommend that all v11.2.x users upgrade. - -For more detailed information, see :download:`the complete changelog <../changelog/v11.2.1.txt>`. - -Notable Changes ---------------- - -* In previous versions, if a client sent an op to the wrong OSD, the OSD - would reply with ENXIO. The rationale here is that the client or OSD is - clearly buggy and we want to surface the error as clearly as possible. - We now only send the ENXIO reply if the osd_enxio_on_misdirected_op option - is enabled (it's off by default). This means that a VM using librbd that - previously would have gotten an EIO and gone read-only will now see a - blocked/hung IO instead. - -* There was a bug introduced in Jewel (#19119) that broke the mapping behavior - when an "out" OSD that still existed in the CRUSH map was removed with 'osd rm'. - This could result in 'misdirected op' and other errors. The bug is now fixed, - but the fix itself introduces the same risk because the behavior may vary between - clients and OSDs. To avoid problems, please ensure that all OSDs are removed - from the CRUSH map before deleting them. That is, be sure to do:: - - ceph osd crush rm osd.123 - - before:: - - ceph osd rm osd.123 - -* This release greatly improves control and throttling of the snap trimmer. It - introduces the "osd max trimming pgs" option (defaulting to 2), which limits - how many PGs on an OSD can be trimming snapshots at a time. And it restores - the safe use of the "osd snap trim sleep" option, which defaults to 0 but - otherwise adds the given number of seconds in delay between every dispatch - of trim operations to the underlying system. - -Other Notable Changes ---------------------- - -* build/ops: ceph-base missing dependency for psmisc in Ubuntu Xenial (`issue#19129 <http://tracker.ceph.com/issues/19129>`_, `issue#19564 <http://tracker.ceph.com/issues/19564>`_, `pr#14425 <https://github.com/ceph/ceph/pull/14425>`_, Nathan Cutler) -* build/ops: logrotate is missing from debian package (kraken, master) (`issue#19670 <http://tracker.ceph.com/issues/19670>`_, `issue#19390 <http://tracker.ceph.com/issues/19390>`_, `pr#14734 <https://github.com/ceph/ceph/pull/14734>`_, Kefu Chai) -* build/ops: selinux: Do parallel relabel on package install (`issue#20077 <http://tracker.ceph.com/issues/20077>`_, `issue#20184 <http://tracker.ceph.com/issues/20184>`_, `issue#20191 <http://tracker.ceph.com/issues/20191>`_, `issue#20193 <http://tracker.ceph.com/issues/20193>`_, `pr#15509 <https://github.com/ceph/ceph/pull/15509>`_, Boris Ranto) -* build/ops: spec file mentions non-existent ceph-create-keys systemd unit file, causing ceph-mon units to not be enabled via preset (`issue#19460 <http://tracker.ceph.com/issues/19460>`_, `pr#14315 <https://github.com/ceph/ceph/pull/14315>`_, Sébastien Han) -* build/ops: systemd restarts Ceph Mon to quickly after failing to start (`issue#18635 <http://tracker.ceph.com/issues/18635>`_, `issue#18721 <http://tracker.ceph.com/issues/18721>`_, `pr#13185 <https://github.com/ceph/ceph/pull/13185>`_, Wido den Hollander) -* build/ops: systemd: Start OSDs after MONs (`issue#18907 <http://tracker.ceph.com/issues/18907>`_, `issue#18516 <http://tracker.ceph.com/issues/18516>`_, `pr#13494 <https://github.com/ceph/ceph/pull/13494>`_, Boris Ranto) -* ceph-disk: Add fix subcommand kraken back-port (`issue#19544 <http://tracker.ceph.com/issues/19544>`_, `pr#14345 <https://github.com/ceph/ceph/pull/14345>`_, Boris Ranto) -* ceph-disk: does not support cluster names different than 'ceph' (`issue#18973 <http://tracker.ceph.com/issues/18973>`_, `issue#17821 <http://tracker.ceph.com/issues/17821>`_, `pr#13497 <https://github.com/ceph/ceph/pull/13497>`_, Loic Dachary) -* ceph-disk: enable directory backed OSD at boot time (`issue#19628 <http://tracker.ceph.com/issues/19628>`_, `issue#19647 <http://tracker.ceph.com/issues/19647>`_, `pr#14604 <https://github.com/ceph/ceph/pull/14604>`_, Loic Dachary) -* ceph-disk: error on _bytes2str (`issue#18431 <http://tracker.ceph.com/issues/18431>`_, `issue#18371 <http://tracker.ceph.com/issues/18371>`_, `pr#13501 <https://github.com/ceph/ceph/pull/13501>`_, Kefu Chai) -* ceph-disk: fails if OSD udev rule triggers prior to mount of /var (`issue#20150 <http://tracker.ceph.com/issues/20150>`_, `issue#19941 <http://tracker.ceph.com/issues/19941>`_, `pr#16092 <https://github.com/ceph/ceph/pull/16092>`_, Loic Dachary) -* ceph-disk: Fix getting wrong group name when --setgroup in bluestore (`issue#18956 <http://tracker.ceph.com/issues/18956>`_, `pr#13488 <https://github.com/ceph/ceph/pull/13488>`_, craigchi) -* ceph-disk list reports mount error for OSD having mount options with SELinux context (`issue#19537 <http://tracker.ceph.com/issues/19537>`_, `issue#17331 <http://tracker.ceph.com/issues/17331>`_, `pr#14403 <https://github.com/ceph/ceph/pull/14403>`_, Brad Hubbard) -* ceph-disk prepare get wrong group name in bluestore (`issue#18997 <http://tracker.ceph.com/issues/18997>`_, `pr#13543 <https://github.com/ceph/ceph/pull/13543>`_, craigchi) -* ceph-disk: Racing between partition creation & device node creation (`issue#20034 <http://tracker.ceph.com/issues/20034>`_, `pr#16138 <https://github.com/ceph/ceph/pull/16138>`_, Erwan Velu) -* ceph-disk: separate ceph-osd --check-needs-\* logs (`issue#20010 <http://tracker.ceph.com/issues/20010>`_, `issue#19888 <http://tracker.ceph.com/issues/19888>`_, `pr#16135 <https://github.com/ceph/ceph/pull/16135>`_, Loic Dachary) -* cephfs: buffer overflow in test LibCephFS.DirLs (`issue#18941 <http://tracker.ceph.com/issues/18941>`_, `issue#19045 <http://tracker.ceph.com/issues/19045>`_, `pr#14571 <https://github.com/ceph/ceph/pull/14571>`_, "Yan, Zheng") -* cephfs: ceph-fuse crash during snapshot tests (`issue#18552 <http://tracker.ceph.com/issues/18552>`_, `issue#18460 <http://tracker.ceph.com/issues/18460>`_, `pr#14563 <https://github.com/ceph/ceph/pull/14563>`_, Yan, Zheng) -* cephfs: ceph-fuse does not recover after lost connection to MDS (`issue#19678 <http://tracker.ceph.com/issues/19678>`_, `issue#18757 <http://tracker.ceph.com/issues/18757>`_, `pr#16105 <https://github.com/ceph/ceph/pull/16105>`_, Henrik Korkuc) -* cephfs: client: fix the cross-quota rename boundary check conditions (`issue#18700 <http://tracker.ceph.com/issues/18700>`_, `pr#14567 <https://github.com/ceph/ceph/pull/14567>`_, Greg Farnum) -* cephfs: Deadlock on two ceph-fuse clients accessing the same file (`issue#20028 <http://tracker.ceph.com/issues/20028>`_, `issue#19635 <http://tracker.ceph.com/issues/19635>`_, `pr#16191 <https://github.com/ceph/ceph/pull/16191>`_, "Yan, Zheng") -* cephfs: fragment space check can cause replayed request fail (`issue#18660 <http://tracker.ceph.com/issues/18660>`_, `issue#18706 <http://tracker.ceph.com/issues/18706>`_, `pr#14568 <https://github.com/ceph/ceph/pull/14568>`_, "Yan, Zheng") -* cephfs: MDS crashes on missing metadata object (`issue#18179 <http://tracker.ceph.com/issues/18179>`_, `issue#18566 <http://tracker.ceph.com/issues/18566>`_, `pr#14565 <https://github.com/ceph/ceph/pull/14565>`_, Yan, Zheng) -* cephfs: MDS heartbeat timeout during rejoin, when working with large amount of caps/inodes (`issue#19118 <http://tracker.ceph.com/issues/19118>`_, `issue#19335 <http://tracker.ceph.com/issues/19335>`_, `pr#14572 <https://github.com/ceph/ceph/pull/14572>`_, John Spray) -* cephfs: mds is crushed, after I set about 400 64KB xattr kv pairs to a file (`issue#19674 <http://tracker.ceph.com/issues/19674>`_, `issue#19033 <http://tracker.ceph.com/issues/19033>`_, `pr#16103 <https://github.com/ceph/ceph/pull/16103>`_, Yang Honggang) -* cephfs: MDS server crashes due to inconsistent metadata (`issue#19406 <http://tracker.ceph.com/issues/19406>`_, `issue#19620 <http://tracker.ceph.com/issues/19620>`_, `pr#14574 <https://github.com/ceph/ceph/pull/14574>`_, John Spray) -* cephfs: mds/StrayManager: avoid reusing deleted inode in StrayManager::_purge_stray_logged (`issue#18950 <http://tracker.ceph.com/issues/18950>`_, `pr#14570 <https://github.com/ceph/ceph/pull/14570>`_, Zhi Zhang) -* cephfs: mount point break off problem after mds switch (`issue#19667 <http://tracker.ceph.com/issues/19667>`_, `issue#19437 <http://tracker.ceph.com/issues/19437>`_, `pr#16100 <https://github.com/ceph/ceph/pull/16100>`_, Guan yunfei, Sage Weil) -* cephfs: non-local quota changes not visible until some IO is done (`issue#17939 <http://tracker.ceph.com/issues/17939>`_, `issue#19763 <http://tracker.ceph.com/issues/19763>`_, `pr#16108 <https://github.com/ceph/ceph/pull/16108>`_, John Spray) -* cephfs: No output for ceph mds rmfailed 0 --yes-i-really-mean-it command (`issue#19483 <http://tracker.ceph.com/issues/19483>`_, `issue#16709 <http://tracker.ceph.com/issues/16709>`_, `pr#14573 <https://github.com/ceph/ceph/pull/14573>`_, John Spray) -* cephfs: normalize file open flags internally used by cephfs (`issue#19845 <http://tracker.ceph.com/issues/19845>`_, `pr#14998 <https://github.com/ceph/ceph/pull/14998>`_, Jan Fajerski) -* cephfs: segfault in handle_client_caps (`issue#18306 <http://tracker.ceph.com/issues/18306>`_, `issue#18616 <http://tracker.ceph.com/issues/18616>`_, `pr#14566 <https://github.com/ceph/ceph/pull/14566>`_, Yan, Zheng) -* cephfs: speed up readdir by skipping unwanted dn (`issue#18531 <http://tracker.ceph.com/issues/18531>`_, `pr#13028 <https://github.com/ceph/ceph/pull/13028>`_, Xiaoxi Chen) -* cephfs: src/test/pybind/test_cephfs.py fails (`issue#20500 <http://tracker.ceph.com/issues/20500>`_, `issue#19890 <http://tracker.ceph.com/issues/19890>`_, `pr#16114 <https://github.com/ceph/ceph/pull/16114>`_, "Yan, Zheng") -* cephfs: test_client_recovery.TestClientRecovery fails (`issue#18562 <http://tracker.ceph.com/issues/18562>`_, `issue#18396 <http://tracker.ceph.com/issues/18396>`_, `pr#14564 <https://github.com/ceph/ceph/pull/14564>`_, Yan, Zheng) -* cephfs test failures (ceph.com/qa is broken, should be download.ceph.com/qa) (`issue#18574 <http://tracker.ceph.com/issues/18574>`_, `issue#18604 <http://tracker.ceph.com/issues/18604>`_, `pr#13024 <https://github.com/ceph/ceph/pull/13024>`_, John Spray) -* cephfs: Test failure: test_data_isolated (tasks.cephfs.test_volume_client.TestVolumeClient) (`issue#18914 <http://tracker.ceph.com/issues/18914>`_, `issue#19676 <http://tracker.ceph.com/issues/19676>`_, `pr#16104 <https://github.com/ceph/ceph/pull/16104>`_, "Yan, Zheng") -* cephfs: test_open_inode fails (`issue#18899 <http://tracker.ceph.com/issues/18899>`_, `issue#18661 <http://tracker.ceph.com/issues/18661>`_, `pr#14569 <https://github.com/ceph/ceph/pull/14569>`_, John Spray) -* client: populate metadata during mount (`issue#18361 <http://tracker.ceph.com/issues/18361>`_, `issue#18540 <http://tracker.ceph.com/issues/18540>`_, `pr#12951 <https://github.com/ceph/ceph/pull/12951>`_, John Spray) -* client: segfault on ceph_rmdir path / (`issue#18612 <http://tracker.ceph.com/issues/18612>`_, `issue#9935 <http://tracker.ceph.com/issues/9935>`_, `pr#13030 <https://github.com/ceph/ceph/pull/13030>`_, Michal Jarzabek) -* cls_rbd: default initialize snapshot namespace for legacy clients (`issue#19413 <http://tracker.ceph.com/issues/19413>`_, `issue#19833 <http://tracker.ceph.com/issues/19833>`_, `pr#14934 <https://github.com/ceph/ceph/pull/14934>`_, Jason Dillaman) -* cls/rgw: list_plain_entries() stops before bi_log entries (`issue#19876 <http://tracker.ceph.com/issues/19876>`_, `issue#20015 <http://tracker.ceph.com/issues/20015>`_, `pr#15384 <https://github.com/ceph/ceph/pull/15384>`_, Casey Bodley) -* common: monitor creation with IPv6 public network segfaults (`issue#19465 <http://tracker.ceph.com/issues/19465>`_, `issue#19371 <http://tracker.ceph.com/issues/19371>`_, `pr#14323 <https://github.com/ceph/ceph/pull/14323>`_, Fabian Grünbichler) -* common: possible lockdep false alarm for ThreadPool lock (`issue#18819 <http://tracker.ceph.com/issues/18819>`_, `issue#18894 <http://tracker.ceph.com/issues/18894>`_, `pr#13487 <https://github.com/ceph/ceph/pull/13487>`_, Mykola Golub) -* core: api_misc: [ FAILED ] LibRadosMiscConnectFailure.ConnectFailure (`issue#19561 <http://tracker.ceph.com/issues/19561>`_, `issue#15368 <http://tracker.ceph.com/issues/15368>`_, `pr#14733 <https://github.com/ceph/ceph/pull/14733>`_, Sage Weil) -* core: bluestore bdev: flush no-op optimization is racy (`issue#20495 <http://tracker.ceph.com/issues/20495>`_, `issue#19326 <http://tracker.ceph.com/issues/19326>`_, `issue#19327 <http://tracker.ceph.com/issues/19327>`_, `issue#19250 <http://tracker.ceph.com/issues/19250>`_, `issue#19251 <http://tracker.ceph.com/issues/19251>`_, `pr#14736 <https://github.com/ceph/ceph/pull/14736>`_, Sage Weil) -* core: improve control and throttling of the snap trimmer (`issue#19329 <http://tracker.ceph.com/issues/19329>`_, `issue#19931 <http://tracker.ceph.com/issues/19931>`_, `pr#14597 <https://github.com/ceph/ceph/pull/14597>`_, Samuel Just, Greg Farnum) -* core: two instances of omap_digest mismatch (`issue#19391 <http://tracker.ceph.com/issues/19391>`_, `pr#14200 <https://github.com/ceph/ceph/pull/14200>`_, Samuel Just, David Zafman) -* doc: PendingReleaseNotes: warning about 'osd rm ...' and #13733 (`issue#19119 <http://tracker.ceph.com/issues/19119>`_, `pr#14506 <https://github.com/ceph/ceph/pull/14506>`_, Sage Weil) -* doc: Python Swift client commands in Quick Developer Guide don't match configuration in vstart.sh (`issue#17746 <http://tracker.ceph.com/issues/17746>`_, `issue#18571 <http://tracker.ceph.com/issues/18571>`_, `pr#13044 <https://github.com/ceph/ceph/pull/13044>`_, Ronak Jain) -* doc: rgw: admin ops: fix the quota section (`issue#19397 <http://tracker.ceph.com/issues/19397>`_, `issue#19462 <http://tracker.ceph.com/issues/19462>`_, `pr#14521 <https://github.com/ceph/ceph/pull/14521>`_, Chu, Hua-Rong) -* fix: rgw crashed caused by shard id out of range when listing data log (`issue#20156 <http://tracker.ceph.com/issues/20156>`_, `issue#19732 <http://tracker.ceph.com/issues/19732>`_, `pr#16173 <https://github.com/ceph/ceph/pull/16173>`_, redickwang) -* fuse: TestVolumeClient.test_evict_client failure creating pidfile (`issue#18439 <http://tracker.ceph.com/issues/18439>`_, `issue#18309 <http://tracker.ceph.com/issues/18309>`_, `pr#12813 <https://github.com/ceph/ceph/pull/12813>`_, Nathan Cutler) -* librbd: allow to open an image without opening parent image (`issue#18609 <http://tracker.ceph.com/issues/18609>`_, `issue#18325 <http://tracker.ceph.com/issues/18325>`_, `pr#13132 <https://github.com/ceph/ceph/pull/13132>`_, Ricardo Dias) -* librbd: corrected resize RPC message backwards compatibility (`issue#19636 <http://tracker.ceph.com/issues/19636>`_, `issue#19659 <http://tracker.ceph.com/issues/19659>`_, `pr#14620 <https://github.com/ceph/ceph/pull/14620>`_, Jason Dillaman) -* librbd: Incomplete declaration for ContextWQ in librbd/Journal.h (`issue#18862 <http://tracker.ceph.com/issues/18862>`_, `issue#18892 <http://tracker.ceph.com/issues/18892>`_, `pr#14153 <https://github.com/ceph/ceph/pull/14153>`_, Boris Ranto) -* librbd: is_exclusive_lock_owner API should ping OSD (`issue#19467 <http://tracker.ceph.com/issues/19467>`_, `issue#19287 <http://tracker.ceph.com/issues/19287>`_, `pr#14480 <https://github.com/ceph/ceph/pull/14480>`_, Jason Dillaman) -* librbd: possible race in ExclusiveLock handle_peer_notification (`issue#19368 <http://tracker.ceph.com/issues/19368>`_, `pr#14163 <https://github.com/ceph/ceph/pull/14163>`_, Mykola Golub) -* librbd: prevent self-blacklisting during break lock (`issue#18703 <http://tracker.ceph.com/issues/18703>`_, `issue#18666 <http://tracker.ceph.com/issues/18666>`_, `pr#13201 <https://github.com/ceph/ceph/pull/13201>`_, Jason Dillaman) -* make check fails with Error EIO: load dlopen(build/lib/libec_FAKE.so): build/lib/libec_FAKE.so: cannot open shared object file: No such file or directory (`issue#20487 <http://tracker.ceph.com/issues/20487>`_, `issue#20345 <http://tracker.ceph.com/issues/20345>`_, `issue#18876 <http://tracker.ceph.com/issues/18876>`_, `pr#16069 <https://github.com/ceph/ceph/pull/16069>`_, Kefu Chai, Kyr Shatskyy) -* mds: assert fail when shutting down (`issue#19672 <http://tracker.ceph.com/issues/19672>`_, `issue#19204 <http://tracker.ceph.com/issues/19204>`_, `pr#16102 <https://github.com/ceph/ceph/pull/16102>`_, John Spray) -* mds: C_MDSInternalNoop::complete doesn't free itself (`issue#19664 <http://tracker.ceph.com/issues/19664>`_, `issue#19501 <http://tracker.ceph.com/issues/19501>`_, `pr#16099 <https://github.com/ceph/ceph/pull/16099>`_, "Yan, Zheng") -* mds: daemon goes readonly writing backtrace for a file whose data pool has been removed (`issue#19669 <http://tracker.ceph.com/issues/19669>`_, `issue#19401 <http://tracker.ceph.com/issues/19401>`_, `pr#16101 <https://github.com/ceph/ceph/pull/16101>`_, John Spray) -* mds: damage reporting by ino number is useless (`issue#18509 <http://tracker.ceph.com/issues/18509>`_, `issue#19680 <http://tracker.ceph.com/issues/19680>`_, `pr#16106 <https://github.com/ceph/ceph/pull/16106>`_, John Spray) -* mds: Decode errors on backtrace will crash MDS (`issue#18311 <http://tracker.ceph.com/issues/18311>`_, `issue#18463 <http://tracker.ceph.com/issues/18463>`_, `pr#12835 <https://github.com/ceph/ceph/pull/12835>`_, John Spray) -* mds: enable daemon to start when session ino info is corrupt (`issue#19710 <http://tracker.ceph.com/issues/19710>`_, `issue#16842 <http://tracker.ceph.com/issues/16842>`_, `pr#16107 <https://github.com/ceph/ceph/pull/16107>`_, John Spray) -* mds: failed filelock.can_read(-1) assertion in Server::_dir_is_nonempty (`issue#18707 <http://tracker.ceph.com/issues/18707>`_, `issue#18578 <http://tracker.ceph.com/issues/18578>`_, `pr#13555 <https://github.com/ceph/ceph/pull/13555>`_, Yan, Zheng) -* mds: finish clientreplay requests before requesting active state (`issue#18678 <http://tracker.ceph.com/issues/18678>`_, `issue#18461 <http://tracker.ceph.com/issues/18461>`_, `pr#13112 <https://github.com/ceph/ceph/pull/13112>`_, Yan, Zheng) -* mds: unresponsive when truncating a very large file (`issue#19755 <http://tracker.ceph.com/issues/19755>`_, `issue#20026 <http://tracker.ceph.com/issues/20026>`_, `pr#16190 <https://github.com/ceph/ceph/pull/16190>`_, "Yan, Zheng") -* mon: cache tiering: base pool last_force_resend not respected (racing read got wrong version) (`issue#18366 <http://tracker.ceph.com/issues/18366>`_, `issue#18403 <http://tracker.ceph.com/issues/18403>`_, `pr#13116 <https://github.com/ceph/ceph/pull/13116>`_, Sage Weil) -* mon crash on shutdown, lease_ack_timeout event (`issue#19928 <http://tracker.ceph.com/issues/19928>`_, `issue#19825 <http://tracker.ceph.com/issues/19825>`_, `pr#15084 <https://github.com/ceph/ceph/pull/15084>`_, Kefu Chai, Alexey Sheplyakov) -* mon: fail to form large quorum; msg/async busy loop (`issue#20230 <http://tracker.ceph.com/issues/20230>`_, `issue#20315 <http://tracker.ceph.com/issues/20315>`_, `pr#15729 <https://github.com/ceph/ceph/pull/15729>`_, Haomai Wang) -* mon: force_create_pg could leave pg stuck in creating state (`issue#19181 <http://tracker.ceph.com/issues/19181>`_, `issue#18298 <http://tracker.ceph.com/issues/18298>`_, `pr#13790 <https://github.com/ceph/ceph/pull/13790>`_, Adam C. Emerson, Sage Weil) -* mon/MonClient: make get_mon_log_message() atomic (`issue#19618 <http://tracker.ceph.com/issues/19618>`_, `issue#19427 <http://tracker.ceph.com/issues/19427>`_, `pr#14588 <https://github.com/ceph/ceph/pull/14588>`_, Kefu Chai) -* mon: 'osd crush move ...' doesnt work on osds (`issue#18682 <http://tracker.ceph.com/issues/18682>`_, `issue#18587 <http://tracker.ceph.com/issues/18587>`_, `pr#13500 <https://github.com/ceph/ceph/pull/13500>`_, Sage Weil) -* mon: osd crush set crushmap need sanity check (`issue#19302 <http://tracker.ceph.com/issues/19302>`_, `issue#20365 <http://tracker.ceph.com/issues/20365>`_, `pr#16143 <https://github.com/ceph/ceph/pull/16143>`_, Loic Dachary) -* mon: peon wrongly delete routed pg stats op before receive pg stats ack (`issue#18554 <http://tracker.ceph.com/issues/18554>`_, `issue#18458 <http://tracker.ceph.com/issues/18458>`_, `pr#13046 <https://github.com/ceph/ceph/pull/13046>`_, Mingxin Liu) -* mon/PGMap: factor mon_osd_full_ratio into MAX AVAIL calc (`issue#18522 <http://tracker.ceph.com/issues/18522>`_, `issue#20035 <http://tracker.ceph.com/issues/20035>`_, `pr#15237 <https://github.com/ceph/ceph/pull/15237>`_, Sage Weil) -* msg/simple/SimpleMessenger.cc: 239: FAILED assert(!cleared) (`issue#15784 <http://tracker.ceph.com/issues/15784>`_, `issue#18378 <http://tracker.ceph.com/issues/18378>`_, `pr#16133 <https://github.com/ceph/ceph/pull/16133>`_, Sage Weil) -* multisite: rest api fails to decode large period on 'period commit' (`issue#19505 <http://tracker.ceph.com/issues/19505>`_, `issue#19616 <http://tracker.ceph.com/issues/19616>`_, `issue#19614 <http://tracker.ceph.com/issues/19614>`_, `issue#20244 <http://tracker.ceph.com/issues/20244>`_, `issue#19488 <http://tracker.ceph.com/issues/19488>`_, `issue#19776 <http://tracker.ceph.com/issues/19776>`_, `issue#20293 <http://tracker.ceph.com/issues/20293>`_, `issue#19746 <http://tracker.ceph.com/issues/19746>`_, `pr#16161 <https://github.com/ceph/ceph/pull/16161>`_, Casey Bodley, Abhishek Lekshmanan) -* objecter: full_try behavior not consistent with osd (`issue#19560 <http://tracker.ceph.com/issues/19560>`_, `issue#19430 <http://tracker.ceph.com/issues/19430>`_, `pr#14732 <https://github.com/ceph/ceph/pull/14732>`_, Sage Weil) -* ojecter: epoch_barrier isn't respected in _op_submit() (`issue#19396 <http://tracker.ceph.com/issues/19396>`_, `issue#19496 <http://tracker.ceph.com/issues/19496>`_, `pr#14331 <https://github.com/ceph/ceph/pull/14331>`_, Ilya Dryomov) -* os/bluestore: deep decode onode value (`issue#20366 <http://tracker.ceph.com/issues/20366>`_, `pr#15792 <https://github.com/ceph/ceph/pull/15792>`_, Sage Weil) -* os/bluestore: fix Allocator::allocate() int truncation (`issue#20884 <http://tracker.ceph.com/issues/20884>`_, `issue#18595 <http://tracker.ceph.com/issues/18595>`_, `pr#13011 <https://github.com/ceph/ceph/pull/13011>`_, Sage Weil) -* osd: allow client throttler to be adjusted on-fly, without restart (`issue#18791 <http://tracker.ceph.com/issues/18791>`_, `issue#18793 <http://tracker.ceph.com/issues/18793>`_, `pr#13216 <https://github.com/ceph/ceph/pull/13216>`_, Piotr Dałek) -* osd: An OSD was seen getting ENOSPC even with osd_failsafe_full_ratio passed (`issue#20544 <http://tracker.ceph.com/issues/20544>`_, `issue#16878 <http://tracker.ceph.com/issues/16878>`_, `issue#19340 <http://tracker.ceph.com/issues/19340>`_, `issue#19841 <http://tracker.ceph.com/issues/19841>`_, `issue#20672 <http://tracker.ceph.com/issues/20672>`_, `pr#16134 <https://github.com/ceph/ceph/pull/16134>`_, Sage Weil, David Zafman) -* osd: bogus assert when checking acting set on recovery completion in rados/upgrade (`issue#18999 <http://tracker.ceph.com/issues/18999>`_, `pr#13542 <https://github.com/ceph/ceph/pull/13542>`_, Sage Weil) -* osd: calc_clone_subsets misuses try_read_lock vs missing (`issue#18610 <http://tracker.ceph.com/issues/18610>`_, `issue#18583 <http://tracker.ceph.com/issues/18583>`_, `issue#18723 <http://tracker.ceph.com/issues/18723>`_, `issue#17831 <http://tracker.ceph.com/issues/17831>`_, `pr#14616 <https://github.com/ceph/ceph/pull/14616>`_, Samuel Just) -* osd: ceph degraded and misplaced status output inaccurate (`issue#18619 <http://tracker.ceph.com/issues/18619>`_, `issue#19480 <http://tracker.ceph.com/issues/19480>`_, `pr#14322 <https://github.com/ceph/ceph/pull/14322>`_, David Zafman) -* osd: condition object_info_t encoding on required (not up) features (`issue#18842 <http://tracker.ceph.com/issues/18842>`_, `issue#18831 <http://tracker.ceph.com/issues/18831>`_, `issue#18814 <http://tracker.ceph.com/issues/18814>`_, `pr#13485 <https://github.com/ceph/ceph/pull/13485>`_, Ilya Dryomov) -* osd: do not send ENXIO on misdirected op by default (`issue#19622 <http://tracker.ceph.com/issues/19622>`_, `pr#13253 <https://github.com/ceph/ceph/pull/13253>`_, Sage Weil) -* osd: FAILED assert(object_contexts.empty()) (live on master only from Jan-Feb 2017, all other instances are different) (`issue#20522 <http://tracker.ceph.com/issues/20522>`_, `issue#20523 <http://tracker.ceph.com/issues/20523>`_, `issue#18927 <http://tracker.ceph.com/issues/18927>`_, `issue#18809 <http://tracker.ceph.com/issues/18809>`_, `pr#16132 <https://github.com/ceph/ceph/pull/16132>`_, Samuel Just) -* osd: --flush-journal: sporadic segfaults on exit (`issue#18952 <http://tracker.ceph.com/issues/18952>`_, `issue#18820 <http://tracker.ceph.com/issues/18820>`_, `pr#13490 <https://github.com/ceph/ceph/pull/13490>`_, Alexey Sheplyakov) -* osd: Give requested scrubs a higher priority (`issue#19685 <http://tracker.ceph.com/issues/19685>`_, `issue#15789 <http://tracker.ceph.com/issues/15789>`_, `pr#14735 <https://github.com/ceph/ceph/pull/14735>`_, David Zafman) -* osd: Implement asynchronous scrub sleep (`issue#20033 <http://tracker.ceph.com/issues/20033>`_, `issue#19986 <http://tracker.ceph.com/issues/19986>`_, `issue#20173 <http://tracker.ceph.com/issues/20173>`_, `issue#19497 <http://tracker.ceph.com/issues/19497>`_, `pr#15526 <https://github.com/ceph/ceph/pull/15526>`_, Brad Hubbard) -* osd: leaked MOSDMap (`issue#19760 <http://tracker.ceph.com/issues/19760>`_, `issue#18293 <http://tracker.ceph.com/issues/18293>`_, `pr#14942 <https://github.com/ceph/ceph/pull/14942>`_, Sage Weil) -* osd: leveldb corruption leads to Operation not permitted not handled and assert (`issue#18037 <http://tracker.ceph.com/issues/18037>`_, `issue#18418 <http://tracker.ceph.com/issues/18418>`_, `pr#12790 <https://github.com/ceph/ceph/pull/12790>`_, Nathan Cutler) -* osd: metadata reports filestore when using bluestore (`issue#18677 <http://tracker.ceph.com/issues/18677>`_, `issue#18638 <http://tracker.ceph.com/issues/18638>`_, `pr#16083 <https://github.com/ceph/ceph/pull/16083>`_, Wido den Hollander) -* osd: New added OSD always down when full flag is set (`issue#19485 <http://tracker.ceph.com/issues/19485>`_, `pr#14321 <https://github.com/ceph/ceph/pull/14321>`_, Mingxin Liu) -* osd: Object level shard errors are tracked and used if no auth available (`issue#20089 <http://tracker.ceph.com/issues/20089>`_, `pr#15421 <https://github.com/ceph/ceph/pull/15421>`_, David Zafman) -* osd: os/bluestore: fix statfs to not include DB partition in free space (`issue#18599 <http://tracker.ceph.com/issues/18599>`_, `issue#18722 <http://tracker.ceph.com/issues/18722>`_, `pr#13284 <https://github.com/ceph/ceph/pull/13284>`_, Sage Weil) -* osd: osd/PrimaryLogPG: do not call on_shutdown() if (pg.deleting) (`issue#19902 <http://tracker.ceph.com/issues/19902>`_, `issue#19916 <http://tracker.ceph.com/issues/19916>`_, `pr#15066 <https://github.com/ceph/ceph/pull/15066>`_, Kefu Chai) -* osd: pg log split does not rebuild index for parent or child (`issue#19315 <http://tracker.ceph.com/issues/19315>`_, `issue#18975 <http://tracker.ceph.com/issues/18975>`_, `pr#14048 <https://github.com/ceph/ceph/pull/14048>`_, Sage Weil) -* osd: pglog: with config, don't assert in the presence of stale diverg… (`issue#17916 <http://tracker.ceph.com/issues/17916>`_, `issue#19702 <http://tracker.ceph.com/issues/19702>`_, `pr#14646 <https://github.com/ceph/ceph/pull/14646>`_, Greg Farnum) -* osd: publish PG stats when backfill-related states change (`issue#18497 <http://tracker.ceph.com/issues/18497>`_, `issue#18369 <http://tracker.ceph.com/issues/18369>`_, `pr#13295 <https://github.com/ceph/ceph/pull/13295>`_, Sage Weil) -* osd: Revert "PrimaryLogPG::failed_push: update missing as well" (`issue#18659 <http://tracker.ceph.com/issues/18659>`_, `pr#13091 <https://github.com/ceph/ceph/pull/13091>`_, David Zafman) -* osd: unlock sdata_op_ordering_lock with sdata_lock hold to avoid missing wakeup signal (`issue#20443 <http://tracker.ceph.com/issues/20443>`_, `pr#15962 <https://github.com/ceph/ceph/pull/15962>`_, Alexey Sheplyakov) -* pre-jewel "osd rm" incrementals are misinterpreted (`issue#19209 <http://tracker.ceph.com/issues/19209>`_, `issue#19119 <http://tracker.ceph.com/issues/19119>`_, `pr#13883 <https://github.com/ceph/ceph/pull/13883>`_, Ilya Dryomov) -* rbd: Add missing parameter feedback to 'rbd snap limit' (`issue#18601 <http://tracker.ceph.com/issues/18601>`_, `pr#14537 <https://github.com/ceph/ceph/pull/14537>`_, Tang Jin) -* rbd: [api] is_exclusive_lock_owner shouldn't return -EBUSY (`issue#20266 <http://tracker.ceph.com/issues/20266>`_, `issue#20182 <http://tracker.ceph.com/issues/20182>`_, `pr#16187 <https://github.com/ceph/ceph/pull/16187>`_, Jason Dillaman) -* rbd: [api] temporarily restrict (rbd\_)mirror_peer_add from adding multiple peers (`issue#19256 <http://tracker.ceph.com/issues/19256>`_, `issue#19324 <http://tracker.ceph.com/issues/19324>`_, `pr#14545 <https://github.com/ceph/ceph/pull/14545>`_, Jason Dillaman) -* rbd: attempting to remove an image with incompatible features results in partial removal (`issue#18456 <http://tracker.ceph.com/issues/18456>`_, `issue#18315 <http://tracker.ceph.com/issues/18315>`_, `pr#13247 <https://github.com/ceph/ceph/pull/13247>`_, Dongsheng Yang) -* rbd: [cli] ensure positional arguments exist before casting (`issue#20264 <http://tracker.ceph.com/issues/20264>`_, `issue#20185 <http://tracker.ceph.com/issues/20185>`_, `pr#16186 <https://github.com/ceph/ceph/pull/16186>`_, Jason Dillaman) -* rbd: cli: map with cephx disabled results in error message (`issue#19035 <http://tracker.ceph.com/issues/19035>`_, `issue#20517 <http://tracker.ceph.com/issues/20517>`_, `pr#16298 <https://github.com/ceph/ceph/pull/16298>`_, Jason Dillaman) -* rbd: [ FAILED ] TestJournalTrimmer.RemoveObjectsWithOtherClient (`issue#18769 <http://tracker.ceph.com/issues/18769>`_, `issue#18738 <http://tracker.ceph.com/issues/18738>`_, `pr#14147 <https://github.com/ceph/ceph/pull/14147>`_, Jason Dillaman) -* rbd: Improve compatibility between librbd + krbd for the data pool (`issue#18771 <http://tracker.ceph.com/issues/18771>`_, `issue#18653 <http://tracker.ceph.com/issues/18653>`_, `pr#14539 <https://github.com/ceph/ceph/pull/14539>`_, Jason Dillaman) -* rbd: Issues with C API image metadata retrieval functions (`issue#19588 <http://tracker.ceph.com/issues/19588>`_, `issue#19611 <http://tracker.ceph.com/issues/19611>`_, `pr#15612 <https://github.com/ceph/ceph/pull/15612>`_, Mykola Golub) -* rbd: 'metadata_set' API operation should not change global config setting (`issue#18465 <http://tracker.ceph.com/issues/18465>`_, `issue#18549 <http://tracker.ceph.com/issues/18549>`_, `pr#14534 <https://github.com/ceph/ceph/pull/14534>`_, Mykola Golub) -* rbd-mirror: additional test stability improvements (`issue#18935 <http://tracker.ceph.com/issues/18935>`_, `issue#18947 <http://tracker.ceph.com/issues/18947>`_, `pr#14155 <https://github.com/ceph/ceph/pull/14155>`_, Jason Dillaman) -* rbd-mirror: deleting a snapshot during sync can result in read errors (`issue#19037 <http://tracker.ceph.com/issues/19037>`_, `issue#18990 <http://tracker.ceph.com/issues/18990>`_, `pr#14622 <https://github.com/ceph/ceph/pull/14622>`_, Jason Dillaman) -* rbd-mirror: ensure missing images are re-synced when detected (`issue#20022 <http://tracker.ceph.com/issues/20022>`_, `issue#19811 <http://tracker.ceph.com/issues/19811>`_, `pr#15486 <https://github.com/ceph/ceph/pull/15486>`_, Jason Dillaman) -* rbd-mirror: failover and failback of unmodified image results in split-brain (`issue#19872 <http://tracker.ceph.com/issues/19872>`_, `issue#19858 <http://tracker.ceph.com/issues/19858>`_, `pr#14974 <https://github.com/ceph/ceph/pull/14974>`_, Jason Dillaman) -* rbd-mirror: potential race mirroring cloned image (`issue#18501 <http://tracker.ceph.com/issues/18501>`_, `issue#17993 <http://tracker.ceph.com/issues/17993>`_, `pr#14533 <https://github.com/ceph/ceph/pull/14533>`_, Jason Dillaman) -* rbd-mirror: sporadic image replayer shut down failure (`issue#18493 <http://tracker.ceph.com/issues/18493>`_, `issue#18441 <http://tracker.ceph.com/issues/18441>`_, `pr#14531 <https://github.com/ceph/ceph/pull/14531>`_, Jason Dillaman) -* rbd-nbd: add signal handler (`issue#19621 <http://tracker.ceph.com/issues/19621>`_, `issue#19349 <http://tracker.ceph.com/issues/19349>`_, `pr#16098 <https://github.com/ceph/ceph/pull/16098>`_, Kefu Chai, Pan Liu) -* rbd-nbd: check /sys/block/nbdX/size to ensure kernel mapped correctly (`issue#18970 <http://tracker.ceph.com/issues/18970>`_, `issue#17951 <http://tracker.ceph.com/issues/17951>`_, `issue#18910 <http://tracker.ceph.com/issues/18910>`_, `issue#18335 <http://tracker.ceph.com/issues/18335>`_, `pr#14540 <https://github.com/ceph/ceph/pull/14540>`_, Mykola Golub, Pan Liu) -* rbd: Possible deadlock performing a synchronous API action while refresh in-progress (`issue#18495 <http://tracker.ceph.com/issues/18495>`_, `issue#18419 <http://tracker.ceph.com/issues/18419>`_, `pr#14532 <https://github.com/ceph/ceph/pull/14532>`_, Jason Dillaman) -* rbd: Potential IO hang if image is flattened while read request is in-flight (`issue#19832 <http://tracker.ceph.com/issues/19832>`_, `issue#20154 <http://tracker.ceph.com/issues/20154>`_, `pr#16184 <https://github.com/ceph/ceph/pull/16184>`_, Jason Dillaman) -* rbd: [qa] crash in journal-enabled fsx run (`issue#18618 <http://tracker.ceph.com/issues/18618>`_, `issue#18632 <http://tracker.ceph.com/issues/18632>`_, `pr#14538 <https://github.com/ceph/ceph/pull/14538>`_, Jason Dillaman) -* rbd: qemu crash triggered by network issues (`issue#18776 <http://tracker.ceph.com/issues/18776>`_, `issue#18436 <http://tracker.ceph.com/issues/18436>`_, `pr#13245 <https://github.com/ceph/ceph/pull/13245>`_, Jason Dillaman) -* rbd: 'rbd bench-write' will crash if --io-size is 4G (`issue#18422 <http://tracker.ceph.com/issues/18422>`_, `issue#18557 <http://tracker.ceph.com/issues/18557>`_, `pr#14536 <https://github.com/ceph/ceph/pull/14536>`_, Gaurav Kumar Garg) -* rbd: rbd_clone_copy_on_read ineffective with exclusive-lock (`issue#19173 <http://tracker.ceph.com/issues/19173>`_, `issue#18888 <http://tracker.ceph.com/issues/18888>`_, `pr#14543 <https://github.com/ceph/ceph/pull/14543>`_, Venky Shankar) -* rbd: rbd --pool=x rename y z does not work (`issue#18777 <http://tracker.ceph.com/issues/18777>`_, `issue#18326 <http://tracker.ceph.com/issues/18326>`_, `pr#14149 <https://github.com/ceph/ceph/pull/14149>`_, Gaurav Kumar Garg) -* rbd: refuse to use an ec pool that doesn't support overwrites (`issue#19081 <http://tracker.ceph.com/issues/19081>`_, `issue#19336 <http://tracker.ceph.com/issues/19336>`_, `pr#16096 <https://github.com/ceph/ceph/pull/16096>`_, Jason Dillaman) -* rgw: add apis to support ragweed suite (`issue#19809 <http://tracker.ceph.com/issues/19809>`_, `pr#14852 <https://github.com/ceph/ceph/pull/14852>`_, Yehuda Sadeh) -* rgw: add the remove-x-delete feature to cancel swift object expiration (`issue#19472 <http://tracker.ceph.com/issues/19472>`_, `issue#19074 <http://tracker.ceph.com/issues/19074>`_, `pr#14522 <https://github.com/ceph/ceph/pull/14522>`_, Jing Wenjun) -* rgw: a few cases where rgw_obj is incorrectly initialized (`issue#19146 <http://tracker.ceph.com/issues/19146>`_, `issue#19096 <http://tracker.ceph.com/issues/19096>`_, `pr#13843 <https://github.com/ceph/ceph/pull/13843>`_, Yehuda Sadeh) -* rgw: anonymous user error code of getting object is not consistent with SWIFT (`issue#18806 <http://tracker.ceph.com/issues/18806>`_, `issue#19178 <http://tracker.ceph.com/issues/19178>`_, `pr#13877 <https://github.com/ceph/ceph/pull/13877>`_, Jing Wenjun) -* rgw: civetweb frontend segfaults in Luminous (`issue#19749 <http://tracker.ceph.com/issues/19749>`_, `issue#19840 <http://tracker.ceph.com/issues/19840>`_, `pr#16166 <https://github.com/ceph/ceph/pull/16166>`_, Abhishek Lekshmanan, Jesse Williamson) -* rgw: civetweb: move to post 1.8 version (`issue#19704 <http://tracker.ceph.com/issues/19704>`_, `pr#14960 <https://github.com/ceph/ceph/pull/14960>`_, Yehuda Sadeh) -* rgw: "cluster [WRN] bad locator @X on object @X...." in cluster log (`issue#19212 <http://tracker.ceph.com/issues/19212>`_, `issue#18980 <http://tracker.ceph.com/issues/18980>`_, `pr#14065 <https://github.com/ceph/ceph/pull/14065>`_, Casey Bodley) -* rgw: crash when updating period with placement group (`issue#18772 <http://tracker.ceph.com/issues/18772>`_, `issue#18631 <http://tracker.ceph.com/issues/18631>`_, `pr#14511 <https://github.com/ceph/ceph/pull/14511>`_, Orit Wasserman) -* rgw: Custom data header support (`issue#19843 <http://tracker.ceph.com/issues/19843>`_, `pr#15985 <https://github.com/ceph/ceph/pull/15985>`_, Pavan Rallabhandi) -* rgw: datalog trim can't work as expected (`issue#20263 <http://tracker.ceph.com/issues/20263>`_, `issue#20190 <http://tracker.ceph.com/issues/20190>`_, `pr#16175 <https://github.com/ceph/ceph/pull/16175>`_, Zhang Shaowen) -* rgw: DUMPABLE flag is cleared by setuid preventing coredumps (`issue#19147 <http://tracker.ceph.com/issues/19147>`_, `issue#19089 <http://tracker.ceph.com/issues/19089>`_, `pr#13845 <https://github.com/ceph/ceph/pull/13845>`_, Brad Hubbard) -* rgw: Error parsing xml when get bucket lifecycle (`issue#19363 <http://tracker.ceph.com/issues/19363>`_, `issue#19534 <http://tracker.ceph.com/issues/19534>`_, `pr#14528 <https://github.com/ceph/ceph/pull/14528>`_, liuchang0812) -* rgw: first write also tries to read object (`issue#18904 <http://tracker.ceph.com/issues/18904>`_, `issue#18622 <http://tracker.ceph.com/issues/18622>`_, `issue#18623 <http://tracker.ceph.com/issues/18623>`_, `issue#18621 <http://tracker.ceph.com/issues/18621>`_, `pr#14515 <https://github.com/ceph/ceph/pull/14515>`_, Yehuda Sadeh) -* rgw: fix break inside of yield in RGWFetchAllMetaCR (`issue#19322 <http://tracker.ceph.com/issues/19322>`_, `issue#17655 <http://tracker.ceph.com/issues/17655>`_, `pr#14067 <https://github.com/ceph/ceph/pull/14067>`_, Casey Bodley) -* rgw: fix handling RGWUserInfo::system in RGWHandler_REST_SWIFT (`issue#18476 <http://tracker.ceph.com/issues/18476>`_, `pr#13006 <https://github.com/ceph/ceph/pull/13006>`_, Radoslaw Zarzynski) -* rgw: fix RadosGW hang during multi-chunk upload of AWSv4 (`issue#19837 <http://tracker.ceph.com/issues/19837>`_, `issue#19754 <http://tracker.ceph.com/issues/19754>`_, `pr#14939 <https://github.com/ceph/ceph/pull/14939>`_, Radoslaw Zarzynski) -* rgw: fix use of marker in List::list_objects() (`issue#19047 <http://tracker.ceph.com/issues/19047>`_, `issue#18331 <http://tracker.ceph.com/issues/18331>`_, `pr#14517 <https://github.com/ceph/ceph/pull/14517>`_, Yehuda Sadeh) -* rgw: 'gc list --include-all' command infinite loop the first 1000 items (`issue#19978 <http://tracker.ceph.com/issues/19978>`_, `issue#20147 <http://tracker.ceph.com/issues/20147>`_, `pr#16139 <https://github.com/ceph/ceph/pull/16139>`_, Shasha Lu, fang yuxiang) -* rgw: get wrong content when download object with specific range when compression was enabled (`issue#20100 <http://tracker.ceph.com/issues/20100>`_, `issue#20268 <http://tracker.ceph.com/issues/20268>`_, `pr#16178 <https://github.com/ceph/ceph/pull/16178>`_, fang yuxiang) -* rgw: health check errors out incorrectly (`issue#19025 <http://tracker.ceph.com/issues/19025>`_, `issue#19157 <http://tracker.ceph.com/issues/19157>`_, `pr#13866 <https://github.com/ceph/ceph/pull/13866>`_, Pavan Rallabhandi) -* rgw: Lifecycle thread will still handle the bucket even if it has been removed (`issue#20285 <http://tracker.ceph.com/issues/20285>`_, `issue#20405 <http://tracker.ceph.com/issues/20405>`_, `pr#16183 <https://github.com/ceph/ceph/pull/16183>`_, Zhang Shaowen) -* rgw: make sending Content-Length in 204 and 304 controllable (`issue#18985 <http://tracker.ceph.com/issues/18985>`_, `issue#16602 <http://tracker.ceph.com/issues/16602>`_, `pr#13514 <https://github.com/ceph/ceph/pull/13514>`_, Radoslaw Zarzynski) -* rgw: meta sync thread crash at RGWMetaSyncShardCR (`issue#20251 <http://tracker.ceph.com/issues/20251>`_, `issue#20347 <http://tracker.ceph.com/issues/20347>`_, `pr#16180 <https://github.com/ceph/ceph/pull/16180>`_, Fang Yuxiang, Nathan Cutler) -* rgw: multisite: after CreateBucket is forwarded to master, local bucket may use different value for bucket index shards (`issue#19745 <http://tracker.ceph.com/issues/19745>`_, `issue#19759 <http://tracker.ceph.com/issues/19759>`_, `pr#16290 <https://github.com/ceph/ceph/pull/16290>`_, Shasha Lu) -* rgw: multisite: EPERM when trying to read SLO objects as system/admin user (`issue#19027 <http://tracker.ceph.com/issues/19027>`_, `issue#19475 <http://tracker.ceph.com/issues/19475>`_, `pr#14523 <https://github.com/ceph/ceph/pull/14523>`_, Casey Bodley) -* rgw: multisite: fetch_remote_obj() gets wrong version when copying from remote (`issue#19608 <http://tracker.ceph.com/issues/19608>`_, `pr#14606 <https://github.com/ceph/ceph/pull/14606>`_, Zhang Shaowen, Casey Bodley) -* rgw: multisite: RGWMetaSyncShardControlCR gives up on EIO (`issue#19160 <http://tracker.ceph.com/issues/19160>`_, `issue#19019 <http://tracker.ceph.com/issues/19019>`_, `pr#13868 <https://github.com/ceph/ceph/pull/13868>`_, Casey Bodley) -* rgw: multisite: segfault after changing value of rgw_data_log_num_shards (`issue#18488 <http://tracker.ceph.com/issues/18488>`_, `issue#18548 <http://tracker.ceph.com/issues/18548>`_, `pr#13181 <https://github.com/ceph/ceph/pull/13181>`_, Casey Bodley) -* rgw: multisite: some 'radosgw-admin data sync' commands hang (`issue#19236 <http://tracker.ceph.com/issues/19236>`_, `issue#19354 <http://tracker.ceph.com/issues/19354>`_, `pr#14142 <https://github.com/ceph/ceph/pull/14142>`_, Shasha Lu) -* rgw: multisite: some yields in RGWMetaSyncShardCR::full_sync() resume in incremental_sync() (`issue#19049 <http://tracker.ceph.com/issues/19049>`_, `issue#18076 <http://tracker.ceph.com/issues/18076>`_, `pr#13838 <https://github.com/ceph/ceph/pull/13838>`_, Casey Bodley) -* rgw: multisite: sync status reports master is on a different period (`issue#18709 <http://tracker.ceph.com/issues/18709>`_, `issue#18064 <http://tracker.ceph.com/issues/18064>`_, `pr#13176 <https://github.com/ceph/ceph/pull/13176>`_, Abhishek Lekshmanan) -* rgw: no http referer info in container metadata dump in swift API (`issue#18665 <http://tracker.ceph.com/issues/18665>`_, `issue#18898 <http://tracker.ceph.com/issues/18898>`_, `pr#13829 <https://github.com/ceph/ceph/pull/13829>`_, Jing Wenjun) -* rgw: "period update" does not remove short_zone_ids of deleted zones (`issue#15618 <http://tracker.ceph.com/issues/15618>`_, `issue#19342 <http://tracker.ceph.com/issues/19342>`_, `pr#14141 <https://github.com/ceph/ceph/pull/14141>`_, Casey Bodley) -* rgw: radosgw-admin: add the 'object stat' command to usage (`issue#19164 <http://tracker.ceph.com/issues/19164>`_, `issue#19013 <http://tracker.ceph.com/issues/19013>`_, `pr#13873 <https://github.com/ceph/ceph/pull/13873>`_, Pavan Rallabhandi) -* rgw: radosgw-admin period update reverts deleted zonegroup (`issue#18713 <http://tracker.ceph.com/issues/18713>`_, `issue#17239 <http://tracker.ceph.com/issues/17239>`_, `pr#13172 <https://github.com/ceph/ceph/pull/13172>`_, Orit Wasserman) -* rgw: 'radosgw-admin usage show' listing 0 bytes_sent/received (`issue#20261 <http://tracker.ceph.com/issues/20261>`_, `pr#16174 <https://github.com/ceph/ceph/pull/16174>`_, Pritha Srivastava) -* rgw: 'radosgw-admin zone create' command with specified zone-id creates a zone with different id (`issue#19524 <http://tracker.ceph.com/issues/19524>`_, `issue#19498 <http://tracker.ceph.com/issues/19498>`_, `pr#14526 <https://github.com/ceph/ceph/pull/14526>`_, Orit Wasserman) -* rgw: Realm set does not create a new period (`issue#18333 <http://tracker.ceph.com/issues/18333>`_, `issue#18499 <http://tracker.ceph.com/issues/18499>`_, `pr#14509 <https://github.com/ceph/ceph/pull/14509>`_, Orit Wasserman) -* rgw: reduce log level of 'storing entry at' in cls_log (`issue#19835 <http://tracker.ceph.com/issues/19835>`_, `issue#19839 <http://tracker.ceph.com/issues/19839>`_, `pr#16165 <https://github.com/ceph/ceph/pull/16165>`_, Willem Jan Withagen) -* rgw: Response header of swift API returned by radosgw does not contain x-openstack-request-id. But Swift returns it (`issue#19443 <http://tracker.ceph.com/issues/19443>`_, `issue#19573 <http://tracker.ceph.com/issues/19573>`_, `pr#14529 <https://github.com/ceph/ceph/pull/14529>`_, tone-zhang) -* rgw: rgw_file: fix marker computation (`issue#20158 <http://tracker.ceph.com/issues/20158>`_, `issue#19526 <http://tracker.ceph.com/issues/19526>`_, `issue#18989 <http://tracker.ceph.com/issues/18989>`_, `issue#19470 <http://tracker.ceph.com/issues/19470>`_, `issue#19471 <http://tracker.ceph.com/issues/19471>`_, `issue#18651 <http://tracker.ceph.com/issues/18651>`_, `issue#20195 <http://tracker.ceph.com/issues/20195>`_, `issue#19059 <http://tracker.ceph.com/issues/19059>`_, `issue#19112 <http://tracker.ceph.com/issues/19112>`_, `issue#19018 <http://tracker.ceph.com/issues/19018>`_, `issue#19036 <http://tracker.ceph.com/issues/19036>`_, `issue#19154 <http://tracker.ceph.com/issues/19154>`_, `issue#19170 <http://tracker.ceph.com/issues/19170>`_, `issue#19663 <http://tracker.ceph.com/issues/19663>`_, `issue#19661 <http://tracker.ceph.com/issues/19661>`_, `issue#19111 <http://tracker.ceph.com/issues/19111>`_, `issue#18992 <http://tracker.ceph.com/issues/18992>`_, `issue#18650 <http://tracker.ceph.com/issues/18650>`_, `issue#18991 <http://tracker.ceph.com/issues/18991>`_, `issue#19623 <http://tracker.ceph.com/issues/19623>`_, `issue#19149 <http://tracker.ceph.com/issues/19149>`_, `issue#19270 <http://tracker.ceph.com/issues/19270>`_, `issue#19723 <http://tracker.ceph.com/issues/19723>`_, `issue#19625 <http://tracker.ceph.com/issues/19625>`_, `issue#19624 <http://tracker.ceph.com/issues/19624>`_, `issue#19060 <http://tracker.ceph.com/issues/19060>`_, `issue#19166 <http://tracker.ceph.com/issues/19166>`_, `issue#18810 <http://tracker.ceph.com/issues/18810>`_, `issue#19168 <http://tracker.ceph.com/issues/19168>`_, `issue#19162 <http://tracker.ceph.com/issues/19162>`_, `issue#19066 <http://tracker.ceph.com/issues/19066>`_, `issue#18808 <http://tracker.ceph.com/issues/18808>`_, `issue#19634 <http://tracker.ceph.com/issues/19634>`_, `issue#19435 <http://tracker.ceph.com/issues/19435>`_, `issue#19144 <http://tracker.ceph.com/issues/19144>`_, `issue#19229 <http://tracker.ceph.com/issues/19229>`_, `issue#18902 <http://tracker.ceph.com/issues/18902>`_, `pr#13871 <https://github.com/ceph/ceph/pull/13871>`_, Gui Hecheng, Matt Benjamin) -* rgw: S3 create bucket should not do response in json (`issue#19172 <http://tracker.ceph.com/issues/19172>`_, `issue#18889 <http://tracker.ceph.com/issues/18889>`_, `pr#13875 <https://github.com/ceph/ceph/pull/13875>`_, Abhishek Lekshmanan) -* rgw: S3 v4 authentication issue with X-Amz-Expires (`issue#19477 <http://tracker.ceph.com/issues/19477>`_, `issue#18828 <http://tracker.ceph.com/issues/18828>`_, `pr#14524 <https://github.com/ceph/ceph/pull/14524>`_, liuchang0812) -* rgw: S3 v4 authentication issue with X-Amz-Expires (`issue#19725 <http://tracker.ceph.com/issues/19725>`_, `issue#18828 <http://tracker.ceph.com/issues/18828>`_, `pr#16162 <https://github.com/ceph/ceph/pull/16162>`_, liuchang0812) -* rgw: should parse the url to http host to compare with the container referer acl (`issue#18896 <http://tracker.ceph.com/issues/18896>`_, `issue#18685 <http://tracker.ceph.com/issues/18685>`_, `pr#13780 <https://github.com/ceph/ceph/pull/13780>`_, Jing Wenjun) -* rgw: slave zonegroup cannot enable the bucket versioning (`issue#18711 <http://tracker.ceph.com/issues/18711>`_, `issue#18003 <http://tracker.ceph.com/issues/18003>`_, `pr#13174 <https://github.com/ceph/ceph/pull/13174>`_, Orit Wasserman) -* rgw: Swift API: spurious newline after http body causes weird errors (`issue#18780 <http://tracker.ceph.com/issues/18780>`_, `issue#18473 <http://tracker.ceph.com/issues/18473>`_, `pr#13224 <https://github.com/ceph/ceph/pull/13224>`_, Marcus Watts, Matt Benjamin) -* rgw: swift API: cannot disable object versioning with empty X-Versions-Location (`issue#18852 <http://tracker.ceph.com/issues/18852>`_, `issue#19175 <http://tracker.ceph.com/issues/19175>`_, `pr#14519 <https://github.com/ceph/ceph/pull/14519>`_, Jing Wenjun) -* rgw: swift: disable revocation thread under certain circumstances (`issue#19499 <http://tracker.ceph.com/issues/19499>`_, `issue#9493 <http://tracker.ceph.com/issues/9493>`_, `issue#19777 <http://tracker.ceph.com/issues/19777>`_, `pr#16164 <https://github.com/ceph/ceph/pull/16164>`_, Marcus Watts) -* rgw: Swift's at-root features (/crossdomain.xml, /info, /healthcheck) are broken (`issue#20031 <http://tracker.ceph.com/issues/20031>`_, `issue#19520 <http://tracker.ceph.com/issues/19520>`_, `pr#16168 <https://github.com/ceph/ceph/pull/16168>`_, Radoslaw Zarzynski) -* rgw: the swift container acl does not support field .ref (`issue#18909 <http://tracker.ceph.com/issues/18909>`_, `issue#19180 <http://tracker.ceph.com/issues/19180>`_, `issue#18484 <http://tracker.ceph.com/issues/18484>`_, `issue#18796 <http://tracker.ceph.com/issues/18796>`_, `pr#14516 <https://github.com/ceph/ceph/pull/14516>`_, Jing Wenjun, Radoslaw Zarzynski) -* rgw: typo in rgw_admin.cc (`issue#19156 <http://tracker.ceph.com/issues/19156>`_, `issue#19026 <http://tracker.ceph.com/issues/19026>`_, `pr#13864 <https://github.com/ceph/ceph/pull/13864>`_, Ronak Jain) -* rgw: unsafe access in RGWListBucket_ObjStore_SWIFT::send_response() (`issue#19574 <http://tracker.ceph.com/issues/19574>`_, `issue#19249 <http://tracker.ceph.com/issues/19249>`_, `pr#14530 <https://github.com/ceph/ceph/pull/14530>`_, Yehuda Sadeh) -* rgw: upgrade to multisite v2 fails if there is a zone without zone info (`issue#19331 <http://tracker.ceph.com/issues/19331>`_, `issue#19231 <http://tracker.ceph.com/issues/19231>`_, `pr#14137 <https://github.com/ceph/ceph/pull/14137>`_, Danny Al-Gaaf, Orit Wasserman) -* rgw: usage stats and quota are not operational for multi-tenant users (`issue#18364 <http://tracker.ceph.com/issues/18364>`_, `issue#18843 <http://tracker.ceph.com/issues/18843>`_, `issue#16355 <http://tracker.ceph.com/issues/16355>`_, `pr#14513 <https://github.com/ceph/ceph/pull/14513>`_, Radoslaw Zarzynski) -* rgw: Use decoded URI when verifying TempURL (`issue#18590 <http://tracker.ceph.com/issues/18590>`_, `issue#18627 <http://tracker.ceph.com/issues/18627>`_, `pr#12986 <https://github.com/ceph/ceph/pull/12986>`_, Michal Koutný) -* rgw: VersionIdMarker and NextVersionIdMarker are not returned when listing object versions (`issue#20363 <http://tracker.ceph.com/issues/20363>`_, `issue#19886 <http://tracker.ceph.com/issues/19886>`_, `pr#16181 <https://github.com/ceph/ceph/pull/16181>`_, Zhang Shaowen) -* rgw: when converting region_map we need to use rgw_zone_root_pool (`issue#19195 <http://tracker.ceph.com/issues/19195>`_, `issue#19356 <http://tracker.ceph.com/issues/19356>`_, `pr#14144 <https://github.com/ceph/ceph/pull/14144>`_, Orit Wasserman) -* rgw: when uploading the objects continuesly in the versioned bucket, some objects will not sync (`issue#19766 <http://tracker.ceph.com/issues/19766>`_, `issue#18208 <http://tracker.ceph.com/issues/18208>`_, `pr#16163 <https://github.com/ceph/ceph/pull/16163>`_, lvshuhua) -* rgw: wrong object size after copy of uncompressed multipart objects (`issue#20269 <http://tracker.ceph.com/issues/20269>`_, `issue#20071 <http://tracker.ceph.com/issues/20071>`_, `pr#16179 <https://github.com/ceph/ceph/pull/16179>`_, fang yuxiang) -* rgw: zonegroupmap set does not work (`issue#18725 <http://tracker.ceph.com/issues/18725>`_, `issue#19479 <http://tracker.ceph.com/issues/19479>`_, `pr#14525 <https://github.com/ceph/ceph/pull/14525>`_, Casey Bodley) -* tests: AttributeError: Thrasher instance has no attribute 'ceph_objectstore_tool' (`issue#19064 <http://tracker.ceph.com/issues/19064>`_, `issue#18799 <http://tracker.ceph.com/issues/18799>`_, `pr#13609 <https://github.com/ceph/ceph/pull/13609>`_, Nathan Cutler) -* tests: backport Sage's fixes to qa/suites/upgrade/jewel-x (`issue#19651 <http://tracker.ceph.com/issues/19651>`_, `pr#14612 <https://github.com/ceph/ceph/pull/14612>`_, Sage Weil) -* tests: ceph-object-corpus: kraken objects (`issue#20878 <http://tracker.ceph.com/issues/20878>`_, `pr#14983 <https://github.com/ceph/ceph/pull/14983>`_, Sage Weil) -* tests: CMakeLists.txt: disable memstore make check test (`issue#17743 <http://tracker.ceph.com/issues/17743>`_, `pr#16215 <https://github.com/ceph/ceph/pull/16215>`_, Sage Weil) -* tests: HEALTH_WARN pool rbd pg_num 244 > pgp_num 224 during upgrade (`issue#19771 <http://tracker.ceph.com/issues/19771>`_, `issue#20024 <http://tracker.ceph.com/issues/20024>`_, `pr#16137 <https://github.com/ceph/ceph/pull/16137>`_, Kefu Chai) -* tests: ignore bogus ceph-objectstore-tool error in ceph_manager (`issue#18805 <http://tracker.ceph.com/issues/18805>`_, `issue#16263 <http://tracker.ceph.com/issues/16263>`_, `pr#13239 <https://github.com/ceph/ceph/pull/13239>`_, Nathan Cutler, Kefu Chai) -* tests: insufficient timeout in radosbench task (`issue#20497 <http://tracker.ceph.com/issues/20497>`_, `pr#16111 <https://github.com/ceph/ceph/pull/16111>`_, Sage Weil) -* tests: LibRadosMiscConnectFailure.ConnectFailure hang (`issue#20271 <http://tracker.ceph.com/issues/20271>`_, `issue#19901 <http://tracker.ceph.com/issues/19901>`_, `pr#16140 <https://github.com/ceph/ceph/pull/16140>`_, Sage Weil) -* tests: [librados_test_stub] cls_cxx_map_get_XYZ methods don't return correct value (`issue#19597 <http://tracker.ceph.com/issues/19597>`_, `issue#19609 <http://tracker.ceph.com/issues/19609>`_, `pr#16097 <https://github.com/ceph/ceph/pull/16097>`_, Jason Dillaman) -* tests: move swift.py task from teuthology to ceph, phase one (kraken) (`issue#20392 <http://tracker.ceph.com/issues/20392>`_, `pr#15869 <https://github.com/ceph/ceph/pull/15869>`_, Nathan Cutler, Sage Weil, Warren Usui, Greg Farnum, Ali Maredia, Tommi Virtanen, Zack Cerza, Sam Lang, Yehuda Sadeh, Joe Buck, Josh Durgin) -* tests: ObjectStore/StoreTest.OnodeSizeTracking/2 fails on bluestore (`issue#20499 <http://tracker.ceph.com/issues/20499>`_, `pr#16112 <https://github.com/ceph/ceph/pull/16112>`_, xie xingguo) -* tests: qa: ceph-ansible test tweaks (`issue#20882 <http://tracker.ceph.com/issues/20882>`_, `pr#12984 <https://github.com/ceph/ceph/pull/12984>`_, `pr#13618 <https://github.com/ceph/ceph/pull/13618>`_, Tamil Muthamizhan, Yuri Weinstein) -* tests: qa/suites/upgrade: add tiering test to hammer-jewel-x (`issue#20879 <http://tracker.ceph.com/issues/20879>`_, `issue#19185 <http://tracker.ceph.com/issues/19185>`_, `pr#14692 <https://github.com/ceph/ceph/pull/14692>`_, Kefu Chai) -* tests: qa/tasks: misc systemd updates (`issue#19719 <http://tracker.ceph.com/issues/19719>`_, `pr#14702 <https://github.com/ceph/ceph/pull/14702>`_, Vasu Kulkarni) -* tests: qa/tasks: rbd-mirror daemon not properly run in foreground mode (`issue#20638 <http://tracker.ceph.com/issues/20638>`_, `issue#20630 <http://tracker.ceph.com/issues/20630>`_, `issue#20634 <http://tracker.ceph.com/issues/20634>`_, `pr#16342 <https://github.com/ceph/ceph/pull/16342>`_, Jason Dillaman) -* tests: qa/tasks: set pgp = pg num on thrashing finish (`issue#20881 <http://tracker.ceph.com/issues/20881>`_, `pr#13757 <https://github.com/ceph/ceph/pull/13757>`_, Kefu Chai) -* tests: qa/tasks/workunit: Backport repo fixes from master (`issue#19429 <http://tracker.ceph.com/issues/19429>`_, `issue#19531 <http://tracker.ceph.com/issues/19531>`_, `pr#14487 <https://github.com/ceph/ceph/pull/14487>`_, Kefu Chai, Dan Mick) -* tests: remove hard-coded image name from TestLibRBD.Mirror (`issue#18555 <http://tracker.ceph.com/issues/18555>`_, `issue#19130 <http://tracker.ceph.com/issues/19130>`_, `issue#19227 <http://tracker.ceph.com/issues/19227>`_, `issue#18447 <http://tracker.ceph.com/issues/18447>`_, `issue#19807 <http://tracker.ceph.com/issues/19807>`_, `issue#19798 <http://tracker.ceph.com/issues/19798>`_, `pr#16113 <https://github.com/ceph/ceph/pull/16113>`_, Mykola Golub, Jason Dillaman) -* tests: remove qa/suites/buildpackages (`issue#18849 <http://tracker.ceph.com/issues/18849>`_, `issue#18846 <http://tracker.ceph.com/issues/18846>`_, `pr#13298 <https://github.com/ceph/ceph/pull/13298>`_, Loic Dachary) -* tests: run certain upgrade/jewel-x tests on Xenial only (`issue#20877 <http://tracker.ceph.com/issues/20877>`_, `pr#16493 <https://github.com/ceph/ceph/pull/16493>`_, Nathan Cutler) -* tests: run-rbd-unit-tests.sh assert in lockdep_will_lock, TestLibRBD.ObjectMapConsistentSnap (`issue#18822 <http://tracker.ceph.com/issues/18822>`_, `issue#17447 <http://tracker.ceph.com/issues/17447>`_, `pr#14151 <https://github.com/ceph/ceph/pull/14151>`_, Jason Dillaman) -* tests: SUSE yaml facets in qa/distros/all are out of date (`issue#18849 <http://tracker.ceph.com/issues/18849>`_, `issue#18870 <http://tracker.ceph.com/issues/18870>`_, `issue#18846 <http://tracker.ceph.com/issues/18846>`_, `issue#18856 <http://tracker.ceph.com/issues/18856>`_, `pr#13330 <https://github.com/ceph/ceph/pull/13330>`_, Nathan Cutler) -* tests: swift.py: clone the ceph-kraken branch (`issue#20520 <http://tracker.ceph.com/issues/20520>`_, `pr#16131 <https://github.com/ceph/ceph/pull/16131>`_, Nathan Cutler) -* tests: test/librbd: decouple ceph_test_librbd_api from libceph-common (`issue#20175 <http://tracker.ceph.com/issues/20175>`_, `issue#20351 <http://tracker.ceph.com/issues/20351>`_, `pr#16195 <https://github.com/ceph/ceph/pull/16195>`_, Kefu Chai) -* tests: test_notify.py: assert(not image.is_exclusive_lock_owner()) on line 147 (`issue#19716 <http://tracker.ceph.com/issues/19716>`_, `issue#19794 <http://tracker.ceph.com/issues/19794>`_, `pr#14833 <https://github.com/ceph/ceph/pull/14833>`_, Mykola Golub) -* tests: test_notify.py: rbd.InvalidArgument: error updating features for image test_notify_clone2 (`issue#19692 <http://tracker.ceph.com/issues/19692>`_, `issue#19693 <http://tracker.ceph.com/issues/19693>`_, `pr#14641 <https://github.com/ceph/ceph/pull/14641>`_, Jason Dillaman) -* tests: use ceph-kraken branch for s3tests (`issue#18387 <http://tracker.ceph.com/issues/18387>`_, `pr#12746 <https://github.com/ceph/ceph/pull/12746>`_, Nathan Cutler) -* tests: use librados API to retrieve config params (`issue#18668 <http://tracker.ceph.com/issues/18668>`_, `issue#18617 <http://tracker.ceph.com/issues/18617>`_, `pr#13102 <https://github.com/ceph/ceph/pull/13102>`_, Jason Dillaman) -* tests: various OpenStack tweaks (`issue#20882 <http://tracker.ceph.com/issues/20882>`_, `pr#13707 <https://github.com/ceph/ceph/pull/13707>`_, `pr#13641 <https://github.com/ceph/ceph/pull/13641>`_, `pr#13635 <https://github.com/ceph/ceph/pull/13635>`_, `pr#13633 <https://github.com/ceph/ceph/pull/13633>`_, `pr#13613 <https://github.com/ceph/ceph/pull/13613>`_, `pr#13283 <https://github.com/ceph/ceph/pull/13283>`_, `pr#13673 <https://github.com/ceph/ceph/pull/13673>`_, `pr#13638 <https://github.com/ceph/ceph/pull/13638>`_, `pr#14485 <https://github.com/ceph/ceph/pull/14485>`_, Zack Cerza) -* tools: ceph-brag fails to count "in" mds (`issue#19333 <http://tracker.ceph.com/issues/19333>`_, `issue#19192 <http://tracker.ceph.com/issues/19192>`_, `pr#14098 <https://github.com/ceph/ceph/pull/14098>`_, Peng Zhang) -* tools: ceph-disk prepare writes osd log 0 with root owner (`issue#18538 <http://tracker.ceph.com/issues/18538>`_, `issue#18606 <http://tracker.ceph.com/issues/18606>`_, `pr#13026 <https://github.com/ceph/ceph/pull/13026>`_, Samuel Matzek) -* tools: RadosImport::import should return an error if Rados::connect fails (`issue#19351 <http://tracker.ceph.com/issues/19351>`_, `issue#19319 <http://tracker.ceph.com/issues/19319>`_, `pr#14095 <https://github.com/ceph/ceph/pull/14095>`_, Brad Hubbard) - -v11.2.0 Kraken -============== - -This is the first release of the Kraken series. It is a stable -release that will be maintained with bugfixes and backports until the -next stable release, Luminous, is completed in the Spring of 2017. - -Major Changes from Jewel ------------------------- - -- *RADOS*: - - * The new *BlueStore* backend now has a stable disk format and is - passing our failure and stress testing. Although the backend is - still flagged as experimental, we encourage users to try it out - for non-production clusters and non-critical data sets. - * RADOS now has experimental support for *overwrites on - erasure-coded* pools. Because the disk format and implementation - are not yet finalized, there is a special pool option that must be - enabled to test the new feature. Enabling this option on a cluster - will permanently bar that cluster from being upgraded to future - versions. - * We now default to the AsyncMessenger (``ms type = async``) instead - of the legacy SimpleMessenger. The most noticeable difference is - that we now use a fixed sized thread pool for network connections - (instead of two threads per socket with SimpleMessenger). - * Some OSD failures are now detected almost immediately, whereas - previously the heartbeat timeout (which defaults to 20 seconds) - had to expire. This prevents IO from blocking for an extended - period for failures where the host remains up but the ceph-osd - process is no longer running. - * There is a new ``ceph-mgr`` daemon. It is currently collocated with - the monitors by default, and is not yet used for much, but the basic - infrastructure is now in place. - * The size of encoded OSDMaps has been reduced. - * The OSDs now quiesce scrubbing when recovery or rebalancing is in progress. - -- *RGW*: - - * RGW now supports a new zone type that can be used for metadata indexing - via ElasticSearch. - * RGW now supports the S3 multipart object copy-part API. - * It is possible now to reshard an existing bucket. Note that bucket - resharding currently requires that all IO (especially writes) to - the specific bucket is quiesced. - * RGW now supports data compression for objects. - * Civetweb version has been upgraded to 1.8 - * The Swift static website API is now supported (S3 support has been added - previously). - * S3 bucket lifecycle API has been added. Note that currently it only supports - object expiration. - * Support for custom search filters has been added to the LDAP auth - implementation. - * Support for NFS version 3 has been added to the RGW NFS gateway. - * A Python binding has been created for librgw. - -- *RBD*: - - * RBD now supports images stored in an *erasure-coded* RADOS pool - using the new (experimental) overwrite support. Images must be - created using the new rbd CLI "--data-pool <ec pool>" option to - specify the EC pool where the backing data objects are - stored. Attempting to create an image directly on an EC pool will - not be successful since the image's backing metadata is only - supported on a replicated pool. - * The rbd-mirror daemon now supports replicating dynamic image - feature updates and image metadata key/value pairs from the - primary image to the non-primary image. - * The number of image snapshots can be optionally restricted to a - configurable maximum. - * The rbd Python API now supports asynchronous IO operations. - -- *CephFS*: - - * libcephfs function definitions have been changed to enable proper - uid/gid control. The library version has been increased to reflect the - interface change. - * Standby replay MDS daemons now consume less memory on workloads - doing deletions. - * Scrub now repairs backtrace, and populates `damage ls` with - discovered errors. - * A new `pg_files` subcommand to `cephfs-data-scan` can identify - files affected by a damaged or lost RADOS PG. - * The false-positive "failing to respond to cache pressure" warnings have - been fixed. - - -Upgrading from Kraken release candidate 11.1.0 ----------------------------------------------- - -* The new *BlueStore* backend had an on-disk format change after 11.1.0. - Any BlueStore OSDs created with 11.1.0 will need to be destroyed and - recreated. - -Upgrading from Jewel --------------------- - -* All clusters must first be upgraded to Jewel 10.2.z before upgrading - to Kraken 11.2.z (or, eventually, Luminous 12.2.z). - -* The ``sortbitwise`` flag must be set on the Jewel cluster before upgrading - to Kraken. The latest Jewel (10.2.8+) releases issue a health warning if - the flag is not set, so this is probably already set. If it is not, Kraken - OSDs will refuse to start and will print and error message in their log. - -* You may upgrade OSDs, Monitors, and MDSs in any order. RGW daemons - should be upgraded last. - -* When upgrading, new ceph-mgr daemon instances will be created automatically - alongside any monitors. This will be true for Jewel to Kraken and Jewel to - Luminous upgrades, but likely not be true for future upgrades beyond - Luminous. You are, of course, free to create new ceph-mgr daemon instances - and destroy the auto-created ones if you do not with them to be colocated - with the ceph-mon daemons. - - -BlueStore ---------- - -BlueStore is a new backend for managing data stored by each OSD on the directly -hard disk or SSD. Unlike the existing FileStore implementation, which makes -use of an XFS file system to store objects as files, BlueStore manages the -underlying block device directly. Implements its own file system-like on-disk -structure the is designed specifically for Ceph OSD workloads. Key features -of BlueStore include: - - * Checksums on all data written to disk, with checksum verifications on all - reads, enabled by default. - * Inline compression support, which can be enabled on a per-pool or per-object - basis via pool properties or client hints, respectively. - * Efficient journaling. Unlike FileStore, which writes *all* data to - its journal device, BlueStore only journals metadata and (in some - cases) small writes, reducing the size and throughput requirements - for its journal. As with FileStore, the journal can be colocated - on the same device as other data or allocated on a smaller, - high-performance device (e.g., an SSD or NVMe device). BlueStore - journals are only 512 MB by default. - -The BlueStore on-disk format is expected to continue to evolve. However, we -will provide support in the OSD to migrate to the new format on upgrade. - -.. note: BlueStore is still marked "experimental" in Kraken. We - recommend its use for proof-of-concept and test environments, or - other cases where data loss can be tolerated. Although it is - stable in our testing environment, the code is new and bugs are - inevitable. We hope that with user feedback from Kraken - deployments we will have sufficient confidence to mark it stable - (and the default) in the next major release (Luminous). - -In order to enable BlueStore, add the following to ceph.conf:: - - enable experimental unrecoverable data corrupting features = bluestore - -To create a BlueStore OSD, pass the --bluestore option to ceph-disk or -ceph-deploy during OSD creation. - - - -Upgrade notes -------------- - -* The OSDs now avoid starting new scrubs while recovery is in progress. To - revert to the old behavior (and do not let recovery activity affect the - scrub scheduling) you can set the following option:: - - osd scrub during recovery = true - -* The list of monitor hosts/addresses for building the monmap can now be - obtained from DNS SRV records. The service name used when querying the DNS - is defined in the "mon_dns_srv_name" config option, which defaults to - "ceph-mon". - -* The 'osd class load list' config option is a list of object class names that - the OSD is permitted to load (or '*' for all classes). By default it - contains all existing in-tree classes for backwards compatibility. - -* The 'osd class default list' config option is a list of object class - names (or '*' for all classes) that clients may invoke having only - the '*', 'x', 'class-read', or 'class-write' capabilities. By - default it contains all existing in-tree classes for backwards - compatibility. Invoking classes not listed in 'osd class default - list' requires a capability naming the class (e.g. 'allow class - foo'). - -* The 'rgw rest getusage op compat' config option allows you to dump - (or not dump) the description of user stats in the S3 GetUsage - API. This option defaults to false. If the value is true, the - response data for GetUsage looks like:: - - "stats": { - "TotalBytes": 516, - "TotalBytesRounded": 1024, - "TotalEntries": 1 - } - - If the value is false, the response for GetUsage looks as it did before:: - - { - 516, - 1024, - 1 - } - -* The 'osd out ...' and 'osd in ...' commands now preserve the OSD - weight. That is, after marking an OSD out and then in, the weight - will be the same as before (instead of being reset to 1.0). - Previously the mons would only preserve the weight if the mon - automatically marked and OSD out and then in, but not when an admin - did so explicitly. - -* The 'ceph osd perf' command will display 'commit_latency(ms)' and - 'apply_latency(ms)'. Previously, the names of these two columns are - 'fs_commit_latency(ms)' and 'fs_apply_latency(ms)'. We remove the - prefix 'fs\_', because they are not filestore specific. - -* Monitors will no longer allow pools to be removed by default. The - setting mon_allow_pool_delete has to be set to true (defaults to - false) before they allow pools to be removed. This is a additional - safeguard against pools being removed by accident. - -* If you have manually specified the monitor user rocksdb via the - ``mon keyvaluedb = rocksdb`` option, you will need to manually add a - file to the mon data directory to preserve this option:: - - echo rocksdb > /var/lib/ceph/mon/ceph-`hostname`/kv_backend - - New monitors will now use rocksdb by default, but if that file is - not present, existing monitors will use leveldb. The ``mon - keyvaluedb`` option now only affects the backend chosen when a - monitor is created. - -* The 'osd crush initial weight' option allows you to specify a CRUSH - weight for a newly added OSD. Previously a value of 0 (the default) - meant that we should use the size of the OSD's store to weight the - new OSD. Now, a value of 0 means it should have a weight of 0, and - a negative value (the new default) means we should automatically - weight the OSD based on its size. If your configuration file - explicitly specifies a value of 0 for this option you will need to - change it to a negative value (e.g., -1) to preserve the current - behavior. - -* The ``osd crush location`` config option is no longer supported. Please - update your ceph.conf to use the ``crush location`` option instead. - -* The static libraries are no longer included by the debian - development packages (lib*-dev) as it is not required per debian - packaging policy. The shared (.so) versions are packaged as before. - -* The libtool pseudo-libraries (.la files) are no longer included by - the debian development packages (lib*-dev) as they are not required - per https://wiki.debian.org/ReleaseGoals/LAFileRemoval and - https://www.debian.org/doc/manuals/maint-guide/advanced.en.html. - -* The jerasure and shec plugins can now detect SIMD instruction at - runtime and no longer need to be explicitly configured for different - processors. The following plugins are now deprecated: - jerasure_generic, jerasure_sse3, jerasure_sse4, jerasure_neon, - shec_generic, shec_sse3, shec_sse4, and shec_neon. If you use any of - these plugins directly you will see a warning in the mon log file. - Please switch to using just 'jerasure' or 'shec'. - -* The librados omap get_keys and get_vals operations include a start key and a - limit on the number of keys to return. The OSD now imposes a configurable - limit on the number of keys and number of total bytes it will respond with, - which means that a librados user might get fewer keys than they asked for. - This is necessary to prevent careless users from requesting an unreasonable - amount of data from the cluster in a single operation. The new limits are - configured with ``osd_max_omap_entries_per_request``, defaulting to 131,072, and - ``osd_max_omap_bytes_per_request``, defaulting to 4MB. - -* Calculation of recovery priorities has been updated. - This could lead to unintuitive recovery prioritization - during cluster upgrade. In case of such recovery, OSDs - in the old version would operate on different priority ranges - than new ones. Once upgraded, the cluster will operate on - consistent values. - - -Notable Changes ---------------- - -* bluestore: add counter to trace blob splitting (`pr#11718 <http://github.com/ceph/ceph/pull/11718>`_, xie xingguo) -* bluestore: a few more cleanups (`pr#11780 <http://github.com/ceph/ceph/pull/11780>`_, xie xingguo) -* bluestore: avoid polluting shard info if need resharding (`pr#11439 <http://github.com/ceph/ceph/pull/11439>`_, xie xingguo) -* bluestore: avoid unnecessary call to init_csum() (`pr#12015 <http://github.com/ceph/ceph/pull/12015>`_, xie xingguo) -* bluestore: ceph-disk: adjust bluestore default device sizes (`pr#12530 <http://github.com/ceph/ceph/pull/12530>`_, Sage Weil) -* bluestore: ceph_test_objectstore: smaller device (`pr#11591 <http://github.com/ceph/ceph/pull/11591>`_, Sage Weil) -* bluestore: clean up Allocator::dump (`issue#18054 <http://tracker.ceph.com/issues/18054>`_, `pr#12282 <http://github.com/ceph/ceph/pull/12282>`_, Sage Weil) -* bluestore: clear extent map on object removal (`pr#11603 <http://github.com/ceph/ceph/pull/11603>`_, Sage Weil) -* bluestore: compressor/ZLibCompressor: fix broken isal-l (`pr#11445 <http://github.com/ceph/ceph/pull/11445>`_, Igor Fedotov) -* bluestore: dedup if space overlap truly exists (`pr#11986 <http://github.com/ceph/ceph/pull/11986>`_, xie xingguo) -* bluestore: dedup omap_head, reuse nid instead (`pr#12275 <http://github.com/ceph/ceph/pull/12275>`_, xie xingguo) -* bluestore: deep fsck (`pr#11724 <http://github.com/ceph/ceph/pull/11724>`_, Sage Weil) -* bluestore: default bluestore_clone_cow=true (`pr#11540 <http://github.com/ceph/ceph/pull/11540>`_, Sage Weil) -* bluestore: drop inline_dirty from struct ExtentMap (`pr#11377 <http://github.com/ceph/ceph/pull/11377>`_, xie xingguo) -* bluestore: drop member "space" from Onode (`pr#12185 <http://github.com/ceph/ceph/pull/12185>`_, xie xingguo) -* bluestore: fix alloc release timing on sync submits (`pr#11983 <http://github.com/ceph/ceph/pull/11983>`_, Sage Weil) -* bluestore: fix bufferspace stats leak due to blob splitting (`pr#12039 <http://github.com/ceph/ceph/pull/12039>`_, xie xingguo) -* bluestore: fix collection_list end bound off-by-one (`pr#11771 <http://github.com/ceph/ceph/pull/11771>`_, Sage Weil) -* bluestore: fix compiler warnings (`pr#11905 <http://github.com/ceph/ceph/pull/11905>`_, xie xingguo) -* bluestore: fixes and cleanups (`pr#11761 <http://github.com/ceph/ceph/pull/11761>`_, xie xingguo) -* bluestore: fix escaping of chars > 0x80 (`pr#11502 <http://github.com/ceph/ceph/pull/11502>`_, Sage Weil) -* bluestore: fix extent shard span check (`pr#11725 <http://github.com/ceph/ceph/pull/11725>`_, Sage Weil) -* bluestore: fix has_aios (`pr#11317 <http://github.com/ceph/ceph/pull/11317>`_, Sage Weil) -* bluestore: Fix invalid compression statfs caused by clone op (`pr#11351 <http://github.com/ceph/ceph/pull/11351>`_, Igor Fedotov) -* bluestore: fix lack of resharding (`pr#11597 <http://github.com/ceph/ceph/pull/11597>`_, Igor Fedotov) -* bluestore: fix latency calculation (`pr#12040 <http://github.com/ceph/ceph/pull/12040>`_, Pan Liu) -* bluestore: fix onode vs extent key suffix (`pr#11452 <http://github.com/ceph/ceph/pull/11452>`_, Sage Weil) -* bluestore: fix potential memory leak (`pr#11893 <http://github.com/ceph/ceph/pull/11893>`_, xie xingguo) -* bluestore: fix race condtion during blob spliting (`pr#11422 <http://github.com/ceph/ceph/pull/11422>`_, xiexingguo, xie xingguo) -* bluestore: fix remove_collection to properly detect collection e… (`pr#11398 <http://github.com/ceph/ceph/pull/11398>`_, Igor Fedotov) -* bluestore: fix _split_collections race with osr_reap (`pr#11748 <http://github.com/ceph/ceph/pull/11748>`_, Sage Weil) -* bluestore: fix up compression tests and debug output (`pr#11350 <http://github.com/ceph/ceph/pull/11350>`_, Sage Weil) -* bluestore: fix writes that span existing shard boundaries (`pr#11451 <http://github.com/ceph/ceph/pull/11451>`_, Sage Weil) -* bluestore: flush before enumerating omap values (`issue#18140 <http://tracker.ceph.com/issues/18140>`_, `pr#12328 <http://github.com/ceph/ceph/pull/12328>`_, Sage Weil) -* bluestore: formatting nits (`pr#11514 <http://github.com/ceph/ceph/pull/11514>`_, xie xingguo) -* bluestore: fsck: fix omap_head check (`pr#11726 <http://github.com/ceph/ceph/pull/11726>`_, Sage Weil) -* bluestore: GC infra refactor, more UTs and GC range calculation fixes (`pr#11482 <http://github.com/ceph/ceph/pull/11482>`_, Igor Fedotov) -* bluestore: KernelDevice: fix race in aio_thread vs aio_wait (`issue#17824 <http://tracker.ceph.com/issues/17824>`_, `pr#12204 <http://github.com/ceph/ceph/pull/12204>`_, Sage Weil) -* bluestore: kv: dump rocksdb stats (`pr#12287 <http://github.com/ceph/ceph/pull/12287>`_, Varada Kari, Jianpeng Ma, Sage Weil) -* bluestore: kv/rocksdb: enable rocksdb write path breakdown (`pr#11696 <http://github.com/ceph/ceph/pull/11696>`_, Haodong Tang) -* bluestore: kv/RocksDBStore: rename option (`pr#11769 <http://github.com/ceph/ceph/pull/11769>`_, Sage Weil) -* bluestore: less code redundancy (`pr#11740 <http://github.com/ceph/ceph/pull/11740>`_, xie xingguo) -* bluestore: make 2q cache kin/kout size tunable (`pr#11599 <http://github.com/ceph/ceph/pull/11599>`_, Haodong Tang) -* bluestore: mark ops that can't tolerate ENOENT (`pr#12114 <http://github.com/ceph/ceph/pull/12114>`_, Sage Weil) -* bluestore: mempool: changes for bitmap allocator (`pr#11922 <http://github.com/ceph/ceph/pull/11922>`_, Ramesh Chander) -* bluestore: misc. fixes and cleanups (`pr#11964 <http://github.com/ceph/ceph/pull/11964>`_, xie xingguo) -* bluestore: move bluefs into its own mempool (`pr#11834 <http://github.com/ceph/ceph/pull/11834>`_, Sage Weil) -* bluestore: no garbage collection for uncompressed blobs (`pr#11539 <http://github.com/ceph/ceph/pull/11539>`_, Roushan Ali, Sage Weil) -* bluestore: optional debug mode to identify aio stalls (`pr#11818 <http://github.com/ceph/ceph/pull/11818>`_, Sage Weil) -* bluestore: os/bluestore: a few cleanups (`pr#11483 <http://github.com/ceph/ceph/pull/11483>`_, Sage Weil) -* bluestore: os/bluestore: avoid resharding if the last shard size fall below shar… (`pr#12447 <http://github.com/ceph/ceph/pull/12447>`_, Igor Fedotov) -* bluestore: os/bluestore: bitmap allocator dump functionality (`pr#12298 <http://github.com/ceph/ceph/pull/12298>`_, Ramesh Chander) -* bluestore: os/bluestore: bluestore_sync_submit_transaction = false (`pr#12367 <http://github.com/ceph/ceph/pull/12367>`_, Sage Weil) -* bluestore: os/bluestore: cleanup around Blob::ref_map (`pr#11896 <http://github.com/ceph/ceph/pull/11896>`_, Igor Fedotov) -* bluestore: os/bluestore: clear omap flag if parent has none (`pr#12351 <http://github.com/ceph/ceph/pull/12351>`_, xie xingguo) -* bluestore: os/bluestore: don't implicitly create the source object for clone (`pr#12353 <http://github.com/ceph/ceph/pull/12353>`_, xie xingguo) -* bluestore: os/bluestore: drop old bluestore preconditioning; replace with wal preextension of file size (`pr#12265 <http://github.com/ceph/ceph/pull/12265>`_, Sage Weil) -* bluestore: os/bluestore: fix global commit latency (`pr#12356 <http://github.com/ceph/ceph/pull/12356>`_, xie xingguo) -* bluestore: os/bluestore: fix ondisk encoding for blobs (`pr#12488 <http://github.com/ceph/ceph/pull/12488>`_, Varada Kari, Sage Weil) -* bluestore: os/bluestore: fix potential csum_order overflow (`pr#12333 <http://github.com/ceph/ceph/pull/12333>`_, xie xingguo) -* bluestore: os/bluestore: fix target_buffer value overflow in Cache::trim() (`pr#12507 <http://github.com/ceph/ceph/pull/12507>`_, Igor Fedotov) -* bluestore: os/bluestore: include modified objects in flush list even if onode unchanged (`pr#12541 <http://github.com/ceph/ceph/pull/12541>`_, Sage Weil) -* bluestore: os/bluestore: kill dead gc-related counters (`pr#12065 <http://github.com/ceph/ceph/pull/12065>`_, xie xingguo) -* bluestore: os/bluestore: kill overlay related options (`pr#11557 <http://github.com/ceph/ceph/pull/11557>`_, xie xingguo) -* bluestore: os/bluestore: misc coverity fixes/cleanups (`pr#12202 <http://github.com/ceph/ceph/pull/12202>`_, Sage Weil) -* bluestore: os/bluestore: preserve source collection cache during split (`pr#12574 <http://github.com/ceph/ceph/pull/12574>`_, Sage Weil) -* bluestore: os/bluestore: remove 'extents' from shard_info (`pr#12629 <http://github.com/ceph/ceph/pull/12629>`_, Sage Weil) -* bluestore: os/bluestore: simplified allocator interfaces to single apis (`pr#12355 <http://github.com/ceph/ceph/pull/12355>`_, Ramesh Chander) -* bluestore: os/bluestore: simplify allocator release flow (`pr#12343 <http://github.com/ceph/ceph/pull/12343>`_, Sage Weil) -* bluestore: os/bluestore: simplify can_split_at() (`pr#11607 <http://github.com/ceph/ceph/pull/11607>`_, xie xingguo) -* bluestore: os/bluestore: use iterator for erase() method directly (`pr#11490 <http://github.com/ceph/ceph/pull/11490>`_, xie xingguo) -* bluestore: os/kstore: rmcoll fix to satisfy store_test (`pr#11533 <http://github.com/ceph/ceph/pull/11533>`_, Igor Fedotov) -* bluestore: os: make filestore_blackhole -> objectstore_blackhole (`pr#11788 <http://github.com/ceph/ceph/pull/11788>`_, Sage Weil) -* bluestore: os: move_ranges_destroy_src (`pr#11237 <http://github.com/ceph/ceph/pull/11237>`_, Manali Kulkarni, Sage Weil) -* bluestore: readability improvements and doxygen fix (`pr#11895 <http://github.com/ceph/ceph/pull/11895>`_, xie xingguo) -* bluestore: reap collection after all pending ios done (`pr#11797 <http://github.com/ceph/ceph/pull/11797>`_, Haomai Wang) -* bluestore: reap ioc when stopping aio_thread. (`pr#11811 <http://github.com/ceph/ceph/pull/11811>`_, Haodong Tang) -* bluestore: refactor _do_write(); move initializaiton of csum out of loop (`pr#11823 <http://github.com/ceph/ceph/pull/11823>`_, xie xingguo) -* bluestore: remove duplicated namespace of tx state (`pr#11845 <http://github.com/ceph/ceph/pull/11845>`_, xie xingguo) -* bluestore: remove garbage collector staff (`pr#12042 <http://github.com/ceph/ceph/pull/12042>`_, Igor Fedotov) -* bluestore: set next object as ghobject_t::get_max() when start.hobj.i… (`pr#11495 <http://github.com/ceph/ceph/pull/11495>`_, Xinze Chi, Haomai Wang) -* bluestore: simplify blob status checking for small writes (`pr#11366 <http://github.com/ceph/ceph/pull/11366>`_, xie xingguo) -* bluestore: some more cleanups (`pr#11910 <http://github.com/ceph/ceph/pull/11910>`_, xie xingguo) -* bluestore: spdk: a few fixes (`pr#11882 <http://github.com/ceph/ceph/pull/11882>`_, Yehuda Sadeh) -* bluestore: speed up omap-key generation for same onode (`pr#11807 <http://github.com/ceph/ceph/pull/11807>`_, xie xingguo) -* bluestore: traverse buffer_map in reverse order when spliting BufferSpace (`pr#11468 <http://github.com/ceph/ceph/pull/11468>`_, xie xingguo) -* bluestore: update cache logger after 'trim_cache' operation (`pr#11695 <http://github.com/ceph/ceph/pull/11695>`_, Haodong Tang) -* bluestore: use bitmap allocator for bluefs (`pr#12285 <http://github.com/ceph/ceph/pull/12285>`_, Sage Weil) -* bluestore: use std::unordered_map for SharedBlob lookup (`pr#11394 <http://github.com/ceph/ceph/pull/11394>`_, Sage Weil) -* build/ops: AArch64: Detect crc32 extension support from assembler (`issue#17516 <http://tracker.ceph.com/issues/17516>`_, `pr#11391 <http://github.com/ceph/ceph/pull/11391>`_, Alexander Graf) -* build/ops: boost: embedded (`pr#11817 <http://github.com/ceph/ceph/pull/11817>`_, Sage Weil, Matt Benjamin) -* build/ops: build: dump env during build (`issue#18084 <http://tracker.ceph.com/issues/18084>`_, `pr#12284 <http://github.com/ceph/ceph/pull/12284>`_, Sage Weil) -* build/ops: ceph-detect-init: FreeBSD introduction of bsdrc (`pr#11906 <http://github.com/ceph/ceph/pull/11906>`_, Willem Jan Withagen, Kefu Chai) -* build/ops: ceph-disk: enable --runtime ceph-osd systemd units (`issue#17889 <http://tracker.ceph.com/issues/17889>`_, `pr#12241 <http://github.com/ceph/ceph/pull/12241>`_, Loic Dachary) -* build/ops: ceph.spec: add pybind rgwfile (`pr#11847 <http://github.com/ceph/ceph/pull/11847>`_, Haomai Wang) -* build/ops,cleanup,bluestore: os/bluestore: remove build warning in a better way (`pr#11920 <http://github.com/ceph/ceph/pull/11920>`_, Igor Fedotov) -* build/ops: CMakeLists: add vstart-base target (`pr#12476 <http://github.com/ceph/ceph/pull/12476>`_, Sage Weil) -* build/ops: CMakeLists.txt: enable LTTNG by default (`pr#11500 <http://github.com/ceph/ceph/pull/11500>`_, Sage Weil) -* build/ops: common/buffer.cc: raw_pipe depends on splice(2) (`pr#11967 <http://github.com/ceph/ceph/pull/11967>`_, Willem Jan Withagen) -* build/ops,common: common/str_list.h: fix clang warning about std::move (`pr#12570 <http://github.com/ceph/ceph/pull/12570>`_, Willem Jan Withagen) -* build/ops,core: xio: fix build (`pr#11768 <http://github.com/ceph/ceph/pull/11768>`_, Matt Benjamin) -* build/ops: deb: add python dependencies where needed (`issue#17579 <http://tracker.ceph.com/issues/17579>`_, `pr#11507 <http://github.com/ceph/ceph/pull/11507>`_, Nathan Cutler, Kefu Chai) -* build/ops: deb: add python-rgw packages (`pr#11832 <http://github.com/ceph/ceph/pull/11832>`_, Sage Weil) -* build/ops: debian: apply dh_python to python-rgw also (`pr#12260 <http://github.com/ceph/ceph/pull/12260>`_, Kefu Chai) -* build/ops: deb: update python-rgw dependencies to librgw2 (`pr#11885 <http://github.com/ceph/ceph/pull/11885>`_, Casey Bodley) -* build/ops: do_freebsd.sh: Build with SYSTEM Boost on FreeBSD (`pr#11942 <http://github.com/ceph/ceph/pull/11942>`_, Willem Jan Withagen) -* build/ops: do_freebsd.sh: Do not use LTTNG on FreeBSD (`pr#11551 <http://github.com/ceph/ceph/pull/11551>`_, Willem Jan Withagen) -* build/ops: do_freebsd.sh: Set options for debug building. (`pr#11443 <http://github.com/ceph/ceph/pull/11443>`_, Willem Jan Withagen) -* build/ops: FreeBSD: do_freebsd.sh (`pr#12090 <http://github.com/ceph/ceph/pull/12090>`_, Willem Jan Withagen) -* build/ops: FreeBSD:test/encoding/readable.sh": fix nproc and ls -v calls (`pr#11522 <http://github.com/ceph/ceph/pull/11522>`_, Willem Jan Withagen) -* build/ops: FreeBSD: update require packages (`pr#11512 <http://github.com/ceph/ceph/pull/11512>`_, Willem Jan Withagen) -* build/ops: git-archive-all.sh: use an actually unique tmp dir (`pr#12011 <http://github.com/ceph/ceph/pull/12011>`_, Dan Mick) -* build/ops: include/enc: make clang happy (`pr#11638 <http://github.com/ceph/ceph/pull/11638>`_, Kefu Chai, Sage Weil) -* build/ops: install-deps.sh: allow building on SLES systems (`pr#11708 <http://github.com/ceph/ceph/pull/11708>`_, Nitin A Kamble) -* build/ops: install-deps.sh: JQ is needed in one script (`pr#12080 <http://github.com/ceph/ceph/pull/12080>`_, Willem Jan Withagen) -* build/ops: Log: Replace namespace log with logging (`pr#11650 <http://github.com/ceph/ceph/pull/11650>`_, Willem Jan Withagen) -* build/ops: Merging before make check because it clearly breaks the build and the build part is done (`pr#11924 <http://github.com/ceph/ceph/pull/11924>`_, Sage Weil) -* build/ops: ok, w/upstream acks, merging--jenkins build did succeed (this is a build-only change) (`pr#12008 <http://github.com/ceph/ceph/pull/12008>`_, Matt Benjamin) -* build/ops: qa: Add ceph-ansible installer. (`issue#16770 <http://tracker.ceph.com/issues/16770>`_, `pr#10402 <http://github.com/ceph/ceph/pull/10402>`_, Warren Usui) -* build/ops: rocksdb: do not build with --march=native (`pr#11677 <http://github.com/ceph/ceph/pull/11677>`_, Kefu Chai) -* build/ops: rocksdb: update to latest (`pr#12100 <http://github.com/ceph/ceph/pull/12100>`_, Kefu Chai) -* build/ops: rpm: Remove trailing whitespace in usermod command (SUSE) (`pr#10707 <http://github.com/ceph/ceph/pull/10707>`_, Tim Serong) -* build/ops: scripts/release-notes: allow title guesses from gh tags & description update (`pr#11399 <http://github.com/ceph/ceph/pull/11399>`_, Abhishek Lekshmanan) -* build/ops: systemd: Fix startup of ceph-mgr on Debian 8 (`pr#12555 <http://github.com/ceph/ceph/pull/12555>`_, Mark Korenberg) -* build/ops: tracing/objectstore.tp: add missing move_ranges\_... tp (`pr#11484 <http://github.com/ceph/ceph/pull/11484>`_, Sage Weil) -* build/ops: upstart: fix ceph-crush-location default (`issue#6698 <http://tracker.ceph.com/issues/6698>`_, `pr#803 <http://github.com/ceph/ceph/pull/803>`_, Jason Dillaman) -* build/ops: upstart: start ceph-all after static-network-up (`issue#17689 <http://tracker.ceph.com/issues/17689>`_, `pr#11631 <http://github.com/ceph/ceph/pull/11631>`_, Billy Olsen) -* cephfs: add gid to asok status (`pr#11487 <http://github.com/ceph/ceph/pull/11487>`_, Patrick Donnelly) -* cephfs: API cleanup for libcephfs interfaces (`issue#17911 <http://tracker.ceph.com/issues/17911>`_, `pr#12106 <http://github.com/ceph/ceph/pull/12106>`_, Jeff Layton) -* cephfs: ceph-fuse: start up log on parent process before shutdown (`issue#18157 <http://tracker.ceph.com/issues/18157>`_, `pr#12347 <http://github.com/ceph/ceph/pull/12347>`_, Greg Farnum) -* cephfs: ceph_fuse: use sizeof get the buf length (`pr#11176 <http://github.com/ceph/ceph/pull/11176>`_, LeoZhang) -* cephfs,cleanup: ceph-fuse: start up log on parent process before shutdown (`issue#18157 <http://tracker.ceph.com/issues/18157>`_, `pr#12358 <http://github.com/ceph/ceph/pull/12358>`_, Kefu Chai) -* cephfs: client: add pid to metadata (`issue#17276 <http://tracker.ceph.com/issues/17276>`_, `pr#11359 <http://github.com/ceph/ceph/pull/11359>`_, Patrick Donnelly) -* cephfs: client: Client.cc: remove duplicated op type checking against CEPH_MD… (`pr#11608 <http://github.com/ceph/ceph/pull/11608>`_, Weibing Zhang) -* cephfs: client: don't take extra target inode reference in ll_link (`pr#11440 <http://github.com/ceph/ceph/pull/11440>`_, Jeff Layton) -* cephfs: client: fix mutex name typos (`pr#12401 <http://github.com/ceph/ceph/pull/12401>`_, Yunchuan Wen) -* cephfs: client: get caller's uid/gid on every libcephfs operation (`issue#17591 <http://tracker.ceph.com/issues/17591>`_, `pr#11526 <http://github.com/ceph/ceph/pull/11526>`_, Yan, Zheng) -* cephfs: client: get gid from MonClient (`pr#11486 <http://github.com/ceph/ceph/pull/11486>`_, Patrick Donnelly) -* cephfs: client: improve failure messages/debugging (`pr#12110 <http://github.com/ceph/ceph/pull/12110>`_, Patrick Donnelly) -* cephfs: client/mds: Clear setuid bits when writing or truncating (`issue#18131 <http://tracker.ceph.com/issues/18131>`_, `pr#12412 <http://github.com/ceph/ceph/pull/12412>`_, Jeff Layton) -* cephfs: client: put CapSnap not ptr in cap_snaps map (`pr#12111 <http://github.com/ceph/ceph/pull/12111>`_, Patrick Donnelly) -* cephfs: client: remove redundant initialization (`pr#12028 <http://github.com/ceph/ceph/pull/12028>`_, Patrick Donnelly) -* cephfs: client: remove unnecessary bufferptr[] for writev (`pr#11836 <http://github.com/ceph/ceph/pull/11836>`_, Patrick Donnelly) -* cephfs: client: remove unneeded layout on MClientCaps (`pr#11790 <http://github.com/ceph/ceph/pull/11790>`_, John Spray) -* cephfs: client: set metadata["root"] from mount method when it's called with … (`pr#12505 <http://github.com/ceph/ceph/pull/12505>`_, Jeff Layton) -* cephfs: client: trim_caps() do not dereference cap if it's removed (`pr#12145 <http://github.com/ceph/ceph/pull/12145>`_, Kefu Chai) -* cephfs: client: use unique_ptr (`pr#11837 <http://github.com/ceph/ceph/pull/11837>`_, Patrick Donnelly) -* cephfs: common/ceph_string: add ceph string constants for CEPH_SESSION_FORCE_RO (`pr#11516 <http://github.com/ceph/ceph/pull/11516>`_, Zhi Zhang) -* cephfs: Fix #17562 (backtrace check fails when scrubbing directory created by fsstress) (`issue#17562 <http://tracker.ceph.com/issues/17562>`_, `pr#11517 <http://github.com/ceph/ceph/pull/11517>`_, Yan, Zheng) -* cephfs: fix missing ll_get for ll_walk (`issue#18086 <http://tracker.ceph.com/issues/18086>`_, `pr#12061 <http://github.com/ceph/ceph/pull/12061>`_, Gui Hecheng) -* cephfs: get new fsmap after marking clusters down (`issue#7271 <http://tracker.ceph.com/issues/7271>`_, `issue#17894 <http://tracker.ceph.com/issues/17894>`_, `pr#1262 <http://github.com/ceph/ceph/pull/1262>`_, Patrick Donnelly) -* cephfs: Have ceph clear setuid/setgid bits on chown (`issue#18131 <http://tracker.ceph.com/issues/18131>`_, `pr#12331 <http://github.com/ceph/ceph/pull/12331>`_, Jeff Layton) -* cephfs: libcephfs: add ceph_fsetattr&&ceph_lchmod&&ceph_lutime (`pr#11191 <http://github.com/ceph/ceph/pull/11191>`_, huanwen ren) -* cephfs: libcephfs: add readlink function in cephfs.pyx (`pr#12384 <http://github.com/ceph/ceph/pull/12384>`_, huanwen ren) -* cephfs: libcephfs and test suite fixes (`issue#18013 <http://tracker.ceph.com/issues/18013>`_, `issue#17982 <http://tracker.ceph.com/issues/17982>`_, `pr#12228 <http://github.com/ceph/ceph/pull/12228>`_, Jeff Layton) -* cephfs: libcephfs client API overhaul and update (`pr#11647 <http://github.com/ceph/ceph/pull/11647>`_, Jeff Layton) -* cephfs: lua: use simpler lua_next traversal structure (`pr#11958 <http://github.com/ceph/ceph/pull/11958>`_, Patrick Donnelly) -* cephfs: mds/Beacon: move C_MDS_BeaconSender class to .cc (`pr#10940 <http://github.com/ceph/ceph/pull/10940>`_, Michal Jarzabek) -* cephfs: mds/CDir.cc: remove unneeded use of count (`pr#11613 <http://github.com/ceph/ceph/pull/11613>`_, Michal Jarzabek) -* cephfs: mds/CInode.h: remove unneeded use of count (`pr#11371 <http://github.com/ceph/ceph/pull/11371>`_, Michal Jarzabek) -* cephfs: mds/DamageTable.cc: move shared ptrs (`pr#11435 <http://github.com/ceph/ceph/pull/11435>`_, Michal Jarzabek) -* cephfs: mds/DamageTable.cc: remove unneeded use of count (`pr#11625 <http://github.com/ceph/ceph/pull/11625>`_, Michal Jarzabek) -* cephfs: mds/DamageTable: move classes to .cc file (`pr#11450 <http://github.com/ceph/ceph/pull/11450>`_, Michal Jarzabek) -* cephfs: mds/flock: add const to member functions (`pr#11692 <http://github.com/ceph/ceph/pull/11692>`_, Michal Jarzabek) -* cephfs: mds/FSMap.cc: remove unneeded use of count (`pr#11402 <http://github.com/ceph/ceph/pull/11402>`_, Michal Jarzabek) -* cephfs: mds/FSMapUser.h: remove copy ctr and assign op (`pr#11509 <http://github.com/ceph/ceph/pull/11509>`_, Michal Jarzabek) -* cephfs: mds/InfoTable.h: add override to virtual functs (`pr#11496 <http://github.com/ceph/ceph/pull/11496>`_, Michal Jarzabek) -* cephfs: mds/InoTable.h: add override to virtual functs (`pr#11604 <http://github.com/ceph/ceph/pull/11604>`_, Michal Jarzabek) -* cephfs: mds/Mantle.h: include correct header files (`pr#11886 <http://github.com/ceph/ceph/pull/11886>`_, Michal Jarzabek) -* cephfs: mds/Mantle: pass parameters by const ref (`pr#11713 <http://github.com/ceph/ceph/pull/11713>`_, Michal Jarzabek) -* cephfs: mds/MDCache.h: remove unneeded call to clear func (`pr#11954 <http://github.com/ceph/ceph/pull/11954>`_, Michal Jarzabek) -* cephfs: mds/MDCache.h: remove unused functions (`pr#11908 <http://github.com/ceph/ceph/pull/11908>`_, Michal Jarzabek) -* cephfs: mds/MDLog: add const to member functions (`pr#11663 <http://github.com/ceph/ceph/pull/11663>`_, Michal Jarzabek) -* cephfs: mds/MDSMap.h: add const to member functions (`pr#11511 <http://github.com/ceph/ceph/pull/11511>`_, Michal Jarzabek) -* cephfs: mds/MDSRank: add const to member functions (`pr#11752 <http://github.com/ceph/ceph/pull/11752>`_, Michal Jarzabek) -* cephfs: mds/MDSRank.h: add override to virtual function (`pr#11727 <http://github.com/ceph/ceph/pull/11727>`_, Michal Jarzabek) -* cephfs: mds/MDSRank.h: make destructor protected (`pr#11651 <http://github.com/ceph/ceph/pull/11651>`_, Michal Jarzabek) -* cephfs: mds/MDSTableClient.h: add const to member funct (`pr#11681 <http://github.com/ceph/ceph/pull/11681>`_, Michal Jarzabek) -* cephfs: mds/Migrator.cc: remove unneeded use of count (`pr#11523 <http://github.com/ceph/ceph/pull/11523>`_, Michal Jarzabek) -* cephfs: mds/Migrator.h: add const to member functions (`pr#11819 <http://github.com/ceph/ceph/pull/11819>`_, Michal Jarzabek) -* cephfs: mds/Migrator.h: remove unneeded use of count (`pr#11833 <http://github.com/ceph/ceph/pull/11833>`_, Michal Jarzabek) -* cephfs: mds/Mutation.h: add const to member functions (`pr#11670 <http://github.com/ceph/ceph/pull/11670>`_, Michal Jarzabek) -* cephfs: mds/Mutation.h: simplify constructors (`pr#11455 <http://github.com/ceph/ceph/pull/11455>`_, Michal Jarzabek) -* cephfs: MDS: reduce usage of context wrapper (`pr#11560 <http://github.com/ceph/ceph/pull/11560>`_, Yan, Zheng) -* cephfs: mds/ScrubHeader.h: pass string by const reference (`pr#11904 <http://github.com/ceph/ceph/pull/11904>`_, Michal Jarzabek) -* cephfs: mds/server: merge the snapshot request judgment (`pr#11150 <http://github.com/ceph/ceph/pull/11150>`_, huanwen ren) -* cephfs: mds/SessionMap: add const to member functions (`pr#11541 <http://github.com/ceph/ceph/pull/11541>`_, Michal Jarzabek) -* cephfs: mds/SessionMap.cc: avoid copying and add const (`pr#11297 <http://github.com/ceph/ceph/pull/11297>`_, Michal Jarzabek) -* cephfs: mds/SessionMap.cc:put classes in unnamed namespace (`pr#11316 <http://github.com/ceph/ceph/pull/11316>`_, Michal Jarzabek) -* cephfs: mds/SessionMap.cc: remove unneeded use of count (`pr#11338 <http://github.com/ceph/ceph/pull/11338>`_, Michal Jarzabek) -* cephfs: mds/SessionMap.h: remove unneeded function (`pr#11565 <http://github.com/ceph/ceph/pull/11565>`_, Michal Jarzabek) -* cephfs: mds/SessionMap.h: remove unneeded use of count (`pr#11358 <http://github.com/ceph/ceph/pull/11358>`_, Michal Jarzabek) -* cephfs: mds/SnapRealm: remove unneeded use of count (`pr#11609 <http://github.com/ceph/ceph/pull/11609>`_, Michal Jarzabek) -* cephfs: mds/SnapServer.h: add override to virtual functs (`pr#11380 <http://github.com/ceph/ceph/pull/11380>`_, Michal Jarzabek) -* cephfs: mds/SnapServer.h: add override to virtual functs (`pr#11583 <http://github.com/ceph/ceph/pull/11583>`_, Michal Jarzabek) -* cephfs: mon/MDSMonitor: fix iterating over mutated map (`issue#18166 <http://tracker.ceph.com/issues/18166>`_, `pr#12395 <http://github.com/ceph/ceph/pull/12395>`_, John Spray) -* cephfs: multimds: fix state check in Migrator::find_stale_export_freeze() (`pr#12098 <http://github.com/ceph/ceph/pull/12098>`_, Yan, Zheng) -* cephfs: osdc: After write try merge bh. (`issue#17270 <http://tracker.ceph.com/issues/17270>`_, `pr#11545 <http://github.com/ceph/ceph/pull/11545>`_, Jianpeng Ma) -* cephfs: Partial organization of mds/ header sections (`pr#11959 <http://github.com/ceph/ceph/pull/11959>`_, Patrick Donnelly) -* cephfs: Port/bootstrap (`pr#827 <http://github.com/ceph/ceph/pull/827>`_, Yan, Zheng) -* cephfs: Revert "osdc: After write try merge bh." (`issue#17270 <http://tracker.ceph.com/issues/17270>`_, `pr#11262 <http://github.com/ceph/ceph/pull/11262>`_, John Spray) -* cephfs: Small pile of random cephfs fixes and cleanup (`pr#11421 <http://github.com/ceph/ceph/pull/11421>`_, Jeff Layton) -* cephfs: src/mds: fix MDSMap upgrade decoding (`issue#17837 <http://tracker.ceph.com/issues/17837>`_, `pr#12097 <http://github.com/ceph/ceph/pull/12097>`_, John Spray) -* cephfs: systemd: add ceph-fuse service file (`pr#11542 <http://github.com/ceph/ceph/pull/11542>`_, Patrick Donnelly) -* cephfs: test fragment size limit (`issue#16164 <http://tracker.ceph.com/issues/16164>`_, `pr#1069 <http://github.com/ceph/ceph/pull/1069>`_, Patrick Donnelly) -* cephfs: test readahead is working (`issue#16024 <http://tracker.ceph.com/issues/16024>`_, `pr#1046 <http://github.com/ceph/ceph/pull/1046>`_, Patrick Donnelly) -* cephfs: test: temporarily remove fork()ing flock tests (`issue#16556 <http://tracker.ceph.com/issues/16556>`_, `pr#11211 <http://github.com/ceph/ceph/pull/11211>`_, John Spray) -* cephfs: tool/cephfs: displaying "list" in journal event mode (`pr#11236 <http://github.com/ceph/ceph/pull/11236>`_, huanwen ren) -* cephfs: tools/cephfs: add pg_files command (`issue#17249 <http://tracker.ceph.com/issues/17249>`_, `pr#11026 <http://github.com/ceph/ceph/pull/11026>`_, John Spray) -* cephfs: tools/cephfs: add scan_links command which fixes linkages errors (`pr#11446 <http://github.com/ceph/ceph/pull/11446>`_, Yan, Zheng) -* cephfs: update tests to enable multimds when needed (`pr#933 <http://github.com/ceph/ceph/pull/933>`_, Greg Farnum) -* cleanup: build: The Light Clangtastic (`pr#11921 <http://github.com/ceph/ceph/pull/11921>`_, Adam C. Emerson) -* cleanup,common: common/blkdev: use realpath instead of readlink to resolve the recurs… (`pr#12462 <http://github.com/ceph/ceph/pull/12462>`_, Xinze Chi) -* cleanup,common: common/throttle: simplify Throttle::_wait() (`pr#11165 <http://github.com/ceph/ceph/pull/11165>`_, xie xingguo) -* cleanup,common: src/common: remove nonused config option (`pr#12311 <http://github.com/ceph/ceph/pull/12311>`_, Wei Jin) -* cleanup: coverity fix: fixing few coverity issue (`pr#9624 <http://github.com/ceph/ceph/pull/9624>`_, Gaurav Kumar Garg) -* cleanup: deprecate readdir_r() with readdir() (`pr#11805 <http://github.com/ceph/ceph/pull/11805>`_, Kefu Chai) -* cleanup: erasure-code: fix gf-complete warning (`pr#12150 <http://github.com/ceph/ceph/pull/12150>`_, Kefu Chai) -* cleanup: fix typos (`pr#12502 <http://github.com/ceph/ceph/pull/12502>`_, xianxiaxiao) -* cleanup: mds/FSMap.cc: prevent unneeded copy of map entry (`pr#11798 <http://github.com/ceph/ceph/pull/11798>`_, Michal Jarzabek) -* cleanup: mds/FSMap.h: add const and reference (`pr#11802 <http://github.com/ceph/ceph/pull/11802>`_, Michal Jarzabek) -* cleanup: mds/FSMap: pass shared_ptr by const ref (`pr#11383 <http://github.com/ceph/ceph/pull/11383>`_, Michal Jarzabek) -* cleanup: mds/SnapServer: add const to member function (`pr#11688 <http://github.com/ceph/ceph/pull/11688>`_, Michal Jarzabek) -* cleanup: mon/MonCap.h: add std::move for std::string (`pr#10722 <http://github.com/ceph/ceph/pull/10722>`_, Michal Jarzabek) -* cleanup: mon/OSDMonitor: only show interesting flags in health warning (`issue#18175 <http://tracker.ceph.com/issues/18175>`_, `pr#12365 <http://github.com/ceph/ceph/pull/12365>`_, Sage Weil) -* cleanup: msg/async: assert(0) -> ceph_abort() (`pr#12339 <http://github.com/ceph/ceph/pull/12339>`_, Li Wang) -* cleanup: msg/AsyncMessenger: remove unneeded include (`pr#9846 <http://github.com/ceph/ceph/pull/9846>`_, Michal Jarzabek) -* cleanup: msg/async/rdma: fix disconnect log line (`pr#12254 <http://github.com/ceph/ceph/pull/12254>`_, Adir Lev) -* cleanup: msg/async: remove unused member variable (`pr#12387 <http://github.com/ceph/ceph/pull/12387>`_, Kefu Chai) -* cleanup: msg: fix format specifier for unsigned value id (`pr#11145 <http://github.com/ceph/ceph/pull/11145>`_, Weibing Zhang) -* cleanup: msg/Pipe: move DelayedDelivery class to cc file (`pr#10447 <http://github.com/ceph/ceph/pull/10447>`_, Michal Jarzabek) -* cleanup: msg/test: fix the guided compile-command to ceph_test_msgr (`pr#10490 <http://github.com/ceph/ceph/pull/10490>`_, Yan Jun) -* cleanup: osd/PGBackend: build_push_op segment fault (`pr#9357 <http://github.com/ceph/ceph/pull/9357>`_, Zengran Zhang) -* cleanup: osd/PG.h: change PGRecoveryStats struct to class (`pr#11178 <http://github.com/ceph/ceph/pull/11178>`_, Michal Jarzabek) -* cleanup: osd/PG.h: remove unneeded forward declaration (`pr#12135 <http://github.com/ceph/ceph/pull/12135>`_, Li Wang) -* cleanup: osd/ReplicatedPG: remove unneeded use of count (`pr#11251 <http://github.com/ceph/ceph/pull/11251>`_, Michal Jarzabek) -* cleanup: os/filestore: clean filestore perfcounters (`pr#11524 <http://github.com/ceph/ceph/pull/11524>`_, Wei Jin) -* cleanup: os/fs/FS.cc: condition on WITH_AIO for FreeBSD (`pr#11913 <http://github.com/ceph/ceph/pull/11913>`_, Willem Jan Withagen) -* cleanup,rbd: cls_rbd: silence compiler warnings (`pr#11363 <http://github.com/ceph/ceph/pull/11363>`_, xiexingguo) -* cleanup,rbd: journal: avoid logging an error when a watch is blacklisted (`issue#18243 <http://tracker.ceph.com/issues/18243>`_, `pr#12473 <http://github.com/ceph/ceph/pull/12473>`_, Jason Dillaman) -* cleanup,rbd: journal: prevent repetitive error messages after being blacklisted (`issue#18243 <http://tracker.ceph.com/issues/18243>`_, `pr#12497 <http://github.com/ceph/ceph/pull/12497>`_, Jason Dillaman) -* cleanup,rbd: librbd/ImageCtx: no need for virtual dtor (`pr#12220 <http://github.com/ceph/ceph/pull/12220>`_, Sage Weil) -* cleanup,rbd: rbd-mirror: configuration overrides for hard coded timers (`pr#11840 <http://github.com/ceph/ceph/pull/11840>`_, Dongsheng Yang) -* cleanup,rbd: rbd-mirror: set SEQUENTIAL and NOCACHE advise flags on image sync (`issue#17127 <http://tracker.ceph.com/issues/17127>`_, `pr#12280 <http://github.com/ceph/ceph/pull/12280>`_, Mykola Golub) -* cleanup: remove unneeded forward declaration (`pr#12257 <http://github.com/ceph/ceph/pull/12257>`_, Li Wang, Yunchuan Wen) -* cleanup: remove unused declaration (`pr#12466 <http://github.com/ceph/ceph/pull/12466>`_, Li Wang, Yunchuan Wen) -* cleanup,rgw: rgw multisite: move lease up to RunBucketSync instead of child crs (`pr#11598 <http://github.com/ceph/ceph/pull/11598>`_, Casey Bodley) -* cleanup,rgw: rgw/rest: don't print empty x-amz-request-id (`pr#10674 <http://github.com/ceph/ceph/pull/10674>`_, Marcus Watts) -* cleanup,rgw: verified: f23 (`pr#12103 <http://github.com/ceph/ceph/pull/12103>`_, Radoslaw Zarzynski) -* cleanup: src/common/perf_counters.h: fix wrong word (`pr#11690 <http://github.com/ceph/ceph/pull/11690>`_, zhang.zezhu) -* cleanup: Wip ctypos (`pr#12495 <http://github.com/ceph/ceph/pull/12495>`_, xianxiaxiao) -* cleanup: xio: provide dout_prefix for XioConnection (`pr#9444 <http://github.com/ceph/ceph/pull/9444>`_, Avner BenHanoch) -* cleanup: yasm-wrapper: translate "-isystem $1" to "-i $1" (`pr#12093 <http://github.com/ceph/ceph/pull/12093>`_, Kefu Chai) -* cmake: add -Wno-unknown-pragmas to CMAKE_CXX_FLAGS (`pr#12128 <http://github.com/ceph/ceph/pull/12128>`_, Kefu Chai) -* cmake: check WITH_RADOSGW for fcgi and expat dependencies (`pr#11481 <http://github.com/ceph/ceph/pull/11481>`_, David Disseldorp) -* cmake: compile C code with c99 (`pr#12369 <http://github.com/ceph/ceph/pull/12369>`_, Kefu Chai) -* cmake: detect keyutils if WITH_LIBCEPHFS OR WITH_RBD (`pr#12359 <http://github.com/ceph/ceph/pull/12359>`_, Kefu Chai) -* cmake: do not link erasure tests again libosd (`pr#11738 <http://github.com/ceph/ceph/pull/11738>`_, Kefu Chai) -* cmake: find gperftools package for tcmalloc_minimal too (`pr#11403 <http://github.com/ceph/ceph/pull/11403>`_, Bassam Tabbara) -* cmake: fix boost build on ubuntu 16.10 yakkety (`pr#12143 <http://github.com/ceph/ceph/pull/12143>`_, Bassam Tabbara) -* cmake: Fix for cross compiling (`pr#11404 <http://github.com/ceph/ceph/pull/11404>`_, Bassam Tabbara) -* cmake: fix git version string, cleanup (`pr#11661 <http://github.com/ceph/ceph/pull/11661>`_, Sage Weil) -* cmake: librbd cleanup (`pr#11842 <http://github.com/ceph/ceph/pull/11842>`_, Kefu Chai) -* cmake: link tests against static librados (`issue#17260 <http://tracker.ceph.com/issues/17260>`_, `pr#11575 <http://github.com/ceph/ceph/pull/11575>`_, Kefu Chai) -* cmake: pass CMAKE_BUILD_TYPE down to rocksdb (`pr#11767 <http://github.com/ceph/ceph/pull/11767>`_, Kefu Chai) -* cmake: remove include/Makefile.am (`pr#11666 <http://github.com/ceph/ceph/pull/11666>`_, Kefu Chai) -* cmake: replace civetweb symlink w/file copy (`pr#11900 <http://github.com/ceph/ceph/pull/11900>`_, Matt Benjamin) -* cmake: should link against ${ALLOC_LIBS} (`pr#11978 <http://github.com/ceph/ceph/pull/11978>`_, Kefu Chai) -* cmake: src/test/CMakeLists.txt: Exclude test on HAVE_BLKID (`pr#12301 <http://github.com/ceph/ceph/pull/12301>`_, Willem Jan Withagen) -* cmake: Support for embedding Ceph Daemons (`pr#11764 <http://github.com/ceph/ceph/pull/11764>`_, Bassam Tabbara) -* cmake: use external project for rocksdb (`pr#11385 <http://github.com/ceph/ceph/pull/11385>`_, Bassam Tabbara) -* common: Add throttle_get_started perf counter (`pr#12163 <http://github.com/ceph/ceph/pull/12163>`_, Bartłomiej Święcki) -* common: assert(0) -> ceph_abort() (`pr#12031 <http://github.com/ceph/ceph/pull/12031>`_, Sage Weil) -* common: auth: fix NULL pointer access when trying to delete CryptoAESKeyHandler instance (`pr#11614 <http://github.com/ceph/ceph/pull/11614>`_, runsisi) -* common,bluestore: compressor: fixes and tests; disable zlib isal (it's broken) (`pr#11349 <http://github.com/ceph/ceph/pull/11349>`_, Sage Weil) -* common,bluestore: mempool: mempool infrastructure, bluestore changes to use it (`pr#11331 <http://github.com/ceph/ceph/pull/11331>`_, Allen Samuels, Sage Weil) -* common: buffer: add advance(unsigned) back (`issue#17809 <http://tracker.ceph.com/issues/17809>`_, `pr#11993 <http://github.com/ceph/ceph/pull/11993>`_, Kefu Chai) -* common: buffer: add copy(unsigned, ptr) back (`issue#17809 <http://tracker.ceph.com/issues/17809>`_, `pr#12246 <http://github.com/ceph/ceph/pull/12246>`_, Kefu Chai) -* common: client/Client.cc: fix/silence "logically dead code" CID-Error (`pr#291 <http://github.com/ceph/ceph/pull/291>`_, Yehuda Sadeh) -* common: common/strtol.cc: Get error testing also to work on FreeBSD (`pr#12034 <http://github.com/ceph/ceph/pull/12034>`_, Willem Jan Withagen) -* common: fix clang compilation error (`pr#12565 <http://github.com/ceph/ceph/pull/12565>`_, Mykola Golub) -* common: FreeBSD/EventKqueue.{h,cc} Added code to restore events on (thread)fork (`pr#11430 <http://github.com/ceph/ceph/pull/11430>`_, Willem Jan Withagen) -* common: log/LogClient: fill seq & who for syslog and graylog (`issue#16609 <http://tracker.ceph.com/issues/16609>`_, `pr#10196 <http://github.com/ceph/ceph/pull/10196>`_, Xiaoxi Chen) -* common: make l_finisher_complete_lat more accurate (`pr#11637 <http://github.com/ceph/ceph/pull/11637>`_, Pan Liu) -* common: msg/simple/Accepter.cc: replace shutdown() with selfpipe event in poll() (FreeBSD) (`pr#10720 <http://github.com/ceph/ceph/pull/10720>`_, Willem Jan Withagen) -* common: osdc/Objecter: fix relock race (`issue#17942 <http://tracker.ceph.com/issues/17942>`_, `pr#12234 <http://github.com/ceph/ceph/pull/12234>`_, Sage Weil) -* common: osdc/Objecter: handle race between calc_target and handle_osd_map (`issue#17942 <http://tracker.ceph.com/issues/17942>`_, `pr#12055 <http://github.com/ceph/ceph/pull/12055>`_, Sage Weil) -* common: osd/osdmap: fix divide by zero error (`pr#12521 <http://github.com/ceph/ceph/pull/12521>`_, Yunchuan Wen) -* common: release g_ceph_context before returns (`issue#17762 <http://tracker.ceph.com/issues/17762>`_, `pr#11733 <http://github.com/ceph/ceph/pull/11733>`_, Kefu Chai) -* common: Remove the runtime dependency on lsb_release (`issue#17425 <http://tracker.ceph.com/issues/17425>`_, `pr#11365 <http://github.com/ceph/ceph/pull/11365>`_, Brad Hubbard) -* common: test/fio: fix global CephContext life cycle (`pr#12245 <http://github.com/ceph/ceph/pull/12245>`_, Igor Fedotov) -* core: auth: tolerate missing MGR keys during upgrade (`pr#11401 <http://github.com/ceph/ceph/pull/11401>`_, Sage Weil) -* core,bluestore: os/bluestore: fix warning and uninit variable (`pr#12032 <http://github.com/ceph/ceph/pull/12032>`_, Sage Weil) -* core,bluestore: os: fix offsets for move_ranges operation (`pr#11595 <http://github.com/ceph/ceph/pull/11595>`_, Sage Weil) -* core,bluestore: os: remove move_ranges_destroy_src (`pr#11791 <http://github.com/ceph/ceph/pull/11791>`_, Sage Weil) -* core: ceph-disk: allow using a regular file as a journal (`issue#17662 <http://tracker.ceph.com/issues/17662>`_, `pr#11619 <http://github.com/ceph/ceph/pull/11619>`_, Jayashree Candadai, Loic Dachary) -* core: ceph-disk: resolve race conditions (`issue#17889 <http://tracker.ceph.com/issues/17889>`_, `issue#17813 <http://tracker.ceph.com/issues/17813>`_, `pr#12136 <http://github.com/ceph/ceph/pull/12136>`_, Loic Dachary) -* core,cephfs: osdc/ObjectCacher: wake up dirty stat waiters after removing buffers (`issue#17275 <http://tracker.ceph.com/issues/17275>`_, `pr#11593 <http://github.com/ceph/ceph/pull/11593>`_, Yan, Zheng) -* core: ceph.in: allow 'flags' to not be present in cmddescs (`issue#18297 <http://tracker.ceph.com/issues/18297>`_, `pr#12540 <http://github.com/ceph/ceph/pull/12540>`_, Dan Mick) -* core,cleanup: ceph-disk: do not create bluestore wal/db partitions by default (`issue#18291 <http://tracker.ceph.com/issues/18291>`_, `pr#12531 <http://github.com/ceph/ceph/pull/12531>`_, Loic Dachary) -* core,cleanup,common: common/TrackedOp: remove unused 'now' in _dump() (`pr#12007 <http://github.com/ceph/ceph/pull/12007>`_, John Spray) -* core,cleanup: FileStore: Only verify split when it has been really done and done correctly (`pr#11731 <http://github.com/ceph/ceph/pull/11731>`_, Li Wang) -* core,cleanup: kv: remove snapshot iterator (`pr#12049 <http://github.com/ceph/ceph/pull/12049>`_, Sage Weil) -* core,cleanup: mon/MonClient.h: remove repeated searching of map (`pr#10601 <http://github.com/ceph/ceph/pull/10601>`_, Michal Jarzabek) -* core,cleanup: msg: Fix typos in socket creation error message (`pr#11907 <http://github.com/ceph/ceph/pull/11907>`_, Brad Hubbard) -* core,cleanup: osd/command tell: check pgid at the right time (`pr#11547 <http://github.com/ceph/ceph/pull/11547>`_, Javeme) -* core,cleanup: osd/OSDMap.cc: fix duplicated assignment for new_blacklist_entries (`pr#11799 <http://github.com/ceph/ceph/pull/11799>`_, Ker Liu) -* core,cleanup: osd/PG.cc: prevent repeated searching of map/set (`pr#11203 <http://github.com/ceph/ceph/pull/11203>`_, Michal Jarzabek) -* core,cleanup: osd/ReplicatedPG: remove redundant check for balance/localize read (`pr#10209 <http://github.com/ceph/ceph/pull/10209>`_, runsisi) -* core,cleanup: osd/ReplicatedPG: remove unneeded use of count (`pr#11242 <http://github.com/ceph/ceph/pull/11242>`_, Michal Jarzabek) -* core,cleanup: os/filestore: handle EINTR returned by io_getevents() (`pr#11890 <http://github.com/ceph/ceph/pull/11890>`_, Pan Liu) -* core,cleanup: os/ObjectStore: remove legacy tbl support (`pr#11770 <http://github.com/ceph/ceph/pull/11770>`_, Jianpeng Ma) -* core,cleanup: scan build fixes (`pr#12148 <http://github.com/ceph/ceph/pull/12148>`_, Kefu Chai) -* core,cleanup: src: rename ReplicatedPG to PrimaryLogPG (`pr#12487 <http://github.com/ceph/ceph/pull/12487>`_, Samuel Just) -* core,cleanup: Wip scrub misc (`pr#11397 <http://github.com/ceph/ceph/pull/11397>`_, David Zafman) -* core,common: buffer: put buffers in buffer_{data,meta} mempools (`pr#11839 <http://github.com/ceph/ceph/pull/11839>`_, Sage Weil) -* core,common: msg: add entity_addr_t types; add new entity_addrvec_t type (`pr#9825 <http://github.com/ceph/ceph/pull/9825>`_, Zhao Junwang, Sage Weil) -* core,common: msg/simple/Pipe: handle addr decode error (`issue#18072 <http://tracker.ceph.com/issues/18072>`_, `pr#12221 <http://github.com/ceph/ceph/pull/12221>`_, Sage Weil) -* core: compress: Fix compilation failure from missing header (`pr#12108 <http://github.com/ceph/ceph/pull/12108>`_, Adam C. Emerson) -* core: denc: don't pass null instances into encoder fns (`issue#17636 <http://tracker.ceph.com/issues/17636>`_, `pr#11577 <http://github.com/ceph/ceph/pull/11577>`_, John Spray) -* core: erasure-code: synchronize with upstream gf-complete (`issue#18092 <http://tracker.ceph.com/issues/18092>`_, `pr#12382 <http://github.com/ceph/ceph/pull/12382>`_, Loic Dachary) -* core: FreeBSD/OSD.cc: add client_messenger to the avoid_ports set. (`pr#12463 <http://github.com/ceph/ceph/pull/12463>`_, Willem Jan Withagen) -* core: include/object: pass "snapid_t&" to bound_encode() (`pr#11552 <http://github.com/ceph/ceph/pull/11552>`_, Kefu Chai) -* core: kv/RocksDBStore: Don't update rocksdb perf_context if rocksdb_perf di… (`pr#12064 <http://github.com/ceph/ceph/pull/12064>`_, Jianpeng Ma) -* core: librados-dev: install inline_memory.h (`issue#17654 <http://tracker.ceph.com/issues/17654>`_, `pr#11730 <http://github.com/ceph/ceph/pull/11730>`_, Josh Durgin) -* core: messages/MForward: reencode forwarded message if target has differing features (`pr#11610 <http://github.com/ceph/ceph/pull/11610>`_, Sage Weil) -* core,mgr: messages: fix out of range assertion (`pr#11345 <http://github.com/ceph/ceph/pull/11345>`_, John Spray) -* core: mon,ceph-disk: add lockbox permissions to bootstrap-osd (`issue#17849 <http://tracker.ceph.com/issues/17849>`_, `pr#11996 <http://github.com/ceph/ceph/pull/11996>`_, Loic Dachary) -* core: mon: make it more clearly to debug for paxos state (`pr#12438 <http://github.com/ceph/ceph/pull/12438>`_, song baisen) -* core: mon/OSDMonitor: encode full osdmaps with features all OSDs can understand (`pr#11284 <http://github.com/ceph/ceph/pull/11284>`_, Sage Weil) -* core: mon/OSDMonitor: encode OSDMap::Incremental with same features as OSDMap (`pr#11596 <http://github.com/ceph/ceph/pull/11596>`_, Sage Weil) -* core: mon/OSDMonitor: newly created osd should not be wrongly marked in (`pr#11795 <http://github.com/ceph/ceph/pull/11795>`_, runsisi) -* core: mon/OSDMonitor: remove duplicate jewel/kraken flag warning (`pr#11775 <http://github.com/ceph/ceph/pull/11775>`_, Josh Durgin) -* core: mon/PGMap: PGs can be stuck more than one thing (`issue#17515 <http://tracker.ceph.com/issues/17515>`_, `pr#11339 <http://github.com/ceph/ceph/pull/11339>`_, Sage Weil) -* core: mon: print the num_pools and num_objects in 'ceph -s -f json/json-p… (`issue#17703 <http://tracker.ceph.com/issues/17703>`_, `pr#11654 <http://github.com/ceph/ceph/pull/11654>`_, huangjun) -* core: msg/async/AsyncConnection: dispatch write handler on keepalive2 (`issue#17664 <http://tracker.ceph.com/issues/17664>`_, `pr#11601 <http://github.com/ceph/ceph/pull/11601>`_, Ilya Dryomov) -* core: msg/async: DPDKStack as AsyncMessenger backend (`pr#10748 <http://github.com/ceph/ceph/pull/10748>`_, Haomai Wang) -* core: msg/async/rdma: change log level: 0 -> 1 (`pr#12334 <http://github.com/ceph/ceph/pull/12334>`_, Avner BenHanoch) -* core: msg/async/rdma: don't use more buffers than what device capabilities … (`pr#12263 <http://github.com/ceph/ceph/pull/12263>`_, Avner BenHanoch) -* core: msg/async/rdma: ensure CephContext existed (`pr#12068 <http://github.com/ceph/ceph/pull/12068>`_, Haomai Wang) -* core: msg/async/rdma: event polling thread can block on event (`pr#12270 <http://github.com/ceph/ceph/pull/12270>`_, Haomai Wang) -* core: msg/async/rdma: fixup memory free (`pr#12236 <http://github.com/ceph/ceph/pull/12236>`_, gongchuang) -* core: msg/async/rdma: set correct value to memory manager (`pr#12299 <http://github.com/ceph/ceph/pull/12299>`_, Adir Lev) -* core: msg/async: set nonce before starting the workers (`pr#12390 <http://github.com/ceph/ceph/pull/12390>`_, Kefu Chai) -* core: msg: make loopback Connection feature accurate all the time (`pr#11183 <http://github.com/ceph/ceph/pull/11183>`_, Sage Weil) -* core: msg: seed random engine used for ms_type="random" (`pr#11880 <http://github.com/ceph/ceph/pull/11880>`_, Casey Bodley) -* core: msg/simple/Pipe: avoid returning 0 on poll timeout (`issue#18184 <http://tracker.ceph.com/issues/18184>`_, `pr#12375 <http://github.com/ceph/ceph/pull/12375>`_, Sage Weil) -* core: msg/simple/Pipe::stop_and_wait: unlock pipe_lock for stop_fast_dispatching() (`issue#18042 <http://tracker.ceph.com/issues/18042>`_, `pr#12307 <http://github.com/ceph/ceph/pull/12307>`_, Samuel Just) -* core: msg/simple: save the errno in case being changed by subsequent codes (`pr#10297 <http://github.com/ceph/ceph/pull/10297>`_, Yan Jun) -* core: osd/ECTransaction: only write out the hinfo if not delete (`issue#17983 <http://tracker.ceph.com/issues/17983>`_, `pr#12141 <http://github.com/ceph/ceph/pull/12141>`_, Samuel Just) -* core: OSDMonitor: only reject MOSDBoot based on up_from if inst matches (`issue#17899 <http://tracker.ceph.com/issues/17899>`_, `pr#12003 <http://github.com/ceph/ceph/pull/12003>`_, Samuel Just) -* core: osd,mon: require sortbitwise flag to upgrade beyond jewel (`pr#11772 <http://github.com/ceph/ceph/pull/11772>`_, Sage Weil) -* core: osd/osd_types: fix the osd_stat_t::decode() (`pr#12235 <http://github.com/ceph/ceph/pull/12235>`_, Kefu Chai) -* core: osd/PG: add "down" pg state (distinct from down+peering) (`pr#12289 <http://github.com/ceph/ceph/pull/12289>`_, Sage Weil) -* core: osd/PGLog::proc_replica_log,merge_log: fix bound for last_update (`issue#18127 <http://tracker.ceph.com/issues/18127>`_, `pr#12340 <http://github.com/ceph/ceph/pull/12340>`_, Samuel Just) -* core: osd/ReplicatedPG: do_update_log_missing: take the pg lock in the callback (`issue#17789 <http://tracker.ceph.com/issues/17789>`_, `pr#11754 <http://github.com/ceph/ceph/pull/11754>`_, Samuel Just) -* core: osd/ReplicatedPG::record_write_error: don't leak orig_reply on cancel (`issue#18180 <http://tracker.ceph.com/issues/18180>`_, `pr#12450 <http://github.com/ceph/ceph/pull/12450>`_, Samuel Just) -* core: os/filestore: avoid to get the wrong hardlink number. (`pr#11841 <http://github.com/ceph/ceph/pull/11841>`_, huangjun) -* core: os/filestore/chain_xattr.h:uses ENODATA, so include compat.h (`pr#12279 <http://github.com/ceph/ceph/pull/12279>`_, Willem Jan Withagen) -* core: os/filestore: Fix erroneous WARNING: max attr too small (`issue#17420 <http://tracker.ceph.com/issues/17420>`_, `pr#11246 <http://github.com/ceph/ceph/pull/11246>`_, Brad Hubbard) -* core: os/FileStore: fix fiemap issue in xfs when #extents > 1364 (`pr#11554 <http://github.com/ceph/ceph/pull/11554>`_, Ning Yao) -* core: os/filestore: fix journal logger (`pr#12099 <http://github.com/ceph/ceph/pull/12099>`_, Wei Jin) -* core: os/filestore: fix potential result code overwriting (`pr#11491 <http://github.com/ceph/ceph/pull/11491>`_, xie xingguo) -* core: os/filestore/HashIndex: fix list_by_hash_* termination on reaching end (`issue#17859 <http://tracker.ceph.com/issues/17859>`_, `pr#11898 <http://github.com/ceph/ceph/pull/11898>`_, Sage Weil) -* core: os/ObjectStore: properly clear object map when replaying OP_REMOVE (`issue#17177 <http://tracker.ceph.com/issues/17177>`_, `pr#11388 <http://github.com/ceph/ceph/pull/11388>`_, Yan, Zheng) -* core,performance: msg/async: ibverbs/rdma support (`pr#11531 <http://github.com/ceph/ceph/pull/11531>`_, Haomai Wang, Zhi Wang) -* core,performance: osd/OSDMap.cc: remove unneeded use of count (`pr#11221 <http://github.com/ceph/ceph/pull/11221>`_, Michal Jarzabek) -* core,performance: osd/PrimaryLogPG: don't truncate if we don't have to for WRITEFULL (`pr#12534 <http://github.com/ceph/ceph/pull/12534>`_, Samuel Just) -* core,performance: os/fs/FS: optimize aio::pwritev which make caller provide length. (`pr#9062 <http://github.com/ceph/ceph/pull/9062>`_, Jianpeng Ma) -* core,pybind,common: python-rados: implement new aio_execute (`pr#12140 <http://github.com/ceph/ceph/pull/12140>`_, Iain Buclaw) -* core,rbd,bluestore,rgw,performance,cephfs: fast denc encoding (`pr#11027 <http://github.com/ceph/ceph/pull/11027>`_, Sage Weil) -* core: remove spurious executable permissions on source code files (`pr#1061 <http://github.com/ceph/ceph/pull/1061>`_, Samuel Just) -* core: ReplicatedPG::failed_push: release read lock on failure (`issue#17857 <http://tracker.ceph.com/issues/17857>`_, `pr#11914 <http://github.com/ceph/ceph/pull/11914>`_, Kefu Chai) -* core: rocksdb: update to latest, and make it the default for the mons (`pr#11354 <http://github.com/ceph/ceph/pull/11354>`_, Sage Weil) -* core: set dumpable flag after setuid (`issue#17650 <http://tracker.ceph.com/issues/17650>`_, `pr#11582 <http://github.com/ceph/ceph/pull/11582>`_, Patrick Donnelly) -* core: systemd/ceph-disk: reduce ceph-disk flock contention (`issue#18049 <http://tracker.ceph.com/issues/18049>`_, `issue#13160 <http://tracker.ceph.com/issues/13160>`_, `pr#12200 <http://github.com/ceph/ceph/pull/12200>`_, David Disseldorp) -* core: tchaikov (`issue#17713 <http://tracker.ceph.com/issues/17713>`_, `pr#11382 <http://github.com/ceph/ceph/pull/11382>`_, Haomai Wang) -* core,tests: ceph_test_rados_api_tier: dump hitset that we fail to decode (`issue#17945 <http://tracker.ceph.com/issues/17945>`_, `pr#12057 <http://github.com/ceph/ceph/pull/12057>`_, Sage Weil) -* core,tests: common osd: Improve scrub analysis, list-inconsistent-obj output and osd-scrub-repair test (`issue#18114 <http://tracker.ceph.com/issues/18114>`_, `pr#9613 <http://github.com/ceph/ceph/pull/9613>`_, Kefu Chai, David Zafman) -* core,tests: test,cmake: turn unit.h into unit.cc to speed up compilation (`pr#12194 <http://github.com/ceph/ceph/pull/12194>`_, Kefu Chai) -* core,tests: test/rados/list.cc: Memory leak in ceph_test_rados_api_list (`issue#18250 <http://tracker.ceph.com/issues/18250>`_, `pr#12479 <http://github.com/ceph/ceph/pull/12479>`_, Brad Hubbard) -* core,tests: workunits/ceph-helpers.sh: Fixes for FreeBSD (`pr#12085 <http://github.com/ceph/ceph/pull/12085>`_, Willem Jan Withagen) -* core,tools: Added append functionality to rados tool. (`pr#11036 <http://github.com/ceph/ceph/pull/11036>`_, Tomy Cheru) -* core,tools: Tested-by: Huawen Ren <ren.huanwen@zte.com.cn> (`issue#17400 <http://tracker.ceph.com/issues/17400>`_, `pr#11276 <http://github.com/ceph/ceph/pull/11276>`_, Kefu Chai) -* core,tools: vstart: decrease pool size if <3 OSDs (`pr#11528 <http://github.com/ceph/ceph/pull/11528>`_, John Spray) -* crush: make counting of choose_tries consistent (`issue#17229 <http://tracker.ceph.com/issues/17229>`_, `pr#10993 <http://github.com/ceph/ceph/pull/10993>`_, Vicente Cheng) -* crush: remove the crush_lock (`pr#11830 <http://github.com/ceph/ceph/pull/11830>`_, Adam C. Emerson) -* crush: Silence coverity warnings for test/crush/crush.cc (`pr#12436 <http://github.com/ceph/ceph/pull/12436>`_, Brad Hubbard) -* doc: Add doc about osd scrub {during recovery|chunk {min|max}| sleep} (`pr#12176 <http://github.com/ceph/ceph/pull/12176>`_, Paweł Sadowski) -* doc: Add docs about looking up Monitors through DNS (`issue#14527 <http://tracker.ceph.com/issues/14527>`_, `pr#10852 <http://github.com/ceph/ceph/pull/10852>`_, Wido den Hollander) -* doc: add docs for raw compression (`pr#12244 <http://github.com/ceph/ceph/pull/12244>`_, Casey Bodley) -* doc: Add documentation about mon_allow_pool_delete before pool remove (`pr#11943 <http://github.com/ceph/ceph/pull/11943>`_, Wido den Hollander) -* doc: add infernalis EOL date (`pr#11925 <http://github.com/ceph/ceph/pull/11925>`_, Ken Dreyer) -* doc: adding changelog for v10.2.4 (`pr#12346 <http://github.com/ceph/ceph/pull/12346>`_, Abhishek Lekshmanan) -* doc: Add MON docs about pool flags and pool removal config settings (`pr#10853 <http://github.com/ceph/ceph/pull/10853>`_, Wido den Hollander) -* doc: add python-rgw doc (`pr#11859 <http://github.com/ceph/ceph/pull/11859>`_, Kefu Chai) -* doc: change the osd_max_backfills default to 1 (`issue#17701 <http://tracker.ceph.com/issues/17701>`_, `pr#11658 <http://github.com/ceph/ceph/pull/11658>`_, huangjun) -* doc: clarify file deletion from OSD restricted pool behaviour (`issue#17937 <http://tracker.ceph.com/issues/17937>`_, `pr#12054 <http://github.com/ceph/ceph/pull/12054>`_, David Disseldorp) -* doc: clarify mds deactivate purpose (`pr#11957 <http://github.com/ceph/ceph/pull/11957>`_, Patrick Donnelly) -* doc: common/Throttle: fix typo for BackoffThrottle (`pr#12129 <http://github.com/ceph/ceph/pull/12129>`_, Wei Jin) -* doc: correcting the object name (`pr#12354 <http://github.com/ceph/ceph/pull/12354>`_, Uday Mullangi) -* doc: Correcting the sample python tempurl generation script. (`issue#15258 <http://tracker.ceph.com/issues/15258>`_, `pr#8712 <http://github.com/ceph/ceph/pull/8712>`_, Diwakar Goel) -* doc: Coverity and SCA fixes (`pr#7784 <http://github.com/ceph/ceph/pull/7784>`_, Danny Al-Gaaf) -* doc: doc/dev/osd_internals: add pgpool.rst (`pr#12500 <http://github.com/ceph/ceph/pull/12500>`_, Brad Hubbard) -* doc: doc/dev/perf: a few notes on perf (`pr#12168 <http://github.com/ceph/ceph/pull/12168>`_, Sage Weil) -* doc: doc/dev/perf: fix dittography (`pr#12317 <http://github.com/ceph/ceph/pull/12317>`_, xie xingguo) -* doc: doc/man: avoid file builtin to solve build error (`pr#11984 <http://github.com/ceph/ceph/pull/11984>`_, Patrick Donnelly) -* doc: doc/rados/configuration/ms-ref.rst: document a few async msgr options (`pr#12126 <http://github.com/ceph/ceph/pull/12126>`_, Piotr Dałek) -* doc: doc/rados/configuration/osd-config-ref.rst: document the fast mark down (`pr#12124 <http://github.com/ceph/ceph/pull/12124>`_, Piotr Dałek) -* doc: doc/release-notes: kraken release notes (draft) (`pr#12338 <http://github.com/ceph/ceph/pull/12338>`_, Sage Weil) -* doc: doc/releases: add links to kraken and v10.2.4 (`pr#12409 <http://github.com/ceph/ceph/pull/12409>`_, Kefu Chai) -* doc: doc/start/hardware-recommentdations: cosmetic (`pr#10585 <http://github.com/ceph/ceph/pull/10585>`_, Zhao Junwang) -* doc: Documentation syntax cleanup (`pr#11784 <http://github.com/ceph/ceph/pull/11784>`_, John Spray) -* doc: document osd tell bench (`issue#5431 <http://tracker.ceph.com/issues/5431>`_, `pr#16 <http://github.com/ceph/ceph/pull/16>`_, Sage Weil) -* doc: drop --journal-check from ceph-mds man page (`issue#17747 <http://tracker.ceph.com/issues/17747>`_, `pr#11912 <http://github.com/ceph/ceph/pull/11912>`_, Nathan Cutler) -* doc: explain rgw_fcgi_socket_backlog in rgw/config-ref.rst (`pr#12548 <http://github.com/ceph/ceph/pull/12548>`_, liuchang0812) -* doc: final additions to 11.1.0-rc release notes (`pr#12448 <http://github.com/ceph/ceph/pull/12448>`_, Abhishek Lekshmanan) -* doc: Fix broken link for caps (`issue#17587 <http://tracker.ceph.com/issues/17587>`_, `pr#11546 <http://github.com/ceph/ceph/pull/11546>`_, Uday Mullangi) -* doc: fix broken links (`issue#17587 <http://tracker.ceph.com/issues/17587>`_, `pr#11518 <http://github.com/ceph/ceph/pull/11518>`_, Uday Mullangi) -* doc: fix dead link "Hardware Recommendations" (`pr#11379 <http://github.com/ceph/ceph/pull/11379>`_, Leo Zhang) -* doc: fix dead link of "os-recommendations" in troubleshooting-osd (`pr#11454 <http://github.com/ceph/ceph/pull/11454>`_, Leo Zhang) -* doc: Fixed mapping error in legacy mds command (`pr#11668 <http://github.com/ceph/ceph/pull/11668>`_, Malte Fiala) -* doc: Fix for worker arguments to cephfs-data-scan tool (`pr#12360 <http://github.com/ceph/ceph/pull/12360>`_, Wido den Hollander) -* doc: fix grammar/spelling in RGW sections (`pr#12329 <http://github.com/ceph/ceph/pull/12329>`_, Ken Dreyer) -* doc: Fixing the broken hyperlinks by pointing to correct documentation. (`pr#11617 <http://github.com/ceph/ceph/pull/11617>`_, Uday Mullangi) -* doc: fix librados example programs (`pr#11302 <http://github.com/ceph/ceph/pull/11302>`_, Alexey Sheplyakov) -* doc: fix mgr literal block rST syntax (`pr#11652 <http://github.com/ceph/ceph/pull/11652>`_, Ken Dreyer) -* doc: fix start development cluster operation in index.rst (`pr#11233 <http://github.com/ceph/ceph/pull/11233>`_, Leo Zhang) -* doc: fix the script for rebuild monitor db (`pr#11962 <http://github.com/ceph/ceph/pull/11962>`_, Kefu Chai) -* doc: fix typos (`pr#8751 <http://github.com/ceph/ceph/pull/8751>`_, Li Peng) -* doc: Flag deprecated mds commands and omit deprecated mon commands in help output (`pr#11434 <http://github.com/ceph/ceph/pull/11434>`_, Patrick Donnelly) -* doc: mailmap: change personal info (`pr#12310 <http://github.com/ceph/ceph/pull/12310>`_, Wei Jin) -* doc: mailmap updates sept (`pr#10955 <http://github.com/ceph/ceph/pull/10955>`_, Yann Dupont) -* doc: mds: fixup "mds bal mode" Description (`pr#12127 <http://github.com/ceph/ceph/pull/12127>`_, huanwen ren) -* doc: mention corresponding libvirt section in nova.conf (`pr#12584 <http://github.com/ceph/ceph/pull/12584>`_, Marc Koderer) -* doc: Modify documentation for mon_osd_down_out_interval (`pr#12408 <http://github.com/ceph/ceph/pull/12408>`_, Brad Hubbard) -* doc: network-protocol typos (`pr#9837 <http://github.com/ceph/ceph/pull/9837>`_, Zhao Junwang) -* doc: openstack glance mitaka uses show_multiple_locations (`pr#12020 <http://github.com/ceph/ceph/pull/12020>`_, Sébastien Han) -* doc: README.FreeBSD: update to match the bimonthly FreeBSD status report (`pr#11442 <http://github.com/ceph/ceph/pull/11442>`_, Willem Jan Withagen) -* doc: README: hint at where to look to diagnose test failures (`pr#11903 <http://github.com/ceph/ceph/pull/11903>`_, Dan Mick) -* doc: reformat SubmittingPatches with more rst syntax (`pr#11570 <http://github.com/ceph/ceph/pull/11570>`_, Kefu Chai) -* doc: release notes for 10.2.4 (`pr#12053 <http://github.com/ceph/ceph/pull/12053>`_, Abhishek Lekshmanan) -* doc: release notes for 10.2.5 (`issue#18207 <http://tracker.ceph.com/issues/18207>`_, `pr#12410 <http://github.com/ceph/ceph/pull/12410>`_, Loic Dachary) -* doc: release notes for 11.0.2 (`pr#11369 <http://github.com/ceph/ceph/pull/11369>`_, Abhishek Lekshmanan) -* doc: Remove duplicate command for Ubuntu (`pr#12186 <http://github.com/ceph/ceph/pull/12186>`_, chrone) -* doc: reviewed-by: John Wilkins <jowilkin@redhat.com> (`issue#17526 <http://tracker.ceph.com/issues/17526>`_, `pr#11352 <http://github.com/ceph/ceph/pull/11352>`_, Loic Dachary) -* doc: reviewed-by: John Wilkins <jowilkin@redhat.com> (`issue#17665 <http://tracker.ceph.com/issues/17665>`_, `pr#11602 <http://github.com/ceph/ceph/pull/11602>`_, Jason Dillaman) -* doc: rgw: fix a typo in S3 java api example (`pr#11762 <http://github.com/ceph/ceph/pull/11762>`_, Weibing Zhang) -* doc: rm "type=rpm-md" from yum repositories (`pr#10248 <http://github.com/ceph/ceph/pull/10248>`_, Ken Dreyer) -* doc: Small styling fix to mirror documentation (`pr#9714 <http://github.com/ceph/ceph/pull/9714>`_, Wido den Hollander) -* doc: src/doc: fix class names in exports.txt (`pr#12000 <http://github.com/ceph/ceph/pull/12000>`_, John Spray) -* doc: standardize EPEL instructions (`pr#11653 <http://github.com/ceph/ceph/pull/11653>`_, Ken Dreyer) -* doc: update cinder key permissions for mitaka (`pr#12211 <http://github.com/ceph/ceph/pull/12211>`_, Sébastien Han) -* doc: Update crush-map.rst, fix a typo mistake (`pr#11785 <http://github.com/ceph/ceph/pull/11785>`_, whu_liuchang) -* doc: Update filestore xattr config documentation. (`pr#11826 <http://github.com/ceph/ceph/pull/11826>`_, Bartłomiej Święcki) -* doc: Update install-ceph-gateway.rst (`pr#11432 <http://github.com/ceph/ceph/pull/11432>`_, Hans van den Bogert) -* doc: Update keystone doc about v3 options (`pr#11392 <http://github.com/ceph/ceph/pull/11392>`_, Proskurin Kirill) -* doc: Update layout.rst, move commands to CODE block (`pr#11987 <http://github.com/ceph/ceph/pull/11987>`_, liuchang0812) -* doc: we can now run multiple MDS, so qualify warning (`issue#18040 <http://tracker.ceph.com/issues/18040>`_, `pr#12184 <http://github.com/ceph/ceph/pull/12184>`_, Nathan Cutler) -* fs: add snapshot tests to mds thrashing (`pr#1073 <http://github.com/ceph/ceph/pull/1073>`_, Yan, Zheng) -* fs: enable ceph-fuse permission checking for all pjd suites (`pr#1187 <http://github.com/ceph/ceph/pull/1187>`_, Greg Farnum) -* fs: fix two frag_enable fragments (`issue#6143 <http://tracker.ceph.com/issues/6143>`_, `pr#656 <http://github.com/ceph/ceph/pull/656>`_, Sage Weil) -* fs: fix up dd testing again (`issue#10861 <http://tracker.ceph.com/issues/10861>`_, `pr#373 <http://github.com/ceph/ceph/pull/373>`_, Greg Farnum) -* fs: fuse_default_permissions = 0 for kernel build test (`pr#1109 <http://github.com/ceph/ceph/pull/1109>`_, Patrick Donnelly) -* fs: Mantle: A Programmable Metadata Load Balancer (`pr#10887 <http://github.com/ceph/ceph/pull/10887>`_, Michael Sevilla) -* fs: unify common parts of sub-suites (`issue#1737 <http://tracker.ceph.com/issues/1737>`_, `pr#1282 <http://github.com/ceph/ceph/pull/1282>`_, Patrick Donnelly) -* librados: Add rados_aio_exec to the C API (`pr#11709 <http://github.com/ceph/ceph/pull/11709>`_, Iain Buclaw) -* librados: add timeout to watch/notify (`pr#11378 <http://github.com/ceph/ceph/pull/11378>`_, Ryne Li) -* librados: do not request osd ack if no completed completion is set (`pr#11204 <http://github.com/ceph/ceph/pull/11204>`_, Sage Weil) -* librados: For C-API, expose LIBRADOS_OPERATION_FULL_FORCE flag (`pr#9172 <http://github.com/ceph/ceph/pull/9172>`_, Jianpeng Ma) -* librados: improvements async IO in librados and libradosstriper (`pr#10049 <http://github.com/ceph/ceph/pull/10049>`_, Sebastien Ponce) -* librados: Memory leaks in object_list_begin and object_list_end (`issue#18252 <http://tracker.ceph.com/issues/18252>`_, `pr#12482 <http://github.com/ceph/ceph/pull/12482>`_, Brad Hubbard) -* librados: postpone cct deletion (`pr#11659 <http://github.com/ceph/ceph/pull/11659>`_, Kefu Chai) -* librados: remove new setxattr overload to avoid breaking the C++ ABI (`issue#18058 <http://tracker.ceph.com/issues/18058>`_, `pr#12206 <http://github.com/ceph/ceph/pull/12206>`_, Josh Durgin) -* librados: remove unused bufferlist from rados_write_op_rmxattr (`pr#12030 <http://github.com/ceph/ceph/pull/12030>`_, Piotr Dałek) -* librbd: add support for snapshot namespaces (`pr#11160 <http://github.com/ceph/ceph/pull/11160>`_, Victor Denisov) -* librbd: API changes to support separate data pool (`pr#11353 <http://github.com/ceph/ceph/pull/11353>`_, Jason Dillaman) -* librbd: batch object map updates during trim (`issue#17356 <http://tracker.ceph.com/issues/17356>`_, `pr#11510 <http://github.com/ceph/ceph/pull/11510>`_, Venky Shankar) -* librbd: bug fixes for optional data pool support (`pr#11960 <http://github.com/ceph/ceph/pull/11960>`_, Venky Shankar) -* librbd: cannot access non-primary image when mirroring force disabled (`issue#16740 <http://tracker.ceph.com/issues/16740>`_, `issue#17588 <http://tracker.ceph.com/issues/17588>`_, `pr#11568 <http://github.com/ceph/ceph/pull/11568>`_, Jason Dillaman) -* librbd: cls_rbd updates for separate data pool (`issue#17422 <http://tracker.ceph.com/issues/17422>`_, `pr#11327 <http://github.com/ceph/ceph/pull/11327>`_, Jason Dillaman) -* librbd: default features should be negotiated with the OSD (`issue#17010 <http://tracker.ceph.com/issues/17010>`_, `pr#11808 <http://github.com/ceph/ceph/pull/11808>`_, Mykola Golub) -* librbd: diffs to clone's first snapshot should include parent diffs (`issue#18068 <http://tracker.ceph.com/issues/18068>`_, `pr#12218 <http://github.com/ceph/ceph/pull/12218>`_, Jason Dillaman) -* librbd: do not create empty object map object on image creation (`issue#17752 <http://tracker.ceph.com/issues/17752>`_, `pr#11704 <http://github.com/ceph/ceph/pull/11704>`_, Jason Dillaman) -* librbd: enabling/disabling rbd feature should report missing dependency (`issue#16985 <http://tracker.ceph.com/issues/16985>`_, `pr#12238 <http://github.com/ceph/ceph/pull/12238>`_, Gaurav Kumar Garg) -* librbd: ensure consistency groups will gracefully fail on older OSDs (`pr#11623 <http://github.com/ceph/ceph/pull/11623>`_, Jason Dillaman) -* librbd: exclusive lock incorrectly initialized when switching to head revision (`issue#17618 <http://tracker.ceph.com/issues/17618>`_, `pr#11559 <http://github.com/ceph/ceph/pull/11559>`_, Jason Dillaman) -* librbd: fix rollback if failed to disable mirroring for image (`pr#11260 <http://github.com/ceph/ceph/pull/11260>`_, runsisi) -* librbd: ignore error when object map is already locked by current client (`issue#16179 <http://tracker.ceph.com/issues/16179>`_, `pr#12484 <http://github.com/ceph/ceph/pull/12484>`_, runsisi) -* librbd: ignore notify errors on missing image header (`issue#17549 <http://tracker.ceph.com/issues/17549>`_, `pr#11395 <http://github.com/ceph/ceph/pull/11395>`_, Jason Dillaman) -* librbd: keep rbd_default_features setting as bitmask (`issue#18247 <http://tracker.ceph.com/issues/18247>`_, `pr#12486 <http://github.com/ceph/ceph/pull/12486>`_, Jason Dillaman) -* librbd: mark request as finished after failed refresh (`issue#17973 <http://tracker.ceph.com/issues/17973>`_, `pr#12160 <http://github.com/ceph/ceph/pull/12160>`_, Venky Shankar) -* librbd: minor cleanup (`pr#12078 <http://github.com/ceph/ceph/pull/12078>`_, Dongsheng Yang) -* librbd: new API method to force break a peer's exclusive lock (`issue#18429 <http://tracker.ceph.com/issues/18429>`_, `issue#16988 <http://tracker.ceph.com/issues/16988>`_, `issue#18327 <http://tracker.ceph.com/issues/18327>`_, `pr#12889 <http://github.com/ceph/ceph/pull/12889>`_, Jason Dillaman) -* librbd: parse rbd_default_features config option as a string (`pr#11175 <http://github.com/ceph/ceph/pull/11175>`_, Alyona Kiseleva, Alexey Sheplyakov) -* librbd: possible assert failure creating image when using data pool (`pr#11641 <http://github.com/ceph/ceph/pull/11641>`_, Venky Shankar) -* librbd: proper check for get_data_pool compatibility (`issue#17791 <http://tracker.ceph.com/issues/17791>`_, `pr#11755 <http://github.com/ceph/ceph/pull/11755>`_, Mykola Golub) -* librbd: properly order concurrent updates to the object map (`issue#16176 <http://tracker.ceph.com/issues/16176>`_, `pr#12420 <http://github.com/ceph/ceph/pull/12420>`_, Jason Dillaman) -* librbd: release lock after demote (`issue#17880 <http://tracker.ceph.com/issues/17880>`_, `pr#11940 <http://github.com/ceph/ceph/pull/11940>`_, Mykola Golub) -* librbd: remove consistency group rbd cli and API support (`issue#18231 <http://tracker.ceph.com/issues/18231>`_, `pr#12475 <http://github.com/ceph/ceph/pull/12475>`_, Jason Dillaman) -* librbd: remove image header lock assertions (`issue#18244 <http://tracker.ceph.com/issues/18244>`_, `pr#12472 <http://github.com/ceph/ceph/pull/12472>`_, Jason Dillaman) -* librbd: remove unused local variable (`pr#12388 <http://github.com/ceph/ceph/pull/12388>`_, Yunchuan Wen) -* librbd: silence the unused variable warning (`pr#11678 <http://github.com/ceph/ceph/pull/11678>`_, Kefu Chai) -* librbd: snap_get_limit compatibility check (`pr#11766 <http://github.com/ceph/ceph/pull/11766>`_, Mykola Golub) -* librbd: update internals to use optional separate data pool (`pr#11356 <http://github.com/ceph/ceph/pull/11356>`_, Jason Dillaman) -* librbd: use proper snapshot when computing diff parent overlap (`issue#18200 <http://tracker.ceph.com/issues/18200>`_, `pr#12396 <http://github.com/ceph/ceph/pull/12396>`_, Xiaoxi Chen) -* log: optimize header file dependency (`pr#9768 <http://github.com/ceph/ceph/pull/9768>`_, Xiaowei Chen) -* mds: add debug assertion for issue #17636 (`pr#11576 <http://github.com/ceph/ceph/pull/11576>`_, Yan, Zheng) -* mds: add tests for mantle (programmable balancer) (`pr#1145 <http://github.com/ceph/ceph/pull/1145>`_, Michael Sevilla) -* mds: check if down mds is known (`issue#17670 <http://tracker.ceph.com/issues/17670>`_, `pr#11611 <http://github.com/ceph/ceph/pull/11611>`_, Patrick Donnelly) -* mds: don't access mdsmap from log submit thread (`issue#18047 <http://tracker.ceph.com/issues/18047>`_, `pr#12208 <http://github.com/ceph/ceph/pull/12208>`_, Yan, Zheng) -* mds: don't maintain bloom filters in standby replay (`issue#16924 <http://tracker.ceph.com/issues/16924>`_, `pr#12133 <http://github.com/ceph/ceph/pull/12133>`_, John Spray) -* mds: enable rmxattr on pool_namespace attrs (`issue#17797 <http://tracker.ceph.com/issues/17797>`_, `pr#11783 <http://github.com/ceph/ceph/pull/11783>`_, John Spray) -* mds: fix dropping events in standby replay (`issue#17954 <http://tracker.ceph.com/issues/17954>`_, `pr#12077 <http://github.com/ceph/ceph/pull/12077>`_, John Spray) -* mds: fix EMetaBlob::fullbit xattr dump (`pr#11536 <http://github.com/ceph/ceph/pull/11536>`_, Sage Weil) -* mds: fix false "failing to respond to cache pressure" warning (`pr#11373 <http://github.com/ceph/ceph/pull/11373>`_, Yan, Zheng) -* mds: force client flush snap data before truncating objects (`issue#17193 <http://tracker.ceph.com/issues/17193>`_, `pr#11994 <http://github.com/ceph/ceph/pull/11994>`_, Yan, Zheng) -* mds: handle bad standby_for_fscids in fsmap (`issue#17466 <http://tracker.ceph.com/issues/17466>`_, `pr#11281 <http://github.com/ceph/ceph/pull/11281>`_, John Spray) -* mds: ignore 'session evict' when mds is replaying log (`issue#17801 <http://tracker.ceph.com/issues/17801>`_, `pr#11813 <http://github.com/ceph/ceph/pull/11813>`_, Yan, Zheng) -* mds: include legacy client fsid in FSMap print (`pr#11283 <http://github.com/ceph/ceph/pull/11283>`_, John Spray) -* mds: more deterministic timing on frag split/join (`issue#17853 <http://tracker.ceph.com/issues/17853>`_, `pr#12022 <http://github.com/ceph/ceph/pull/12022>`_, John Spray) -* mds: more unique_pointer changes (`pr#11635 <http://github.com/ceph/ceph/pull/11635>`_, Patrick Donnelly) -* mds: properly commit new dirfrag before splitting it (`issue#17990 <http://tracker.ceph.com/issues/17990>`_, `pr#12125 <http://github.com/ceph/ceph/pull/12125>`_, Yan, Zheng) -* mds: release pool allocator memory after exceeding size limit (`issue#18225 <http://tracker.ceph.com/issues/18225>`_, `pr#12443 <http://github.com/ceph/ceph/pull/12443>`_, John Spray) -* mds: remove duplicated log in handle_client_readdir (`pr#11806 <http://github.com/ceph/ceph/pull/11806>`_, Zhi Zhang) -* mds: remove "--journal-check" help text (`issue#17747 <http://tracker.ceph.com/issues/17747>`_, `pr#11739 <http://github.com/ceph/ceph/pull/11739>`_, Nathan Cutler) -* mds: remove unused EFragment::OP_ONESHOT (`pr#11887 <http://github.com/ceph/ceph/pull/11887>`_, John Spray) -* mds: repair backtraces during scrub (`issue#17639 <http://tracker.ceph.com/issues/17639>`_, `pr#11578 <http://github.com/ceph/ceph/pull/11578>`_, John Spray) -* mds: require MAY_SET_POOL to set pool_ns (`issue#17798 <http://tracker.ceph.com/issues/17798>`_, `pr#11789 <http://github.com/ceph/ceph/pull/11789>`_, John Spray) -* mds: respawn using /proc/self/exe (`issue#17531 <http://tracker.ceph.com/issues/17531>`_, `pr#11362 <http://github.com/ceph/ceph/pull/11362>`_, Patrick Donnelly) -* mds: revert "mds/Mutation: remove redundant _dump method" (`issue#17906 <http://tracker.ceph.com/issues/17906>`_, `pr#11985 <http://github.com/ceph/ceph/pull/11985>`_, Patrick Donnelly) -* mds: use parse_filesystem in parse_role to handle exceptions and reuse parsing code (`issue#17518 <http://tracker.ceph.com/issues/17518>`_, `pr#11357 <http://github.com/ceph/ceph/pull/11357>`_, Patrick Donnelly) -* mds: use projected path construction for access (`issue#17858 <http://tracker.ceph.com/issues/17858>`_, `pr#12063 <http://github.com/ceph/ceph/pull/12063>`_, Patrick Donnelly) -* mds: use unique_ptr to simplify resource mgmt (`pr#11543 <http://github.com/ceph/ceph/pull/11543>`_, Patrick Donnelly) -* mgr: doc/mgr: fix mgr how long to wait to failover (`pr#11550 <http://github.com/ceph/ceph/pull/11550>`_, huanwen ren) -* mgr: init() return when connection daemons failed && add some err info (`pr#11424 <http://github.com/ceph/ceph/pull/11424>`_, huanwen ren) -* mgr: misc minor changes (`issue#17455 <http://tracker.ceph.com/issues/17455>`_, `pr#11386 <http://github.com/ceph/ceph/pull/11386>`_, xie xingguo) -* mgr: PyModules.cc: remove duplicated if condition for fs_map (`pr#11639 <http://github.com/ceph/ceph/pull/11639>`_, Weibing Zhang) -* mgr: remove unnecessary C_StdFunction (`pr#11883 <http://github.com/ceph/ceph/pull/11883>`_, John Spray) -* mon: add missing space in warning message (`pr#11361 <http://github.com/ceph/ceph/pull/11361>`_, Patrick Donnelly) -* mon: clean legacy code (`pr#9643 <http://github.com/ceph/ceph/pull/9643>`_, Wei Jin) -* mon: clear duplicated logic in MDSMonitor (`pr#11209 <http://github.com/ceph/ceph/pull/11209>`_, Zhi Zhang) -* mon: Do not allow pools to be deleted by default (`pr#11665 <http://github.com/ceph/ceph/pull/11665>`_, Wido den Hollander) -* mon: fix "OSDs marked OUT wrongly after monitor failover" (`issue#17719 <http://tracker.ceph.com/issues/17719>`_, `pr#11664 <http://github.com/ceph/ceph/pull/11664>`_, Dong Wu) -* mon: Forbidden copy and assignment function in monoprequest (`pr#9513 <http://github.com/ceph/ceph/pull/9513>`_, song baisen) -* mon: have mon-specific features & rework internal monmap structures (`pr#10907 <http://github.com/ceph/ceph/pull/10907>`_, Joao Eduardo Luis) -* mon: if crushtool config is empty use internal crush test (`pr#11765 <http://github.com/ceph/ceph/pull/11765>`_, Bassam Tabbara) -* mon: make MDSMonitor tolerant of slow mon elections (`issue#17308 <http://tracker.ceph.com/issues/17308>`_, `pr#11167 <http://github.com/ceph/ceph/pull/11167>`_, John Spray) -* mon: MonmapMonitor: return success when monitor will be removed (`issue#17725 <http://tracker.ceph.com/issues/17725>`_, `pr#11747 <http://github.com/ceph/ceph/pull/11747>`_, Joao Eduardo Luis) -* mon: move case CEPH_MSG_POOLOP to OSDs group (`pr#11848 <http://github.com/ceph/ceph/pull/11848>`_, Javeme) -* mon: osdmap's epoch should be more than 0 (`pr#9859 <http://github.com/ceph/ceph/pull/9859>`_, Na Xie) -* mon: OSDMonitor: fix the check error of pg creating (`issue#17169 <http://tracker.ceph.com/issues/17169>`_, `pr#10916 <http://github.com/ceph/ceph/pull/10916>`_, DesmondS) -* mon: paxos add the timeout function when peon recovery (`pr#10359 <http://github.com/ceph/ceph/pull/10359>`_, song baisen) -* mon: preserve osd weight when marking osd out, then in (`pr#11293 <http://github.com/ceph/ceph/pull/11293>`_, Sage Weil) -* mon: prevent post-jewel OSDs from booting if require_jewel_osds is not set (`pr#11498 <http://github.com/ceph/ceph/pull/11498>`_, Sage Weil) -* mon: remove ceph-create-keys from mon startup (`issue#16036 <http://tracker.ceph.com/issues/16036>`_, `pr#9345 <http://github.com/ceph/ceph/pull/9345>`_, Owen Synge) -* mon: remove the redudant jugement in LogMonitor tick function (`pr#10474 <http://github.com/ceph/ceph/pull/10474>`_, song baisen) -* mon: remove utime_t param in _dump (`pr#12029 <http://github.com/ceph/ceph/pull/12029>`_, Patrick Donnelly) -* mon: send updated monmap to its subscribers (`issue#17558 <http://tracker.ceph.com/issues/17558>`_, `pr#11456 <http://github.com/ceph/ceph/pull/11456>`_, Kefu Chai) -* mon: small change on the HealthMonitor start_epoch function (`pr#10296 <http://github.com/ceph/ceph/pull/10296>`_, songbaisen) -* mon: support for building without leveldb + mon mkfs bug fix (`pr#11800 <http://github.com/ceph/ceph/pull/11800>`_, Bassam Tabbara) -* osd: add a pg _fastinfo attribute to reduce per-io metadata updates (`pr#11213 <http://github.com/ceph/ceph/pull/11213>`_, Sage Weil) -* osd: Add config option to disable new scrubs during recovery (`issue#17866 <http://tracker.ceph.com/issues/17866>`_, `pr#11874 <http://github.com/ceph/ceph/pull/11874>`_, Wido den Hollander) -* osd: a few fast dispatch optimizations (`pr#12052 <http://github.com/ceph/ceph/pull/12052>`_, Sage Weil) -* osd: cleanup C_CompleteSplits::finish() (`pr#12094 <http://github.com/ceph/ceph/pull/12094>`_, Jie Wang) -* osd: clean up PeeringWQ::_dequeue(), remove unnecessary variable (`pr#12117 <http://github.com/ceph/ceph/pull/12117>`_, Jie Wang) -* osd: clean up process_peering_events (`pr#12009 <http://github.com/ceph/ceph/pull/12009>`_, Jie Wang) -* osdc/Objecter: resend pg commands on interval change (`issue#18358 <http://tracker.ceph.com/issues/18358>`_, `pr#12910 <http://github.com/ceph/ceph/pull/12910>`_, Samuel Just) -* osd: condition OSDMap encoding on features (`pr#12166 <http://github.com/ceph/ceph/pull/12166>`_, Sage Weil) -* osd: default osd_scrub_during_recovery=false (`pr#12402 <http://github.com/ceph/ceph/pull/12402>`_, Sage Weil) -* osd: do not open pgs when the pg is not in pg_map (`issue#17806 <http://tracker.ceph.com/issues/17806>`_, `pr#11803 <http://github.com/ceph/ceph/pull/11803>`_, Xinze Chi) -* osd: drop stray debug message (`pr#11296 <http://github.com/ceph/ceph/pull/11296>`_, Sage Weil) -* osd: EC Overwrites (`issue#17668 <http://tracker.ceph.com/issues/17668>`_, `pr#11701 <http://github.com/ceph/ceph/pull/11701>`_, Tomy Cheru, Samuel Just) -* osd: enhance logging for osd network error (`pr#12458 <http://github.com/ceph/ceph/pull/12458>`_, liuchang0812) -* osd: fix CEPH_OSD_FLAG_RWORDERED (`pr#12603 <http://github.com/ceph/ceph/pull/12603>`_, Sage Weil) -* osd: fix duplicated id of incompat feature "fastinfo" (`pr#11588 <http://github.com/ceph/ceph/pull/11588>`_, xie xingguo) -* osd: fix ec scrub errors (`issue#17999 <http://tracker.ceph.com/issues/17999>`_, `pr#12306 <http://github.com/ceph/ceph/pull/12306>`_, Samuel Just) -* osd: fixes to make rbd on ec work (`pr#12305 <http://github.com/ceph/ceph/pull/12305>`_, Samuel Just) -* osd: Fix map gaps again (bug 15943) (`issue#15943 <http://tracker.ceph.com/issues/15943>`_, `pr#12571 <http://github.com/ceph/ceph/pull/12571>`_, Samuel Just) -* osd: fix memory leak from EC write workload (`issue#18093 <http://tracker.ceph.com/issues/18093>`_, `pr#12256 <http://github.com/ceph/ceph/pull/12256>`_, Sage Weil) -* osd: fix rados write op hang (`pr#11143 <http://github.com/ceph/ceph/pull/11143>`_, Yunchuan Wen) -* osd: Fix read error propogation in ECBackend (`issue#17966 <http://tracker.ceph.com/issues/17966>`_, `pr#12142 <http://github.com/ceph/ceph/pull/12142>`_, Samuel Just) -* osd: fix scrub boundary to not include a SnapSet (`pr#11255 <http://github.com/ceph/ceph/pull/11255>`_, Samuel Just) -* osd: fix signed/unsigned comparison warning (`pr#12400 <http://github.com/ceph/ceph/pull/12400>`_, Greg Farnum) -* osd: fix typo in PG::clear_primary_state (`pr#11513 <http://github.com/ceph/ceph/pull/11513>`_, Brad Hubbard) -* osd: Fix typos in PG::find_best_info (`pr#11515 <http://github.com/ceph/ceph/pull/11515>`_, Brad Hubbard) -* osd: fix typos in "struct OSDOp" comments (`pr#12350 <http://github.com/ceph/ceph/pull/12350>`_, Chanyoung Park) -* osd: Flush Journal on shutdown (`pr#11249 <http://github.com/ceph/ceph/pull/11249>`_, Wido den Hollander) -* osd: force watch PING to be write ordered (`issue#18310 <http://tracker.ceph.com/issues/18310>`_, `pr#12590 <http://github.com/ceph/ceph/pull/12590>`_, Samuel Just) -* osd: handle EC recovery read errors (`issue#13937 <http://tracker.ceph.com/issues/13937>`_, `pr#9304 <http://github.com/ceph/ceph/pull/9304>`_, David Zafman) -* osd: heartbeat peers need to be updated when a new OSD added into an existed cluster (`issue#18004 <http://tracker.ceph.com/issues/18004>`_, `pr#12069 <http://github.com/ceph/ceph/pull/12069>`_, Pan Liu) -* osd: Increase priority for inactive PGs backfill (`pr#12389 <http://github.com/ceph/ceph/pull/12389>`_, Bartłomiej Święcki) -* osd: kill PG_STATE_SPLITTING (`pr#11824 <http://github.com/ceph/ceph/pull/11824>`_, xie xingguo) -* osd: mark queued flag for op (`pr#12352 <http://github.com/ceph/ceph/pull/12352>`_, Yunchuan Wen) -* osd: osdc: pass a string reference type to "osdmap->lookup_pg_pool_name" (`pr#12219 <http://github.com/ceph/ceph/pull/12219>`_, Leo Zhang) -* osd: osd/OSDMonitor: accept 'osd pool set ...' value as string (`pr#911 <http://github.com/ceph/ceph/pull/911>`_, David Zafman) -* osd: PGLog: initialize writeout_from in PGLog constructor (`issue#12973 <http://tracker.ceph.com/issues/12973>`_, `pr#558 <http://github.com/ceph/ceph/pull/558>`_, Sage Weil) -* osd/PrimaryLogPG: don't update digests for objects with mismatched names (`issue#18409 <http://tracker.ceph.com/issues/18409>`_, `pr#12803 <http://github.com/ceph/ceph/pull/12803>`_, Samuel Just) -* osd/PrimaryLogPG::failed_push: update missing as well (`issue#18165 <http://tracker.ceph.com/issues/18165>`_, `pr#12911 <http://github.com/ceph/ceph/pull/12911>`_, Samuel Just) -* osd: print log when osd want to kill self (`pr#9288 <http://github.com/ceph/ceph/pull/9288>`_, Haomai Wang) -* osd: Remove extra call to reg_next_scrub() during splits (`issue#16474 <http://tracker.ceph.com/issues/16474>`_, `pr#11206 <http://github.com/ceph/ceph/pull/11206>`_, David Zafman) -* osd: remove redudant call of heartbeat_check (`pr#12130 <http://github.com/ceph/ceph/pull/12130>`_, Pan Liu) -* osd: remove the lock heartbeat_update_lock, and change heatbeat_need\_… (`pr#12461 <http://github.com/ceph/ceph/pull/12461>`_, Pan Liu) -* osd: remove the redundant clear method in consume_map function (`pr#10553 <http://github.com/ceph/ceph/pull/10553>`_, song baisen) -* osd: Remove unused '_lsb_release_' declarations (`pr#11364 <http://github.com/ceph/ceph/pull/11364>`_, Brad Hubbard) -* osd: replace hb_out and hb_in with a single hb_peers (`issue#18057 <http://tracker.ceph.com/issues/18057>`_, `pr#12178 <http://github.com/ceph/ceph/pull/12178>`_, Pan Liu) -* osd: ReplicatedPG: don't bless C_OSD_SendMessageOnConn (`issue#13304 <http://tracker.ceph.com/issues/13304>`_, `pr#669 <http://github.com/ceph/ceph/pull/669>`_, Jason Dillaman) -* osd: set server-side limits on omap get operations (`pr#12059 <http://github.com/ceph/ceph/pull/12059>`_, Sage Weil) -* osd: When deep-scrub errors present upgrade regular scrubs (`pr#12268 <http://github.com/ceph/ceph/pull/12268>`_, David Zafman) -* performance,bluestore: kv/MemDB: making memdb code adapt to generic maps (`pr#11436 <http://github.com/ceph/ceph/pull/11436>`_, Ramesh Chander) -* performance,bluestore: os/bluestore: allow default to buffered write (`pr#11301 <http://github.com/ceph/ceph/pull/11301>`_, Sage Weil) -* performance,bluestore: os/bluestore: bluestore_cache_meta_ratio = .5 (`pr#11919 <http://github.com/ceph/ceph/pull/11919>`_, Sage Weil) -* performance,bluestore: os/bluestore: reduce Onode in-memory footprint (`pr#12568 <http://github.com/ceph/ceph/pull/12568>`_, Igor Fedotov) -* performance,bluestore: os/bluestore: refactor bluestore_sync_submit_transaction (`pr#11537 <http://github.com/ceph/ceph/pull/11537>`_, Sage Weil) -* performance,bluestore: os/bluestore: speed up omap-key generation for same onode(the read paths) (`pr#11894 <http://github.com/ceph/ceph/pull/11894>`_, xie xingguo) -* performance,bluestore: os/bluestore: speedup the performance of multi-replication flow by switc… (`pr#11844 <http://github.com/ceph/ceph/pull/11844>`_, Pan Liu) -* performance,cephfs: Fix long stalls when calling ceph_fsync() (`issue#17563 <http://tracker.ceph.com/issues/17563>`_, `pr#11710 <http://github.com/ceph/ceph/pull/11710>`_, Jeff Layton) -* performance,cleanup: Context: std::move the callback param in FunctionContext's ctor (`pr#11892 <http://github.com/ceph/ceph/pull/11892>`_, Kefu Chai) -* performance,cleanup: osd/PG.h: move shared ptr instead of copying it (`pr#11154 <http://github.com/ceph/ceph/pull/11154>`_, Michal Jarzabek) -* performance,common: common/config_opts.h: Optimized RocksDB WAL settings. (`pr#11530 <http://github.com/ceph/ceph/pull/11530>`_, Mark Nelson) -* performance,common: osd/OSDMap: improve the performance of pg_to_acting_osds (`pr#12190 <http://github.com/ceph/ceph/pull/12190>`_, Pan Liu) -* performance: msg/async: set ms_async_send_inline to false to improve small randread iops (`pr#11521 <http://github.com/ceph/ceph/pull/11521>`_, Mark Nelson) -* performance,tools: rados: add hints to rados bench (`pr#12169 <http://github.com/ceph/ceph/pull/12169>`_, Sage Weil) -* pybind: avoid "exception 'int' object is not iterable" (`pr#11532 <http://github.com/ceph/ceph/pull/11532>`_, Javeme) -* pybind,cephfs: ceph_volume_client: fix recovery from partial auth update (`issue#17216 <http://tracker.ceph.com/issues/17216>`_, `pr#11304 <http://github.com/ceph/ceph/pull/11304>`_, Ramana Raja) -* pybind,cephfs: ceph_volume_client: set an existing auth ID's default mon caps (`issue#17800 <http://tracker.ceph.com/issues/17800>`_, `pr#11917 <http://github.com/ceph/ceph/pull/11917>`_, Ramana Raja) -* pybind: ceph-rest-api: understand the new style entity_addr_t representation (`issue#17742 <http://tracker.ceph.com/issues/17742>`_, `pr#11686 <http://github.com/ceph/ceph/pull/11686>`_, Kefu Chai) -* pybind: clean up mgr stuff for flake8 (`pr#11314 <http://github.com/ceph/ceph/pull/11314>`_, John Spray) -* pybind: fix build failure of rgwfile binding (`pr#11825 <http://github.com/ceph/ceph/pull/11825>`_, Kefu Chai) -* pybind: pybind/rados: add missing "length" requires for aio_execute() (`pr#12439 <http://github.com/ceph/ceph/pull/12439>`_, Kefu Chai) -* pybind: pybind/rados: Add @requires for all aio methods (`pr#12327 <http://github.com/ceph/ceph/pull/12327>`_, Iain Buclaw) -* qa: fixed distros links (`pr#12773 <http://github.com/ceph/ceph/pull/12773>`_, Yuri Weinstein) -* qa: Fixed link to centos distro (`pr#12768 <http://github.com/ceph/ceph/pull/12768>`_, Yuri Weinstein) -* qa/suites: switch from centos 7.2 to 7.x (`pr#12632 <http://github.com/ceph/ceph/pull/12632>`_, Sage Weil) -* qa/tasks/peer: update task based on current peering behavior (`issue#18330 <http://tracker.ceph.com/issues/18330>`_, `pr#12614 <http://github.com/ceph/ceph/pull/12614>`_, Sage Weil) -* qa/tasks/workunit: clear clone dir before retrying checkout (`issue#18336 <http://tracker.ceph.com/issues/18336>`_, `pr#12630 <http://github.com/ceph/ceph/pull/12630>`_, Sage Weil) -* qa: update Ubuntu image url after ceph.com refactor (`issue#18542 <http://tracker.ceph.com/issues/18542>`_, `pr#12960 <http://github.com/ceph/ceph/pull/12960>`_, Jason Dillaman) -* qa/workunits/rbd/test_lock_fence.sh fails (`issue#18388 <http://tracker.ceph.com/issues/18388>`_, `pr#12752 <http://github.com/ceph/ceph/pull/12752>`_, Nathan Cutler) -* rbd: added rbd-nbd fsx test case (`pr#1049 <http://github.com/ceph/ceph/pull/1049>`_, Jason Dillaman) -* rbd: add fsx journal replay test case (`pr#821 <http://github.com/ceph/ceph/pull/821>`_, Jason Dillaman) -* rbd: add singleton to assert no rbdmap regression (`issue#14984 <http://tracker.ceph.com/issues/14984>`_, `pr#902 <http://github.com/ceph/ceph/pull/902>`_, Nathan Cutler) -* rbd: add some missing workunits (`pr#870 <http://github.com/ceph/ceph/pull/870>`_, Josh Durgin) -* rbd: add support for separate image data pool (`issue#17424 <http://tracker.ceph.com/issues/17424>`_, `pr#11355 <http://github.com/ceph/ceph/pull/11355>`_, Jason Dillaman) -* rbd: expose rbd unmap options (`issue#17554 <http://tracker.ceph.com/issues/17554>`_, `pr#11370 <http://github.com/ceph/ceph/pull/11370>`_, Ilya Dryomov) -* rbd: fix json formatting for image and journal status output (`issue#18261 <http://tracker.ceph.com/issues/18261>`_, `pr#12525 <http://github.com/ceph/ceph/pull/12525>`_, Mykola Golub) -* rbd: fix parsing of group and image specific pools (`pr#11632 <http://github.com/ceph/ceph/pull/11632>`_, Victor Denisov) -* rbd: journal: do not prematurely flag object recorder as closed (`issue#17590 <http://tracker.ceph.com/issues/17590>`_, `pr#11520 <http://github.com/ceph/ceph/pull/11520>`_, Jason Dillaman) -* rbd: krbd: kernel client expects ip[:port], not an entity_addr_t (`pr#11902 <http://github.com/ceph/ceph/pull/11902>`_, Ilya Dryomov) -* rbd: --max_part and --nbds_max options for nbd map (`issue#18186 <http://tracker.ceph.com/issues/18186>`_, `pr#12379 <http://github.com/ceph/ceph/pull/12379>`_, Pan Liu) -* rbd: move nbd test workload to separate client host from OSDs (`pr#1170 <http://github.com/ceph/ceph/pull/1170>`_, Jason Dillaman) -* rbd: provision volumes to format as XFS (`issue#6693 <http://tracker.ceph.com/issues/6693>`_, `pr#1028 <http://github.com/ceph/ceph/pull/1028>`_, Loic Dachary) -* rbd: rbd-mirror: fix sparse read optimization in image sync (`issue#18146 <http://tracker.ceph.com/issues/18146>`_, `pr#12368 <http://github.com/ceph/ceph/pull/12368>`_, Mykola Golub) -* rbd: rbd-mirror HA: move librbd::image_watcher::Notifier to librbd::object_watcher (`issue#17017 <http://tracker.ceph.com/issues/17017>`_, `pr#11290 <http://github.com/ceph/ceph/pull/11290>`_, Mykola Golub) -* rbd: rbd-mirror: recovering after split-brain (`issue#16991 <http://tracker.ceph.com/issues/16991>`_, `issue#18051 <http://tracker.ceph.com/issues/18051>`_, `pr#12212 <http://github.com/ceph/ceph/pull/12212>`_, Mykola Golub) -* rbd: rbd-mirror: snap protect of non-layered image results in split-brain (`issue#16962 <http://tracker.ceph.com/issues/16962>`_, `pr#11744 <http://github.com/ceph/ceph/pull/11744>`_, Mykola Golub) -* rbd: rbd-nbd: disallow mapping images >2TB in size (`issue#17219 <http://tracker.ceph.com/issues/17219>`_, `pr#11741 <http://github.com/ceph/ceph/pull/11741>`_, Mykola Golub) -* rbd: rbd-nbd: invalid error code for "failed to read nbd request" messages (`issue#18242 <http://tracker.ceph.com/issues/18242>`_, `pr#12483 <http://github.com/ceph/ceph/pull/12483>`_, Mykola Golub) -* rbd: rbd-nbd: restart parent process logger after forking (`issue#18070 <http://tracker.ceph.com/issues/18070>`_, `pr#12222 <http://github.com/ceph/ceph/pull/12222>`_, Jason Dillaman) -* rbd: rbd-nbd: support disabling auto-exclusive lock transition logic (`issue#17488 <http://tracker.ceph.com/issues/17488>`_, `pr#11438 <http://github.com/ceph/ceph/pull/11438>`_, Mykola Golub) -* rbd: rbd-nbd: support partition for rbd-nbd mapped raw block device (`issue#18115 <http://tracker.ceph.com/issues/18115>`_, `pr#12259 <http://github.com/ceph/ceph/pull/12259>`_, Pan Liu) -* rbd: tests with rbd_skip_partial_discard option enabled (`pr#1077 <http://github.com/ceph/ceph/pull/1077>`_, Mykola Golub) -* rbd,tools: rbd : make option --stripe-unit w/ B/K/M work (`pr#12407 <http://github.com/ceph/ceph/pull/12407>`_, Jianpeng Ma) -* rbd: updated tests to use new rbd default feature set (`pr#842 <http://github.com/ceph/ceph/pull/842>`_, Jason Dillaman) -* rbd: use snap_remove implementation from internal (`pr#12035 <http://github.com/ceph/ceph/pull/12035>`_, Victor Denisov) -* rgw: add default zone name (`issue#7009 <http://tracker.ceph.com/issues/7009>`_, `pr#954 <http://github.com/ceph/ceph/pull/954>`_, Orit Wasserman) -* rgw: add documentation for upgrading with rgw_region_root_pool (`pr#12138 <http://github.com/ceph/ceph/pull/12138>`_, Orit Wasserman) -* rgw: add option to log custom HTTP headers (rgw_log_http_headers) (`pr#7639 <http://github.com/ceph/ceph/pull/7639>`_, Matt Benjamin) -* rgw: add recovery procedure for upgrade to older version of jewel (`issue#17820 <http://tracker.ceph.com/issues/17820>`_, `pr#11827 <http://github.com/ceph/ceph/pull/11827>`_, Orit Wasserman) -* rgw: add rgw_compression_type=random for teuthology testing (`pr#11901 <http://github.com/ceph/ceph/pull/11901>`_, Casey Bodley) -* rgw: add sleep to let the sync agent init (`pr#1136 <http://github.com/ceph/ceph/pull/1136>`_, Orit Wasserman) -* rgw: add suport for creating S3 type subuser of admin rest api (`issue#16682 <http://tracker.ceph.com/issues/16682>`_, `pr#10325 <http://github.com/ceph/ceph/pull/10325>`_, snakeAngel2015) -* rgw: add support for the prefix parameter in account listing of Swift API (`issue#17931 <http://tracker.ceph.com/issues/17931>`_, `pr#12047 <http://github.com/ceph/ceph/pull/12047>`_, Radoslaw Zarzynski) -* rgw: allow fastcgi idle timeout to be adjusted (`pr#230 <http://github.com/ceph/ceph/pull/230>`_, Sage Weil) -* rgw: also approve, passed teuthology (many false positives in several classes) (`issue#17985 <http://tracker.ceph.com/issues/17985>`_, `pr#12224 <http://github.com/ceph/ceph/pull/12224>`_, Yehuda Sadeh, Sage Weil) -* rgw: Anonymous users shouldn't be able to access requester pays buckets. (`issue#17175 <http://tracker.ceph.com/issues/17175>`_, `pr#11719 <http://github.com/ceph/ceph/pull/11719>`_, Zhang Shaowen) -* rgw: aws4: add presigned url bugfix in runtime (`issue#16463 <http://tracker.ceph.com/issues/16463>`_, `pr#10160 <http://github.com/ceph/ceph/pull/10160>`_, Javier M. Mellid) -* rgw: bucket resharding (`issue#17550 <http://tracker.ceph.com/issues/17550>`_, `pr#11230 <http://github.com/ceph/ceph/pull/11230>`_, Yehuda Sadeh) -* rgw:bugfix for deleting objects name beginning and ending with underscores of one bucket using POST method of AWS's js sdk. (`issue#17888 <http://tracker.ceph.com/issues/17888>`_, `pr#11982 <http://github.com/ceph/ceph/pull/11982>`_, root) -* rgw: Class member cookie is not initialized correctly in some coroutine's constructor. (`pr#11673 <http://github.com/ceph/ceph/pull/11673>`_, Zhang Shaowen) -* rgw: clean up RGWShardedOmapCRManager on early return (`issue#17571 <http://tracker.ceph.com/issues/17571>`_, `pr#11505 <http://github.com/ceph/ceph/pull/11505>`_, Casey Bodley) -* rgw: clear data_sync_cr if RGWDataSyncControlCR fails (`issue#17569 <http://tracker.ceph.com/issues/17569>`_, `pr#11506 <http://github.com/ceph/ceph/pull/11506>`_, Casey Bodley) -* rgw: compilation of the ASIO front-end is enabled by default. (`pr#12073 <http://github.com/ceph/ceph/pull/12073>`_, Radoslaw Zarzynski) -* rgw: compression uses optional::emplace instead of in-place factories (`pr#12021 <http://github.com/ceph/ceph/pull/12021>`_, Radoslaw Zarzynski) -* rgw: conform to the standard usage of string::find (`pr#10086 <http://github.com/ceph/ceph/pull/10086>`_, Yan Jun) -* rgw: data_extra_pool is unique per zone (`issue#17025 <http://tracker.ceph.com/issues/17025>`_, `pr#1119 <http://github.com/ceph/ceph/pull/1119>`_, Orit Wasserman) -* rgw: delete entries_index in RGWFetchAllMetaCR (`issue#17812 <http://tracker.ceph.com/issues/17812>`_, `pr#11816 <http://github.com/ceph/ceph/pull/11816>`_, Casey Bodley) -* rgw: do not abort when accept a CORS request with short origin (`pr#12381 <http://github.com/ceph/ceph/pull/12381>`_, LiuYang) -* rgw: do not enable both tcp and uds for fastcgi (`issue#5797 <http://tracker.ceph.com/issues/5797>`_, `pr#479 <http://github.com/ceph/ceph/pull/479>`_, Andrew Schoen) -* rgw: don't error out on empty owner when setting acls (`issue#6892 <http://tracker.ceph.com/issues/6892>`_, `pr#877 <http://github.com/ceph/ceph/pull/877>`_, Loic Dachary, Nathan Cutler) -* rgw: Don't loop forever when reading data from 0 sized segment. (`issue#17692 <http://tracker.ceph.com/issues/17692>`_, `pr#11567 <http://github.com/ceph/ceph/pull/11567>`_, Marcus Watts) -* rgw: dont set CURLOPT_UPLOAD for GET requests (`issue#17822 <http://tracker.ceph.com/issues/17822>`_, `pr#12105 <http://github.com/ceph/ceph/pull/12105>`_, Casey Bodley) -* rgw: don't store empty chains in gc (`issue#17897 <http://tracker.ceph.com/issues/17897>`_, `pr#11969 <http://github.com/ceph/ceph/pull/11969>`_, Yehuda Sadeh) -* rgw: do quota tests on ubuntu (`issue#6382 <http://tracker.ceph.com/issues/6382>`_, `pr#635 <http://github.com/ceph/ceph/pull/635>`_, Sage Weil) -* rgw: dump objects in RGWBucket::check_object_index() (`issue#14589 <http://tracker.ceph.com/issues/14589>`_, `pr#11324 <http://github.com/ceph/ceph/pull/11324>`_, Yehuda Sadeh) -* rgw: dump remaining coroutines when cr deadlock is detected (`pr#11580 <http://github.com/ceph/ceph/pull/11580>`_, Casey Bodley) -* rgw: extract host name from host:port string (`issue#17788 <http://tracker.ceph.com/issues/17788>`_, `pr#11751 <http://github.com/ceph/ceph/pull/11751>`_, Yehuda Sadeh) -* rgw: Fixed problem with PUT with x-amz-copy-source when source object is compressed. (`pr#12253 <http://github.com/ceph/ceph/pull/12253>`_, Adam Kupczyk) -* rgw: fixes for virtual hosting of buckets (`issue#17440 <http://tracker.ceph.com/issues/17440>`_, `issue#15975 <http://tracker.ceph.com/issues/15975>`_, `issue#17136 <http://tracker.ceph.com/issues/17136>`_, `pr#11280 <http://github.com/ceph/ceph/pull/11280>`_, Casey Bodley, Robin H. Johnson) -* rgw: fix etag in multipart complete (`issue#17794 <http://tracker.ceph.com/issues/17794>`_, `issue#6830 <http://tracker.ceph.com/issues/6830>`_, `issue#16129 <http://tracker.ceph.com/issues/16129>`_, `issue#17872 <http://tracker.ceph.com/issues/17872>`_, `pr#1269 <http://github.com/ceph/ceph/pull/1269>`_, Casey Bodley, Orit Wasserman) -* rgw: fix for bucket delete racing with mdlog sync (`issue#17698 <http://tracker.ceph.com/issues/17698>`_, `pr#11648 <http://github.com/ceph/ceph/pull/11648>`_, Casey Bodley) -* rgw: fix for passing temporary in InitBucketSyncStatus (`issue#17661 <http://tracker.ceph.com/issues/17661>`_, `pr#11594 <http://github.com/ceph/ceph/pull/11594>`_, Casey Bodley) -* rgw: fix for unsafe change of rgw_zonegroup (`issue#17962 <http://tracker.ceph.com/issues/17962>`_, `pr#12075 <http://github.com/ceph/ceph/pull/12075>`_, Casey Bodley) -* rgw: fix indentation for cache_pools (`issue#8295 <http://tracker.ceph.com/issues/8295>`_, `pr#251 <http://github.com/ceph/ceph/pull/251>`_, Sage Weil) -* rgw: fix missing master zone for a single zone zonegroup (`issue#17364 <http://tracker.ceph.com/issues/17364>`_, `pr#11965 <http://github.com/ceph/ceph/pull/11965>`_, Orit Wasserman) -* rgw: fix osd crashes when execute "radosgw-admin bi list --max-entries=1" command (`issue#17745 <http://tracker.ceph.com/issues/17745>`_, `pr#11697 <http://github.com/ceph/ceph/pull/11697>`_, weiqiaomiao) -* rgw: fix put_acls for objects starting and ending with underscore (`issue#17625 <http://tracker.ceph.com/issues/17625>`_, `pr#11566 <http://github.com/ceph/ceph/pull/11566>`_, Orit Wasserman) -* rgw: fix RGWSimpleRadosLockCR set_description() (`pr#11961 <http://github.com/ceph/ceph/pull/11961>`_, Tianshan Qu) -* rgw: fix the field 'total_time' of log entry in log show opt (`issue#17598 <http://tracker.ceph.com/issues/17598>`_, `pr#11425 <http://github.com/ceph/ceph/pull/11425>`_, weiqiaomiao) -* rgw: fix uncompressed object size deduction in RGWRados::copy_obj_data. (`issue#17803 <http://tracker.ceph.com/issues/17803>`_, `pr#11794 <http://github.com/ceph/ceph/pull/11794>`_, Radoslaw Zarzynski) -* rgw: frontend subsystem rework (`pr#10767 <http://github.com/ceph/ceph/pull/10767>`_, Radoslaw Zarzynski, Casey Bodley, Matt Benjamin) -* rgw: ftw (`issue#17888 <http://tracker.ceph.com/issues/17888>`_, `pr#12262 <http://github.com/ceph/ceph/pull/12262>`_, Casey Bodley) -* rgw: get_system_obj does not use result of get_system_obj_state (`issue#17580 <http://tracker.ceph.com/issues/17580>`_, `pr#11444 <http://github.com/ceph/ceph/pull/11444>`_, Casey Bodley) -* rgw: get_zonegroup() uses "default" zonegroup if empty (`issue#17372 <http://tracker.ceph.com/issues/17372>`_, `pr#11207 <http://github.com/ceph/ceph/pull/11207>`_, Yehuda Sadeh) -* rgw: handle empty POST condition (`issue#17635 <http://tracker.ceph.com/issues/17635>`_, `pr#11581 <http://github.com/ceph/ceph/pull/11581>`_, Yehuda Sadeh) -* rgw: handle Swift auth errors in a way compatible with new Tempests. (`issue#16590 <http://tracker.ceph.com/issues/16590>`_, `pr#10021 <http://github.com/ceph/ceph/pull/10021>`_, Radoslaw Zarzynski) -* rgw: json encode/decode index_type, allow modification (`issue#17755 <http://tracker.ceph.com/issues/17755>`_, `pr#11707 <http://github.com/ceph/ceph/pull/11707>`_, Yehuda Sadeh) -* rgw: loses realm/period/zonegroup/zone data: period overwritten if somewhere in the cluster is still running Hammer (`issue#17371 <http://tracker.ceph.com/issues/17371>`_, `pr#11426 <http://github.com/ceph/ceph/pull/11426>`_, Orit Wasserman) -* rgw: make RGWLocalAuthApplier::is_admin_of() aware about system users. (`issue#18106 <http://tracker.ceph.com/issues/18106>`_, `pr#12283 <http://github.com/ceph/ceph/pull/12283>`_, Radoslaw Zarzynski) -* rgw: metadata sync info should be shown at master zone of slave zoneg… (`issue#18091 <http://tracker.ceph.com/issues/18091>`_, `pr#12187 <http://github.com/ceph/ceph/pull/12187>`_, Jing Wenjun) -* rgw: minor cleanup (`pr#10057 <http://github.com/ceph/ceph/pull/10057>`_, Yan Jun) -* rgw: move compression config into zone placement (`pr#12113 <http://github.com/ceph/ceph/pull/12113>`_, Casey Bodley) -* rgw: move xfs to a seperate directory (`pr#969 <http://github.com/ceph/ceph/pull/969>`_, Orit Wasserman) -* rgw: multipart upload copy (`issue#12790 <http://tracker.ceph.com/issues/12790>`_, `pr#11269 <http://github.com/ceph/ceph/pull/11269>`_, Yehuda Sadeh, Javier M. Mellid) -* rgw: need to close_section in lc list op (`pr#12232 <http://github.com/ceph/ceph/pull/12232>`_, weiqiaomiao) -* rgw: policy acl format should be xml (`pr#946 <http://github.com/ceph/ceph/pull/946>`_, Orit Wasserman) -* rgw: radosgw-admin: more on placement configuration (`issue#18078 <http://tracker.ceph.com/issues/18078>`_, `pr#12242 <http://github.com/ceph/ceph/pull/12242>`_, Casey Bodley) -* rgw: region conversion respects pre-existing rgw_region_root_pool (`issue#17963 <http://tracker.ceph.com/issues/17963>`_, `pr#12076 <http://github.com/ceph/ceph/pull/12076>`_, Casey Bodley) -* rgw: remove a redundant judgement when listng objects. (`pr#10849 <http://github.com/ceph/ceph/pull/10849>`_, zhangshaowen) -* rgw: remove circular reference in RGWAsyncRadosRequest (`issue#17793 <http://tracker.ceph.com/issues/17793>`_, `issue#17792 <http://tracker.ceph.com/issues/17792>`_, `pr#11815 <http://github.com/ceph/ceph/pull/11815>`_, Casey Bodley) -* rgw: remove suggestion to upgrade libcurl (`pr#11630 <http://github.com/ceph/ceph/pull/11630>`_, Casey Bodley) -* rgw: remove unused variable "ostr" in rgw_b64.h and fix the comment (`pr#11329 <http://github.com/ceph/ceph/pull/11329>`_, Weibing Zhang) -* rgw: Replacing '+' with "%20" in canonical uri for s3 v4 auth. (`issue#17076 <http://tracker.ceph.com/issues/17076>`_, `pr#10919 <http://github.com/ceph/ceph/pull/10919>`_, Pritha Srivastava) -* rgw: revert unintentional change to civetweb (`pr#12004 <http://github.com/ceph/ceph/pull/12004>`_, Bassam Tabbara) -* rgw: rgw-admin: new commands to control placement (`issue#18078 <http://tracker.ceph.com/issues/18078>`_, `pr#12230 <http://github.com/ceph/ceph/pull/12230>`_, Yehuda Sadeh) -* rgw: RGWBucketSyncStatusManager uses existing async_rados (`issue#18083 <http://tracker.ceph.com/issues/18083>`_, `pr#12229 <http://github.com/ceph/ceph/pull/12229>`_, Casey Bodley) -* rgw: rgw_file: apply missed base64 try-catch (`issue#17663 <http://tracker.ceph.com/issues/17663>`_, `pr#11671 <http://github.com/ceph/ceph/pull/11671>`_, Matt Benjamin) -* rgw: RGWHTTPArgs::get_str() - return argument string that was set. (`pr#10672 <http://github.com/ceph/ceph/pull/10672>`_, Marcus Watts) -* rgw: rgw multisite: fix the increamtal bucket sync init (`issue#17624 <http://tracker.ceph.com/issues/17624>`_, `pr#11553 <http://github.com/ceph/ceph/pull/11553>`_, Zengran Zhang) -* rgw: rgw multisite: use a rados lock to coordinate data log trimming (`pr#10546 <http://github.com/ceph/ceph/pull/10546>`_, Casey Bodley) -* rgw: RGW Python bindings - use explicit array (`pr#11831 <http://github.com/ceph/ceph/pull/11831>`_, Daniel Gryniewicz) -* rgw: rgw_rados.cc fix shard_num format for snprintf (`pr#11493 <http://github.com/ceph/ceph/pull/11493>`_, Weibing Zhang) -* rgw: rgw/rgw_file.cc: Add compat.h to allow CLOCK_MONOTONE (`pr#12309 <http://github.com/ceph/ceph/pull/12309>`_, Willem Jan Withagen) -* rgw: RGWSimpleRadosReadCR tolerates empty reads (`issue#17568 <http://tracker.ceph.com/issues/17568>`_, `pr#11504 <http://github.com/ceph/ceph/pull/11504>`_, Casey Bodley) -* rgw: [RGW] Wip rgw compression (`pr#11494 <http://github.com/ceph/ceph/pull/11494>`_, Alyona Kiseleva, Adam Kupczyk, Casey Bodley) -* rgw: set duration for lifecycle lease (`issue#17965 <http://tracker.ceph.com/issues/17965>`_, `pr#12231 <http://github.com/ceph/ceph/pull/12231>`_, Yehuda Sadeh) -* rgw: should assign 'olh_bl" to state.attrset[RGW_ATTR_OLH_ID_TAG] instead of 'bl' (`pr#10239 <http://github.com/ceph/ceph/pull/10239>`_, weiqiaomiao) -* rgw: skip empty http args in method parse() to avoid extra effort (`pr#11989 <http://github.com/ceph/ceph/pull/11989>`_, Guo Zhandong) -* rgw: split osd's in 2 nodes (`issue#15612 <http://tracker.ceph.com/issues/15612>`_, `pr#1019 <http://github.com/ceph/ceph/pull/1019>`_, Vasu Kulkarni) -* rgw: support for x-robots-tag header (`issue#17790 <http://tracker.ceph.com/issues/17790>`_, `pr#11753 <http://github.com/ceph/ceph/pull/11753>`_, Yehuda Sadeh) -* rgw: sync modules, metadata search (`pr#10731 <http://github.com/ceph/ceph/pull/10731>`_, Yehuda Sadeh) -* rgw: Update version of civetweb to 1.8 (`pr#11343 <http://github.com/ceph/ceph/pull/11343>`_, Marcus Watts) -* rgw: use civetweb if no frontend was configured (`pr#958 <http://github.com/ceph/ceph/pull/958>`_, Orit Wasserman) -* rgw: use explicit flag to cancel RGWCoroutinesManager::run() (`issue#17465 <http://tracker.ceph.com/issues/17465>`_, `pr#12452 <http://github.com/ceph/ceph/pull/12452>`_, Casey Bodley) -* rgw: valgrind fixes for kraken (`issue#18414 <http://tracker.ceph.com/issues/18414>`_, `issue#18407 <http://tracker.ceph.com/issues/18407>`_, `issue#18412 <http://tracker.ceph.com/issues/18412>`_, `issue#18300 <http://tracker.ceph.com/issues/18300>`_, `pr#12949 <http://github.com/ceph/ceph/pull/12949>`_, Casey Bodley) -* rgw: verified that failed check is in osd-scrub-repair.sh (`issue#17850 <http://tracker.ceph.com/issues/17850>`_, `pr#11881 <http://github.com/ceph/ceph/pull/11881>`_, Matt Benjamin) -* rgw: we don't support btrfs any more (`pr#1132 <http://github.com/ceph/ceph/pull/1132>`_, Orit Wasserman) -* rgw: Wip rgwfile pybind (`pr#11624 <http://github.com/ceph/ceph/pull/11624>`_, Haomai Wang) -* tests,bluestore: os/bluestore: add UT for an estimation of Onode in-memory size (`pr#12532 <http://github.com/ceph/ceph/pull/12532>`_, Igor Fedotov) -* tests,bluestore: os/test/store_test: fix legacy bluestore cache settings application (`pr#11915 <http://github.com/ceph/ceph/pull/11915>`_, Igor Fedotov) -* tests: ceph-disk: force debug monc = 0 (`issue#17607 <http://tracker.ceph.com/issues/17607>`_, `pr#11534 <http://github.com/ceph/ceph/pull/11534>`_, Loic Dachary) -* tests: ceph_objectstore_tool.py: Don't use btrfs on FreeBSD (`pr#10507 <http://github.com/ceph/ceph/pull/10507>`_, Willem Jan Withagen) -* tests: ceph_test_objectstore: fix Rename test (`pr#12261 <http://github.com/ceph/ceph/pull/12261>`_, Sage Weil) -* tests: check hostname --fqdn sanity before running make check (`issue#18134 <http://tracker.ceph.com/issues/18134>`_, `pr#12297 <http://github.com/ceph/ceph/pull/12297>`_, Nathan Cutler) -* tests,cleanup,rbd: test/librbd: in test_notify set object-map and fast-diff features by default (`pr#11821 <http://github.com/ceph/ceph/pull/11821>`_, Mykola Golub) -* tests,cleanup: test_bloom_filter.cc: Fix a mismatch for the random_seed parameter (`pr#11774 <http://github.com/ceph/ceph/pull/11774>`_, Willem Jan Withagen) -* tests,cleanup: test/osd/osd-fast-mark-down.sh: remove unnecessary teardown() calls (`pr#12101 <http://github.com/ceph/ceph/pull/12101>`_, Kefu Chai) -* tests,cleanup: test/osd-scrub-repair.sh: use repair() instead of "ceph pg repair" (`pr#12036 <http://github.com/ceph/ceph/pull/12036>`_, Kefu Chai) -* tests,cleanup: test/rados: remove unused bufferlist variable (`pr#10221 <http://github.com/ceph/ceph/pull/10221>`_, Yan Jun) -* tests,common: test: add perf-reset test in test/perf_counters.cc (`pr#8948 <http://github.com/ceph/ceph/pull/8948>`_, wangsongbo) -* tests: disable failing tests (`issue#17561 <http://tracker.ceph.com/issues/17561>`_, `issue#17757 <http://tracker.ceph.com/issues/17757>`_, `pr#11714 <http://github.com/ceph/ceph/pull/11714>`_, Loic Dachary) -* tests: disable the echo when running get_timeout_delays() (`pr#12180 <http://github.com/ceph/ceph/pull/12180>`_, Kefu Chai) -* tests: do not use memstore.test_temp_dir in two tests (`issue#17743 <http://tracker.ceph.com/issues/17743>`_, `pr#12281 <http://github.com/ceph/ceph/pull/12281>`_, Loic Dachary) -* tests: erasure-code: add k=2, m=2 for isa & jerasure (`issue#18188 <http://tracker.ceph.com/issues/18188>`_, `pr#12383 <http://github.com/ceph/ceph/pull/12383>`_, Loic Dachary) -* tests: facilitate background process debug in ceph-helpers.sh (`issue#17830 <http://tracker.ceph.com/issues/17830>`_, `pr#12183 <http://github.com/ceph/ceph/pull/12183>`_, Loic Dachary) -* tests: fix ceph-helpers.sh wait_for_clean delays (`issue#17830 <http://tracker.ceph.com/issues/17830>`_, `pr#12095 <http://github.com/ceph/ceph/pull/12095>`_, Loic Dachary) -* tests: fix osd-scrub-repair.sh (`pr#12072 <http://github.com/ceph/ceph/pull/12072>`_, David Zafman) -* tests: Fix racey test by setting noout flag (tracker 17757) (`issue#17757 <http://tracker.ceph.com/issues/17757>`_, `pr#11715 <http://github.com/ceph/ceph/pull/11715>`_, David Zafman) -* tests: merge ceph-qa-suite -* tests: Minor clean-ups (`pr#12048 <http://github.com/ceph/ceph/pull/12048>`_, David Zafman) -* tests: minor make check cleanup (`pr#12146 <http://github.com/ceph/ceph/pull/12146>`_, David Zafman) -* tests: no python3 tests for ceph-disk (`issue#17923 <http://tracker.ceph.com/issues/17923>`_, `pr#12025 <http://github.com/ceph/ceph/pull/12025>`_, Loic Dachary) -* tests: osd-crush.sh must retry crush dump (`issue#17919 <http://tracker.ceph.com/issues/17919>`_, `pr#12016 <http://github.com/ceph/ceph/pull/12016>`_, Loic Dachary) -* tests: osd-scrub-repair.sh abort if add_something fails (`pr#12172 <http://github.com/ceph/ceph/pull/12172>`_, Loic Dachary) -* tests: os/memstore: fix a mem leak in MemStore::Collection::create_object() (`pr#12201 <http://github.com/ceph/ceph/pull/12201>`_, Kefu Chai) -* tests: os/memstore, os/filestore: fix store_test's to satisfy rm_coll behavi… (`pr#11558 <http://github.com/ceph/ceph/pull/11558>`_, Igor Fedotov) -* tests: paxos fixes (`issue#11913 <http://tracker.ceph.com/issues/11913>`_, `pr#457 <http://github.com/ceph/ceph/pull/457>`_, John Spray) -* tests: pin flake8 to avoid behavior changes (`issue#17898 <http://tracker.ceph.com/issues/17898>`_, `pr#11971 <http://github.com/ceph/ceph/pull/11971>`_, Loic Dachary) -* tests: qa: fixed script to schedule rados and other suites with --subset option (`pr#12587 <http://github.com/ceph/ceph/pull/12587>`_, Yuri Weinstein) -* tests: qa/tasks/admin_socket: subst in repo name (`pr#12508 <http://github.com/ceph/ceph/pull/12508>`_, Sage Weil) -* tests: qa/tasks/ceph_deploy: use dev option instead of dev-commit (`pr#12514 <http://github.com/ceph/ceph/pull/12514>`_, Vasu Kulkarni) -* tests: qa/tasks/osd_backfill.py: wait for osd.[12] to start (`issue#18303 <http://tracker.ceph.com/issues/18303>`_, `pr#12577 <http://github.com/ceph/ceph/pull/12577>`_, Sage Weil) -* tests: qa/workunits/cephtool/test.sh: FreeBSD has no distro. (`pr#11702 <http://github.com/ceph/ceph/pull/11702>`_, Willem Jan Withagen) -* tests: qa/workunits: include extension for nose tests (`pr#12572 <http://github.com/ceph/ceph/pull/12572>`_, Sage Weil) -* tests: qa/workunits/rados/test_envlibrados_for_rocksdb: force librados-dev install (`pr#11941 <http://github.com/ceph/ceph/pull/11941>`_, Sage Weil) -* tests,rbd: qa/workunits/rbd: fix (`issue#18271 <http://tracker.ceph.com/issues/18271>`_, `pr#12511 <http://github.com/ceph/ceph/pull/12511>`_, Sage Weil) -* tests,rbd: qa/workunits/rbd: removed qemu-iotest case 077 (`issue#10773 <http://tracker.ceph.com/issues/10773>`_, `pr#12366 <http://github.com/ceph/ceph/pull/12366>`_, Jason Dillaman) -* tests,rbd: qa/workunits/rbd: simplify running nbd test under build env (`pr#11781 <http://github.com/ceph/ceph/pull/11781>`_, Mykola Golub) -* tests,rbd: qa/workunits/rbd: use image id when probing for image presence (`issue#18048 <http://tracker.ceph.com/issues/18048>`_, `pr#12195 <http://github.com/ceph/ceph/pull/12195>`_, Mykola Golub) -* tests,rbd: qa/workunits/rbd: use more recent qemu-iotests that support Xenial (`issue#18149 <http://tracker.ceph.com/issues/18149>`_, `pr#12371 <http://github.com/ceph/ceph/pull/12371>`_, Jason Dillaman) -* tests,rbd: rbd-mirror: fix gmock warnings in bootstrap request unit tests (`issue#18156 <http://tracker.ceph.com/issues/18156>`_, `pr#12344 <http://github.com/ceph/ceph/pull/12344>`_, Mykola Golub) -* tests,rbd: rbd-mirror: improve resiliency of stress test case (`issue#17416 <http://tracker.ceph.com/issues/17416>`_, `pr#11326 <http://github.com/ceph/ceph/pull/11326>`_, Jason Dillaman) -* tests,rbd: test: new librbd discard after write test case (`pr#11645 <http://github.com/ceph/ceph/pull/11645>`_, Jason Dillaman) -* tests,rbd: test: skip TestLibRBD.DiscardAfterWrite if skip partial discard enabled (`issue#17750 <http://tracker.ceph.com/issues/17750>`_, `pr#11703 <http://github.com/ceph/ceph/pull/11703>`_, Jason Dillaman) -* tests,rbd: test: TestJournalReplay test cases need to wait for event commit (`issue#17566 <http://tracker.ceph.com/issues/17566>`_, `pr#11480 <http://github.com/ceph/ceph/pull/11480>`_, Jason Dillaman) -* tests: remove TestPGLog EXPECT_DEATH tests (`issue#18030 <http://tracker.ceph.com/issues/18030>`_, `pr#12361 <http://github.com/ceph/ceph/pull/12361>`_, Loic Dachary) -* tests: save 9 characters for asok paths (`issue#16014 <http://tracker.ceph.com/issues/16014>`_, `pr#12066 <http://github.com/ceph/ceph/pull/12066>`_, Loic Dachary) -* tests: sync ceph-erasure-code-corpus for using 'arch' not 'uname -p' (`pr#12024 <http://github.com/ceph/ceph/pull/12024>`_, Kefu Chai) -* tests: test/ceph_crypto: do not read ceph.conf in global_init() (`issue#18128 <http://tracker.ceph.com/issues/18128>`_, `pr#12318 <http://github.com/ceph/ceph/pull/12318>`_, Kefu Chai) -* tests: test: ceph-objectstore-tool: should import platform before using it (`pr#12038 <http://github.com/ceph/ceph/pull/12038>`_, Kefu Chai) -* tests: test/ceph_test_msgr: do not use Message::middle for holding transient… (`issue#17728 <http://tracker.ceph.com/issues/17728>`_, `pr#11680 <http://github.com/ceph/ceph/pull/11680>`_, Kefu Chai) -* tests: test: disable osd-scrub-repair and test-erasure-eio (`issue#17830 <http://tracker.ceph.com/issues/17830>`_, `pr#12058 <http://github.com/ceph/ceph/pull/12058>`_, Loic Dachary, Dan Mick) -* tests: test: disable osd-scrub-repair and test-erasure-eio (`pr#11979 <http://github.com/ceph/ceph/pull/11979>`_, Dan Mick) -* tests: test: Don't write to a poolid that this test might not have created (`pr#12378 <http://github.com/ceph/ceph/pull/12378>`_, David Zafman) -* tests: test: enable unittest_dns_resolve (`pr#12209 <http://github.com/ceph/ceph/pull/12209>`_, Kefu Chai) -* tests: test/encoding/readable.sh: fix shell script warning (`pr#11527 <http://github.com/ceph/ceph/pull/11527>`_, Willem Jan Withagen) -* tests: TestErasureCodePluginJerasure must stop the log thread (`issue#17561 <http://tracker.ceph.com/issues/17561>`_, `pr#11721 <http://github.com/ceph/ceph/pull/11721>`_, Loic Dachary) -* tests: test: fix test-erasure-eio and osd-scrub-repair races (17830) (`pr#11926 <http://github.com/ceph/ceph/pull/11926>`_, David Zafman) -* tests: test/osd-fast-mark-down.sh: wrong assumption on first subtest (`pr#12123 <http://github.com/ceph/ceph/pull/12123>`_, Piotr Dałek) -* tests: test/osd/osd-fast-mark-down.sh: introduce large timeout (`issue#17918 <http://tracker.ceph.com/issues/17918>`_, `pr#12019 <http://github.com/ceph/ceph/pull/12019>`_, Piotr Dałek) -* tests: test/osd-scrub-repair.sh: Use test case specific object names to help… (`pr#11449 <http://github.com/ceph/ceph/pull/11449>`_, David Zafman) -* tests: test/store_test: fix errors on the whole test suite run caused by the… (`pr#11427 <http://github.com/ceph/ceph/pull/11427>`_, Igor Fedotov) -* tests: test_subman.sh: Don't use --tmpdir (`pr#11384 <http://github.com/ceph/ceph/pull/11384>`_, Willem Jan Withagen) -* tests: test: test-erasure-eio.sh fix recovery testing and enable it (`pr#12170 <http://github.com/ceph/ceph/pull/12170>`_, David Zafman) -* tests: The default changed to disallow pool delete as of #11665; the tests assume it's allowed. (`pr#11897 <http://github.com/ceph/ceph/pull/11897>`_, Sage Weil) -* tests: Turn off tests again due to Jenkins failures (`pr#12217 <http://github.com/ceph/ceph/pull/12217>`_, David Zafman) -* tests: unittest_throttle avoid ASSERT_DEATH (`issue#18036 <http://tracker.ceph.com/issues/18036>`_, `pr#12393 <http://github.com/ceph/ceph/pull/12393>`_, Loic Dachary) -* tests: update rbd/singleton/all/formatted-output.yaml to support ceph-ci (`issue#18440 <http://tracker.ceph.com/issues/18440>`_, `pr#12823 <http://github.com/ceph/ceph/pull/12823>`_, Nathan Cutler) -* tests: use shorter directories for tests (`issue#16014 <http://tracker.ceph.com/issues/16014>`_, `pr#12046 <http://github.com/ceph/ceph/pull/12046>`_, Loic Dachary) -* tests: vstart.sh: fix bashism in the script (`pr#11889 <http://github.com/ceph/ceph/pull/11889>`_, Mykola Golub) -* tests: workunits/ceph-helpers.sh: FreeBSD returns a different errorstring. (`pr#12005 <http://github.com/ceph/ceph/pull/12005>`_, Willem Jan Withagen) -* tools: Adding ceph-lazy tool (`pr#11055 <http://github.com/ceph/ceph/pull/11055>`_, gcharot) -* tools: ceph-create-keys should not try forever to do things (`issue#17753 <http://tracker.ceph.com/issues/17753>`_, `issue#12649 <http://tracker.ceph.com/issues/12649>`_, `issue#16255 <http://tracker.ceph.com/issues/16255>`_, `pr#11749 <http://github.com/ceph/ceph/pull/11749>`_, Alfredo Deza) -* tools: ceph_detect_init: add support for Alpine (`pr#8316 <http://github.com/ceph/ceph/pull/8316>`_, John Coyle) -* tools: ceph-disk: fix flake8 errors (`issue#17898 <http://tracker.ceph.com/issues/17898>`_, `pr#11973 <http://github.com/ceph/ceph/pull/11973>`_, Ken Dreyer) -* tools: ceph-disk: prevent unnecessary tracebacks from subprocess.check_call (`issue#16125 <http://tracker.ceph.com/issues/16125>`_, `pr#12414 <http://github.com/ceph/ceph/pull/12414>`_, Alfredo Deza) -* tools: ceph-post-file: single command to upload a file to cephdrop (`pr#505 <http://github.com/ceph/ceph/pull/505>`_, Dan Mick, Travis Rhoden) -* tools: cleanup phase of cephfs-data-scan (`pr#12337 <http://github.com/ceph/ceph/pull/12337>`_, Vishal Kanaujia) -* tools: osdmaptool: additional tests (`pr#1196 <http://github.com/ceph/ceph/pull/1196>`_, Sage Weil) -* tools: osdmaptool: fix divide by zero error (`pr#12561 <http://github.com/ceph/ceph/pull/12561>`_, Yunchuan Wen) -* tools: rados: fix segfaults when run without --pool (`issue#17684 <http://tracker.ceph.com/issues/17684>`_, `pr#11633 <http://github.com/ceph/ceph/pull/11633>`_, David Disseldorp) -* tools: rados: optionally support reading omap key from file (`issue#18123 <http://tracker.ceph.com/issues/18123>`_, `pr#12286 <http://github.com/ceph/ceph/pull/12286>`_, Jason Dillaman) -* tools: script/run-coverity: update (`pr#12162 <http://github.com/ceph/ceph/pull/12162>`_, Sage Weil) -* tools: script/sepia_bt.sh: a script to prepare for debugging on teuthology@sepia (`pr#12012 <http://github.com/ceph/ceph/pull/12012>`_, Kefu Chai) -* tools: src/vstart.sh: Only execute btrfs if it is available (`pr#11683 <http://github.com/ceph/ceph/pull/11683>`_, Willem Jan Withagen) -* tools: tools/ceph-monstore-update-crush.sh: FreeBSD getopt is not compatible… (`pr#11525 <http://github.com/ceph/ceph/pull/11525>`_, Willem Jan Withagen) - - - -v11.0.2 Kraken -============== - -This development checkpoint release includes a lot of changes and improvements -to Kraken. This is the first release introducing ceph-mgr, a new daemon which -provides additional monitoring & interfaces to external monitoring/management -systems. There are also many improvements to bluestore, RGW introduces sync -modules, copy part for multipart uploads and metadata search via elastic search -as a tech preview. - -Notable Changes ---------------- - -* bluestore: os/bluestore: misc fixes (`pr#10953 <http://github.com/ceph/ceph/pull/10953>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: do not op_file_update deleted files (`pr#10686 <http://github.com/ceph/ceph/pull/10686>`_, Sage Weil) -* bluestore: bluestore/BitAllocator: Fix deadlock with musl libc (`pr#10634 <http://github.com/ceph/ceph/pull/10634>`_, John Coyle) -* bluestore: bluestore/BlueFS: revert direct IO for WRITER_WAL (`pr#11059 <http://github.com/ceph/ceph/pull/11059>`_, Mark Nelson) -* bluestore: ceph-disk: support creating block.db and block.wal with customized size for bluestore (`pr#10135 <http://github.com/ceph/ceph/pull/10135>`_, Zhi Zhang) -* bluestore: compressor/zlib: switch to raw deflate (`pr#11122 <http://github.com/ceph/ceph/pull/11122>`_, Piotr Dałek) -* bluestore: do not use freelist to track bluefs_extents (`pr#10698 <http://github.com/ceph/ceph/pull/10698>`_, Sage Weil) -* bluestore: initialize csum_order properly (`pr#10728 <http://github.com/ceph/ceph/pull/10728>`_, xie xingguo) -* bluestore: kv/rocksdb: dump transactions on error (`pr#11042 <http://github.com/ceph/ceph/pull/11042>`_, Somnath Roy) -* bluestore: kv: In memory keyvalue db implementation (`pr#9933 <http://github.com/ceph/ceph/pull/9933>`_, Ramesh Chander) -* bluestore: os/bluestore/BitAllocator: batch is_allocated bit checks (`pr#10704 <http://github.com/ceph/ceph/pull/10704>`_, Ramesh Chander) -* bluestore: os/bluestore/BlueFS: For logs of rocksdb & bluefs only use directio. (`pr#11012 <http://github.com/ceph/ceph/pull/11012>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: async compaction (`pr#10717 <http://github.com/ceph/ceph/pull/10717>`_, Varada Kari, Sage Weil) -* bluestore: os/bluestore/BlueFS: do not hold internal lock while waiting for IO (`pr#9898 <http://github.com/ceph/ceph/pull/9898>`_, Varada Kari, Sage Weil) -* bluestore: os/bluestore/BlueFS: do not start racing async compaction (`pr#11010 <http://github.com/ceph/ceph/pull/11010>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: don't inc l_bluefs_files_written_wal if overwrite. (`pr#10143 <http://github.com/ceph/ceph/pull/10143>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: factor unflushed log into runway calculation (`pr#10966 <http://github.com/ceph/ceph/pull/10966>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: fix async compaction logging bug (`pr#10964 <http://github.com/ceph/ceph/pull/10964>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: log dirty files at sync time (`pr#11108 <http://github.com/ceph/ceph/pull/11108>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: only extend extent on same bdev (`pr#11023 <http://github.com/ceph/ceph/pull/11023>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: prevent concurrent async compaction (`pr#11095 <http://github.com/ceph/ceph/pull/11095>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: release completed aios (`pr#11268 <http://github.com/ceph/ceph/pull/11268>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: use StupidAllocator; fix async compaction bug (`pr#11087 <http://github.com/ceph/ceph/pull/11087>`_, Sage Weil) -* bluestore: os/bluestore/bluefs: add file refs check (`pr#10863 <http://github.com/ceph/ceph/pull/10863>`_, xie xingguo) -* bluestore: os/bluestore/bluefs: use map to track dirty files (`pr#10923 <http://github.com/ceph/ceph/pull/10923>`_, xie xingguo) -* bluestore: os/bluestore/bluefs_types: fix extent operator<< (`pr#10685 <http://github.com/ceph/ceph/pull/10685>`_, Sage Weil) -* bluestore: os/bluestore/bluestore_types: uint64_t for ref_map (`pr#11267 <http://github.com/ceph/ceph/pull/11267>`_, Sage Weil) -* bluestore: os/bluestore: Hint based allocation in bitmap Allocator (`pr#10978 <http://github.com/ceph/ceph/pull/10978>`_, Ramesh Chander) -* bluestore: os/bluestore: Remove bit alloc Woverloaded-virtual warnings (`pr#10082 <http://github.com/ceph/ceph/pull/10082>`_, Ramesh Chander) -* bluestore: os/bluestore: a few cleanups (`pr#11192 <http://github.com/ceph/ceph/pull/11192>`_, xie xingguo) -* bluestore: os/bluestore: a few fixes about the global csum setting (`pr#11195 <http://github.com/ceph/ceph/pull/11195>`_, xie xingguo) -* bluestore: os/bluestore: add assert to compress_extent_map (`pr#11240 <http://github.com/ceph/ceph/pull/11240>`_, Sage Weil) -* bluestore: os/bluestore: add cache-related stats (`pr#10961 <http://github.com/ceph/ceph/pull/10961>`_, xie xingguo) -* bluestore: os/bluestore: add checks and kill unreachable code (`pr#11077 <http://github.com/ceph/ceph/pull/11077>`_, xie xingguo) -* bluestore: os/bluestore: add error injection (`pr#11151 <http://github.com/ceph/ceph/pull/11151>`_, Sage Weil) -* bluestore: os/bluestore: add max blob size; fix compressed min blob size logic (`pr#11239 <http://github.com/ceph/ceph/pull/11239>`_, Sage Weil) -* bluestore: os/bluestore: add multiple finishers to bluestore (`pr#10780 <http://github.com/ceph/ceph/pull/10780>`_, Ilsoo Byun) -* bluestore: os/bluestore: add perf counters for compression effectiveness and space utilization measurements (`pr#10449 <http://github.com/ceph/ceph/pull/10449>`_, Igor Fedotov) -* bluestore: os/bluestore: apply "small encoding" for onode_t::extents map (`pr#10018 <http://github.com/ceph/ceph/pull/10018>`_, Igor Fedotov) -* bluestore: os/bluestore: avoid blob_t reencode when unchanged (`pr#10768 <http://github.com/ceph/ceph/pull/10768>`_, Sage Weil) -* bluestore: os/bluestore: binary search specified shard (`pr#11245 <http://github.com/ceph/ceph/pull/11245>`_, xie xingguo) -* bluestore: os/bluestore: change algorithm of compression header from string to int (`pr#10137 <http://github.com/ceph/ceph/pull/10137>`_, xie xingguo) -* bluestore: os/bluestore: compaction fixes (`pr#11279 <http://github.com/ceph/ceph/pull/11279>`_, Sage Weil) -* bluestore: os/bluestore: drop redundant call of get_blob (`pr#11275 <http://github.com/ceph/ceph/pull/11275>`_, xie xingguo) -* bluestore: os/bluestore: drop unreferenced spanning blobs (`pr#11212 <http://github.com/ceph/ceph/pull/11212>`_, Sage Weil) -* bluestore: os/bluestore: fix a few leaks (`pr#11068 <http://github.com/ceph/ceph/pull/11068>`_, Sage Weil) -* bluestore: os/bluestore: fix a few memory utilization leaks and wasters (`pr#11011 <http://github.com/ceph/ceph/pull/11011>`_, Sage Weil) -* bluestore: os/bluestore: fix crash in decode_some() (`pr#11312 <http://github.com/ceph/ceph/pull/11312>`_, Sage Weil) -* bluestore: os/bluestore: fix decoding hash of bnode (`pr#10773 <http://github.com/ceph/ceph/pull/10773>`_, xie xingguo) -* bluestore: os/bluestore: fix fsck() won't catch stray shard sometimes (`pr#11219 <http://github.com/ceph/ceph/pull/11219>`_, xie xingguo) -* bluestore: os/bluestore: fix gc when blob extends past eof (`pr#11282 <http://github.com/ceph/ceph/pull/11282>`_, Sage Weil) -* bluestore: os/bluestore: fix improper local var variable in collection_list meth… (`pr#10680 <http://github.com/ceph/ceph/pull/10680>`_, Igor Fedotov) -* bluestore: os/bluestore: fix incorrect pool decoding of bnode (`pr#10117 <http://github.com/ceph/ceph/pull/10117>`_, xie xingguo) -* bluestore: os/bluestore: fix leak of result-checking of _fsck_check_extents (`pr#11040 <http://github.com/ceph/ceph/pull/11040>`_, xie xingguo) -* bluestore: os/bluestore: fix leaks in our use of rocksdb (`pr#11250 <http://github.com/ceph/ceph/pull/11250>`_, Sage Weil) -* bluestore: os/bluestore: fix memory leak during bit_alloc testing (`pr#9935 <http://github.com/ceph/ceph/pull/9935>`_, xie xingguo) -* bluestore: os/bluestore: fix offset bug in _do_write_small. (`pr#11030 <http://github.com/ceph/ceph/pull/11030>`_, amoxic) -* bluestore: os/bluestore: fix onode cache addition race (`pr#11300 <http://github.com/ceph/ceph/pull/11300>`_, Sage Weil) -* bluestore: os/bluestore: fix potential access violation (`pr#10362 <http://github.com/ceph/ceph/pull/10362>`_, xie xingguo) -* bluestore: os/bluestore: fix potential access violation during rename (`pr#11033 <http://github.com/ceph/ceph/pull/11033>`_, xie xingguo) -* bluestore: os/bluestore: fix shard_info::dump() (`pr#11061 <http://github.com/ceph/ceph/pull/11061>`_, xie xingguo) -* bluestore: os/bluestore: fix spanning blob leak from ~ExtentMap (`pr#11223 <http://github.com/ceph/ceph/pull/11223>`_, Somnath Roy) -* bluestore: os/bluestore: fix statfs tests (`pr#10910 <http://github.com/ceph/ceph/pull/10910>`_, Sage Weil) -* bluestore: os/bluestore: fix when block device is not a multiple of the block size (`pr#10844 <http://github.com/ceph/ceph/pull/10844>`_, Sage Weil) -* bluestore: os/bluestore: fix write_big counter and some more cleanups (`pr#11344 <http://github.com/ceph/ceph/pull/11344>`_, xie xingguo) -* bluestore: os/bluestore: fix/improve csum error message (`pr#10938 <http://github.com/ceph/ceph/pull/10938>`_, Sage Weil) -* bluestore: os/bluestore: garbage collect partially overlapped blobs (`pr#11232 <http://github.com/ceph/ceph/pull/11232>`_, Roushan Ali) -* bluestore: os/bluestore: get rid off "isa-l" type in ZLibCompressor ctor (`pr#10931 <http://github.com/ceph/ceph/pull/10931>`_, xie xingguo) -* bluestore: os/bluestore: gifting bluefs more carefully (`pr#10950 <http://github.com/ceph/ceph/pull/10950>`_, xie xingguo) -* bluestore: os/bluestore: honour allow-eio flag; use global compressor if possible (`pr#10970 <http://github.com/ceph/ceph/pull/10970>`_, xie xingguo) -* bluestore: os/bluestore: improve required compression threshold (`pr#10080 <http://github.com/ceph/ceph/pull/10080>`_, xie xingguo) -* bluestore: os/bluestore: include bluefs space in statfs result (`pr#10795 <http://github.com/ceph/ceph/pull/10795>`_, Sage Weil) -* bluestore: os/bluestore: introduce power 2 macros for block alignment and rounding (`pr#10128 <http://github.com/ceph/ceph/pull/10128>`_, xie xingguo) -* bluestore: os/bluestore: make assert conditional with macro for allocator (`pr#11014 <http://github.com/ceph/ceph/pull/11014>`_, Ramesh Chander) -* bluestore: os/bluestore: make cache settings process-wide (`pr#11295 <http://github.com/ceph/ceph/pull/11295>`_, Sage Weil) -* bluestore: os/bluestore: make clone_range copy-on-write (`pr#11106 <http://github.com/ceph/ceph/pull/11106>`_, Sage Weil) -* bluestore: os/bluestore: make onode keys more efficient (and sort correctly) (`pr#11009 <http://github.com/ceph/ceph/pull/11009>`_, xie xingguo, Sage Weil) -* bluestore: os/bluestore: make trim() of 2Q cache more fine-grained (`pr#9946 <http://github.com/ceph/ceph/pull/9946>`_, xie xingguo) -* bluestore: os/bluestore: make zone/span size of bitmap-allocator configurable (`pr#10040 <http://github.com/ceph/ceph/pull/10040>`_, xie xingguo) -* bluestore: os/bluestore: misc cleanup and test fixes (`pr#11346 <http://github.com/ceph/ceph/pull/11346>`_, Igor Fedotov) -* bluestore: os/bluestore: misc cleanups (`pr#10201 <http://github.com/ceph/ceph/pull/10201>`_, xie xingguo) -* bluestore: os/bluestore: misc cleanups (`pr#11197 <http://github.com/ceph/ceph/pull/11197>`_, Haomai Wang) -* bluestore: os/bluestore: misc fixes (`pr#9999 <http://github.com/ceph/ceph/pull/9999>`_, xie xingguo) -* bluestore: os/bluestore: misc fixes (`pr#10771 <http://github.com/ceph/ceph/pull/10771>`_, xie xingguo) -* bluestore: os/bluestore: misc. fixes (`pr#11129 <http://github.com/ceph/ceph/pull/11129>`_, xie xingguo) -* bluestore: os/bluestore: more cleanups (`pr#11235 <http://github.com/ceph/ceph/pull/11235>`_, xie xingguo) -* bluestore: os/bluestore: more cleanups and fixes (`pr#11210 <http://github.com/ceph/ceph/pull/11210>`_, xie xingguo) -* bluestore: os/bluestore: narrow condition of sanity check when get_object_key() (`pr#11149 <http://github.com/ceph/ceph/pull/11149>`_, xie xingguo) -* bluestore: os/bluestore: narrow lock scope for cache trim() (`pr#10410 <http://github.com/ceph/ceph/pull/10410>`_, xie xingguo) -* bluestore: os/bluestore: optimize intrusive sets for size. (`pr#11319 <http://github.com/ceph/ceph/pull/11319>`_, Mark Nelson) -* bluestore: os/bluestore: pack a few more in-memory types (`pr#11328 <http://github.com/ceph/ceph/pull/11328>`_, Sage Weil) -* bluestore: os/bluestore: precondition rocksdb/bluefs during mkfs (`pr#10814 <http://github.com/ceph/ceph/pull/10814>`_, Sage Weil) -* bluestore: os/bluestore: prevent extent merging across shard boundaries (`pr#11216 <http://github.com/ceph/ceph/pull/11216>`_, Sage Weil) -* bluestore: os/bluestore: print bluefs_extents in hex (`pr#10689 <http://github.com/ceph/ceph/pull/10689>`_, Sage Weil) -* bluestore: os/bluestore: proper handling for csum enable/disable settings (`pr#10431 <http://github.com/ceph/ceph/pull/10431>`_, Igor Fedotov) -* bluestore: os/bluestore: refactor dirty blob tracking along with some related fixes (`pr#10215 <http://github.com/ceph/ceph/pull/10215>`_, Igor Fedotov) -* bluestore: os/bluestore: remove cmake warning from extent alloc functions (`issue#16766 <http://tracker.ceph.com/issues/16766>`_, `pr#10492 <http://github.com/ceph/ceph/pull/10492>`_, Ramesh Chander) -* bluestore: os/bluestore: remove deferred_csum machinery (`pr#11243 <http://github.com/ceph/ceph/pull/11243>`_, Sage Weil) -* bluestore: os/bluestore: remove some copy-pastes (`pr#11017 <http://github.com/ceph/ceph/pull/11017>`_, Igor Fedotov) -* bluestore: os/bluestore: replace store with logger in Cache (`pr#10969 <http://github.com/ceph/ceph/pull/10969>`_, xie xingguo) -* bluestore: os/bluestore: shard extent map (`pr#10963 <http://github.com/ceph/ceph/pull/10963>`_, Sage Weil) -* bluestore: os/bluestore: simplify LRUCache::trim() (`pr#10109 <http://github.com/ceph/ceph/pull/10109>`_, xie xingguo) -* bluestore: os/bluestore: simplify calculation of collection key range (`pr#11166 <http://github.com/ceph/ceph/pull/11166>`_, xie xingguo) -* bluestore: os/bluestore: sloppy reshard boundaries to avoid spanning blobs (`pr#11263 <http://github.com/ceph/ceph/pull/11263>`_, Sage Weil) -* bluestore: os/bluestore: still more cleanups (`pr#11274 <http://github.com/ceph/ceph/pull/11274>`_, xie xingguo) -* bluestore: os/bluestore: switch spanning_blob_map to std::map (`pr#11336 <http://github.com/ceph/ceph/pull/11336>`_, Sage Weil) -* bluestore: os/bluestore: trim cache on reads (`pr#10095 <http://github.com/ceph/ceph/pull/10095>`_, Sage Weil) -* bluestore: os/bluestore: try to split blobs instead of spanning them (`pr#11264 <http://github.com/ceph/ceph/pull/11264>`_, Sage Weil) -* bluestore: os/bluestore: upgrade compression settings to atomics (`pr#11244 <http://github.com/ceph/ceph/pull/11244>`_, xie xingguo) -* bluestore: os/bluestore: use small encoding for bluefs extent and fnode (`pr#10375 <http://github.com/ceph/ceph/pull/10375>`_, xie xingguo) -* bluestore: os/bluestore: yet another statfs test fix (`pr#10926 <http://github.com/ceph/ceph/pull/10926>`_, Igor Fedotov) -* bluestore: os/bluestore:Fix size calculation in bitallocator (`pr#10377 <http://github.com/ceph/ceph/pull/10377>`_, Ramesh Chander) -* bluestore: os/bluestore: fix error handling of posix_fallocate() (`pr#10277 <http://github.com/ceph/ceph/pull/10277>`_, xie xingguo) -* bluestore: os/bluestore: use BE for gifting and reclaiming from bluefs (`pr#10294 <http://github.com/ceph/ceph/pull/10294>`_, xie xingguo) -* bluestore: os/bluestore: get rid off blob's ref_map for non-shared objects (`pr#9988 <http://github.com/ceph/ceph/pull/9988>`_, Igor Fedotov) -* bluestore: kv/MemDB: fix wrong output target and add sanity checks (`pr#10358 <http://github.com/ceph/ceph/pull/10358>`_, xie xingguo) -* bluestore: os/bluestore: add a boundary check of cache read (`pr#10349 <http://github.com/ceph/ceph/pull/10349>`_, xie xingguo) -* bluestore: os/bluestore: fix bitmap allocating failure if max_alloc_size is 0 (`pr#10379 <http://github.com/ceph/ceph/pull/10379>`_, xie xingguo) -* bluestore: os/bluestore: misc fixes (`pr#10327 <http://github.com/ceph/ceph/pull/10327>`_, xie xingguo) -* bluestore: kv/MemDB: misc fixes and cleanups (`pr#10295 <http://github.com/ceph/ceph/pull/10295>`_, xie xingguo) -* bluestore: rocksdb: pull up to master (4.12 + a few patches) (`pr#11069 <http://github.com/ceph/ceph/pull/11069>`_, Sage Weil) -* bluestore: test/store_test: extend Bluestore compression test to verify compress… (`pr#11080 <http://github.com/ceph/ceph/pull/11080>`_, Igor Fedotov) -* bluestore: test/store_test: fix statfs results check to consider SSD min_alloc_size (`pr#11096 <http://github.com/ceph/ceph/pull/11096>`_, Igor Fedotov) -* bluestore: unittest_bluestore_types: a few more types for sizeof (`pr#11323 <http://github.com/ceph/ceph/pull/11323>`_, Sage Weil) -* bluestore: ceph_test_objectstore: test clone_range and fix a few bugs (`pr#11103 <http://github.com/ceph/ceph/pull/11103>`_, Sage Weil) -* bluestore: kv: fix some bugs in memdb (`pr#10550 <http://github.com/ceph/ceph/pull/10550>`_, Haodong Tang) -* bluestore: os/bluestore/BlueFS: disable buffered io (`pr#10766 <http://github.com/ceph/ceph/pull/10766>`_, Sage Weil) -* build/ops,bluestore: test/objectstore/CMakeLists.txt: fix libaio conditional (`pr#11008 <http://github.com/ceph/ceph/pull/11008>`_, Sage Weil) -* build/ops,cephfs: client: added def for ACCESSPERMS when undefined (`pr#9835 <http://github.com/ceph/ceph/pull/9835>`_, John Coyle) -* build/ops,cephfs: deb: merge ceph-fs-common into ceph-common (`issue#16808 <http://tracker.ceph.com/issues/16808>`_, `pr#10433 <http://github.com/ceph/ceph/pull/10433>`_, Nathan Cutler) -* build/ops,cephfs: man/Makefile-client.am: drop legacy cephfs tool (`pr#10444 <http://github.com/ceph/ceph/pull/10444>`_, Nathan Cutler) -* build/ops,cephfs: test: break out librados-using cephfs test (`issue#16556 <http://tracker.ceph.com/issues/16556>`_, `pr#10452 <http://github.com/ceph/ceph/pull/10452>`_, John Spray) -* build/ops,common: common/dns_resolve: use ns_name_uncompress instead of ns_name_ntop (`pr#9755 <http://github.com/ceph/ceph/pull/9755>`_, John Coyle) -* build/ops,common: msg/async/net_handler.cc: make it more compatible with BSDs (`pr#10029 <http://github.com/ceph/ceph/pull/10029>`_, Willem Jan Withagen) -* build/ops,pybind: Include Python 3 bindings into the cmake build and make packages for them (`pr#10208 <http://github.com/ceph/ceph/pull/10208>`_, Oleh Prypin) -* build/ops,rbd: systemd: add install section to rbdmap.service file (`pr#10942 <http://github.com/ceph/ceph/pull/10942>`_, Jelle vd Kooij) -* build/ops,rbd: test: fix rbd-mirror workunit test cases for cmake (`pr#10076 <http://github.com/ceph/ceph/pull/10076>`_, Jason Dillaman) -* build/ops,rgw: rgw-ldap: add ldap lib to rgw lib deps based on build config (`pr#9852 <http://github.com/ceph/ceph/pull/9852>`_, John Coyle) -* build/ops: .gitignore: Add .pyc files globally (`pr#11076 <http://github.com/ceph/ceph/pull/11076>`_, Brad Hubbard) -* build/ops: Allow compressor build without YASM (`pr#10937 <http://github.com/ceph/ceph/pull/10937>`_, Daniel Gryniewicz) -* build/ops: CMake - stop pip checking for updates (`pr#10161 <http://github.com/ceph/ceph/pull/10161>`_, Daniel Gryniewicz) -* build/ops: CMakeList.txt: link ceph_objectstore_tool against fuse only if WITH_FUSE (`pr#10149 <http://github.com/ceph/ceph/pull/10149>`_, Willem Jan Withagen) -* build/ops: Cmake: fix using CMAKE_DL_LIBS instead of dl (`pr#10317 <http://github.com/ceph/ceph/pull/10317>`_, Willem Jan Withagen) -* build/ops: CmakeLists.txt: use LIB_RESOLV instead of resolv. (`pr#10972 <http://github.com/ceph/ceph/pull/10972>`_, Willem Jan Withagen) -* build/ops: Enable builds without ceph-test subpackage (`issue#16776 <http://tracker.ceph.com/issues/16776>`_, `pr#10872 <http://github.com/ceph/ceph/pull/10872>`_, Ricardo Dias) -* build/ops: Fix libatomic_ops-devel in SUSE and specfile cleanup (`issue#16645 <http://tracker.ceph.com/issues/16645>`_, `pr#10363 <http://github.com/ceph/ceph/pull/10363>`_, Nathan Cutler) -* build/ops: FreeBSD: Define CLOCK_REALTIME_COARSE in compat.h (`pr#10506 <http://github.com/ceph/ceph/pull/10506>`_, Willem Jan Withagen) -* build/ops: Gentoo support for ceph-disk / ceph-detect-init; pip speedup (`pr#8317 <http://github.com/ceph/ceph/pull/8317>`_, Robin H. Johnson) -* build/ops: LTTng-UST disabled for openSUSE (`issue#16937 <http://tracker.ceph.com/issues/16937>`_, `pr#10592 <http://github.com/ceph/ceph/pull/10592>`_, Michel Normand) -* build/ops: Port ceph-brag to Python 3 (+ small fixes) (`pr#10064 <http://github.com/ceph/ceph/pull/10064>`_, Oleh Prypin) -* build/ops: Removes remaining reference to WITH_MDS (`pr#10286 <http://github.com/ceph/ceph/pull/10286>`_, J. Eric Ivancich) -* build/ops: Stop hiding errors from run-tox.sh (`issue#17267 <http://tracker.ceph.com/issues/17267>`_, `pr#11071 <http://github.com/ceph/ceph/pull/11071>`_, Dan Mick) -* build/ops: Wip kill warnings (`pr#10881 <http://github.com/ceph/ceph/pull/10881>`_, Kefu Chai) -* build/ops: autogen: Fix rocksdb error when make dist (`pr#10988 <http://github.com/ceph/ceph/pull/10988>`_, tianqing) -* build/ops: autotools: remove a few other remaining traces (`pr#11019 <http://github.com/ceph/ceph/pull/11019>`_, Sage Weil) -* build/ops: build scripts: Enable dnf for Fedora >= 22 (`pr#11105 <http://github.com/ceph/ceph/pull/11105>`_, Brad Hubbard) -* build/ops: build: drop dryrun of autogen.sh from run-cmake-check.sh script (`pr#11013 <http://github.com/ceph/ceph/pull/11013>`_, xie xingguo) -* build/ops: ceph-disk tests: Let missing python interpreters be non-fatal (`pr#11072 <http://github.com/ceph/ceph/pull/11072>`_, Dan Mick) -* build/ops: ceph-disk: Compatibility fixes for Python 3 (`pr#9936 <http://github.com/ceph/ceph/pull/9936>`_, Anirudha Bose) -* build/ops: ceph-disk: do not activate device that is not ready (`issue#15990 <http://tracker.ceph.com/issues/15990>`_, `pr#9943 <http://github.com/ceph/ceph/pull/9943>`_, Boris Ranto) -* build/ops: ceph-osd-prestart.sh: check existence of OSD data directory (`issue#17091 <http://tracker.ceph.com/issues/17091>`_, `pr#10809 <http://github.com/ceph/ceph/pull/10809>`_, Nathan Cutler) -* build/ops: ceph-osd-prestart.sh: drop Upstart-specific code (`issue#15984 <http://tracker.ceph.com/issues/15984>`_, `pr#9667 <http://github.com/ceph/ceph/pull/9667>`_, Nathan Cutler) -* build/ops: ceph-post-file replace DSA with RSA ssh key (`issue#14267 <http://tracker.ceph.com/issues/14267>`_, `pr#10800 <http://github.com/ceph/ceph/pull/10800>`_, David Galloway) -* build/ops: ceph.spec.in: don't try to package __pycache__ for SUSE (`issue#17106 <http://tracker.ceph.com/issues/17106>`_, `pr#10805 <http://github.com/ceph/ceph/pull/10805>`_, Tim Serong) -* build/ops: ceph.spec.in: fix rpm package building error (`pr#10115 <http://github.com/ceph/ceph/pull/10115>`_, runsisi) -* build/ops: changes for Clang and yasm (`pr#10417 <http://github.com/ceph/ceph/pull/10417>`_, Willem Jan Withagen) -* build/ops: cmake changes (`pr#10351 <http://github.com/ceph/ceph/pull/10351>`_, Kefu Chai) -* build/ops: cmake changes (`pr#10059 <http://github.com/ceph/ceph/pull/10059>`_, Kefu Chai) -* build/ops: cmake changes (`pr#10279 <http://github.com/ceph/ceph/pull/10279>`_, Kefu Chai) -* build/ops: cmake changes (`issue#16804 <http://tracker.ceph.com/issues/16804>`_, `pr#10391 <http://github.com/ceph/ceph/pull/10391>`_, Kefu Chai) -* build/ops: cmake changes (`pr#10361 <http://github.com/ceph/ceph/pull/10361>`_, Kefu Chai) -* build/ops: cmake changes (`pr#10112 <http://github.com/ceph/ceph/pull/10112>`_, Kefu Chai) -* build/ops: cmake changes (`pr#10489 <http://github.com/ceph/ceph/pull/10489>`_, Kefu Chai) -* build/ops: cmake changes (`pr#10283 <http://github.com/ceph/ceph/pull/10283>`_, Kefu Chai) -* build/ops: cmake changes (`issue#16504 <http://tracker.ceph.com/issues/16504>`_, `pr#9995 <http://github.com/ceph/ceph/pull/9995>`_, Kefu Chai, Sage Weil, Dan Mick) -* build/ops: cmake changes (`pr#9975 <http://github.com/ceph/ceph/pull/9975>`_, Kefu Chai) -* build/ops: cmake changes related to LTTng-UST (`pr#10917 <http://github.com/ceph/ceph/pull/10917>`_, Kefu Chai) -* build/ops: common/compressor: add libcommon as a dependency for zlib and snappy p… (`pr#11083 <http://github.com/ceph/ceph/pull/11083>`_, Igor Fedotov) -* build/ops: compat: add abstractions for non portable pthread name funcs (`pr#9763 <http://github.com/ceph/ceph/pull/9763>`_, John Coyle) -* build/ops: configure.ac: Use uname instead of arch. (`pr#9766 <http://github.com/ceph/ceph/pull/9766>`_, John Coyle) -* build/ops: configure.ac: add _LIBS variables for boost_system and boost_iostreams (`pr#9848 <http://github.com/ceph/ceph/pull/9848>`_, John Coyle) -* build/ops: configure.ac: fix res_query detection (`pr#9820 <http://github.com/ceph/ceph/pull/9820>`_, John Coyle) -* build/ops: debian and cmake cleanups (`pr#10788 <http://github.com/ceph/ceph/pull/10788>`_, Kefu Chai) -* build/ops: debian: bump compat to 9 (`issue#16744 <http://tracker.ceph.com/issues/16744>`_, `pr#10366 <http://github.com/ceph/ceph/pull/10366>`_, Kefu Chai) -* build/ops: debian: python related changes (`pr#10322 <http://github.com/ceph/ceph/pull/10322>`_, Kefu Chai) -* build/ops: debian: replace SysV rbdmap with systemd service (`pr#10435 <http://github.com/ceph/ceph/pull/10435>`_, Ken Dreyer) -* build/ops: debian: set libexec dir to correct value as autotools did (`pr#10096 <http://github.com/ceph/ceph/pull/10096>`_, Daniel Gryniewicz) -* build/ops: do_cmake.sh: set up initial plugin dir (`pr#10067 <http://github.com/ceph/ceph/pull/10067>`_, Sage Weil) -* build/ops: fix /etc/os-release parsing in install-deps.sh (`pr#10981 <http://github.com/ceph/ceph/pull/10981>`_, Nathan Cutler) -* build/ops: fix the rpm build for centos (`pr#10289 <http://github.com/ceph/ceph/pull/10289>`_, Oleh Prypin, Josh Durgin) -* build/ops: force Python 3 packages to build in SUSE (`issue#17106 <http://tracker.ceph.com/issues/17106>`_, `pr#10894 <http://github.com/ceph/ceph/pull/10894>`_, Dominique Leuenberger, Nathan Cutler) -* build/ops: install-deps.sh based on /etc/os-release (`issue#16522 <http://tracker.ceph.com/issues/16522>`_, `pr#10017 <http://github.com/ceph/ceph/pull/10017>`_, Jan Fajerski) -* build/ops: install-deps: exit non-zero when we cannot match distro (`pr#10941 <http://github.com/ceph/ceph/pull/10941>`_, Gregory Meno) -* build/ops: isa-l: add isa-l library as a submodule (`pr#10066 <http://github.com/ceph/ceph/pull/10066>`_, Alyona Kiseleva) -* build/ops: jerasure: include generic objects in neon jerasure lib (like sse3/4) (`pr#10879 <http://github.com/ceph/ceph/pull/10879>`_, Dan Mick) -* build/ops: logrotate: Run as root/ceph (`pr#10587 <http://github.com/ceph/ceph/pull/10587>`_, Boris Ranto) -* build/ops: lttng: build the tracepoint provider lib from .c files in repo (`pr#11196 <http://github.com/ceph/ceph/pull/11196>`_, Kefu Chai) -* build/ops: make-dist: generate ceph.spec (`issue#16501 <http://tracker.ceph.com/issues/16501>`_, `pr#9986 <http://github.com/ceph/ceph/pull/9986>`_, Sage Weil) -* build/ops: make-dist: set rpm_release correctly for release builds (`pr#11334 <http://github.com/ceph/ceph/pull/11334>`_, Dan Mick) -* build/ops: make-srpm.sh: A simple script to make the srpm for ceph. (`pr#11064 <http://github.com/ceph/ceph/pull/11064>`_, Ira Cooper) -* build/ops: makefile: change librgw_file_* as check_PROGRAMS (`issue#16646 <http://tracker.ceph.com/issues/16646>`_, `pr#10229 <http://github.com/ceph/ceph/pull/10229>`_, Brad Hubbard) -* build/ops: remove autotools (`pr#11007 <http://github.com/ceph/ceph/pull/11007>`_, Sage Weil) -* build/ops: rpm: Do not start targets on update (`pr#9968 <http://github.com/ceph/ceph/pull/9968>`_, Nathan Cutler, Boris Ranto) -* build/ops: rpm: ExclusiveArch for suse_version (`issue#16936 <http://tracker.ceph.com/issues/16936>`_, `pr#10594 <http://github.com/ceph/ceph/pull/10594>`_, Michel Normand) -* build/ops: rpm: Fix creation of mount.ceph symbolic link for SUSE distros (`pr#10353 <http://github.com/ceph/ceph/pull/10353>`_, Ricardo Dias) -* build/ops: rpm: add udev BuildRequires to provide /usr/lib/udev directory (`issue#16949 <http://tracker.ceph.com/issues/16949>`_, `pr#10608 <http://github.com/ceph/ceph/pull/10608>`_, Nathan Cutler) -* build/ops: rpm: build rpm with cmake (`pr#10016 <http://github.com/ceph/ceph/pull/10016>`_, Kefu Chai) -* build/ops: rpm: drop obsolete libs-compat and python-ceph-compat metapackages (`issue#16353 <http://tracker.ceph.com/issues/16353>`_, `pr#9757 <http://github.com/ceph/ceph/pull/9757>`_, Nathan Cutler) -* build/ops: rpm: fix permissions for /etc/ceph/rbdmap (`issue#17395 <http://tracker.ceph.com/issues/17395>`_, `pr#11217 <http://github.com/ceph/ceph/pull/11217>`_, Ken Dreyer) -* build/ops: rpm: fix shared library devel package names and dependencies (`issue#16345 <http://tracker.ceph.com/issues/16345>`_, `issue#16346 <http://tracker.ceph.com/issues/16346>`_, `pr#9744 <http://github.com/ceph/ceph/pull/9744>`_, Nathan Cutler, Ken Dreyer) -* build/ops: rpm: move mount.ceph from ceph-base to ceph-common and add symlink in /sbin for SUSE (`issue#16598 <http://tracker.ceph.com/issues/16598>`_, `pr#10147 <http://github.com/ceph/ceph/pull/10147>`_, Nathan Cutler) -* build/ops: run-cmake-check.sh: Remove redundant calls (`pr#11116 <http://github.com/ceph/ceph/pull/11116>`_, Brad Hubbard) -* build/ops: script: improve ceph-release-notes regex (`pr#10729 <http://github.com/ceph/ceph/pull/10729>`_, Nathan Cutler) -* build/ops: src/CMakeLists.txt: remove double flag -Wno-invalid-offsetof (`pr#10443 <http://github.com/ceph/ceph/pull/10443>`_, Willem Jan Withagen) -* build/ops: src/CMakeLists.txt: remove unneeded libraries from ceph-dencoder target (`pr#10478 <http://github.com/ceph/ceph/pull/10478>`_, Willem Jan Withagen) -* build/ops: src/global/pidfile.cc: Assign elements in structures individually (`pr#10516 <http://github.com/ceph/ceph/pull/10516>`_, Willem Jan Withagen) -* build/ops: src/kv/CMakeLists.txt: force rocksdb/include to first include directory (`pr#11194 <http://github.com/ceph/ceph/pull/11194>`_, Willem Jan Withagen) -* build/ops: test/common/test_util.cc: FreeBSD does not have distro information (`pr#10547 <http://github.com/ceph/ceph/pull/10547>`_, Willem Jan Withagen) -* build/ops: test: make check using cmake (`pr#10116 <http://github.com/ceph/ceph/pull/10116>`_, Kefu Chai, Sage Weil) -* build/ops: verfied f23 (`pr#10222 <http://github.com/ceph/ceph/pull/10222>`_, Kefu Chai) -* build/ops: yasm-wrapper: dont echo the yasm command line (`pr#10819 <http://github.com/ceph/ceph/pull/10819>`_, Casey Bodley) -* build/ops: .gitignore: exclude coredumps, logfiles and temporary testresults (`pr#8150 <http://github.com/ceph/ceph/pull/8150>`_, Willem Jan Withagen) -* build/ops: this fixes the broken build (`pr#9992 <http://github.com/ceph/ceph/pull/9992>`_, Haomai Wang) -* build/ops: mrgw: search for cmake build dir. (`pr#10180 <http://github.com/ceph/ceph/pull/10180>`_, Abhishek Lekshmanan) -* build/ops: mrun, mstart.sh, mstop.sh: search for cmake build directory (`pr#10097 <http://github.com/ceph/ceph/pull/10097>`_, Yehuda Sadeh) -* build/ops: arm64 fixes(`pr#10438 <http://github.com/ceph/ceph/pull/10438>`_, Dan Mick) -* build/ops: Wip kill warnings (`pr#10934 <http://github.com/ceph/ceph/pull/10934>`_, Kefu Chai) -* build/ops: systemd: add osd id to service description (`pr#10091 <http://github.com/ceph/ceph/pull/10091>`_, Ruben Kerkhof) -* build/ops: fix wrong indent caused compile warning (`pr#10014 <http://github.com/ceph/ceph/pull/10014>`_, Wanlong Gao) -* build/ops: ceph-detect-init: fix the py3 test (`pr#10266 <http://github.com/ceph/ceph/pull/10266>`_, Kefu Chai) -* build/ops: ceph.spec: fix ceph-mgr version requirement (`pr#11285 <http://github.com/ceph/ceph/pull/11285>`_, Sage Weil) -* build/ops: make-dist/ceph.spec.in: Fix srpm build breakage. (`pr#10404 <http://github.com/ceph/ceph/pull/10404>`_, Ira Cooper) -* build/ops: master: remove SYSTEMD_RUN from initscript (`issue#16440 <http://tracker.ceph.com/issues/16440>`_, `issue#7627 <http://tracker.ceph.com/issues/7627>`_, `pr#9871 <http://github.com/ceph/ceph/pull/9871>`_, Vladislav Odintsov) -* build/ops: rocksdb: revert the change introduced by dc41731 (`pr#10595 <http://github.com/ceph/ceph/pull/10595>`_, Kefu Chai) -* build/ops: do_freebsd*.sh: rename do_freebsd-cmake.sh to do_freebsd.sh (`pr#11088 <http://github.com/ceph/ceph/pull/11088>`_, Kefu Chai) -* build/ops: gcc 6.1.1 complains about missing include: <random>. 4.8.3 does not c… (`pr#10747 <http://github.com/ceph/ceph/pull/10747>`_, Daniel Oliveira) -* build/ops: selinux: Allow ceph to manage tmp files (`issue#17436 <http://tracker.ceph.com/issues/17436>`_, `pr#11259 <http://github.com/ceph/ceph/pull/11259>`_, Boris Ranto) -* build/ops: selinux: allow read /proc/<pid>/cmdline (`issue#16675 <http://tracker.ceph.com/issues/16675>`_, `pr#10339 <http://github.com/ceph/ceph/pull/10339>`_, Kefu Chai) -* cephfs,common: osdc/Journaler: move C_DelayFlush class to .cc (`pr#10744 <http://github.com/ceph/ceph/pull/10744>`_, Michal Jarzabek) -* cephfs,core,rbd: ObjectCacher: fix bh_read_finish offset logic (`issue#16002 <http://tracker.ceph.com/issues/16002>`_, `pr#9606 <http://github.com/ceph/ceph/pull/9606>`_, Greg Farnum) -* cephfs,core,rbd: osdc/ObjectCacher: move C_ReadFinish, C_RetryRead (`pr#10781 <http://github.com/ceph/ceph/pull/10781>`_, Michal Jarzabek) -* cephfs: Add ceph_ll_setlk and ceph_ll_getlk (`pr#9566 <http://github.com/ceph/ceph/pull/9566>`_, Frank S. Filz) -* cephfs: CephFS: misc. cleanups and remove legacy cephfs tool (`issue#16195 <http://tracker.ceph.com/issues/16195>`_, `issue#16035 <http://tracker.ceph.com/issues/16035>`_, `issue#15923 <http://tracker.ceph.com/issues/15923>`_, `pr#10243 <http://github.com/ceph/ceph/pull/10243>`_, John Spray) -* cephfs: Clean up handling of "/.." in ceph client (`pr#10691 <http://github.com/ceph/ceph/pull/10691>`_, Jeff Layton) -* cephfs: Client: fixup param type and return value (`pr#10463 <http://github.com/ceph/ceph/pull/10463>`_, gongchuang) -* cephfs: Client: pass "UserPerm" struct everywhere for security checks (`issue#16367 <http://tracker.ceph.com/issues/16367>`_, `issue#17368 <http://tracker.ceph.com/issues/17368>`_, `pr#11218 <http://github.com/ceph/ceph/pull/11218>`_, Greg Farnum) -* cephfs: First pile of statx patches (`pr#10922 <http://github.com/ceph/ceph/pull/10922>`_, Sage Weil, Jeff Layton) -* cephfs: Fix attribute handling at lookup time (`issue#16668 <http://tracker.ceph.com/issues/16668>`_, `pr#10386 <http://github.com/ceph/ceph/pull/10386>`_, Jeff Layton) -* cephfs: Inotable repair during forward scrub (`pr#10281 <http://github.com/ceph/ceph/pull/10281>`_, Vishal Kanaujia) -* cephfs: Server: drop locks and auth pins if wait for pending truncate (`pr#9716 <http://github.com/ceph/ceph/pull/9716>`_, xie xingguo) -* cephfs: Small interface cleanups for struct ceph_statx (`pr#11093 <http://github.com/ceph/ceph/pull/11093>`_, Jeff Layton) -* cephfs: build ceph-fuse on OSX (`pr#9371 <http://github.com/ceph/ceph/pull/9371>`_, Yan, Zheng) -* cephfs: ceph-fuse: link to libtcmalloc or jemalloc (`issue#16655 <http://tracker.ceph.com/issues/16655>`_, `pr#10258 <http://github.com/ceph/ceph/pull/10258>`_, Yan, Zheng) -* cephfs: ceph_volume_client: store authentication metadata (`issue#15406 <http://tracker.ceph.com/issues/15406>`_, `issue#15615 <http://tracker.ceph.com/issues/15615>`_, `pr#9864 <http://github.com/ceph/ceph/pull/9864>`_, John Spray, Ramana Raja) -* cephfs: client/barrier: move C_Block_Sync class to .cc (`pr#11001 <http://github.com/ceph/ceph/pull/11001>`_, Michal Jarzabek) -* cephfs: client/filer: cleanup the redundant judgments of _write&&_fallocate (`pr#10062 <http://github.com/ceph/ceph/pull/10062>`_, huanwen ren) -* cephfs: client: add missing client_lock for get_root (`pr#10027 <http://github.com/ceph/ceph/pull/10027>`_, Patrick Donnelly) -* cephfs: client: discard mds map if it is identical to ours (`pr#9774 <http://github.com/ceph/ceph/pull/9774>`_, xie xingguo) -* cephfs: client: fast abort if underlying statsf() call failed; end scope of std::hex properly (`pr#9803 <http://github.com/ceph/ceph/pull/9803>`_, xie xingguo) -* cephfs: client: fix access violation (`pr#9793 <http://github.com/ceph/ceph/pull/9793>`_, xie xingguo) -* cephfs: client: fix readdir vs fragmentation race (`issue#17286 <http://tracker.ceph.com/issues/17286>`_, `pr#11147 <http://github.com/ceph/ceph/pull/11147>`_, Yan, Zheng) -* cephfs: client: fix segment fault in Client::_invalidate_kernel_dcache(). (`issue#17253 <http://tracker.ceph.com/issues/17253>`_, `pr#11170 <http://github.com/ceph/ceph/pull/11170>`_, Yan, Zheng) -* cephfs: client: fix shutdown with open inodes (`issue#16764 <http://tracker.ceph.com/issues/16764>`_, `pr#10419 <http://github.com/ceph/ceph/pull/10419>`_, John Spray) -* cephfs: client: include COMPLETE and ORDERED states in cache dump (`pr#10485 <http://github.com/ceph/ceph/pull/10485>`_, Greg Farnum) -* cephfs: client: kill compiling warning (`pr#9994 <http://github.com/ceph/ceph/pull/9994>`_, xie xingguo) -* cephfs: client: misc fixes (`pr#9838 <http://github.com/ceph/ceph/pull/9838>`_, xie xingguo) -* cephfs: client: move Inode specific cleanup to destructor (`pr#10168 <http://github.com/ceph/ceph/pull/10168>`_, Patrick Donnelly) -* cephfs: client: note order of member init in cons (`pr#10169 <http://github.com/ceph/ceph/pull/10169>`_, Patrick Donnelly) -* cephfs: client: properly set inode number of created inode in replay request (`issue#17172 <http://tracker.ceph.com/issues/17172>`_, `pr#10957 <http://github.com/ceph/ceph/pull/10957>`_, Yan, Zheng) -* cephfs: client: protect InodeRef with client_lock (`issue#17392 <http://tracker.ceph.com/issues/17392>`_, `pr#11225 <http://github.com/ceph/ceph/pull/11225>`_, Yan, Zheng) -* cephfs: doc/mds: fixup mds doc (`pr#10573 <http://github.com/ceph/ceph/pull/10573>`_, huanwen ren) -* cephfs: fuse_ll: fix incorrect error settings of fuse_ll_mkdir() (`pr#9809 <http://github.com/ceph/ceph/pull/9809>`_, xie xingguo) -* cephfs: include/ceph_fs.h: guard `#define CEPH_SETATTR_*` with #ifndef (`pr#10265 <http://github.com/ceph/ceph/pull/10265>`_, Kefu Chai) -* cephfs: libcephfs: Fix the incorrect integer conversion in libcephfs_jni.cc (`pr#10640 <http://github.com/ceph/ceph/pull/10640>`_, wenjunhuang) -* cephfs: libcephfs: add unmount function in cephfs.pyx (`pr#10774 <http://github.com/ceph/ceph/pull/10774>`_, huanwen ren) -* cephfs: libcephfs: fix portability-related error settings (`pr#9794 <http://github.com/ceph/ceph/pull/9794>`_, xie xingguo) -* cephfs: libcephfs: kill compiling warning (`pr#10622 <http://github.com/ceph/ceph/pull/10622>`_, xie xingguo) -* cephfs: mds/CDir: remove the part of judgment for _next_dentry_on_set (`pr#10476 <http://github.com/ceph/ceph/pull/10476>`_, zhang.zezhu) -* cephfs: mds/CInode: fix potential fin hanging (`pr#9773 <http://github.com/ceph/ceph/pull/9773>`_, xie xingguo) -* cephfs: mds/MDBalancer: cleanup (`pr#10512 <http://github.com/ceph/ceph/pull/10512>`_, huanwen ren) -* cephfs: mds/MDCache: kill a comipler warning (`pr#11254 <http://github.com/ceph/ceph/pull/11254>`_, xie xingguo) -* cephfs: mds/MDSMap default metadata pool to -1 (was: output None instead of 0 when no fs present.) (`issue#16588 <http://tracker.ceph.com/issues/16588>`_, `pr#10202 <http://github.com/ceph/ceph/pull/10202>`_, Xiaoxi Chen) -* cephfs: mds/MDSTable: add const to member functions (`pr#10846 <http://github.com/ceph/ceph/pull/10846>`_, Michal Jarzabek) -* cephfs: mds/SessionMap.h: change statement to assertion (`pr#11289 <http://github.com/ceph/ceph/pull/11289>`_, Michal Jarzabek) -* cephfs: mds/SnapRealm.h: add const to member functions (`pr#10878 <http://github.com/ceph/ceph/pull/10878>`_, Michal Jarzabek) -* cephfs: mds/server: clean up handle_client_open() (`pr#11120 <http://github.com/ceph/ceph/pull/11120>`_, huanwen ren) -* cephfs: mon/MDSMonitor: move C_Updated class to .cc file (`pr#10668 <http://github.com/ceph/ceph/pull/10668>`_, Michal Jarzabek) -* cephfs: osdc/mds: fixup pos parameter in the journaler (`pr#10200 <http://github.com/ceph/ceph/pull/10200>`_, huanwen ren) -* cephfs: reduce unnecessary mds log flush (`pr#10393 <http://github.com/ceph/ceph/pull/10393>`_, Yan, Zheng) -* cephfs: tools/cephfs: Remove cephfs-data-scan tmap_upgrade (`issue#16144 <http://tracker.ceph.com/issues/16144>`_, `pr#10100 <http://github.com/ceph/ceph/pull/10100>`_, Douglas Fuller) -* cephfs: ceph_fuse: use sizeof get the buf length (`pr#11176 <http://github.com/ceph/ceph/pull/11176>`_, LeoZhang) -* cli: retry when the mon is not configured (`issue#16477 <http://tracker.ceph.com/issues/16477>`_, `pr#11089 <http://github.com/ceph/ceph/pull/11089>`_, Loic Dachary) -* cmake: Add -pie to CMAKE_EXE_LINKER_FLAGS (`pr#10755 <http://github.com/ceph/ceph/pull/10755>`_, Tim Serong) -* cmake: Fix FCGI include directory (`pr#9983 <http://github.com/ceph/ceph/pull/9983>`_, Tim Serong) -* cmake: Fix mismatched librgw VERSION / SOVERSION (`pr#10754 <http://github.com/ceph/ceph/pull/10754>`_, Tim Serong) -* cmake: FreeBSD specific excludes in CMakeLists.txt (`pr#10973 <http://github.com/ceph/ceph/pull/10973>`_, Willem Jan Withagen) -* cmake: FreeBSD specific excludes in CMakeLists.txt files (`pr#10517 <http://github.com/ceph/ceph/pull/10517>`_, Willem Jan Withagen) -* cmake: Really add FCGI_INCLUDE_DIR to include_directories for rgw (`pr#10139 <http://github.com/ceph/ceph/pull/10139>`_, Tim Serong) -* cmake: Removed README.cmake.md, edited README.md (`pr#10028 <http://github.com/ceph/ceph/pull/10028>`_, Ali Maredia) -* cmake: Support tcmalloc_minimal allocator (`pr#11111 <http://github.com/ceph/ceph/pull/11111>`_, Bassam Tabbara) -* cmake: add dependency from ceph_smalliobenchrbd to cls libraries (`pr#10870 <http://github.com/ceph/ceph/pull/10870>`_, J. Eric Ivancich) -* cmake: add_subdirectory(include) (`pr#10360 <http://github.com/ceph/ceph/pull/10360>`_, Kefu Chai) -* cmake: ceph_test_rbd_mirror does not require librados_test_stub (`pr#10164 <http://github.com/ceph/ceph/pull/10164>`_, Jason Dillaman) -* cmake: cleanup Findgperftools.cmake (`pr#10670 <http://github.com/ceph/ceph/pull/10670>`_, Kefu Chai) -* cmake: correct ceph_test_librbd/ceph_test_rbd_mirror linkage (`issue#16882 <http://tracker.ceph.com/issues/16882>`_, `pr#10598 <http://github.com/ceph/ceph/pull/10598>`_, Jason Dillaman) -* cmake: disable -fvar-tracking-assignments for ceph_dencoder.cc (`pr#10275 <http://github.com/ceph/ceph/pull/10275>`_, Kefu Chai) -* cmake: disable unittest_async_compressor (`pr#10394 <http://github.com/ceph/ceph/pull/10394>`_, Kefu Chai) -* cmake: do not link against unused objects or libraries (`pr#10837 <http://github.com/ceph/ceph/pull/10837>`_, Kefu Chai) -* cmake: enable ccache for rocksdb too (`pr#11100 <http://github.com/ceph/ceph/pull/11100>`_, Bassam Tabbara) -* cmake: exclude non-public symbols in shared libraries (`issue#16556 <http://tracker.ceph.com/issues/16556>`_, `pr#10472 <http://github.com/ceph/ceph/pull/10472>`_, Kefu Chai) -* cmake: fix incorrect dependencies to librados (`pr#10145 <http://github.com/ceph/ceph/pull/10145>`_, Jason Dillaman) -* cmake: fix the FTBFS introduced by dc8b3ba (`pr#10282 <http://github.com/ceph/ceph/pull/10282>`_, Kefu Chai) -* cmake: fix the build of unittest_async_compressor (`pr#10400 <http://github.com/ceph/ceph/pull/10400>`_, Kefu Chai) -* cmake: fix the tracing header dependencies (`pr#10906 <http://github.com/ceph/ceph/pull/10906>`_, Kefu Chai) -* cmake: fix unittest_rbd_mirror failures under non-optimized builds (`pr#9990 <http://github.com/ceph/ceph/pull/9990>`_, Jason Dillaman) -* cmake: fix wrong path introduced by bb163e9 (`pr#10643 <http://github.com/ceph/ceph/pull/10643>`_, Kefu Chai) -* cmake: fixes (`pr#10092 <http://github.com/ceph/ceph/pull/10092>`_, Daniel Gryniewicz) -* cmake: fixes for pypi changes (`pr#10204 <http://github.com/ceph/ceph/pull/10204>`_, Kefu Chai) -* cmake: include(SIMDExt) in src/CMakeLists.txt (`pr#11003 <http://github.com/ceph/ceph/pull/11003>`_, Kefu Chai) -* cmake: install ceph_test_cls_rgw (`pr#10025 <http://github.com/ceph/ceph/pull/10025>`_, Kefu Chai) -* cmake: install ceph_test_rados_striper_api_* (`pr#10541 <http://github.com/ceph/ceph/pull/10541>`_, Kefu Chai) -* cmake: install platlib into a subdir of build-base dir (`pr#10666 <http://github.com/ceph/ceph/pull/10666>`_, Kefu Chai) -* cmake: make py3 a nice-to-have (`issue#17103 <http://tracker.ceph.com/issues/17103>`_, `pr#11015 <http://github.com/ceph/ceph/pull/11015>`_, Kefu Chai) -* cmake: pass -DINTEL* to gf-complete cflags (`pr#10956 <http://github.com/ceph/ceph/pull/10956>`_, tone.zhang, Kefu Chai) -* cmake: pass cmake's compiler and flags to compile RocksDB into build (`pr#10418 <http://github.com/ceph/ceph/pull/10418>`_, Willem Jan Withagen) -* cmake: recompile erasure src for different variants (`pr#10772 <http://github.com/ceph/ceph/pull/10772>`_, Kefu Chai) -* cmake: remove WITH_MDS option (`pr#10186 <http://github.com/ceph/ceph/pull/10186>`_, Ali Maredia) -* cmake: remove more autotools hacks (`pr#11229 <http://github.com/ceph/ceph/pull/11229>`_, Sage Weil) -* cmake: remove unnecessary linked libs from libcephfs (`issue#16556 <http://tracker.ceph.com/issues/16556>`_, `pr#10081 <http://github.com/ceph/ceph/pull/10081>`_, Kefu Chai) -* cmake: rework NSS and SSL (`pr#9831 <http://github.com/ceph/ceph/pull/9831>`_, Matt Benjamin) -* cmake: set ARM_CRC_FLAGS from the CRC test rather than ARM_NEON_FLAGS (`issue#17250 <http://tracker.ceph.com/issues/17250>`_, `pr#11028 <http://github.com/ceph/ceph/pull/11028>`_, Dan Mick) -* cmake: specify distutils build path explicitly (`pr#10568 <http://github.com/ceph/ceph/pull/10568>`_, Kefu Chai) -* cmake: supress more warnings (`pr#10469 <http://github.com/ceph/ceph/pull/10469>`_, Willem Jan Withagen) -* cmake: use PERF_LOCAL_FLAGS only if defined (`issue#17104 <http://tracker.ceph.com/issues/17104>`_, `pr#10828 <http://github.com/ceph/ceph/pull/10828>`_, Michel Normand) -* cmake: use stock Find* modules. (`pr#10178 <http://github.com/ceph/ceph/pull/10178>`_, Kefu Chai) -* cmake: work to get inital FreeBSD stuff (`pr#10352 <http://github.com/ceph/ceph/pull/10352>`_, Willem Jan Withagen) -* cmake: find GIT_VER variables if there is no .git dir (`pr#11499 <http://github.com/ceph/ceph/pull/11499>`_, Ali Maredia) -* common,bluestore: Isa-l extention for zlib compression plugin (`pr#10158 <http://github.com/ceph/ceph/pull/10158>`_, Alyona Kiseleva, Dan Mick) -* common,bluestore: compressor/zlib: zlib wrapper fix (`pr#11079 <http://github.com/ceph/ceph/pull/11079>`_, Igor Fedotov) -* common: auth/cephx: misc fixes (`pr#9679 <http://github.com/ceph/ceph/pull/9679>`_, xie xingguo) -* common: common/PluginRegistry: improve error output for shared library load fa… (`pr#11081 <http://github.com/ceph/ceph/pull/11081>`_, Igor Fedotov) -* common: common/Throttle.h: remove unneeded class (`pr#10902 <http://github.com/ceph/ceph/pull/10902>`_, Michal Jarzabek) -* common: common/Timer.h: delete copy constr and assign op (`pr#11046 <http://github.com/ceph/ceph/pull/11046>`_, Michal Jarzabek) -* common: common/WorkQueue: add std move (`pr#9729 <http://github.com/ceph/ceph/pull/9729>`_, Michal Jarzabek) -* common: compressor: zlib compressor plugin cleanup (`pr#9782 <http://github.com/ceph/ceph/pull/9782>`_, Alyona Kiseleva) -* common: erasure-code: Runtime detection of SIMD for jerasure and shec (`pr#11086 <http://github.com/ceph/ceph/pull/11086>`_, Bassam Tabbara) -* common: global: log which process/command sent a signal (`pr#8964 <http://github.com/ceph/ceph/pull/8964>`_, song baisen) -* common: include/assert: clean up ceph assertion macros (`pr#9969 <http://github.com/ceph/ceph/pull/9969>`_, Sage Weil) -* common: instantiate strict_si_cast<long> not strict_si_cast<int64_t> (`issue#16398 <http://tracker.ceph.com/issues/16398>`_, `pr#9934 <http://github.com/ceph/ceph/pull/9934>`_, Kefu Chai) -* common: lockdep: verbose even if no logging is set (`pr#10576 <http://github.com/ceph/ceph/pull/10576>`_, Willem Jan Withagen) -* common: messages/MOSDMap: mark as enlighten OSDMap encoder (`pr#10843 <http://github.com/ceph/ceph/pull/10843>`_, Sage Weil) -* common: mon/Monitor.cc:replce lock/unlock with Mutex:Lockr (`pr#9792 <http://github.com/ceph/ceph/pull/9792>`_, Michal Jarzabek) -* common: msg/AsyncMessenger.cc: remove code duplication (`pr#10030 <http://github.com/ceph/ceph/pull/10030>`_, Michal Jarzabek) -* common: msg/async: less verbose debug messages at debug_ms=1 (`pr#11205 <http://github.com/ceph/ceph/pull/11205>`_, Sage Weil) -* common: msg/async: remove static member variable (`issue#16686 <http://tracker.ceph.com/issues/16686>`_, `pr#10440 <http://github.com/ceph/ceph/pull/10440>`_, Kefu Chai) -* common: only call crypto::init once per CephContext (`issue#17205 <http://tracker.ceph.com/issues/17205>`_, `pr#10965 <http://github.com/ceph/ceph/pull/10965>`_, Casey Bodley) -* common: osdc/ObjectCacher: change iterator to const_iterator and add const to member functions (`pr#9644 <http://github.com/ceph/ceph/pull/9644>`_, Michal Jarzabek) -* common: preforker: prevent call to 'write' on an fd that was already closed (`pr#10949 <http://github.com/ceph/ceph/pull/10949>`_, Avner BenHanoch) -* common: remove basename() dependency (`pr#9845 <http://github.com/ceph/ceph/pull/9845>`_, John Coyle) -* common: src/common/buffer.cc fix judgment for lseek (`pr#10130 <http://github.com/ceph/ceph/pull/10130>`_, zhang.zezhu) -* common: unknown hash type of judgment modification (`pr#9510 <http://github.com/ceph/ceph/pull/9510>`_, huanwen ren) -* common: Timer.cc: replace long types with auto (`pr#11067 <http://github.com/ceph/ceph/pull/11067>`_, Michal Jarzabek) -* common: TrackedOp: move ShardedTrackingData to .cc (`pr#10639 <http://github.com/ceph/ceph/pull/10639>`_, Michal Jarzabek) -* common: config_opts: fix comment(radio -> ratio) (`pr#10783 <http://github.com/ceph/ceph/pull/10783>`_, xie xingguo) -* common: src/common/dns_resolve.cc: reorder the includes (`pr#10505 <http://github.com/ceph/ceph/pull/10505>`_, Willem Jan Withagen) -* common: global/signal_handler: use sig_str instead of sys_siglist (`pr#10633 <http://github.com/ceph/ceph/pull/10633>`_, John Coyle) -* core,cephfs: Revert "osd/ReplicatedPG: for sync-read it don't cacl l_osd_op_r_prep… (`issue#16908 <http://tracker.ceph.com/issues/16908>`_, `pr#10875 <http://github.com/ceph/ceph/pull/10875>`_, Samuel Just) -* core,cephfs: mon/mds: add err info when load_metadata is abnormal (`pr#10176 <http://github.com/ceph/ceph/pull/10176>`_, huanwen ren) -* core,common: osd/OSD.cc: remove unneeded returns (`pr#11043 <http://github.com/ceph/ceph/pull/11043>`_, Michal Jarzabek) -* core,pybind: python-rados: extends ReadOp/WriteOp API (`pr#9944 <http://github.com/ceph/ceph/pull/9944>`_, Mehdi Abaakouk) -* core,pybind: python-rados: implement new aio_stat. (`pr#11006 <http://github.com/ceph/ceph/pull/11006>`_, Iain Buclaw) -* core,pybind: qa/workunits/rados/test_python.sh: Allow specifying Python executable (`pr#10782 <http://github.com/ceph/ceph/pull/10782>`_, Oleh Prypin) -* core: os/filestore/LFNIndex: remove unused variable 'subdir_path' (`pr#8959 <http://github.com/ceph/ceph/pull/8959>`_, huangjun) -* core: Create ceph-mgr (`pr#10328 <http://github.com/ceph/ceph/pull/10328>`_, John Spray, Tim Serong) -* core: FileJournal: Remove obsolete _check_disk_write_cache function (`pr#11073 <http://github.com/ceph/ceph/pull/11073>`_, Brad Hubbard) -* core: Lua object class support (`pr#7338 <http://github.com/ceph/ceph/pull/7338>`_, Noah Watkins) -* core: OSD crash with Hammer to Jewel Upgrade: void FileStore::init_temp_collections() (`issue#16672 <http://tracker.ceph.com/issues/16672>`_, `pr#10565 <http://github.com/ceph/ceph/pull/10565>`_, David Zafman) -* core: OSD.cc: remove unneeded return (`pr#9701 <http://github.com/ceph/ceph/pull/9701>`_, Michal Jarzabek) -* core: OSD: avoid FileStore finisher deadlock in osd_lock when shutdown OSD (`pr#11052 <http://github.com/ceph/ceph/pull/11052>`_, Haomai Wang) -* core: ObjectCacher: fix last_write check in bh_write_adjacencies() (`issue#16610 <http://tracker.ceph.com/issues/16610>`_, `pr#10304 <http://github.com/ceph/ceph/pull/10304>`_, Yan, Zheng) -* core: ReplicatedPG: call op_applied for submit_log_entries based repops (`pr#9489 <http://github.com/ceph/ceph/pull/9489>`_, Samuel Just) -* core: Wip 16998 (`issue#16998 <http://tracker.ceph.com/issues/16998>`_, `pr#10688 <http://github.com/ceph/ceph/pull/10688>`_, Samuel Just) -* core: ceph-create-keys: add missing argument comma (`pr#11123 <http://github.com/ceph/ceph/pull/11123>`_, Patrick Donnelly) -* core: ceph-create-keys: fix existing-but-different case (`issue#16255 <http://tracker.ceph.com/issues/16255>`_, `pr#10415 <http://github.com/ceph/ceph/pull/10415>`_, John Spray) -* core: ceph-disk: partprobe should block udev induced BLKRRPART (`issue#15176 <http://tracker.ceph.com/issues/15176>`_, `pr#9330 <http://github.com/ceph/ceph/pull/9330>`_, Marius Vollmer, Loic Dachary) -* core: ceph-disk: timeout ceph-disk to avoid blocking forever (`issue#16580 <http://tracker.ceph.com/issues/16580>`_, `pr#10262 <http://github.com/ceph/ceph/pull/10262>`_, Loic Dachary) -* core: ceph-objectstore-tool: add a way to split filestore directories offline (`issue#17220 <http://tracker.ceph.com/issues/17220>`_, `pr#10776 <http://github.com/ceph/ceph/pull/10776>`_, Josh Durgin) -* core: ceph.in: python 3 compatibility of the ceph CLI (`pr#9702 <http://github.com/ceph/ceph/pull/9702>`_, Oleh Prypin) -* core: ceph_mon: use readdir() as readdir_r() is deprecated (`pr#11047 <http://github.com/ceph/ceph/pull/11047>`_, Kefu Chai) -* core: cephx: Fix multiple segfaults due to attempts to encrypt or decrypt (`issue#16266 <http://tracker.ceph.com/issues/16266>`_, `pr#9703 <http://github.com/ceph/ceph/pull/9703>`_, Brad Hubbard) -* core: https://github.com/ceph/ceph/pull/11052 (`pr#10371 <http://github.com/ceph/ceph/pull/10371>`_, Yan Jun) -* core: include write error codes in the pg log (`issue#14468 <http://tracker.ceph.com/issues/14468>`_, `pr#10170 <http://github.com/ceph/ceph/pull/10170>`_, Josh Durgin) -* core: kv/MemDB: fix assert triggerred by m_total_bytes underflow (`pr#10471 <http://github.com/ceph/ceph/pull/10471>`_, xie xingguo) -* core: kv/RocksDB: add perfcounter for submit_transaction_sync operation (`pr#9770 <http://github.com/ceph/ceph/pull/9770>`_, Haodong Tang) -* core: logmon: check is_leader() before doing any work on get_trim_to() (`pr#10342 <http://github.com/ceph/ceph/pull/10342>`_, song baisen) -* core: memstore: clone zero-fills holes from source range (`pr#11157 <http://github.com/ceph/ceph/pull/11157>`_, Casey Bodley) -* core: message: optimization for message priority strategy (`pr#8687 <http://github.com/ceph/ceph/pull/8687>`_, yaoning) -* core: messages/MForward: fix encoding features (`issue#17365 <http://tracker.ceph.com/issues/17365>`_, `pr#11180 <http://github.com/ceph/ceph/pull/11180>`_, Sage Weil) -* core: mgr/MgrClient: fix ms_handle_reset (`pr#11298 <http://github.com/ceph/ceph/pull/11298>`_, Sage Weil) -* core: mgr/MgrMap: initialize all fields (`issue#17492 <http://tracker.ceph.com/issues/17492>`_, `pr#11308 <http://github.com/ceph/ceph/pull/11308>`_, Sage Weil) -* core: mon/ConfigKeyService: pass strings by const ref (`pr#10618 <http://github.com/ceph/ceph/pull/10618>`_, Michal Jarzabek) -* core: mon/LogMonitor: move C_Log struct to cc file (`pr#10721 <http://github.com/ceph/ceph/pull/10721>`_, Michal Jarzabek) -* core: mon/MonClient.h: pass strings by const reference (`pr#10605 <http://github.com/ceph/ceph/pull/10605>`_, Michal Jarzabek) -* core: mon/MonDBStore: fix assert which never fires (`pr#10706 <http://github.com/ceph/ceph/pull/10706>`_, xie xingguo) -* core: mon/MonitorDBStore: do not use snapshot iterator; close on close (`pr#10102 <http://github.com/ceph/ceph/pull/10102>`_, Sage Weil) -* core: mon/OSDMonitor.cc: remove use of boost assign (`pr#11060 <http://github.com/ceph/ceph/pull/11060>`_, Michal Jarzabek) -* core: mon/PGMonitor: batch filter pg states; add sanity check (`pr#9394 <http://github.com/ceph/ceph/pull/9394>`_, xie xingguo) -* core: mon/PGMonitor: calc the %USED of pool using used/(used+avail) (`issue#16933 <http://tracker.ceph.com/issues/16933>`_, `pr#10584 <http://github.com/ceph/ceph/pull/10584>`_, Kefu Chai) -* core: mon/PGMonitor: move C_Stats struct to cc file (`pr#10719 <http://github.com/ceph/ceph/pull/10719>`_, Michal Jarzabek) -* core: mon/PaxosService: make the return value type inconsistent (`pr#10231 <http://github.com/ceph/ceph/pull/10231>`_, zhang.zezhu) -* core: mon/osdmonitor: fix incorrect output of "osd df" due to osd out (`issue#16706 <http://tracker.ceph.com/issues/16706>`_, `pr#10308 <http://github.com/ceph/ceph/pull/10308>`_, xie xingguo) -* core: msg/AsyncMessenger: change return type to void (`pr#10230 <http://github.com/ceph/ceph/pull/10230>`_, Michal Jarzabek) -* core: msg/Messenger: add const and override to function (`pr#10183 <http://github.com/ceph/ceph/pull/10183>`_, Michal Jarzabek) -* core: msg/async/AsyncConnection: replace Mutex with std::mutex for peformance (`issue#16714 <http://tracker.ceph.com/issues/16714>`_, `issue#16715 <http://tracker.ceph.com/issues/16715>`_, `pr#10340 <http://github.com/ceph/ceph/pull/10340>`_, Haomai Wang) -* core: msg/async/Event: ensure not refer to member variable which may destroyed (`issue#16714 <http://tracker.ceph.com/issues/16714>`_, `pr#10369 <http://github.com/ceph/ceph/pull/10369>`_, Haomai Wang) -* core: msg/async/kqueue: avoid remove nonexist kqueue event (`pr#9869 <http://github.com/ceph/ceph/pull/9869>`_, Haomai Wang) -* core: msg/async: Support close idle connection feature (`issue#16366 <http://tracker.ceph.com/issues/16366>`_, `pr#9783 <http://github.com/ceph/ceph/pull/9783>`_, Haomai Wang) -* core: msg/async: allow other async backend implementations (`pr#10264 <http://github.com/ceph/ceph/pull/10264>`_, Haomai Wang) -* core: msg/async: avoid set out of range ms_async_op_threads option (`pr#11200 <http://github.com/ceph/ceph/pull/11200>`_, Haomai Wang) -* core: msg/async: connect authorizer fix + recv_buf size (`pr#9784 <http://github.com/ceph/ceph/pull/9784>`_, Ilya Dryomov) -* core: msg/async: harden error logic handle (`pr#9781 <http://github.com/ceph/ceph/pull/9781>`_, Haomai Wang) -* core: msg/async: remove fd output in log prefix (`pr#11199 <http://github.com/ceph/ceph/pull/11199>`_, Haomai Wang) -* core: msg/async: remove file event lock (`issue#16554 <http://tracker.ceph.com/issues/16554>`_, `issue#16552 <http://tracker.ceph.com/issues/16552>`_, `pr#10090 <http://github.com/ceph/ceph/pull/10090>`_, Haomai Wang) -* core: msg/simple/Pipe: eliminating casts for the comparing of len and recv_max_prefetch (`pr#10273 <http://github.com/ceph/ceph/pull/10273>`_, zhang.zezhu) -* core: msg/simple: fix wrong condition checking of writing TAG_CLOSE on closing (`pr#10343 <http://github.com/ceph/ceph/pull/10343>`_, xie xingguo) -* core: msg/simple: wait dispatch_queue until all pipes closed (`issue#16472 <http://tracker.ceph.com/issues/16472>`_, `pr#9930 <http://github.com/ceph/ceph/pull/9930>`_, Haomai Wang) -* core: msg: make async backend default (`pr#10746 <http://github.com/ceph/ceph/pull/10746>`_, Haomai Wang) -* core: msg: mark daemons down on RST + ECONNREFUSED (`pr#8558 <http://github.com/ceph/ceph/pull/8558>`_, Piotr Dałek) -* core: os/FuseStore: fix several FuseStore issues (`pr#10723 <http://github.com/ceph/ceph/pull/10723>`_, Sage Weil) -* core: os/MemStore: move BufferlistObject to .cc file (`pr#10833 <http://github.com/ceph/ceph/pull/10833>`_, Michal Jarzabek) -* core: os/ObjectStore: fix return code of collection_empty() method (`pr#11050 <http://github.com/ceph/ceph/pull/11050>`_, xie xingguo) -* core: os/RocksDBStore: use effective Get API instead of iterator api (`pr#9411 <http://github.com/ceph/ceph/pull/9411>`_, Jianjian Huo, Haomai Wang, Mark Nelson) -* core: os/filestore/FDCache: fix bug when filestore_fd_cache_shards = 0 (`pr#11048 <http://github.com/ceph/ceph/pull/11048>`_, jimifm) -* core: os/filestore/FileJournal: error out if FileJournal is not a file (`issue#17307 <http://tracker.ceph.com/issues/17307>`_, `pr#11146 <http://github.com/ceph/ceph/pull/11146>`_, Kefu Chai) -* core: os/filestore: add sanity checks and cleanups for mount() process (`pr#9734 <http://github.com/ceph/ceph/pull/9734>`_, xie xingguo) -* core: os/filestore: disable use of splice by default (`pr#11113 <http://github.com/ceph/ceph/pull/11113>`_, Haomai Wang) -* core: osd/OSD.cc: remove repeated searching of map (`pr#10986 <http://github.com/ceph/ceph/pull/10986>`_, Michal Jarzabek) -* core: osd/OSD.cc: remove unneeded searching of maps (`pr#11039 <http://github.com/ceph/ceph/pull/11039>`_, Michal Jarzabek) -* core: osd/OSD.h: add const to member functions (`pr#11114 <http://github.com/ceph/ceph/pull/11114>`_, Michal Jarzabek) -* core: osd/OSD.h: move some members under private (`pr#11121 <http://github.com/ceph/ceph/pull/11121>`_, Michal Jarzabek) -* core: osd/OSD.h: remove unneeded line (`pr#8980 <http://github.com/ceph/ceph/pull/8980>`_, Michal Jarzabek) -* core: osd/OSDMonitor: misc. cleanups (`pr#10739 <http://github.com/ceph/ceph/pull/10739>`_, xie xingguo) -* core: osd/OSDMonitor: misc. fixes (`pr#10491 <http://github.com/ceph/ceph/pull/10491>`_, xie xingguo) -* core: osd/ReplicatedBackend: add sanity check during build_push_op() (`pr#9491 <http://github.com/ceph/ceph/pull/9491>`_, Yan Jun) -* core: osd/ReplicatedPG: for sync-read it don't cacl l_osd_op_r_prepare_lat. (`pr#10365 <http://github.com/ceph/ceph/pull/10365>`_, Jianpeng Ma) -* core: osd/ReplicatedPG: remove class redeclaration (`pr#11041 <http://github.com/ceph/ceph/pull/11041>`_, Michal Jarzabek) -* core: osd/ReplicatedPG: remove unused param "op" from generate_subop() (`pr#10811 <http://github.com/ceph/ceph/pull/10811>`_, jimifm) -* core: osd/Watch: add consts to member functions (`pr#10251 <http://github.com/ceph/ceph/pull/10251>`_, Michal Jarzabek) -* core: osd/osd_type: check if pool is gone during check_new_interval() (`pr#10859 <http://github.com/ceph/ceph/pull/10859>`_, xie xingguo) -* core: osd/osdmonitor: pool of objects and bytes beyond quota should all be warn (`pr#9085 <http://github.com/ceph/ceph/pull/9085>`_, huanwen ren) -* core: osdc/objecter: misc fixes (`pr#10826 <http://github.com/ceph/ceph/pull/10826>`_, xie xingguo) -* core: pass string by const ref and add override to virtual function (`pr#9082 <http://github.com/ceph/ceph/pull/9082>`_, Michal Jarzabek) -* core: qa/workunits/objectstore/test_fuse.sh: make test_fuse.sh work with filestore (`pr#11057 <http://github.com/ceph/ceph/pull/11057>`_, Sage Weil) -* core: rados: add option to include clones when doing flush or evict (`pr#9698 <http://github.com/ceph/ceph/pull/9698>`_, Mingxin Liu) -* core: subman: use replace instead of format (`issue#16961 <http://tracker.ceph.com/issues/16961>`_, `pr#10620 <http://github.com/ceph/ceph/pull/10620>`_, Loic Dachary) -* core: test/common/Throttle.cc: fix race in shutdown (`pr#10094 <http://github.com/ceph/ceph/pull/10094>`_, Samuel Just) -* core: test: add the necessary judgment (`pr#9694 <http://github.com/ceph/ceph/pull/9694>`_, huanwen ren) -* core: tox.ini: remove extraneous coverage --omit option (`pr#10943 <http://github.com/ceph/ceph/pull/10943>`_, Josh Durgin) -* core: udev: always populate /dev/disk/by-parttypeuuid (`issue#16351 <http://tracker.ceph.com/issues/16351>`_, `pr#9885 <http://github.com/ceph/ceph/pull/9885>`_, Loic Dachary) -* core: os/FuseStore: remove unneeded header file (`pr#10799 <http://github.com/ceph/ceph/pull/10799>`_, Michal Jarzabek) -* core: os/MemStore: move OmapIteratorImpl to cc file (`pr#10803 <http://github.com/ceph/ceph/pull/10803>`_, Michal Jarzabek) -* core: os/Memstore.h: add override to virtual functions (`pr#10801 <http://github.com/ceph/ceph/pull/10801>`_, Michal Jarzabek) -* core: os/Memstore: move PageSetObject class to .cc file (`pr#10817 <http://github.com/ceph/ceph/pull/10817>`_, Michal Jarzabek) -* core: os/bluestore: remove unused head file. (`pr#11186 <http://github.com/ceph/ceph/pull/11186>`_, Jianpeng Ma) -* core: safe_io: Improve portability by replacing loff_t type usage with off_t. (`pr#9767 <http://github.com/ceph/ceph/pull/9767>`_, John Coyle) -* core: src/kv/MemDB.cc: the type of the parameter of push_back() does not match the ops's value_type (`pr#10455 <http://github.com/ceph/ceph/pull/10455>`_, Willem Jan Withagen) -* core: msg/simple: apply prefetch policy more precisely (`pr#10344 <http://github.com/ceph/ceph/pull/10344>`_, xie xingguo) -* core: CompatSet.h: remove unneeded inline (`pr#10071 <http://github.com/ceph/ceph/pull/10071>`_, Michal Jarzabek) -* core: Objclass perm feedback (`pr#10313 <http://github.com/ceph/ceph/pull/10313>`_, Noah Watkins) -* core: arch/arm.c: remove unnecessary variable read for simplicity (`pr#10821 <http://github.com/ceph/ceph/pull/10821>`_, Weibing Zhang) -* crush: don't normalize input of crush_ln iteratively (`pr#10935 <http://github.com/ceph/ceph/pull/10935>`_, Piotr Dałek) -* crush: reset bucket->h.items[i] when removing tree item (`issue#16525 <http://tracker.ceph.com/issues/16525>`_, `pr#10093 <http://github.com/ceph/ceph/pull/10093>`_, Kefu Chai) -* crush: CrushCompiler.cc:884 (`pr#10952 <http://github.com/ceph/ceph/pull/10952>`_, xu biao) -* crush: CrushCompiler: error out as long as parse fails (`issue#17306 <http://tracker.ceph.com/issues/17306>`_, `pr#11144 <http://github.com/ceph/ceph/pull/11144>`_, Kefu Chai) -* doc: Add documentation about snapshots (`pr#10436 <http://github.com/ceph/ceph/pull/10436>`_, Greg Farnum) -* doc: Add two options to radosgw-admin.rst manpage (`issue#17281 <http://tracker.ceph.com/issues/17281>`_, `pr#11134 <http://github.com/ceph/ceph/pull/11134>`_, Thomas Serlin) -* doc: Changed config parameter "rgw keystone make new tenants" in radosgw multitenancy (`issue#17293 <http://tracker.ceph.com/issues/17293>`_, `pr#11127 <http://github.com/ceph/ceph/pull/11127>`_, SirishaGuduru) -* doc: Modification for "TEST S3 ACCESS" section in "INSTALL CEPH OBJECT GATEWAY" page (`pr#9089 <http://github.com/ceph/ceph/pull/9089>`_, la-sguduru) -* doc: Update developer docs for cmake paths (`pr#11163 <http://github.com/ceph/ceph/pull/11163>`_, John Spray) -* doc: add "--orphan-stale-secs" to radosgw-admin(8) (`issue#17280 <http://tracker.ceph.com/issues/17280>`_, `pr#11097 <http://github.com/ceph/ceph/pull/11097>`_, Ken Dreyer) -* doc: add $pid metavar conf doc (`pr#11172 <http://github.com/ceph/ceph/pull/11172>`_, Patrick Donnelly) -* doc: add Backporting section to Essentials chapter (`issue#15497 <http://tracker.ceph.com/issues/15497>`_, `pr#10457 <http://github.com/ceph/ceph/pull/10457>`_, Nathan Cutler) -* doc: add Prepare tenant section to Testing in the cloud chapter (`pr#10413 <http://github.com/ceph/ceph/pull/10413>`_, Nathan Cutler) -* doc: add Upload logs to archive server section... (`pr#10414 <http://github.com/ceph/ceph/pull/10414>`_, Nathan Cutler) -* doc: add client config ref (`issue#16743 <http://tracker.ceph.com/issues/16743>`_, `pr#10434 <http://github.com/ceph/ceph/pull/10434>`_, Patrick Donnelly) -* doc: add graphic for cap bit field (`pr#10897 <http://github.com/ceph/ceph/pull/10897>`_, Patrick Donnelly) -* doc: add missing PR to hammer 0.94.8 release notes (`pr#10900 <http://github.com/ceph/ceph/pull/10900>`_, Nathan Cutler) -* doc: add openSUSE instructions to quick-start-preflight (`pr#10454 <http://github.com/ceph/ceph/pull/10454>`_, Nathan Cutler) -* doc: add rgw_enable_usage_log option in Rados Gateway admin guide (`issue#16604 <http://tracker.ceph.com/issues/16604>`_, `pr#10159 <http://github.com/ceph/ceph/pull/10159>`_, Mike Hackett) -* doc: add troubleshooting steps for ceph-fuse (`pr#10374 <http://github.com/ceph/ceph/pull/10374>`_, Ken Dreyer) -* doc: admin/build-doc: bypass sanity check if building doc (`issue#16940 <http://tracker.ceph.com/issues/16940>`_, `pr#10623 <http://github.com/ceph/ceph/pull/10623>`_, Kefu Chai) -* doc: ceph-authtool man page option is --print-key not --print (`pr#9731 <http://github.com/ceph/ceph/pull/9731>`_, Brad Hubbard) -* doc: ceph-deploy mon add doesn't take multiple nodes (`pr#10085 <http://github.com/ceph/ceph/pull/10085>`_, Chengwei Yang) -* doc: clarify rbd size units (`pr#11303 <http://github.com/ceph/ceph/pull/11303>`_, Ilya Dryomov) -* doc: cleanup outdated radosgw description (`pr#11248 <http://github.com/ceph/ceph/pull/11248>`_, Jiaying Ren) -* doc: describe libvirt client logging (`pr#10542 <http://github.com/ceph/ceph/pull/10542>`_, Ken Dreyer) -* doc: do not list all major versions in get-packages.rst (`pr#10899 <http://github.com/ceph/ceph/pull/10899>`_, Nathan Cutler) -* doc: doc/cephfs: explain the various health messages (`pr#10244 <http://github.com/ceph/ceph/pull/10244>`_, John Spray) -* doc: doc/dev: Fix missing code section due to no lexer for "none" (`pr#9083 <http://github.com/ceph/ceph/pull/9083>`_, Brad Hubbard) -* doc: doc/radosgw: fix description of response elements 'Part' (`pr#10641 <http://github.com/ceph/ceph/pull/10641>`_, weiqiaomiao) -* doc: doc/radosgw: rename config.rst to config-fcgi.rst (`pr#10381 <http://github.com/ceph/ceph/pull/10381>`_, Nathan Cutler) -* doc: extend the CephFS troubleshooting guide (`pr#10458 <http://github.com/ceph/ceph/pull/10458>`_, Greg Farnum) -* doc: fix broken link in SHEC erasure code plugin (`issue#16996 <http://tracker.ceph.com/issues/16996>`_, `pr#10675 <http://github.com/ceph/ceph/pull/10675>`_, Albert Tu) -* doc: fix description for rsize and rasize (`pr#11101 <http://github.com/ceph/ceph/pull/11101>`_, Andreas Gerstmayr) -* doc: fix rados/configuration/osd-config-ref.rst (`pr#10619 <http://github.com/ceph/ceph/pull/10619>`_, Chengwei Yang) -* doc: fix singleton example in Developer Guide (`pr#10830 <http://github.com/ceph/ceph/pull/10830>`_, Nathan Cutler) -* doc: fix some nits in release notes and releases table (`pr#10903 <http://github.com/ceph/ceph/pull/10903>`_, Nathan Cutler) -* doc: fix standby replay config (`issue#16664 <http://tracker.ceph.com/issues/16664>`_, `pr#10268 <http://github.com/ceph/ceph/pull/10268>`_, Patrick Donnelly) -* doc: fix wrong osdkeepalive name in mount.ceph manpage (`pr#10840 <http://github.com/ceph/ceph/pull/10840>`_, Zhi Zhang) -* doc: fix/add changelog for 10.2.2, 0.94.7, 0.94.8 (`pr#10895 <http://github.com/ceph/ceph/pull/10895>`_, Sage Weil) -* doc: format 2 now is the default image format (`pr#10705 <http://github.com/ceph/ceph/pull/10705>`_, Chengwei Yang) -* doc: lgtm (build verified f23) (`pr#9745 <http://github.com/ceph/ceph/pull/9745>`_, weiqiaomiao) -* doc: mailmap updates for upcoming 11.0.0 (`pr#9301 <http://github.com/ceph/ceph/pull/9301>`_, Yann Dupont) -* doc: manual instructions to set up mds daemon (`pr#11115 <http://github.com/ceph/ceph/pull/11115>`_, Peter Maloney) -* doc: missing "make vstart" in quick_guide.rst (`pr#11226 <http://github.com/ceph/ceph/pull/11226>`_, Leo Zhang) -* doc: more details for pool deletion (`pr#10190 <http://github.com/ceph/ceph/pull/10190>`_, Ken Dreyer) -* doc: peering.rst, fix typo (`pr#10131 <http://github.com/ceph/ceph/pull/10131>`_, Brad Hubbard) -* doc: perf_counters.rst fix trivial typo (`pr#10292 <http://github.com/ceph/ceph/pull/10292>`_, Brad Hubbard) -* doc: rbdmap: specify bash shell interpreter (`issue#16608 <http://tracker.ceph.com/issues/16608>`_, `pr#10733 <http://github.com/ceph/ceph/pull/10733>`_, Jason Dillaman) -* doc: release-notes.rst: draft 0.94.8 release notes (`pr#10730 <http://github.com/ceph/ceph/pull/10730>`_, Nathan Cutler) -* doc: remove btrfs contradiction (`pr#9758 <http://github.com/ceph/ceph/pull/9758>`_, Nathan Cutler) -* doc: remove i386 from minimal hardware recommendations (`pr#10276 <http://github.com/ceph/ceph/pull/10276>`_, Kefu Chai) -* doc: remove old references to inktank premium support (`pr#11182 <http://github.com/ceph/ceph/pull/11182>`_, Alfredo Deza) -* doc: remove the description of deleted options (`issue#17041 <http://tracker.ceph.com/issues/17041>`_, `pr#10741 <http://github.com/ceph/ceph/pull/10741>`_, MinSheng Lin) -* doc: rgw, doc: fix formatting around Keystone-related options. (`pr#10331 <http://github.com/ceph/ceph/pull/10331>`_, Radoslaw Zarzynski) -* doc: rgw/doc: fix indent (`pr#10676 <http://github.com/ceph/ceph/pull/10676>`_, Yan Jun) -* doc: rm SysV instructions, add systemd (`pr#10184 <http://github.com/ceph/ceph/pull/10184>`_, Ken Dreyer) -* doc: silence sphinx warnings (`pr#10621 <http://github.com/ceph/ceph/pull/10621>`_, Kefu Chai) -* doc: small standby doc edits (`pr#10479 <http://github.com/ceph/ceph/pull/10479>`_, Patrick Donnelly) -* doc: update CephFS "early adopters" info (`pr#10068 <http://github.com/ceph/ceph/pull/10068>`_, John Spray) -* doc: update canonical tarballs URL (`pr#9695 <http://github.com/ceph/ceph/pull/9695>`_, Ken Dreyer) -* doc: update rbd glance configuration notes (`pr#10629 <http://github.com/ceph/ceph/pull/10629>`_, Jason Dillaman) -* doc: update s3 static webiste feature support status (`pr#10223 <http://github.com/ceph/ceph/pull/10223>`_, Jiaying Ren) -* doc: changelog: add v10.2.3 (`pr#11238 <http://github.com/ceph/ceph/pull/11238>`_, Abhishek Lekshmanan) -* doc: install: Use https:// for download.ceph.com (`pr#10709 <http://github.com/ceph/ceph/pull/10709>`_, Colin Walters) -* doc: release-notes: v0.94.9 (`pr#10927 <http://github.com/ceph/ceph/pull/10927>`_, Sage Weil) -* doc: release-notes: v10.2.3 jewel (`pr#11234 <http://github.com/ceph/ceph/pull/11234>`_, Abhishek Lekshmanan) -* doc: Add UK mirror and update copyright (`pr#10531 <http://github.com/ceph/ceph/pull/10531>`_, Patrick McGarry) -* doc: README.md: replace package build instructions with tarball instructions (`pr#10829 <http://github.com/ceph/ceph/pull/10829>`_, Sage Weil) -* doc: Removed reference about pool ownership based on BZ#1368528 (`pr#11063 <http://github.com/ceph/ceph/pull/11063>`_, Bara Ancincova) -* librados: use bufferlist instead of buffer::list in public header (`pr#10632 <http://github.com/ceph/ceph/pull/10632>`_, Ryne Li) -* librados: Rados-stripper: Flexible string matching for not found attributes (`pr#10577 <http://github.com/ceph/ceph/pull/10577>`_, Willem Jan Withagen) -* librados: librados examples: link and include from current source tree by default. (`issue#15100 <http://tracker.ceph.com/issues/15100>`_, `pr#8189 <http://github.com/ceph/ceph/pull/8189>`_, Jesse Williamson) -* librbd: API methods to directly acquire and release the exclusive lock (`issue#15632 <http://tracker.ceph.com/issues/15632>`_, `pr#9592 <http://github.com/ceph/ceph/pull/9592>`_, Mykola Golub) -* librbd: add consistency groups operations with images (`pr#10034 <http://github.com/ceph/ceph/pull/10034>`_, Victor Denisov) -* librbd: add explicit shrink check while resizing images (`pr#9878 <http://github.com/ceph/ceph/pull/9878>`_, Vaibhav Bhembre) -* librbd: asynchronous v2 image creation (`issue#15321 <http://tracker.ceph.com/issues/15321>`_, `pr#9585 <http://github.com/ceph/ceph/pull/9585>`_, Venky Shankar) -* librbd: backward/forward compatibility for update_features (`issue#17330 <http://tracker.ceph.com/issues/17330>`_, `pr#11155 <http://github.com/ceph/ceph/pull/11155>`_, Jason Dillaman) -* librbd: block name prefix might overflow fixed size C-string (`issue#17310 <http://tracker.ceph.com/issues/17310>`_, `pr#11148 <http://github.com/ceph/ceph/pull/11148>`_, Jason Dillaman) -* librbd: cache was not switching to writeback after first flush (`issue#16654 <http://tracker.ceph.com/issues/16654>`_, `pr#10762 <http://github.com/ceph/ceph/pull/10762>`_, Jason Dillaman) -* librbd: corrected use-after-free in ImageWatcher (`issue#17289 <http://tracker.ceph.com/issues/17289>`_, `pr#11112 <http://github.com/ceph/ceph/pull/11112>`_, Jason Dillaman) -* librbd: deadlock when replaying journal during image open (`issue#17188 <http://tracker.ceph.com/issues/17188>`_, `pr#10945 <http://github.com/ceph/ceph/pull/10945>`_, Jason Dillaman) -* librbd: delay acquiring lock if image watch has failed (`issue#16923 <http://tracker.ceph.com/issues/16923>`_, `pr#10574 <http://github.com/ceph/ceph/pull/10574>`_, Jason Dillaman) -* librbd: discard hangs when 'rbd_skip_partial_discard' is enabled (`issue#16386 <http://tracker.ceph.com/issues/16386>`_, `pr#10060 <http://github.com/ceph/ceph/pull/10060>`_, Mykola Golub) -* librbd: extract group module from librbd/internal (`pr#11070 <http://github.com/ceph/ceph/pull/11070>`_, Victor Denisov) -* librbd: failed assertion after shrinking a clone image twice (`issue#16561 <http://tracker.ceph.com/issues/16561>`_, `pr#10072 <http://github.com/ceph/ceph/pull/10072>`_, Jason Dillaman) -* librbd: fix missing return statement if failed to get mirror image state (`pr#10136 <http://github.com/ceph/ceph/pull/10136>`_, runsisi) -* librbd: fix possible inconsistent state when disabling mirroring fails (`issue#16984 <http://tracker.ceph.com/issues/16984>`_, `pr#10711 <http://github.com/ceph/ceph/pull/10711>`_, Jason Dillaman) -* librbd: ignore partial refresh error when acquiring exclusive lock (`issue#17227 <http://tracker.ceph.com/issues/17227>`_, `pr#11044 <http://github.com/ceph/ceph/pull/11044>`_, Jason Dillaman) -* librbd: initial hooks for client-side, image-extent cache in IO path (`pr#9121 <http://github.com/ceph/ceph/pull/9121>`_, Jason Dillaman) -* librbd: interlock image refresh and exclusive lock operations (`issue#16773 <http://tracker.ceph.com/issues/16773>`_, `issue#17015 <http://tracker.ceph.com/issues/17015>`_, `pr#10770 <http://github.com/ceph/ceph/pull/10770>`_, Jason Dillaman) -* librbd: memory leak in MirroringWatcher::notify_image_updated (`pr#11306 <http://github.com/ceph/ceph/pull/11306>`_, Mykola Golub) -* librbd: optimize away unnecessary object map updates (`issue#16707 <http://tracker.ceph.com/issues/16707>`_, `issue#16689 <http://tracker.ceph.com/issues/16689>`_, `pr#10332 <http://github.com/ceph/ceph/pull/10332>`_, Jason Dillaman) -* librbd: optionally unregister "laggy" journal clients (`issue#14738 <http://tracker.ceph.com/issues/14738>`_, `pr#10378 <http://github.com/ceph/ceph/pull/10378>`_, Mykola Golub) -* librbd: permit disabling journaling if in corrupt state (`issue#16740 <http://tracker.ceph.com/issues/16740>`_, `pr#10712 <http://github.com/ceph/ceph/pull/10712>`_, Jason Dillaman) -* librbd: possible deadlock if cluster connection closed after image (`issue#17254 <http://tracker.ceph.com/issues/17254>`_, `pr#11037 <http://github.com/ceph/ceph/pull/11037>`_, Jason Dillaman) -* librbd: potential deadlock closing image with in-flight readahead (`issue#17198 <http://tracker.ceph.com/issues/17198>`_, `pr#11152 <http://github.com/ceph/ceph/pull/11152>`_, Jason Dillaman) -* librbd: potential double-unwatch of watch handle upon error (`issue#17210 <http://tracker.ceph.com/issues/17210>`_, `pr#10974 <http://github.com/ceph/ceph/pull/10974>`_, Jason Dillaman) -* librbd: potential seg fault when blacklisting an image client (`issue#17251 <http://tracker.ceph.com/issues/17251>`_, `pr#11034 <http://github.com/ceph/ceph/pull/11034>`_, Jason Dillaman) -* librbd: prevent creation of clone from non-primary mirrored image (`issue#16449 <http://tracker.ceph.com/issues/16449>`_, `pr#10123 <http://github.com/ceph/ceph/pull/10123>`_, Mykola Golub) -* librbd: prevent creation of v2 image ids that are too large (`issue#16887 <http://tracker.ceph.com/issues/16887>`_, `pr#10581 <http://github.com/ceph/ceph/pull/10581>`_, Jason Dillaman) -* mds: Add path filtering for dump cache (`issue#11171 <http://tracker.ceph.com/issues/11171>`_, `pr#9925 <http://github.com/ceph/ceph/pull/9925>`_, Douglas Fuller) -* mds: Kill C_SaferCond in evict_sessions() (`issue#16288 <http://tracker.ceph.com/issues/16288>`_, `pr#9971 <http://github.com/ceph/ceph/pull/9971>`_, Douglas Fuller) -* mds: Return "committing" rather than "committed" member in get_committing (`pr#10250 <http://github.com/ceph/ceph/pull/10250>`_, Greg Farnum) -* mds: Set mds_snap_max_uid to 4294967294 (`pr#11016 <http://github.com/ceph/ceph/pull/11016>`_, Wido den Hollander) -* mds: add assertion in handle_slave_rename_prep (`issue#16807 <http://tracker.ceph.com/issues/16807>`_, `pr#10429 <http://github.com/ceph/ceph/pull/10429>`_, John Spray) -* mds: add assertions for standby_daemons invariant (`issue#16592 <http://tracker.ceph.com/issues/16592>`_, `pr#10316 <http://github.com/ceph/ceph/pull/10316>`_, Patrick Donnelly) -* mds: add health warning for oversized cache (`issue#16570 <http://tracker.ceph.com/issues/16570>`_, `pr#10245 <http://github.com/ceph/ceph/pull/10245>`_, John Spray) -* mds: add maximum fragment size constraint (`issue#16164 <http://tracker.ceph.com/issues/16164>`_, `pr#9789 <http://github.com/ceph/ceph/pull/9789>`_, Patrick Donnelly) -* mds: add perf counters for MDLog replay and SessionMap (`pr#10539 <http://github.com/ceph/ceph/pull/10539>`_, John Spray) -* mds: catch duplicates in DamageTable (`issue#17173 <http://tracker.ceph.com/issues/17173>`_, `pr#11137 <http://github.com/ceph/ceph/pull/11137>`_, John Spray) -* mds: fix Session::check_access() (`issue#16358 <http://tracker.ceph.com/issues/16358>`_, `pr#9769 <http://github.com/ceph/ceph/pull/9769>`_, Yan, Zheng) -* mds: fix daemon selection when starting ranks (`pr#10540 <http://github.com/ceph/ceph/pull/10540>`_, John Spray) -* mds: fix shutting down mds timed-out due to deadlock (`issue#16396 <http://tracker.ceph.com/issues/16396>`_, `pr#9884 <http://github.com/ceph/ceph/pull/9884>`_, Zhi Zhang) -* mds: fix up _dispatch ref-counting semantics (`pr#10533 <http://github.com/ceph/ceph/pull/10533>`_, Greg Farnum) -* mds: fixup dump Formatter' type error; add path_ino and is_primary in the CDentry::dump() (`pr#10119 <http://github.com/ceph/ceph/pull/10119>`_, huanwen ren) -* mds: handle blacklisting during journal recovery (`issue#17236 <http://tracker.ceph.com/issues/17236>`_, `pr#11138 <http://github.com/ceph/ceph/pull/11138>`_, John Spray) -* mds: log path with CDir damage messages (`issue#16973 <http://tracker.ceph.com/issues/16973>`_, `pr#10996 <http://github.com/ceph/ceph/pull/10996>`_, John Spray) -* mds: move Finisher to unlocked shutdown (`issue#16042 <http://tracker.ceph.com/issues/16042>`_, `pr#10142 <http://github.com/ceph/ceph/pull/10142>`_, Patrick Donnelly) -* mds: populate DamageTable from scrub and log more quietly (`issue#16016 <http://tracker.ceph.com/issues/16016>`_, `pr#11136 <http://github.com/ceph/ceph/pull/11136>`_, John Spray) -* mds: remove fail-safe queueing replay request (`issue#17271 <http://tracker.ceph.com/issues/17271>`_, `pr#11078 <http://github.com/ceph/ceph/pull/11078>`_, Yan, Zheng) -* mds: remove max_mds config option (`issue#17105 <http://tracker.ceph.com/issues/17105>`_, `pr#10914 <http://github.com/ceph/ceph/pull/10914>`_, Patrick Donnelly) -* mds: remove unused MDSDaemon::objecter (`pr#10566 <http://github.com/ceph/ceph/pull/10566>`_, Patrick Donnelly) -* mds: snap failover fixes (`pr#9955 <http://github.com/ceph/ceph/pull/9955>`_, Yan, Zheng) -* mds: trim null dentries proactively (`issue#16919 <http://tracker.ceph.com/issues/16919>`_, `pr#10606 <http://github.com/ceph/ceph/pull/10606>`_, John Spray) -* mds: unuse Class and cleanup (`pr#10399 <http://github.com/ceph/ceph/pull/10399>`_, huanwen ren) -* mds: use reference to avoid copy (`pr#10191 <http://github.com/ceph/ceph/pull/10191>`_, Patrick Donnelly) -* mds: MDCache.h: remove unneeded access specifier (`pr#10901 <http://github.com/ceph/ceph/pull/10901>`_, Michal Jarzabek) -* mds: MDSDaemon: move C_MDS_Tick class to .cc file (`pr#11220 <http://github.com/ceph/ceph/pull/11220>`_, Michal Jarzabek) -* mgr: implement con reset handling (`pr#11299 <http://github.com/ceph/ceph/pull/11299>`_, Sage Weil) -* mgr: squash compiler warnings (`pr#11307 <http://github.com/ceph/ceph/pull/11307>`_, John Spray) -* mon: MonClient may hang on pinging an unresponsive monitor (`pr#9259 <http://github.com/ceph/ceph/pull/9259>`_, xie xingguo) -* mon: Monitor: validate prefix on handle_command() (`issue#16297 <http://tracker.ceph.com/issues/16297>`_, `pr#9700 <http://github.com/ceph/ceph/pull/9700>`_, You Ji) -* mon: OSDMonitor: Missing nearfull flag set (`pr#11082 <http://github.com/ceph/ceph/pull/11082>`_, Igor Podoski) -* mon: change osdmap flags set and unset messages (`issue#15983 <http://tracker.ceph.com/issues/15983>`_, `pr#9252 <http://github.com/ceph/ceph/pull/9252>`_, Vikhyat Umrao) -* mon: clear list in better way (`pr#9718 <http://github.com/ceph/ceph/pull/9718>`_, song baisen) -* mon: do not recalculate 'to_remove' when it's known (`pr#9717 <http://github.com/ceph/ceph/pull/9717>`_, song baisen) -* mon: misc cleanups (`pr#10591 <http://github.com/ceph/ceph/pull/10591>`_, xie xingguo) -* mon: remove the redundant cancel_probe_timeout function (`pr#10261 <http://github.com/ceph/ceph/pull/10261>`_, song baisen) -* mon: remove the redundant is_active judge in PaxosService (`pr#9749 <http://github.com/ceph/ceph/pull/9749>`_, song baisen) -* mon: tear down standby replays on MDS rank stop (`issue#16909 <http://tracker.ceph.com/issues/16909>`_, `pr#10628 <http://github.com/ceph/ceph/pull/10628>`_, John Spray) -* mon: use clearer code structure (`pr#10192 <http://github.com/ceph/ceph/pull/10192>`_, Patrick Donnelly) -* mon: validate states transmitted in beacons (`issue#16592 <http://tracker.ceph.com/issues/16592>`_, `pr#10428 <http://github.com/ceph/ceph/pull/10428>`_, John Spray) -* mon: wait 10m (not 5m) before marking down OSDs out (`pr#11184 <http://github.com/ceph/ceph/pull/11184>`_, Sage Weil) -* mon: write fsid use the right return value (`pr#10197 <http://github.com/ceph/ceph/pull/10197>`_, song baisen) -* mon: Elector:move C_ElectionExpire class to cc file (`pr#10416 <http://github.com/ceph/ceph/pull/10416>`_, Michal Jarzabek) -* mon: HealthMonitor: add override to virtual functs (`pr#10549 <http://github.com/ceph/ceph/pull/10549>`_, Michal Jarzabek) -* mon: HealthMonitor: remove unneeded include (`pr#10563 <http://github.com/ceph/ceph/pull/10563>`_, Michal Jarzabek) -* mon: MonClient.h: delete copy constr and assing op (`pr#10599 <http://github.com/ceph/ceph/pull/10599>`_, Michal Jarzabek) -* mon: MonClient: move C_CancelMonCommand to cc file (`pr#10392 <http://github.com/ceph/ceph/pull/10392>`_, Michal Jarzabek) -* mon: MonClient: move C_Tick struct to cc file (`pr#10383 <http://github.com/ceph/ceph/pull/10383>`_, Michal Jarzabek) -* mon: Monitor.h: add override to virtual functions (`pr#10515 <http://github.com/ceph/ceph/pull/10515>`_, Michal Jarzabek) -* mon: Monitor: move C_Scrub, C_ScrubTimeout to .cc (`pr#10513 <http://github.com/ceph/ceph/pull/10513>`_, Michal Jarzabek) -* mon: OSDMonitor.cc: remove unneeded casts (`pr#10575 <http://github.com/ceph/ceph/pull/10575>`_, Michal Jarzabek) -* mon: Paxos: move classes to .cc file (`pr#11215 <http://github.com/ceph/ceph/pull/11215>`_, Michal Jarzabek) -* mon: PaxosService: move classes to cc file (`pr#10529 <http://github.com/ceph/ceph/pull/10529>`_, Michal Jarzabek) -* mon: remove the redundant list swap in paxos commit_proposal (`pr#10011 <http://github.com/ceph/ceph/pull/10011>`_, song baisen) -* msgr: set close on exec flag (`issue#16390 <http://tracker.ceph.com/issues/16390>`_, `pr#9772 <http://github.com/ceph/ceph/pull/9772>`_, Kefu Chai) -* msgr: Accepter.h: add override to virtual function (`pr#10422 <http://github.com/ceph/ceph/pull/10422>`_, Michal Jarzabek) -* msgr: Accepter: move include to cc file (`pr#10441 <http://github.com/ceph/ceph/pull/10441>`_, Michal Jarzabek) -* msgr: AsyncConnection: add const to mem functions (`pr#10302 <http://github.com/ceph/ceph/pull/10302>`_, Michal Jarzabek) -* msgr: AsyncMessenger.cc: remove unneeded cast (`pr#10141 <http://github.com/ceph/ceph/pull/10141>`_, Michal Jarzabek) -* msgr: AsyncMessenger: add const to function (`pr#10114 <http://github.com/ceph/ceph/pull/10114>`_, Michal Jarzabek) -* msgr: AsyncMessenger: move C_handle_reap class to cc (`pr#10113 <http://github.com/ceph/ceph/pull/10113>`_, Michal Jarzabek) -* msgr: AsyncMessenger: move C_processor_accept class (`pr#9991 <http://github.com/ceph/ceph/pull/9991>`_, Michal Jarzabek) -* msgr: AsyncMessenger: remove unneeded include file (`pr#10195 <http://github.com/ceph/ceph/pull/10195>`_, Michal Jarzabek) -* msgr: AsyncMessenger: remove unused function (`pr#10163 <http://github.com/ceph/ceph/pull/10163>`_, Michal Jarzabek) -* msgr: EventKqueue.h: add override to virtual func (`pr#10318 <http://github.com/ceph/ceph/pull/10318>`_, Michal Jarzabek) -* msgr: EventPoll.h: add override to virtual functions (`pr#10314 <http://github.com/ceph/ceph/pull/10314>`_, Michal Jarzabek) -* msgr: EventSelect.h: add override to virtual funct (`pr#10321 <http://github.com/ceph/ceph/pull/10321>`_, Michal Jarzabek) -* msgr: EventSelect: move includes to cc file (`pr#10333 <http://github.com/ceph/ceph/pull/10333>`_, Michal Jarzabek) -* msgr: FastStrategy.h: add override to virtual funct (`pr#10482 <http://github.com/ceph/ceph/pull/10482>`_, Michal Jarzabek) -* msgr: Message.h: add const to member function (`pr#10354 <http://github.com/ceph/ceph/pull/10354>`_, Michal Jarzabek) -* msgr: Message.h: remove code duplication (`pr#10356 <http://github.com/ceph/ceph/pull/10356>`_, Michal Jarzabek) -* msgr: QueueStrategy: add override to virtual functs (`pr#10503 <http://github.com/ceph/ceph/pull/10503>`_, Michal Jarzabek) -* msgr: Stack.h: delete copy constr and assign op (`pr#11107 <http://github.com/ceph/ceph/pull/11107>`_, Michal Jarzabek) -* msgr: async/Event.h: add const to member function (`pr#10224 <http://github.com/ceph/ceph/pull/10224>`_, Michal Jarzabek) -* msgr: async: remove unused code. (`pr#11247 <http://github.com/ceph/ceph/pull/11247>`_, Jianpeng Ma) -* osd: bail out if transaction size overflows (`issue#16982 <http://tracker.ceph.com/issues/16982>`_, `pr#10753 <http://github.com/ceph/ceph/pull/10753>`_, Kefu Chai) -* osd: cleanup options and other redundancies (`pr#10450 <http://github.com/ceph/ceph/pull/10450>`_, xie xingguo) -* osd: drop unused variables/methods (`pr#10559 <http://github.com/ceph/ceph/pull/10559>`_, xie xingguo) -* osd: fix the mem leak of RepGather (`issue#16801 <http://tracker.ceph.com/issues/16801>`_, `pr#10423 <http://github.com/ceph/ceph/pull/10423>`_, Kefu Chai) -* osd: fixups to explicitly persistenting missing sets (`pr#10405 <http://github.com/ceph/ceph/pull/10405>`_, Samuel Just) -* osd: increment stats on recovery pull also (`issue#16277 <http://tracker.ceph.com/issues/16277>`_, `pr#10152 <http://github.com/ceph/ceph/pull/10152>`_, Kefu Chai) -* osd: limit omap data in push op (`issue#16128 <http://tracker.ceph.com/issues/16128>`_, `pr#9894 <http://github.com/ceph/ceph/pull/9894>`_, Wanlong Gao) -* osd: minor performance improvements (`pr#10470 <http://github.com/ceph/ceph/pull/10470>`_, xie xingguo) -* osd: minor performance improvements and fixes (`pr#10526 <http://github.com/ceph/ceph/pull/10526>`_, xie xingguo) -* osd: misc fixes and cleanups (`pr#10610 <http://github.com/ceph/ceph/pull/10610>`_, xie xingguo) -* osd: miscellaneous fixes (`pr#10572 <http://github.com/ceph/ceph/pull/10572>`_, xie xingguo) -* osd: more cleanups (`pr#10548 <http://github.com/ceph/ceph/pull/10548>`_, xie xingguo) -* osd: object class loading and execution permissions (`pr#9972 <http://github.com/ceph/ceph/pull/9972>`_, Noah Watkins) -* osd: pass shared_ptr by const reference (`pr#11266 <http://github.com/ceph/ceph/pull/11266>`_, Michal Jarzabek) -* osd: persist the missing set explicitly (`pr#10334 <http://github.com/ceph/ceph/pull/10334>`_, Samuel Just) -* osd: remove dispatch queue check since we don't queue hb message to this (`pr#9947 <http://github.com/ceph/ceph/pull/9947>`_, Haomai Wang) -* osd: remove duplicated function (`pr#9117 <http://github.com/ceph/ceph/pull/9117>`_, Wei Jin) -* osd: replace ceph:atomic_t with std::atomic in osd module. (`pr#9138 <http://github.com/ceph/ceph/pull/9138>`_, Xiaowei Chen) -* osd: should not look up an empty pg (`issue#17380 <http://tracker.ceph.com/issues/17380>`_, `pr#11208 <http://github.com/ceph/ceph/pull/11208>`_, Kefu Chai, Loic Dachary) -* osd: small cleanups (`pr#9980 <http://github.com/ceph/ceph/pull/9980>`_, Wanlong Gao) -* osd: subscribe for old osdmaps when pause flag is set (`issue#17023 <http://tracker.ceph.com/issues/17023>`_, `pr#10725 <http://github.com/ceph/ceph/pull/10725>`_, Kefu Chai) -* osd:preserve allocation hint attribute during recovery (`pr#9452 <http://github.com/ceph/ceph/pull/9452>`_, yaoning) -* osd: osd-fast-mark-down.sh: fix typo in variable assignments (`pr#11224 <http://github.com/ceph/ceph/pull/11224>`_, Willem Jan Withagen) -* osd: OSD.cc: initialise variable at definition (`pr#11099 <http://github.com/ceph/ceph/pull/11099>`_, Michal Jarzabek) -* osd: OSD.cc: remove unneeded searching of map (`pr#11000 <http://github.com/ceph/ceph/pull/11000>`_, Michal Jarzabek) -* osd: OSD.h: make some members private (`pr#11085 <http://github.com/ceph/ceph/pull/11085>`_, Michal Jarzabek) -* osd: PG.cc: remove unneeded use of count (`pr#11228 <http://github.com/ceph/ceph/pull/11228>`_, Michal Jarzabek) -* osd: PGBackend.h: move structs to .cc file (`pr#10975 <http://github.com/ceph/ceph/pull/10975>`_, Michal Jarzabek) -* osd: ReplicatedBackend: move classes to cc file (`pr#10967 <http://github.com/ceph/ceph/pull/10967>`_, Michal Jarzabek) -* osd: ReplicatedPG.h: add override to virtual funct (`pr#11271 <http://github.com/ceph/ceph/pull/11271>`_, Michal Jarzabek) -* osd: ReplicatedPG: move classes to .cc file (`pr#10971 <http://github.com/ceph/ceph/pull/10971>`_, Michal Jarzabek) -* osd: ReplicatedPG:move C_OSD_OnApplied class to cc (`pr#11288 <http://github.com/ceph/ceph/pull/11288>`_, Michal Jarzabek) -* osd: Watch.h: remove unneeded forward declaration (`pr#10269 <http://github.com/ceph/ceph/pull/10269>`_, Michal Jarzabek) -* osd: osdc/ObjectCacher.h: add const to member functions (`pr#9569 <http://github.com/ceph/ceph/pull/9569>`_, Michal Jarzabek) -* osd: osdc/ObjectCacher.h: add const to member functions (`pr#9652 <http://github.com/ceph/ceph/pull/9652>`_, Michal Jarzabek) -* osd: osdc/Objecter: move RequestStateHook class to .cc (`pr#10734 <http://github.com/ceph/ceph/pull/10734>`_, Michal Jarzabek) -* pybind: Port Python-based tests and remaining Python bindings to Python 3 (`pr#10177 <http://github.com/ceph/ceph/pull/10177>`_, Oleh Prypin) -* pybind: Rework cephfs/setup.py for PyPI (`pr#10315 <http://github.com/ceph/ceph/pull/10315>`_, Anirudha Bose) -* pybind: Rework rbd/setup.py for PyPI (`issue#16940 <http://tracker.ceph.com/issues/16940>`_, `pr#10376 <http://github.com/ceph/ceph/pull/10376>`_, Anirudha Bose) -* pybind: global/signal_handler: dump cmdline instead of arg[0] (`pr#10345 <http://github.com/ceph/ceph/pull/10345>`_, Kefu Chai) -* pybind: make rados ready for PyPI (`pr#9833 <http://github.com/ceph/ceph/pull/9833>`_, Anirudha Bose) -* pybind: pybind/ceph_argparse: handle non ascii unicode args (`issue#12287 <http://tracker.ceph.com/issues/12287>`_, `pr#8943 <http://github.com/ceph/ceph/pull/8943>`_, Kefu Chai) -* pybind: Python 3 compatibility for workunits (`pr#10815 <http://github.com/ceph/ceph/pull/10815>`_, Anirudha Bose) -* rbd: Allow user to remove snapshot with --force to auto flatten children (`pr#10087 <http://github.com/ceph/ceph/pull/10087>`_, Dongsheng Yang) -* rbd: Reviewed-off-by: Ilya Dryomov <idryomov@gmail.com> (`issue#16171 <http://tracker.ceph.com/issues/16171>`_, `pr#10481 <http://github.com/ceph/ceph/pull/10481>`_, Jason Dillaman) -* rbd: Reviewed-off-by: Ilya Dryomov <idryomov@gmail.com> (`issue#17030 <http://tracker.ceph.com/issues/17030>`_, `pr#10735 <http://github.com/ceph/ceph/pull/10735>`_, Jason Dillaman) -* rbd: bench io-size should not be larger than image size (`issue#16967 <http://tracker.ceph.com/issues/16967>`_, `pr#10708 <http://github.com/ceph/ceph/pull/10708>`_, Jason Dillaman) -* rbd: cleanup - Proxied operations shouldn't result in error messages if replayed (`issue#16130 <http://tracker.ceph.com/issues/16130>`_, `pr#9724 <http://github.com/ceph/ceph/pull/9724>`_, Vikhyat Umrao) -* rbd: cls_rbd: clean up status from rbd-mirror if image removed (`pr#11142 <http://github.com/ceph/ceph/pull/11142>`_, Huan Zhang) -* rbd: cls_rbd: set omap values in batch during image creation (`pr#9981 <http://github.com/ceph/ceph/pull/9981>`_, Dongsheng Yang) -* rbd: inherit the parent image features when cloning an image (`issue#15388 <http://tracker.ceph.com/issues/15388>`_, `pr#9334 <http://github.com/ceph/ceph/pull/9334>`_, Dongsheng Yang) -* rbd: journal: ensure in-flight ops are complete destroying journaler (`issue#17446 <http://tracker.ceph.com/issues/17446>`_, `pr#11257 <http://github.com/ceph/ceph/pull/11257>`_, Mykola Golub, Jason Dillaman) -* rbd: journal: increase concurrency/parallelism of journal recorder (`issue#15259 <http://tracker.ceph.com/issues/15259>`_, `pr#10445 <http://github.com/ceph/ceph/pull/10445>`_, Ricardo Dias) -* rbd: journal: move JournalTrimmer::C_RemoveSet struct (`pr#10912 <http://github.com/ceph/ceph/pull/10912>`_, Michal Jarzabek) -* rbd: qa/workunits/rbd: before removing image make sure it is not bootstrapped (`issue#16555 <http://tracker.ceph.com/issues/16555>`_, `pr#10155 <http://github.com/ceph/ceph/pull/10155>`_, Mykola Golub) -* rbd: qa/workunits/rbd: check status also in pool dir after asok commands (`pr#11291 <http://github.com/ceph/ceph/pull/11291>`_, Mykola Golub) -* rbd: qa/workunits/rbd: set image-meta on primary image and wait it is replicated (`pr#11294 <http://github.com/ceph/ceph/pull/11294>`_, Mykola Golub) -* rbd: qa/workunits/rbd: small fixup and improvements for rbd-mirror tests (`pr#10483 <http://github.com/ceph/ceph/pull/10483>`_, Mykola Golub) -* rbd: qa/workunits/rbd: wait for image deleted before checking health (`pr#10545 <http://github.com/ceph/ceph/pull/10545>`_, Mykola Golub) -* rbd: qa/workunits: support filtering cls_rbd unit test cases (`issue#16529 <http://tracker.ceph.com/issues/16529>`_, `pr#10714 <http://github.com/ceph/ceph/pull/10714>`_, Jason Dillaman) -* rbd: rbd-mirror: 'wait_for_scheduled_deletion' callback might deadlock (`issue#16491 <http://tracker.ceph.com/issues/16491>`_, `pr#9964 <http://github.com/ceph/ceph/pull/9964>`_, Jason Dillaman) -* rbd: rbd-mirror: Add sparse read for sync image (`issue#16780 <http://tracker.ceph.com/issues/16780>`_, `pr#11005 <http://github.com/ceph/ceph/pull/11005>`_, tianqing) -* rbd: rbd-mirror: add additional test scenarios (`pr#10488 <http://github.com/ceph/ceph/pull/10488>`_, lande1234) -* rbd: rbd-mirror: concurrent access of event might result in heap corruption (`issue#17283 <http://tracker.ceph.com/issues/17283>`_, `pr#11104 <http://github.com/ceph/ceph/pull/11104>`_, Jason Dillaman) -* rbd: rbd-mirror: force-promoted image will remain R/O until rbd-mirror daemon restarted (`issue#16974 <http://tracker.ceph.com/issues/16974>`_, `pr#11090 <http://github.com/ceph/ceph/pull/11090>`_, Jason Dillaman) -* rbd: rbd-mirror: gracefully fail if object map is unavailable (`issue#16558 <http://tracker.ceph.com/issues/16558>`_, `pr#10065 <http://github.com/ceph/ceph/pull/10065>`_, Jason Dillaman) -* rbd: rbd-mirror: gracefully handle being blacklisted (`issue#16349 <http://tracker.ceph.com/issues/16349>`_, `pr#9970 <http://github.com/ceph/ceph/pull/9970>`_, Jason Dillaman) -* rbd: rbd-mirror: image deleter should use pool id + global image uuid for key (`issue#16538 <http://tracker.ceph.com/issues/16538>`_, `issue#16227 <http://tracker.ceph.com/issues/16227>`_, `pr#10484 <http://github.com/ceph/ceph/pull/10484>`_, Jason Dillaman) -* rbd: rbd-mirror: improve split-brain detection logic (`issue#16855 <http://tracker.ceph.com/issues/16855>`_, `pr#10703 <http://github.com/ceph/ceph/pull/10703>`_, Jason Dillaman) -* rbd: rbd-mirror: include local pool id in resync throttle unique key (`issue#16536 <http://tracker.ceph.com/issues/16536>`_, `pr#10254 <http://github.com/ceph/ceph/pull/10254>`_, Jason Dillaman) -* rbd: rbd-mirror: non-primary image is recording journal events during image sync (`pr#10462 <http://github.com/ceph/ceph/pull/10462>`_, Jason Dillaman) -* rbd: rbd-mirror: potential IO stall when using asok flush request (`issue#16708 <http://tracker.ceph.com/issues/16708>`_, `pr#10432 <http://github.com/ceph/ceph/pull/10432>`_, Jason Dillaman) -* rbd: rbd-mirror: potential assertion failure during error-induced shutdown (`issue#16956 <http://tracker.ceph.com/issues/16956>`_, `pr#10613 <http://github.com/ceph/ceph/pull/10613>`_, Jason Dillaman) -* rbd: rbd-mirror: potential race condition during failure shutdown (`issue#16980 <http://tracker.ceph.com/issues/16980>`_, `pr#10667 <http://github.com/ceph/ceph/pull/10667>`_, Jason Dillaman) -* rbd: rbd-mirror: quiesce in-flight event commits before shut down (`issue#17355 <http://tracker.ceph.com/issues/17355>`_, `pr#11185 <http://github.com/ceph/ceph/pull/11185>`_, Jason Dillaman) -* rbd: rbd-mirror: reduce memory footprint during journal replay (`issue#16223 <http://tracker.ceph.com/issues/16223>`_, `pr#10341 <http://github.com/ceph/ceph/pull/10341>`_, Jason Dillaman) -* rbd: rbd-mirror: remove ceph_test_rbd_mirror_image_replay test case (`issue#16539 <http://tracker.ceph.com/issues/16539>`_, `pr#10083 <http://github.com/ceph/ceph/pull/10083>`_, Mykola Golub) -* rbd: rbd-mirror: replaying state should include flush action (`issue#16970 <http://tracker.ceph.com/issues/16970>`_, `pr#10627 <http://github.com/ceph/ceph/pull/10627>`_, Jason Dillaman) -* rbd: rbd-mirror: replicate dynamic feature updates (`issue#16213 <http://tracker.ceph.com/issues/16213>`_, `pr#10980 <http://github.com/ceph/ceph/pull/10980>`_, Mykola Golub) -* rbd: rbd-mirror: replicate image metadata settings (`issue#16212 <http://tracker.ceph.com/issues/16212>`_, `pr#11168 <http://github.com/ceph/ceph/pull/11168>`_, Mykola Golub) -* rbd: rbd-mirror: snap rename does not properly replicate to peers (`issue#16622 <http://tracker.ceph.com/issues/16622>`_, `pr#10249 <http://github.com/ceph/ceph/pull/10249>`_, Jason Dillaman) -* rbd: rbd-nbd does not properly handle resize notifications (`issue#15715 <http://tracker.ceph.com/issues/15715>`_, `pr#9291 <http://github.com/ceph/ceph/pull/9291>`_, Mykola Golub) -* rbd: rbd-nbd: fix kernel deadlock during teuthology testing (`issue#16921 <http://tracker.ceph.com/issues/16921>`_, `pr#10985 <http://github.com/ceph/ceph/pull/10985>`_, Jason Dillaman) -* rbd: recognize lock_on_read option (`pr#11313 <http://github.com/ceph/ceph/pull/11313>`_, Ilya Dryomov) -* rbd: return error if we specified a wrong image name for rbd du (`issue#16987 <http://tracker.ceph.com/issues/16987>`_, `pr#11031 <http://github.com/ceph/ceph/pull/11031>`_, Dongsheng Yang) -* rbd: test/librbd/fsx: enable exclusive-lock feature in krbd mode (`pr#10984 <http://github.com/ceph/ceph/pull/10984>`_, Ilya Dryomov) -* rbd: test/rbd: fix possible mock journal race conditions (`issue#17317 <http://tracker.ceph.com/issues/17317>`_, `pr#11153 <http://github.com/ceph/ceph/pull/11153>`_, Jason Dillaman) -* rbd: test: cmake related fixups for rbd tests (`pr#10124 <http://github.com/ceph/ceph/pull/10124>`_, Mykola Golub) -* rbd: test: run-rbd-tests test cmake fixup (`pr#10134 <http://github.com/ceph/ceph/pull/10134>`_, Mykola Golub) -* rbd: test: use wrapper that respects RBD_FEATURES when creating rbd image (`issue#16717 <http://tracker.ceph.com/issues/16717>`_, `pr#10348 <http://github.com/ceph/ceph/pull/10348>`_, Mykola Golub) -* rbd: udev: add krbd readahead placeholder (`pr#10841 <http://github.com/ceph/ceph/pull/10841>`_, Nick Fisk) -* rbd: rbd_mirror/ImageSynceThrottler: move struct to .cc (`pr#10928 <http://github.com/ceph/ceph/pull/10928>`_, Michal Jarzabek) -* rgw: (build verified, provably unused/not aliased) (`pr#9993 <http://github.com/ceph/ceph/pull/9993>`_, weiqiaomiao) -* rgw: Add documentation for the Multi-tenancy feature (`pr#9570 <http://github.com/ceph/ceph/pull/9570>`_, Pete Zaitcev) -* rgw: Clean up lifecycle thread (`pr#10480 <http://github.com/ceph/ceph/pull/10480>`_, Daniel Gryniewicz) -* rgw: Do not archive metadata by default (`issue#17256 <http://tracker.ceph.com/issues/17256>`_, `pr#11051 <http://github.com/ceph/ceph/pull/11051>`_, Pavan Rallabhandi) -* rgw: Fix Host->bucket fallback logic inversion (`issue#15975 <http://tracker.ceph.com/issues/15975>`_, `issue#17136 <http://tracker.ceph.com/issues/17136>`_, `pr#10873 <http://github.com/ceph/ceph/pull/10873>`_, Robin H. Johnson) -* rgw: Fix for using port 443 with pre-signed urls. (`issue#16548 <http://tracker.ceph.com/issues/16548>`_, `pr#10088 <http://github.com/ceph/ceph/pull/10088>`_, Pritha Srivastava) -* rgw: Fix incorrect content length and range for zero sized objects during range requests (`issue#16388 <http://tracker.ceph.com/issues/16388>`_, `pr#10207 <http://github.com/ceph/ceph/pull/10207>`_, Pavan Rallabhandi) -* rgw: Got rid of recursive mutex. (`pr#10562 <http://github.com/ceph/ceph/pull/10562>`_, Adam Kupczyk) -* rgw: RGW : setting socket backlog for via ceph.conf (`issue#16406 <http://tracker.ceph.com/issues/16406>`_, `pr#9891 <http://github.com/ceph/ceph/pull/9891>`_, Feng Guo) -* rgw: RGWMetaSyncCR holds refs to stacks instead of crs (`issue#16666 <http://tracker.ceph.com/issues/16666>`_, `pr#10301 <http://github.com/ceph/ceph/pull/10301>`_, Casey Bodley) -* rgw: Reviewed by: Pritha Srivastava <prsrivas@redhat.com> (`issue#16188 <http://tracker.ceph.com/issues/16188>`_, `pr#9584 <http://github.com/ceph/ceph/pull/9584>`_, Albert Tu) -* rgw: Rgw lifecycle testing (`pr#11131 <http://github.com/ceph/ceph/pull/11131>`_, Daniel Gryniewicz) -* rgw: Rgw nfs 28 (`pr#10611 <http://github.com/ceph/ceph/pull/10611>`_, Matt Benjamin) -* rgw: add configurables for {data,meta} sync error injection (`pr#10388 <http://github.com/ceph/ceph/pull/10388>`_, Yehuda Sadeh) -* rgw: add deadlock detection to RGWCoroutinesManager::run() (`pr#10032 <http://github.com/ceph/ceph/pull/10032>`_, Casey Bodley) -* rgw: add lc_pool when decode or encode struct RGWZoneParams (`pr#10439 <http://github.com/ceph/ceph/pull/10439>`_, weiqiaomiao) -* rgw: add missing master_zone when running with old default region config (`issue#16627 <http://tracker.ceph.com/issues/16627>`_, `pr#10205 <http://github.com/ceph/ceph/pull/10205>`_, Orit Wasserman) -* rgw: add pg_ver to tombstone_cache (`pr#9851 <http://github.com/ceph/ceph/pull/9851>`_, Casey Bodley) -* rgw: add reinit/rebind logic (ldap) (`pr#10532 <http://github.com/ceph/ceph/pull/10532>`_, Matt Benjamin) -* rgw: add return value checking to avoid possible subsequent `parse` exception (`pr#10241 <http://github.com/ceph/ceph/pull/10241>`_, Yan Jun) -* rgw: add suport for Swift-at-root dependent features of Swift API (`issue#16673 <http://tracker.ceph.com/issues/16673>`_, `pr#10280 <http://github.com/ceph/ceph/pull/10280>`_, Pritha Srivastava, Radoslaw Zarzynski) -* rgw: add support for Static Website of Swift API (`pr#9844 <http://github.com/ceph/ceph/pull/9844>`_, Radoslaw Zarzynski) -* rgw: add tenant support to multisite sync (`issue#16469 <http://tracker.ceph.com/issues/16469>`_, `pr#10075 <http://github.com/ceph/ceph/pull/10075>`_, Casey Bodley) -* rgw: back off bucket sync on failures, don't store marker (`issue#16742 <http://tracker.ceph.com/issues/16742>`_, `pr#10355 <http://github.com/ceph/ceph/pull/10355>`_, Yehuda Sadeh) -* rgw: better error message when user has no bucket created yet (`issue#16444 <http://tracker.ceph.com/issues/16444>`_, `pr#10162 <http://github.com/ceph/ceph/pull/10162>`_, Gaurav Kumar Garg) -* rgw: clean-up in the authentication infrastructure (`pr#10212 <http://github.com/ceph/ceph/pull/10212>`_, Radoslaw Zarzynski) -* rgw: clear realm watch on failed watch_restart (`issue#16817 <http://tracker.ceph.com/issues/16817>`_, `pr#10446 <http://github.com/ceph/ceph/pull/10446>`_, Casey Bodley) -* rgw: collect skips a specific coroutine stack (`issue#16665 <http://tracker.ceph.com/issues/16665>`_, `pr#10274 <http://github.com/ceph/ceph/pull/10274>`_, Yehuda Sadeh) -* rgw: cosmetic changes only--build verified, f23 (`pr#9931 <http://github.com/ceph/ceph/pull/9931>`_, Yan Jun) -* rgw: delete region map after upgrade to zonegroup map (`issue#17051 <http://tracker.ceph.com/issues/17051>`_, `pr#10831 <http://github.com/ceph/ceph/pull/10831>`_, Casey Bodley) -* rgw: do not try to encode or decode time_t and fix compiling warnings (`pr#10751 <http://github.com/ceph/ceph/pull/10751>`_, Kefu Chai) -* rgw: don't fail if lost race when setting acls (`issue#16930 <http://tracker.ceph.com/issues/16930>`_, `pr#11286 <http://github.com/ceph/ceph/pull/11286>`_, Yehuda Sadeh) -* rgw: drop create_bucket in fwd_request log message (`pr#10214 <http://github.com/ceph/ceph/pull/10214>`_, Abhishek Lekshmanan) -* rgw: eradicate dynamic memory allocation in RGWPostObj. (`pr#11054 <http://github.com/ceph/ceph/pull/11054>`_, Radoslaw Zarzynski) -* rgw: file setattr (`pr#8618 <http://github.com/ceph/ceph/pull/8618>`_, Matt Benjamin) -* rgw: finish error_repo cr in stop_spawned_services() (`issue#16530 <http://tracker.ceph.com/issues/16530>`_, `pr#10031 <http://github.com/ceph/ceph/pull/10031>`_, Yehuda Sadeh) -* rgw: fix RGWAccessControlPolicy_SWIFT::create return value check error (`issue#17090 <http://tracker.ceph.com/issues/17090>`_, `pr#10727 <http://github.com/ceph/ceph/pull/10727>`_, weiqiaomiao) -* rgw: fix compilation (`pr#10252 <http://github.com/ceph/ceph/pull/10252>`_, Josh Durgin) -* rgw: fix decoding of creation_time and last_update. (`issue#17167 <http://tracker.ceph.com/issues/17167>`_, `pr#11132 <http://github.com/ceph/ceph/pull/11132>`_, Orit Wasserman) -* rgw: fix error_repo segfault in data sync (`issue#16603 <http://tracker.ceph.com/issues/16603>`_, `pr#10157 <http://github.com/ceph/ceph/pull/10157>`_, Casey Bodley) -* rgw: fix failed to create bucket if a non-master zonegroup has a single zone (`pr#10991 <http://github.com/ceph/ceph/pull/10991>`_, weiqiaomiao) -* rgw: fix flush_read_list() error msg (`pr#10749 <http://github.com/ceph/ceph/pull/10749>`_, Jiaying Ren) -* rgw: fix for issue 16494 (`issue#16494 <http://tracker.ceph.com/issues/16494>`_, `pr#10077 <http://github.com/ceph/ceph/pull/10077>`_, Yehuda Sadeh) -* rgw: fix for s3tests failure when ldap auth is not applied (`pr#10669 <http://github.com/ceph/ceph/pull/10669>`_, Casey Bodley) -* rgw: fix get object instance returned NoSuchKey error (`issue#17111 <http://tracker.ceph.com/issues/17111>`_, `pr#10820 <http://github.com/ceph/ceph/pull/10820>`_, Yang Honggang) -* rgw: fix is_admin handling in RGWLDAPAuthEngine and introduce acct_privilege_t (`pr#10687 <http://github.com/ceph/ceph/pull/10687>`_, Radoslaw Zarzynski) -* rgw: fix issue 16435 (`issue#16435 <http://tracker.ceph.com/issues/16435>`_, `pr#10193 <http://github.com/ceph/ceph/pull/10193>`_, Yehuda Sadeh) -* rgw: fix multi-delete query param parsing. (`issue#16618 <http://tracker.ceph.com/issues/16618>`_, `pr#10187 <http://github.com/ceph/ceph/pull/10187>`_, Robin H. Johnson) -* rgw: fix period update --commit return error (`issue#17110 <http://tracker.ceph.com/issues/17110>`_, `pr#10836 <http://github.com/ceph/ceph/pull/10836>`_, weiqiaomiao) -* rgw: fix radosgw daemon core when reopen logs (`issue#17036 <http://tracker.ceph.com/issues/17036>`_, `pr#10737 <http://github.com/ceph/ceph/pull/10737>`_, weiqiaomiao) -* rgw: fix regression with handling double underscore (`issue#16856 <http://tracker.ceph.com/issues/16856>`_, `pr#10939 <http://github.com/ceph/ceph/pull/10939>`_, Orit Wasserman) -* rgw: fix rgw_bucket_dir_entry decode v (`pr#10918 <http://github.com/ceph/ceph/pull/10918>`_, Tianshan Qu) -* rgw: fix the error return variable in log message and cleanups (`pr#10138 <http://github.com/ceph/ceph/pull/10138>`_, Yan Jun) -* rgw: fix the missing return value (`pr#10122 <http://github.com/ceph/ceph/pull/10122>`_, Yan Jun) -* rgw: fix upgrade from old multisite to new multisite configuration (`issue#16751 <http://tracker.ceph.com/issues/16751>`_, `pr#10368 <http://github.com/ceph/ceph/pull/10368>`_, Orit Wasserman) -* rgw: fix wrong variable definition in cls_version_check func (`pr#10233 <http://github.com/ceph/ceph/pull/10233>`_, weiqiaomiao) -* rgw: fix wrong variable definition in rgw_cls_lc_set_entry function (`pr#10408 <http://github.com/ceph/ceph/pull/10408>`_, weiqiaomiao) -* rgw: for the create_bucket api, if the input creation_time is zero, we should set it to 'now" (`issue#16597 <http://tracker.ceph.com/issues/16597>`_, `pr#10118 <http://github.com/ceph/ceph/pull/10118>`_, weiqiaomiao) -* rgw: kill a compile warning for rgw_sync (`pr#10425 <http://github.com/ceph/ceph/pull/10425>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: lgtm (`pr#9941 <http://github.com/ceph/ceph/pull/9941>`_, weiqiaomiao) -* rgw: lgtm (build verified, f23) (`pr#9754 <http://github.com/ceph/ceph/pull/9754>`_, John Coyle) -* rgw: lgtm, build verified f23 (`pr#10035 <http://github.com/ceph/ceph/pull/10035>`_, Yan Jun) -* rgw: lgtm--build verified, f23 (`pr#10002 <http://github.com/ceph/ceph/pull/10002>`_, Yan Jun) -* rgw: lgtm--build verified, f23 (`pr#9985 <http://github.com/ceph/ceph/pull/9985>`_, Yan Jun) -* rgw: lgtm--should backport (`pr#9979 <http://github.com/ceph/ceph/pull/9979>`_, Yan Jun) -* rgw: log mp upload failures due to parts mismatch (`pr#10424 <http://github.com/ceph/ceph/pull/10424>`_, Abhishek Lekshmanan) -* rgw: merge setting flags operation together and cleanups (`pr#10203 <http://github.com/ceph/ceph/pull/10203>`_, Yan Jun) -* rgw: miscellaneous cleanups (`pr#10299 <http://github.com/ceph/ceph/pull/10299>`_, Yan Jun) -* rgw: multiple fixes for Swift's object expiration (`issue#16705 <http://tracker.ceph.com/issues/16705>`_, `issue#16684 <http://tracker.ceph.com/issues/16684>`_, `pr#10330 <http://github.com/ceph/ceph/pull/10330>`_, Radoslaw Zarzynski) -* rgw: need to 'open_object_section' before dump stats in 'RGWGetUsage\_… (`issue#17499 <http://tracker.ceph.com/issues/17499>`_, `pr#11325 <http://github.com/ceph/ceph/pull/11325>`_, weiqiaomiao) -* rgw: obsolete 'radosgw-admin period prepare' command (`issue#17387 <http://tracker.ceph.com/issues/17387>`_, `pr#11278 <http://github.com/ceph/ceph/pull/11278>`_, Gaurav Kumar Garg) -* rgw: radosgw-admin: add "--orphan-stale-secs" to --help (`issue#17280 <http://tracker.ceph.com/issues/17280>`_, `pr#11098 <http://github.com/ceph/ceph/pull/11098>`_, Ken Dreyer) -* rgw: radosgw-admin: zone[group] modify can change realm id (`issue#16839 <http://tracker.ceph.com/issues/16839>`_, `pr#10477 <http://github.com/ceph/ceph/pull/10477>`_, Casey Bodley) -* rgw: raise log levels for common radosgw-admin errors (`issue#16935 <http://tracker.ceph.com/issues/16935>`_, `pr#10602 <http://github.com/ceph/ceph/pull/10602>`_, Shilpa Jagannath) -* rgw: register the correct handler for cls_user_complete_stats (`issue#16624 <http://tracker.ceph.com/issues/16624>`_, `pr#10151 <http://github.com/ceph/ceph/pull/10151>`_, Orit Wasserman) -* rgw: remove bucket index objects when deleting the bucket (`issue#16412 <http://tracker.ceph.com/issues/16412>`_, `pr#10120 <http://github.com/ceph/ceph/pull/10120>`_, Orit Wasserman) -* rgw: remove possible duplicate setting (`pr#10110 <http://github.com/ceph/ceph/pull/10110>`_, Yan Jun) -* rgw: remove the field ret from class RGWPutLC (`pr#10726 <http://github.com/ceph/ceph/pull/10726>`_, weiqiaomiao) -* rgw: remove unused bufferlist variable (`pr#10194 <http://github.com/ceph/ceph/pull/10194>`_, Yan Jun) -* rgw: remove unused realm from radosgw-admin zone modify (`issue#16632 <http://tracker.ceph.com/issues/16632>`_, `pr#10211 <http://github.com/ceph/ceph/pull/10211>`_, Orit Wasserman) -* rgw: remove unused variables (`pr#10589 <http://github.com/ceph/ceph/pull/10589>`_, Yan Jun) -* rgw: return "NoSuchLifecycleConfiguration" if lifecycle config does not exist (`pr#10442 <http://github.com/ceph/ceph/pull/10442>`_, weiqiaomiao) -* rgw: revert a commit that broke s3 signature validation (`issue#17279 <http://tracker.ceph.com/issues/17279>`_, `pr#11102 <http://github.com/ceph/ceph/pull/11102>`_, Casey Bodley) -* rgw: rgw file: remove busy-wait in RGWLibFS::gc() (`pr#10638 <http://github.com/ceph/ceph/pull/10638>`_, Matt Benjamin) -* rgw: rgw ldap: protect rgw::from_base64 from non-base64 input (`pr#10777 <http://github.com/ceph/ceph/pull/10777>`_, Matt Benjamin) -* rgw: rgw ldap: enforce simple_bind w/LDAPv3 (`pr#10593 <http://github.com/ceph/ceph/pull/10593>`_, Matt Benjamin) -* rgw: rgw multisite: RGWCoroutinesManager::run returns status of last cr (`issue#17047 <http://tracker.ceph.com/issues/17047>`_, `pr#10778 <http://github.com/ceph/ceph/pull/10778>`_, Casey Bodley) -* rgw: rgw multisite: RGWDataSyncCR fails on errors from RGWListBucketIndexesCR (`issue#17073 <http://tracker.ceph.com/issues/17073>`_, `pr#10779 <http://github.com/ceph/ceph/pull/10779>`_, Casey Bodley) -* rgw: rgw multisite: fix for assertion in RGWMetaSyncCR (`issue#17044 <http://tracker.ceph.com/issues/17044>`_, `pr#10743 <http://github.com/ceph/ceph/pull/10743>`_, Casey Bodley) -* rgw: rgw multisite: fixes for period puller (`issue#16939 <http://tracker.ceph.com/issues/16939>`_, `pr#10596 <http://github.com/ceph/ceph/pull/10596>`_, Casey Bodley) -* rgw: rgw multisite: trim data logs as peer zones catch up (`pr#10372 <http://github.com/ceph/ceph/pull/10372>`_, Casey Bodley) -* rgw: rgw nfs v3 completions (`pr#10745 <http://github.com/ceph/ceph/pull/10745>`_, Matt Benjamin) -* rgw: rgw-admin: allow unsetting user's email (`issue#13286 <http://tracker.ceph.com/issues/13286>`_, `pr#11340 <http://github.com/ceph/ceph/pull/11340>`_, Yehuda Sadeh, Weijun Duan) -* rgw: rgw/admin: fix some return values and indents (`pr#9170 <http://github.com/ceph/ceph/pull/9170>`_, Yan Jun) -* rgw: rgw/rados: remove confused error printout (`pr#9351 <http://github.com/ceph/ceph/pull/9351>`_, Yan Jun) -* rgw: rgw/rgw_common.cc: modify the end check in RGWHTTPArgs::sys_get (`pr#9136 <http://github.com/ceph/ceph/pull/9136>`_, zhao kun) -* rgw: rgw/rgw_lc.cc: fix sleep time according to the error message (`pr#10930 <http://github.com/ceph/ceph/pull/10930>`_, Weibing Zhang) -* rgw: rgw/rgw_main: fix unnecessary variables defined (`pr#10475 <http://github.com/ceph/ceph/pull/10475>`_, zhang.zezhu) -* rgw: rgw/swift: remove redundant assignment operation (`pr#11292 <http://github.com/ceph/ceph/pull/11292>`_, Yan Jun) -* rgw: rgw_file: pre-assign times (`issue#17367 <http://tracker.ceph.com/issues/17367>`_, `pr#11181 <http://github.com/ceph/ceph/pull/11181>`_, Matt Benjamin) -* rgw: rgw_file: fix rename cases and unify unlink (`pr#10271 <http://github.com/ceph/ceph/pull/10271>`_, Matt Benjamin) -* rgw: rgw_file: fix set_attrs operation (`pr#11159 <http://github.com/ceph/ceph/pull/11159>`_, Matt Benjamin) -* rgw: rgw_file: refuse partial, out-of-order writes (`pr#10284 <http://github.com/ceph/ceph/pull/10284>`_, Matt Benjamin) -* rgw: rgw_file: restore local definition of RGWLibFS gc interval (`pr#10756 <http://github.com/ceph/ceph/pull/10756>`_, Matt Benjamin) -* rgw: rgw_file: unlock() must precede out label (`pr#10635 <http://github.com/ceph/ceph/pull/10635>`_, Matt Benjamin) -* rgw: right parenthesis is missing in radosgw-admin help message on caps (`pr#10947 <http://github.com/ceph/ceph/pull/10947>`_, Weibing Zhang) -* rgw: set correct instance on the object (`issue#17443 <http://tracker.ceph.com/issues/17443>`_, `pr#11270 <http://github.com/ceph/ceph/pull/11270>`_, Yehuda Sadeh) -* rgw: store oldest mdlog period in rados (`issue#16894 <http://tracker.ceph.com/issues/16894>`_, `pr#10558 <http://github.com/ceph/ceph/pull/10558>`_, Casey Bodley) -* rgw: test/multi.py add a destructive attr to tests (`pr#10401 <http://github.com/ceph/ceph/pull/10401>`_, Abhishek Lekshmanan) -* rgw: test/rgw: add --gateways-per-zone to test_multi.py (`pr#10742 <http://github.com/ceph/ceph/pull/10742>`_, Casey Bodley) -* rgw: test_multi.py avoid creating mds (`pr#10174 <http://github.com/ceph/ceph/pull/10174>`_, Abhishek Lekshmanan) -* rgw: test_rgw_bencode: null terminate strings before checking (`issue#16861 <http://tracker.ceph.com/issues/16861>`_, `pr#10510 <http://github.com/ceph/ceph/pull/10510>`_, Yehuda Sadeh) -* rgw: use endpoints from master zone instead of zonegroup (`issue#16834 <http://tracker.ceph.com/issues/16834>`_, `pr#10456 <http://github.com/ceph/ceph/pull/10456>`_, Casey Bodley) -* rgw: use the standard usage of string.find (`pr#10226 <http://github.com/ceph/ceph/pull/10226>`_, Yan Jun) -* rgw: verfied: f23, subset of s3tests (`pr#10448 <http://github.com/ceph/ceph/pull/10448>`_, Pritha Srivastava) -* rgw: verified (`pr#10000 <http://github.com/ceph/ceph/pull/10000>`_, weiqiaomiao) -* rgw: verified non-regression (MS AD) (`pr#10597 <http://github.com/ceph/ceph/pull/10597>`_, Pritha Srivastava) -* rgw: verified: autobuild (`issue#16928 <http://tracker.ceph.com/issues/16928>`_, `pr#10579 <http://github.com/ceph/ceph/pull/10579>`_, Robin H. Johnson) -* rgw: verified: MS AD (`pr#10307 <http://github.com/ceph/ceph/pull/10307>`_, Pritha Srivastava) -* rgw: verified: f23 (`pr#10882 <http://github.com/ceph/ceph/pull/10882>`_, Michal Jarzabek) -* rgw: verified: f23 (`pr#10858 <http://github.com/ceph/ceph/pull/10858>`_, Weibing Zhang) -* rgw: verified: f23 (`pr#10822 <http://github.com/ceph/ceph/pull/10822>`_, Yan Jun) -* rgw: verified: f23 (`pr#10929 <http://github.com/ceph/ceph/pull/10929>`_, Weibing Zhang) -* rgw: wip: rgw multisite: preserve zone's extra pool (`issue#16712 <http://tracker.ceph.com/issues/16712>`_, `pr#10397 <http://github.com/ceph/ceph/pull/10397>`_, Abhishek Lekshmanan) -* rgw: work around curl_multi_wait bug with non-blocking reads (`issue#15915 <http://tracker.ceph.com/issues/15915>`_, `issue#16695 <http://tracker.ceph.com/issues/16695>`_, `pr#10998 <http://github.com/ceph/ceph/pull/10998>`_, Casey Bodley) -* rgw:add a s3 API of make torrent for a object (`pr#10396 <http://github.com/ceph/ceph/pull/10396>`_, zhouruisong) -* rgw:add a s3 API of make torrent for a object (`pr#9589 <http://github.com/ceph/ceph/pull/9589>`_, zhouruisong) -* rgw:bucket check remove _multipart_ prefix (`pr#6501 <http://github.com/ceph/ceph/pull/6501>`_, Weijun Duan) -* rgw:clean unuse bufferlist (`pr#10232 <http://github.com/ceph/ceph/pull/10232>`_, weiqiaomiao) -* rgw:fix rgw boot failed after upgrade to master latest version (`pr#10409 <http://github.com/ceph/ceph/pull/10409>`_, weiqiaomiao) -* rgw:lifecycle feature [rebased] (`pr#9737 <http://github.com/ceph/ceph/pull/9737>`_, Ji Chen, Daniel Gryniewicz) -* rgw: rgw/rgw_rados.h: remove unneeded class C_Tick (`pr#10954 <http://github.com/ceph/ceph/pull/10954>`_, Michal Jarzabek) -* rgw: ext_mime_map_init add string describing for error number (`pr#9807 <http://github.com/ceph/ceph/pull/9807>`_, Yan Jun) -* tests: Add test for global static non-POD segfault (`pr#10486 <http://github.com/ceph/ceph/pull/10486>`_, Brad Hubbard) -* tests: populate /dev/disk/by-partuuid for scsi_debug (`issue#17100 <http://tracker.ceph.com/issues/17100>`_, `pr#10824 <http://github.com/ceph/ceph/pull/10824>`_, Loic Dachary) -* tests: use a fixture for memstore clone testing (`pr#11190 <http://github.com/ceph/ceph/pull/11190>`_, Kefu Chai) -* tests: run-\*make-check.sh: Make DRY_RUN actually mean a dry run (`pr#11074 <http://github.com/ceph/ceph/pull/11074>`_, Brad Hubbard) -* tests: run-cmake-check.sh: Actually run the tests (`pr#11075 <http://github.com/ceph/ceph/pull/11075>`_, Brad Hubbard) -* tests: run-cmake-check.sh: Init submodules (`pr#11091 <http://github.com/ceph/ceph/pull/11091>`_, Brad Hubbard) -* tests: run-make-check.sh: Make DRY_RUN actually do a dry run (`pr#11092 <http://github.com/ceph/ceph/pull/11092>`_, Brad Hubbard) -* tests: run-make-check.sh: pass args to do_cmake.sh (`pr#10701 <http://github.com/ceph/ceph/pull/10701>`_, John Coyle) -* tests: unittest_chain_xattr: account for existing xattrs (`issue#16025 <http://tracker.ceph.com/issues/16025>`_, `pr#11109 <http://github.com/ceph/ceph/pull/11109>`_, Dan Mick) -* tests: src/test/cli/* tests: POSIX Convert grep -P to grep -E (`pr#10319 <http://github.com/ceph/ceph/pull/10319>`_, Willem Jan Withagen) -* test: ceph_test_msgr: fix circular locking dependency (`issue#16955 <http://tracker.ceph.com/issues/16955>`_, `pr#10612 <http://github.com/ceph/ceph/pull/10612>`_, Kefu Chai) -* test: cli/crushtool: fix the test of compile-decompile-recompile.t (`issue#17306 <http://tracker.ceph.com/issues/17306>`_, `pr#11173 <http://github.com/ceph/ceph/pull/11173>`_, Kefu Chai) -* test: libcephfs: fix gcc sys/fcntl.h warnings (`pr#10126 <http://github.com/ceph/ceph/pull/10126>`_, John Coyle) -* test: librados: rados_connect() should succeed (`issue#17087 <http://tracker.ceph.com/issues/17087>`_, `pr#10806 <http://github.com/ceph/ceph/pull/10806>`_, Kefu Chai) -* test: mds: add fs dump in test_ceph_argparse.py (`pr#10347 <http://github.com/ceph/ceph/pull/10347>`_, huanwen ren) -* test: simple_dispatcher.cc: remove unused variable (`pr#9932 <http://github.com/ceph/ceph/pull/9932>`_, Michal Jarzabek) -* test: store_test: tidy-up SyntheticWorkloadState class (`pr#10775 <http://github.com/ceph/ceph/pull/10775>`_, xie xingguo) -* test: More portable use of mmap(MAP_ANON) (`pr#10557 <http://github.com/ceph/ceph/pull/10557>`_, Willem Jan Withagen) -* test: Removeall merged after print_function commit needs a fix (`pr#10535 <http://github.com/ceph/ceph/pull/10535>`_, David Zafman) -* test: ceph-disk.sh do not kill all daemons (`issue#16729 <http://tracker.ceph.com/issues/16729>`_, `pr#10346 <http://github.com/ceph/ceph/pull/10346>`_, Kefu Chai) -* test: cephtool/test.sh: fix expect_false() calls (`pr#10133 <http://github.com/ceph/ceph/pull/10133>`_, Kefu Chai) -* test: fix usage info of omapbench (`pr#10089 <http://github.com/ceph/ceph/pull/10089>`_, Wanlong Gao) -* test: remove ceph_test_rados_api_tmap_migrate (`issue#16144 <http://tracker.ceph.com/issues/16144>`_, `pr#10256 <http://github.com/ceph/ceph/pull/10256>`_, Kefu Chai) -* test: test_{compression_plugin,async_compressor}: do not copy plugins (`pr#10153 <http://github.com/ceph/ceph/pull/10153>`_, Kefu Chai) -* test: test_rados_tool.sh: Make script work under ctest (`pr#10166 <http://github.com/ceph/ceph/pull/10166>`_, Willem Jan Withagen) -* test: qa/workunits/cephtool/test.sh: fix omission of ceph-command (`pr#10979 <http://github.com/ceph/ceph/pull/10979>`_, Willem Jan Withagen) -* test: qa/workunits/cephtool/test.sh: s/TMPDIR/TEMP_DIR/ (`pr#10306 <http://github.com/ceph/ceph/pull/10306>`_, Kefu Chai) -* test: qa/workunits/cephtool/test.sh: use absolute path for TEMP_DIR (`pr#10430 <http://github.com/ceph/ceph/pull/10430>`_, Kefu Chai) -* tools: New "removeall" used to remove head with snapshots (`pr#10098 <http://github.com/ceph/ceph/pull/10098>`_, David Zafman) -* tools: do not closed stdout ; fix overload of "<" operator (`pr#9290 <http://github.com/ceph/ceph/pull/9290>`_, xie xingguo) -* tools: fix the core dump when get the crushmap do not exist (`pr#10451 <http://github.com/ceph/ceph/pull/10451>`_, song baisen) -* tools: rebuild monstore (`issue#17179 <http://tracker.ceph.com/issues/17179>`_, `pr#10933 <http://github.com/ceph/ceph/pull/10933>`_, Kefu Chai) -* tools: use TextTable for "rados df" plain output (`pr#9362 <http://github.com/ceph/ceph/pull/9362>`_, xie xingguo) -* tools: fio engine for objectstore (`pr#10267 <http://github.com/ceph/ceph/pull/10267>`_, Casey Bodley, Igor Fedotov, Daniel Gollub) -* tools: rados/client: fix typo (`pr#10493 <http://github.com/ceph/ceph/pull/10493>`_, Yan Jun) -* tools: rados/client: fix waiting on the condition variable more efficient. (`pr#9939 <http://github.com/ceph/ceph/pull/9939>`_, Yan Jun) -* tools: tools/rebuild_mondb: kill comipling warning and other fixes (`pr#11117 <http://github.com/ceph/ceph/pull/11117>`_, xie xingguo) -* tools: authtool: Enhance argument combinations validation (`issue#2904 <http://tracker.ceph.com/issues/2904>`_, `pr#9704 <http://github.com/ceph/ceph/pull/9704>`_, Brad Hubbard) -* tools: ceph-disk: change ownership of initfile to ceph:ceph (`issue#16280 <http://tracker.ceph.com/issues/16280>`_, `pr#9688 <http://github.com/ceph/ceph/pull/9688>`_, Shylesh Kumar) -* test: ceph_test_rados_api_tmap_migrate: remove test for tmap_upgrade (`pr#10234 <http://github.com/ceph/ceph/pull/10234>`_, Kefu Chai) diff --git a/doc/releases/luminous.rst b/doc/releases/luminous.rst deleted file mode 100644 index fca0b7d45..000000000 --- a/doc/releases/luminous.rst +++ /dev/null @@ -1,5552 +0,0 @@ -======== -Luminous -======== - -Luminous is the 12th stable release of Ceph. It is named after the -luminous squid (watasenia scintillans, aka firefly squid). - -v12.2.13 Luminous -================= - -This is the 13th bug fix release of the Luminous v12.2.x long term stable -release series. We recommend that all users upgrade to this release. - -Notable Changes ---------------- - -* Ceph now packages python bindings for python3.6 instead of - python3.4, because EPEL7 recently switched from python3.4 to - python3.6 as the native python3. see the `announcement <https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/>_` - for more details on the background of this change. - -* We now have telemetry support via a ceph-mgr module. The telemetry module is - absolutely on an opt-in basis, and is meant to collect generic cluster - information and push it to a central endpoint. By default, we're pushing it - to a project endpoint at https://telemetry.ceph.com/report, but this is - customizable using by setting the 'url' config option with:: - - ceph telemetry config-set url '<your url>' - - You will have to opt-in on sharing your information with:: - - ceph telemetry on - - You can view exactly what information will be reported first with:: - - ceph telemetry show - - Should you opt-in, your information will be licensed under the - Community Data License Agreement - Sharing - Version 1.0, which you can - read at https://cdla.io/sharing-1-0/ - - The telemetry module reports information about CephFS file systems, - including: - - - how many MDS daemons (in total and per file system) - - which features are (or have been) enabled - - how many data pools - - approximate file system age (year + month of creation) - - how much metadata is being cached per file system - - As well as: - - - whether IPv4 or IPv6 addresses are used for the monitors - - whether RADOS cache tiering is enabled (and which mode) - - whether pools are replicated or erasure coded, and - which erasure code profile plugin and parameters are in use - - how many RGW daemons, zones, and zonegroups are present; which RGW frontends are in use - - aggregate stats about the CRUSH map, like which algorithms are used, how - big buckets are, how many rules are defined, and what tunables are in use - -* A health warning is now generated if the average osd heartbeat ping - time exceeds a configurable threshold for any of the intervals - computed. The OSD computes 1 minute, 5 minute and 15 minute - intervals with average, minimum and maximum values. New configuration - option ``mon_warn_on_slow_ping_ratio`` specifies a percentage of - ``osd_heartbeat_grace`` to determine the threshold. A value of zero - disables the warning. New configuration option - ``mon_warn_on_slow_ping_time`` specified in milliseconds over-rides the - computed value, causes a warning - when OSD heartbeat pings take longer than the specified amount. - New admin command ``ceph daemon mgr.# dump_osd_network [threshold]`` command will - list all connections with a ping time longer than the specified threshold or - value determined by the config options, for the average for any of the 3 intervals. - New admin command ``ceph daemon osd.# dump_osd_network [threshold]`` will - do the same but only including heartbeats initiated by the specified OSD. - -* The configuration value ``osd_calc_pg_upmaps_max_stddev`` used for upmap - balancing has been removed. Instead use the mgr balancer config - ``upmap_max_deviation`` which now is an integer number of PGs of deviation - from the target PGs per OSD. This can be set with a command like - ``ceph config set mgr mgr/balancer/upmap_max_deviation 2``. The default - ``upmap_max_deviation`` is 1. There are situations where crush rules - would not allow a pool to ever have completely balanced PGs. For example, if - crush requires 1 replica on each of 3 racks, but there are fewer OSDs in 1 of - the racks. In those cases, the configuration value can be increased. - -Changelog ---------- - -* bluestore: >2GB bluefs writes (`pr#28965 <https://github.com/ceph/ceph/pull/28965>`_, kungf, Kefu Chai, Sage Weil) -* bluestore: Inspect allocations (`pr#29539 <https://github.com/ceph/ceph/pull/29539>`_, Neha Ojha, Adam Kupczyk) -* bluestore: [AFTER: #28644] luminous: os/bluestore: default to bitmap allocator for bluestore/bluefs (`pr#28972 <https://github.com/ceph/ceph/pull/28972>`_, Igor Fedotov) -* bluestore: add bluestore_ignore_data_csum option (`pr#26247 <https://github.com/ceph/ceph/pull/26247>`_, Sage Weil) -* bluestore: apply shared_alloc_size to shared device with log level change (`pr#29910 <https://github.com/ceph/ceph/pull/29910>`_, Vikhyat Umrao, Josh Durgin, Igor Fedotov, Sage Weil) -* bluestore: avoid length overflow in extents returned by Stupid Alloc (`issue#40703 <http://tracker.ceph.com/issues/40703>`_, `pr#29025 <https://github.com/ceph/ceph/pull/29025>`_, Igor Fedotov) -* bluestore: call fault_range properly prior to looking for blob to … (`pr#27529 <https://github.com/ceph/ceph/pull/27529>`_, Igor Fedotov) -* bluestore: common/options: Set concurrent bluestore rocksdb compactions to 2 (`pr#30149 <https://github.com/ceph/ceph/pull/30149>`_, Mark Nelson) -* bluestore: dump before "no spanning blob id" abort (`pr#28030 <https://github.com/ceph/ceph/pull/28030>`_, Igor Fedotov) -* bluestore: fix assertion in StupidAllocator::get_fragmentation (`pr#32523 <https://github.com/ceph/ceph/pull/32523>`_, Lei Liu, Igor Fedotov) -* bluestore: fix duplicate allocations in bmap allocator (`issue#40080 <http://tracker.ceph.com/issues/40080>`_, `pr#28644 <https://github.com/ceph/ceph/pull/28644>`_, Igor Fedotov) -* bluestore: fix improper setting of STATE_KV_SUBMITTED (`pr#31674 <https://github.com/ceph/ceph/pull/31674>`_, Igor Fedotov) -* bluestore: fix length overflow (`issue#39247 <http://tracker.ceph.com/issues/39247>`_, `pr#27365 <https://github.com/ceph/ceph/pull/27365>`_, Jianpeng Ma) -* bluestore: fix out-of-bound access in bmap allocator (`pr#27739 <https://github.com/ceph/ceph/pull/27739>`_, Igor Fedotov) -* bluestore: load OSD all compression settings unconditionally (`issue#40480 <http://tracker.ceph.com/issues/40480>`_, `pr#28895 <https://github.com/ceph/ceph/pull/28895>`_, Igor Fedotov) -* bluestore: os/bluestore/BitmapFreelistManager: disable bluestore_debug_freelist (`pr#27459 <https://github.com/ceph/ceph/pull/27459>`_, Sage Weil) -* bluestore: os/bluestore_tool: bluefs-bdev-expand: indicate bypassed for main dev (`pr#27912 <https://github.com/ceph/ceph/pull/27912>`_, Igor Fedotov) -* bluestore: test/store_test: fix/workaround for BlobReuseOnOverwriteUT and garbageCollection (`pr#27056 <https://github.com/ceph/ceph/pull/27056>`_, Igor Fedotov) -* build/ops: admin/build-doc: use python3 (`pr#30665 <https://github.com/ceph/ceph/pull/30665>`_, Kefu Chai, Jason Dillaman) -* build/ops: admin/build-doc: use python3 (follow-on fix) (`pr#30690 <https://github.com/ceph/ceph/pull/30690>`_, Nathan Cutler) -* build/ops: backport miscellaneous install-deps.sh and ceph.spec.in fixes from master (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `issue#37707 <http://tracker.ceph.com/issues/37707>`_, `issue#18163 <http://tracker.ceph.com/issues/18163>`_, `issue#22998 <http://tracker.ceph.com/issues/22998>`_, `pr#30722 <https://github.com/ceph/ceph/pull/30722>`_, Yao Guotao, Tomasz Setkowski, Andrey Parfenov, Alfredo Deza, Kefu Chai, Nathan Cutler, Yunchuan Wen, Zack Cerza, Brad Hubbard, Loic Dachary) -* build/ops: ceph-test RPM not built for SUSE (`pr#29736 <https://github.com/ceph/ceph/pull/29736>`_, Nathan Cutler) -* build/ops: cmake: pass -march to detect compiler support of arm64 crc/crypto (`issue#36080 <http://tracker.ceph.com/issues/36080>`_, `issue#17516 <http://tracker.ceph.com/issues/17516>`_, `pr#24169 <https://github.com/ceph/ceph/pull/24169>`_, Kefu Chai) -* build/ops: do_cmake.sh: source not found (`issue#40004 <http://tracker.ceph.com/issues/40004>`_, `issue#39981 <http://tracker.ceph.com/issues/39981>`_, `pr#28216 <https://github.com/ceph/ceph/pull/28216>`_, Nathan Cutler) -* build/ops: install-deps.sh: Remove CR repo (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `pr#30129 <https://github.com/ceph/ceph/pull/30129>`_, Brad Hubbard, Alfredo Deza) -* build/ops: python-cephfs should depend on python-rados (`issue#37612 <http://tracker.ceph.com/issues/37612>`_, `issue#24918 <http://tracker.ceph.com/issues/24918>`_, `pr#27950 <https://github.com/ceph/ceph/pull/27950>`_, Kefu Chai) -* build/ops: python3-cephfs should provide python36-cephfs (`pr#30981 <https://github.com/ceph/ceph/pull/30981>`_, Kefu Chai) -* build/ops: rpm: Build with lttng on openSUSE (`issue#39332 <http://tracker.ceph.com/issues/39332>`_, `pr#27618 <https://github.com/ceph/ceph/pull/27618>`_, Nathan Cutler) -* build/ops: rpm: explicitly declare python-tox build dependency (`pr#31934 <https://github.com/ceph/ceph/pull/31934>`_, Nathan Cutler) -* ceph-volume: assume msgrV1 for all branches containing mimic (`pr#32796 <https://github.com/ceph/ceph/pull/32796>`_, Jan Fajerski) -* ceph-volume: batch functional idempotency test fails since message is now on stderr (`pr#29791 <https://github.com/ceph/ceph/pull/29791>`_, Jan Fajerski) -* ceph-volume: broken assertion errors after pytest changes (`pr#28929 <https://github.com/ceph/ceph/pull/28929>`_, Alfredo Deza) -* ceph-volume: do not fail when trying to remove crypt mapper (`pr#30556 <https://github.com/ceph/ceph/pull/30556>`_, Guillaume Abrioux) -* ceph-volume: does not recognize wal/db partitions created by ceph-disk (`pr#29462 <https://github.com/ceph/ceph/pull/29462>`_, Jan Fajerski) -* ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30299 <https://github.com/ceph/ceph/pull/30299>`_, Alfredo Deza) -* ceph-volume: fix warnings raised by pytest (`pr#30677 <https://github.com/ceph/ceph/pull/30677>`_, Rishabh Dave) -* ceph-volume: lvm list is O(n^2) (`pr#30094 <https://github.com/ceph/ceph/pull/30094>`_, Rishabh Dave) -* ceph-volume: lvm.activate: Return an error if WAL/DB devices absent (`pr#29038 <https://github.com/ceph/ceph/pull/29038>`_, David Casier) -* ceph-volume: lvm.zap fix cleanup for db partitions (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#30302 <https://github.com/ceph/ceph/pull/30302>`_, Dominik Csapak) -* ceph-volume: missing string substitution when reporting mounts (`issue#40978 <http://tracker.ceph.com/issues/40978>`_, `pr#29351 <https://github.com/ceph/ceph/pull/29351>`_, Shyukri Shyukriev) -* ceph-volume: pre-install python-apt and its variants before test runs (`pr#30296 <https://github.com/ceph/ceph/pull/30296>`_, Alfredo Deza) -* ceph-volume: prints errors to stdout with --format json (`issue#38548 <http://tracker.ceph.com/issues/38548>`_, `pr#29508 <https://github.com/ceph/ceph/pull/29508>`_, Jan Fajerski) -* ceph-volume: prints log messages to stdout (`pr#29603 <https://github.com/ceph/ceph/pull/29603>`_, Jan Fajerski, Kefu Chai, Alfredo Deza) -* ceph-volume: set a lvm_size property on the fakedevice fixture (`pr#30331 <https://github.com/ceph/ceph/pull/30331>`_, Andrew Schoen) -* ceph-volume: simple: when 'type' file is not present activate fails (`pr#29415 <https://github.com/ceph/ceph/pull/29415>`_, Alfredo Deza) -* ceph-volume: tests add a sleep in tox for slow OSDs after booting (`pr#28927 <https://github.com/ceph/ceph/pull/28927>`_, Alfredo Deza) -* ceph-volume: tests set the noninteractive flag for Debian (`pr#29901 <https://github.com/ceph/ceph/pull/29901>`_, Alfredo Deza) -* ceph-volume: update testing playbook 'deploy.yml' (`pr#29075 <https://github.com/ceph/ceph/pull/29075>`_, Andrew Schoen, Guillaume Abrioux) -* ceph-volume: use the Device.rotational property instead of sys_api (`pr#28519 <https://github.com/ceph/ceph/pull/28519>`_, Andrew Schoen) -* ceph-volume: use the OSD identifier when reporting success (`pr#29771 <https://github.com/ceph/ceph/pull/29771>`_, Alfredo Deza) -* ceph-volume: zap always skips block.db, leaves them around (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#30305 <https://github.com/ceph/ceph/pull/30305>`_, Alfredo Deza) -* cephfs: client: _readdir_cache_cb() may use the readdir_cache already clear (`issue#41148 <http://tracker.ceph.com/issues/41148>`_, `pr#30934 <https://github.com/ceph/ceph/pull/30934>`_, huanwen ren) -* cephfs: client: ceph.dir.rctime xattr value incorrectly prefixes 09 to the nanoseconds component (`issue#40166 <http://tracker.ceph.com/issues/40166>`_, `pr#28502 <https://github.com/ceph/ceph/pull/28502>`_, David Disseldorp) -* cephfs: client: clean up error checking and return of _lookup_parent (`issue#40085 <http://tracker.ceph.com/issues/40085>`_, `pr#28437 <https://github.com/ceph/ceph/pull/28437>`_, Jeff Layton) -* cephfs: client: return -EIO when sync file which unsafe reqs have been dropped (`issue#40877 <http://tracker.ceph.com/issues/40877>`_, `pr#30242 <https://github.com/ceph/ceph/pull/30242>`_, simon gao) -* cephfs: client: unlink dentry for inode with llref=0 (`issue#40960 <http://tracker.ceph.com/issues/40960>`_, `pr#29830 <https://github.com/ceph/ceph/pull/29830>`_, Xiaoxi CHEN) -* cephfs: kclient: nofail option not supported (`pr#28436 <https://github.com/ceph/ceph/pull/28436>`_, Kenneth Waegeman) -* cephfs: mds/server: check directory split after rename (`issue#39198 <http://tracker.ceph.com/issues/39198>`_, `issue#38994 <http://tracker.ceph.com/issues/38994>`_, `pr#27801 <https://github.com/ceph/ceph/pull/27801>`_, Shen Hang) -* cephfs: mds: add command that config individual client session (`issue#40811 <http://tracker.ceph.com/issues/40811>`_, `pr#31573 <https://github.com/ceph/ceph/pull/31573>`_, "Yan, Zheng") -* cephfs: mds: add reference when setting Connection::priv to existing session (`pr#31049 <https://github.com/ceph/ceph/pull/31049>`_, "Yan, Zheng") -* cephfs: mds: avoid trimming too many log segments after mds failover (`issue#40028 <http://tracker.ceph.com/issues/40028>`_, `pr#28543 <https://github.com/ceph/ceph/pull/28543>`_, simon gao) -* cephfs: mds: better output of 'ceph health detail' (`issue#39266 <http://tracker.ceph.com/issues/39266>`_, `pr#27848 <https://github.com/ceph/ceph/pull/27848>`_, Shen Hang) -* cephfs: mds: check dir fragment to split dir if mkdir makes it oversized (`pr#29829 <https://github.com/ceph/ceph/pull/29829>`_, Erqi Chen) -* cephfs: mds: cleanup truncating inodes when standby replay mds trim log segments (`pr#31286 <https://github.com/ceph/ceph/pull/31286>`_, "Yan, Zheng") -* cephfs: mds: dont print subtrees if they are too big or too many (`pr#27679 <https://github.com/ceph/ceph/pull/27679>`_, Rishabh Dave) -* cephfs: mds: drop reconnect message from non-existent session (`issue#39191 <http://tracker.ceph.com/issues/39191>`_, `issue#39026 <http://tracker.ceph.com/issues/39026>`_, `pr#27737 <https://github.com/ceph/ceph/pull/27737>`_, Shen Hang) -* cephfs: mds: fix corner case of replaying open sessions (`pr#28536 <https://github.com/ceph/ceph/pull/28536>`_, "Yan, Zheng") -* cephfs: mds: initialize cap_revoke_eviction_timeout with conf (`issue#38844 <http://tracker.ceph.com/issues/38844>`_, `issue#39208 <http://tracker.ceph.com/issues/39208>`_, `pr#27840 <https://github.com/ceph/ceph/pull/27840>`_, simon gao) -* cephfs: mds: msg weren't destroyed before handle_client_reconnect returned, if the reconnect msg was from non-existent session (`issue#40588 <http://tracker.ceph.com/issues/40588>`_, `issue#40807 <http://tracker.ceph.com/issues/40807>`_, `pr#29097 <https://github.com/ceph/ceph/pull/29097>`_, Shen Hang) -* cephfs: mds: remove superfluous error in StrayManager::advance_delayed() (`issue#38679 <http://tracker.ceph.com/issues/38679>`_, `pr#28432 <https://github.com/ceph/ceph/pull/28432>`_, "Yan, Zheng") -* cephfs: mds: reset heartbeat inside big loop (`pr#28544 <https://github.com/ceph/ceph/pull/28544>`_, "Yan, Zheng") -* cephfs: mds: there is an assertion when calling Beacon::shutdown() (`issue#38822 <http://tracker.ceph.com/issues/38822>`_, `pr#28438 <https://github.com/ceph/ceph/pull/28438>`_, huanwen ren) -* cephfs: mount: key parsing fail when doing a remount (`issue#40163 <http://tracker.ceph.com/issues/40163>`_, `pr#29226 <https://github.com/ceph/ceph/pull/29226>`_, Luis Henriques) -* cephfs: pybind/ceph_volume_client: remove ceph mds calls in favor of ceph fs calls (`issue#22038 <http://tracker.ceph.com/issues/22038>`_, `issue#22524 <http://tracker.ceph.com/issues/22524>`_, `pr#28445 <https://github.com/ceph/ceph/pull/28445>`_, Patrick Donnelly, Ramana Raja) -* cephfs: qa/cephfs: relax min_caps_per_client check (`issue#38270 <http://tracker.ceph.com/issues/38270>`_, `issue#38686 <http://tracker.ceph.com/issues/38686>`_, `pr#27040 <https://github.com/ceph/ceph/pull/27040>`_, "Yan, Zheng") -* cephfs: qa: misc cache drop fixes (`issue#38340 <http://tracker.ceph.com/issues/38340>`_, `issue#38445 <http://tracker.ceph.com/issues/38445>`_, `pr#27342 <https://github.com/ceph/ceph/pull/27342>`_, Patrick Donnelly) -* common/config: hold lock while accessing mutable container (`pr#30345 <https://github.com/ceph/ceph/pull/30345>`_, Jason Dillaman) -* common: Keyrings created by ceph auth get are not suitable for ceph auth import (`issue#40548 <http://tracker.ceph.com/issues/40548>`_, `issue#22227 <http://tracker.ceph.com/issues/22227>`_, `pr#28742 <https://github.com/ceph/ceph/pull/28742>`_, Kefu Chai) -* common: common/ceph_context: avoid unnecessary wait during service thread shutdown (`pr#31020 <https://github.com/ceph/ceph/pull/31020>`_, Jason Dillaman) -* common: common/options.cc: Lower the default value of osd_deep_scrub_large_omap_object_key_threshold (`pr#29175 <https://github.com/ceph/ceph/pull/29175>`_, Neha Ojha) -* common: common/util: handle long lines in /proc/cpuinfo (`issue#38296 <http://tracker.ceph.com/issues/38296>`_, `pr#32349 <https://github.com/ceph/ceph/pull/32349>`_, Sage Weil) -* common: compressor/zstd: improvements (`pr#28647 <https://github.com/ceph/ceph/pull/28647>`_, Adam C. Emerson, Sage Weil) -* common: data race in OutputDataSocket (`issue#40188 <http://tracker.ceph.com/issues/40188>`_, `issue#40266 <http://tracker.ceph.com/issues/40266>`_, `pr#29202 <https://github.com/ceph/ceph/pull/29202>`_, Casey Bodley) -* core: ENOENT in collection_move_rename on EC backfill target (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `issue#38880 <http://tracker.ceph.com/issues/38880>`_, `pr#28110 <https://github.com/ceph/ceph/pull/28110>`_, Neha Ojha) -* core: Health warnings on long network ping times (`issue#40586 <http://tracker.ceph.com/issues/40586>`_, `issue#40640 <http://tracker.ceph.com/issues/40640>`_, `pr#30230 <https://github.com/ceph/ceph/pull/30230>`_, xie xingguo, David Zafman) -* core: Revert "crush: remove invalid upmap items" (`pr#32019 <https://github.com/ceph/ceph/pull/32019>`_, David Zafman) -* core: backport recent messenger fixes (`issue#39243 <http://tracker.ceph.com/issues/39243>`_, `issue#38242 <http://tracker.ceph.com/issues/38242>`_, `issue#39448 <http://tracker.ceph.com/issues/39448>`_, `pr#27583 <https://github.com/ceph/ceph/pull/27583>`_, xie xingguo, Jason Dillaman) -* core: ceph tell osd.xx bench help : gives wrong help (`issue#39006 <http://tracker.ceph.com/issues/39006>`_, `issue#39373 <http://tracker.ceph.com/issues/39373>`_, `pr#28112 <https://github.com/ceph/ceph/pull/28112>`_, Neha Ojha) -* core: ceph-objectstore-tool: rename dump-import to dump-export (`issue#39343 <http://tracker.ceph.com/issues/39343>`_, `issue#39284 <http://tracker.ceph.com/issues/39284>`_, `pr#27636 <https://github.com/ceph/ceph/pull/27636>`_, David Zafman) -* core: crc cache should be invalidated when posting preallocated rx buffers (`issue#38436 <http://tracker.ceph.com/issues/38436>`_, `pr#29248 <https://github.com/ceph/ceph/pull/29248>`_, Ilya Dryomov) -* core: crush/CrushWrapper: ensure crush_choose_arg_map.size == max_buckets (`issue#38664 <http://tracker.ceph.com/issues/38664>`_, `issue#38719 <http://tracker.ceph.com/issues/38719>`_, `pr#27085 <https://github.com/ceph/ceph/pull/27085>`_, Sage Weil) -* core: crush: remove invalid upmap items (`pr#31234 <https://github.com/ceph/ceph/pull/31234>`_, huangjun) -* core: lazy omap stat collection (`pr#29190 <https://github.com/ceph/ceph/pull/29190>`_, Brad Hubbard) -* core: mds,osd,mon,msg: use intrusive_ptr for holding Connection::priv (`issue#20924 <http://tracker.ceph.com/issues/20924>`_, `pr#29859 <https://github.com/ceph/ceph/pull/29859>`_, Shinobu Kinjo, Kefu Chai, Jianpeng Ma, Samuel Just) -* core: mgr/localpool: pg_num is an int arg to 'osd pool create' (`pr#30446 <https://github.com/ceph/ceph/pull/30446>`_, Sage Weil) -* core: mgr/prometheus: assign a value to osd_dev_node when obj_store is not filestore or bluestore (`pr#31587 <https://github.com/ceph/ceph/pull/31587>`_, jiahuizeng) -* core: mon, osd: parallel clean_pg_upmaps (`issue#40229 <http://tracker.ceph.com/issues/40229>`_, `issue#40104 <http://tracker.ceph.com/issues/40104>`_, `pr#28594 <https://github.com/ceph/ceph/pull/28594>`_, xie xingguo) -* core: mon,osd: limit MOSDMap messages by size as well as map count (`issue#38276 <http://tracker.ceph.com/issues/38276>`_, `pr#28640 <https://github.com/ceph/ceph/pull/28640>`_, Sage Weil) -* core: mon/OSDMonitor: trim not-longer-exist failure reporters (`pr#30905 <https://github.com/ceph/ceph/pull/30905>`_, NancySu05) -* core: mon: Error message displayed when mon_osd_max_split_count would be exceeded is not as user-friendly as it could be (`issue#39353 <http://tracker.ceph.com/issues/39353>`_, `issue#39563 <http://tracker.ceph.com/issues/39563>`_, `pr#27908 <https://github.com/ceph/ceph/pull/27908>`_, Nathan Cutler, Brad Hubbard) -* core: mon: ensure prepare_failure() marks no_reply on op (`pr#30519 <https://github.com/ceph/ceph/pull/30519>`_, Joao Eduardo Luis) -* core: mon: mon/AuthMonitor: don't validate fs caps on authorize (`pr#28666 <https://github.com/ceph/ceph/pull/28666>`_, Joao Eduardo Luis) -* core: msg: output peer address when detecting bad CRCs (`issue#39367 <http://tracker.ceph.com/issues/39367>`_, `pr#27858 <https://github.com/ceph/ceph/pull/27858>`_, Greg Farnum) -* core: osd/OSDMap.cc: don't output over/underfull messages to lderr (`pr#31598 <https://github.com/ceph/ceph/pull/31598>`_, Neha Ojha) -* core: osd/OSDMap: Replace get_out_osds with get_out_existing_osds (`issue#39154 <http://tracker.ceph.com/issues/39154>`_, `issue#39420 <http://tracker.ceph.com/issues/39420>`_, `pr#27728 <https://github.com/ceph/ceph/pull/27728>`_, Brad Hubbard) -* core: osd/OSDMap: do not trust partially simplified pg_upmap_item (`pr#30926 <https://github.com/ceph/ceph/pull/30926>`_, xie xingguo) -* core: osd/PG: Add PG to large omap log message (`pr#30922 <https://github.com/ceph/ceph/pull/30922>`_, Brad Hubbard) -* core: osd/PG: discover missing objects when an OSD peers and PG is degraded (`pr#27751 <https://github.com/ceph/ceph/pull/27751>`_, Jonas Jelten) -* core: osd/PGLog: preserve original_crt to check rollbackability (`issue#38894 <http://tracker.ceph.com/issues/38894>`_, `issue#38905 <http://tracker.ceph.com/issues/38905>`_, `issue#36739 <http://tracker.ceph.com/issues/36739>`_, `issue#39042 <http://tracker.ceph.com/issues/39042>`_, `pr#27715 <https://github.com/ceph/ceph/pull/27715>`_, Neha Ojha) -* core: osd/PeeringState: recover_got - add special handler for empty log (`pr#30896 <https://github.com/ceph/ceph/pull/30896>`_, xie xingguo) -* core: osd/PrimaryLogPG: skip obcs that don't exist during backfill scan_range (`pr#31030 <https://github.com/ceph/ceph/pull/31030>`_, Sage Weil) -* core: osd/ReplicatedBackend.cc: 1321: FAILED assert(get_parent()->get_log().get_log().objects.count(soid) && (get_parent()->get_log().get_log().objects.find(soid)->second->op == pg_log_entry_t::LOST_REVERT) && (get_parent()->get_log().get_log().object (`issue#39537 <http://tracker.ceph.com/issues/39537>`_, `issue#26958 <http://tracker.ceph.com/issues/26958>`_, `pr#28989 <https://github.com/ceph/ceph/pull/28989>`_, xie xingguo) -* core: osd/ReplicatedBackend.cc: 1349: FAILED ceph_assert(peer_missing.count(fromshard)) (`pr#31855 <https://github.com/ceph/ceph/pull/31855>`_, Neha Ojha, xie xingguo) -* core: osd/bluestore: Actually wait until completion in write_sync (`pr#29564 <https://github.com/ceph/ceph/pull/29564>`_, Vitaliy Filippov) -* core: osd: Better error message when OSD count is less than osd_pool_default_size (`issue#38617 <http://tracker.ceph.com/issues/38617>`_, `issue#38585 <http://tracker.ceph.com/issues/38585>`_, `pr#30298 <https://github.com/ceph/ceph/pull/30298>`_, Vikhyat Umrao, Kefu Chai, Sage Weil, zjh) -* core: osd: Diagnostic logging for upmap cleaning (`pr#32666 <https://github.com/ceph/ceph/pull/32666>`_, David Zafman) -* core: osd: FAILED ceph_assert(attrs || !pg_log.get_missing().is_missing(soid) || (it_objects != pg_log.get_log().objects.end() && it_objects->second->op == pg_log_entry_t::LOST_REVERT)) in PrimaryLogPG::get_object_context() (`issue#39218 <http://tracker.ceph.com/issues/39218>`_, `issue#38931 <http://tracker.ceph.com/issues/38931>`_, `issue#38784 <http://tracker.ceph.com/issues/38784>`_, `pr#27878 <https://github.com/ceph/ceph/pull/27878>`_, xie xingguo) -* core: osd: Fix for compatibility of encode/decode of osd_stat_t (`pr#31277 <https://github.com/ceph/ceph/pull/31277>`_, David Zafman) -* core: osd: Include dups in copy_after() and copy_up_to() (`issue#39304 <http://tracker.ceph.com/issues/39304>`_, `pr#28185 <https://github.com/ceph/ceph/pull/28185>`_, David Zafman) -* core: osd: Remove unused osdmap flags full, nearfull from output (`issue#22350 <http://tracker.ceph.com/issues/22350>`_, `pr#30902 <https://github.com/ceph/ceph/pull/30902>`_, Gu Zhongyan, David Zafman) -* core: osd: add hdd, ssd and hybrid variants for osd_snap_trim_sleep (`pr#31857 <https://github.com/ceph/ceph/pull/31857>`_, Neha Ojha) -* core: osd: clear PG_STATE_CLEAN when repair object (`pr#30271 <https://github.com/ceph/ceph/pull/30271>`_, Zengran Zhang) -* core: osd: fix out of order caused by letting old msg from down osd be processed (`pr#31293 <https://github.com/ceph/ceph/pull/31293>`_, Mingxin Liu) -* core: osd: merge replica log on primary need according to replica log's crt (`pr#30917 <https://github.com/ceph/ceph/pull/30917>`_, Zengran Zhang) -* core: osd: refuse to start if we're > N+2 from recorded require_osd_release (`issue#38076 <http://tracker.ceph.com/issues/38076>`_, `pr#31858 <https://github.com/ceph/ceph/pull/31858>`_, Sage Weil) -* core: osd: report omap/data/metadata usage (`issue#40638 <http://tracker.ceph.com/issues/40638>`_, `pr#28851 <https://github.com/ceph/ceph/pull/28851>`_, Sage Weil) -* core: osd: rollforward may need to mark pglog dirty (`issue#40403 <http://tracker.ceph.com/issues/40403>`_, `pr#31036 <https://github.com/ceph/ceph/pull/31036>`_, Zengran Zhang) -* core: osd: scrub error on big objects; make bluestore refuse to start on big objects (`pr#30785 <https://github.com/ceph/ceph/pull/30785>`_, Sage Weil, David Zafman) -* core: osd: shutdown recovery_request_timer earlier (`issue#39204 <http://tracker.ceph.com/issues/39204>`_, `pr#27810 <https://github.com/ceph/ceph/pull/27810>`_, Zengran Zhang) -* core: pybind: Rados.get_fsid() returning bytes in python3 (`issue#38873 <http://tracker.ceph.com/issues/38873>`_, `issue#38381 <http://tracker.ceph.com/issues/38381>`_, `pr#27674 <https://github.com/ceph/ceph/pull/27674>`_, Jason Dillaman) -* core: should report EINVAL in ErasureCode::parse() if m<=0 (`issue#38682 <http://tracker.ceph.com/issues/38682>`_, `issue#38750 <http://tracker.ceph.com/issues/38750>`_, `pr#28111 <https://github.com/ceph/ceph/pull/28111>`_, Sage Weil) -* doc: Minor rados related documentation fixes (`issue#38896 <http://tracker.ceph.com/issues/38896>`_, `issue#38902 <http://tracker.ceph.com/issues/38902>`_, `pr#27185 <https://github.com/ceph/ceph/pull/27185>`_, David Zafman) -* doc: Missing Documentation for radosgw-admin reshard commands (man pages) (`issue#40092 <http://tracker.ceph.com/issues/40092>`_, `issue#21617 <http://tracker.ceph.com/issues/21617>`_, `pr#28329 <https://github.com/ceph/ceph/pull/28329>`_, Orit Wasserman) -* doc: Update layout.rst (`pr#26381 <https://github.com/ceph/ceph/pull/26381>`_, ypdai) -* doc: describe metadata_heap cleanup (`issue#18174 <http://tracker.ceph.com/issues/18174>`_, `pr#30071 <https://github.com/ceph/ceph/pull/30071>`_, Dan van der Ster) -* doc: doc/rbd: s/guess/xml/ for codeblock lexer (`pr#31091 <https://github.com/ceph/ceph/pull/31091>`_, Kefu Chai) -* doc: doc/rgw: document CreateBucketConfiguration for s3 PUT Bucket api (`issue#39597 <http://tracker.ceph.com/issues/39597>`_, `pr#31647 <https://github.com/ceph/ceph/pull/31647>`_, Casey Bodley) -* doc: doc/rgw: document use of 'realm pull' instead of 'period pull' (`issue#39655 <http://tracker.ceph.com/issues/39655>`_, `pr#30132 <https://github.com/ceph/ceph/pull/30132>`_, Casey Bodley) -* doc: fixed --read-only argument value in multisite doc (`pr#31655 <https://github.com/ceph/ceph/pull/31655>`_, Chenjiong Deng) -* doc: osd_recovery_priority is not documented (but osd_recovery_op_priority is) (`pr#27471 <https://github.com/ceph/ceph/pull/27471>`_, David Zafman) -* doc: update bluestore cache settings and clarify data fraction (`issue#39522 <http://tracker.ceph.com/issues/39522>`_, `pr#31257 <https://github.com/ceph/ceph/pull/31257>`_, Jan Fajerski) -* doc: wrong datatype describing crush_rule (`pr#32267 <https://github.com/ceph/ceph/pull/32267>`_, Kefu Chai) -* doc: wrong value of usage log default in logging section (`issue#37892 <http://tracker.ceph.com/issues/37892>`_, `issue#37856 <http://tracker.ceph.com/issues/37856>`_, `pr#29015 <https://github.com/ceph/ceph/pull/29015>`_, Abhishek Lekshmanan) -* mgr: Change default upmap_max_deviation to 5 (`pr#32586 <https://github.com/ceph/ceph/pull/32586>`_, David Zafman) -* mgr: Release GIL and Balancer fixes (`pr#31992 <https://github.com/ceph/ceph/pull/31992>`_, Kefu Chai, Noah Watkins, David Zafman) -* mgr: mgr/BaseMgrModule: drop GIL in set_config (`issue#39040 <http://tracker.ceph.com/issues/39040>`_, `issue#36766 <http://tracker.ceph.com/issues/36766>`_, `pr#27808 <https://github.com/ceph/ceph/pull/27808>`_, John Spray, xie xingguo, Sage Weil) -* mgr: mgr/balancer: blame if upmap won't actually work (`issue#38781 <http://tracker.ceph.com/issues/38781>`_, `pr#26498 <https://github.com/ceph/ceph/pull/26498>`_, xie xingguo) -* mgr: mgr/balancer: python3 compatibility issue (`pr#31104 <https://github.com/ceph/ceph/pull/31104>`_, Mykola Golub) -* mgr: mgr/prometheus: Cast collect_timeout (scrape_interval) to float (`pr#31107 <https://github.com/ceph/ceph/pull/31107>`_, Ben Meekhof) -* mgr: mgr/prometheus: replace whitespaces in metrics' names (`pr#31105 <https://github.com/ceph/ceph/pull/31105>`_, Alfonso Martínez) -* mgr: DaemonServer::handle_conf_change - broken locking (`issue#38899 <http://tracker.ceph.com/issues/38899>`_, `issue#38962 <http://tracker.ceph.com/issues/38962>`_, `pr#29213 <https://github.com/ceph/ceph/pull/29213>`_, xie xingguo) -* mgr: pybind/mgr: Cancel output color control (`pr#31696 <https://github.com/ceph/ceph/pull/31696>`_, Zheng Yin) -* mgr: restful: Query nodes_by_id for items (`pr#31272 <https://github.com/ceph/ceph/pull/31272>`_, Boris Ranto) -* mgr: telemetry module for mgr (`issue#37976 <http://tracker.ceph.com/issues/37976>`_, `pr#32135 <https://github.com/ceph/ceph/pull/32135>`_, Joao Eduardo Luis, Wido den Hollander, Kefu Chai, Sage Weil, Dan Mick) -* rbd: Reduce log level for cls/journal and cls/rbd expected errors (`issue#40865 <http://tracker.ceph.com/issues/40865>`_, `pr#30857 <https://github.com/ceph/ceph/pull/30857>`_, Jason Dillaman) -* rbd: journal: properly advance read offset after skipping invalid range (`pr#28811 <https://github.com/ceph/ceph/pull/28811>`_, Mykola Golub) -* rbd: krbd: avoid udev netlink socket overrun and retry on transient errors from udev_enumerate_scan_devices() (`issue#39089 <http://tracker.ceph.com/issues/39089>`_, `pr#31360 <https://github.com/ceph/ceph/pull/31360>`_, Zhi Zhang, Ilya Dryomov) -* rbd: krbd: return -ETIMEDOUT in polling (`issue#38792 <http://tracker.ceph.com/issues/38792>`_, `issue#38975 <http://tracker.ceph.com/issues/38975>`_, `pr#27536 <https://github.com/ceph/ceph/pull/27536>`_, Dongsheng Yang) -* rbd: librbd: add missing shutdown states to managed lock helper (`issue#38387 <http://tracker.ceph.com/issues/38387>`_, `issue#38508 <http://tracker.ceph.com/issues/38508>`_, `pr#28158 <https://github.com/ceph/ceph/pull/28158>`_, Jason Dillaman) -* rbd: librbd: async open/close should free ImageCtx before issuing callback (`issue#39427 <http://tracker.ceph.com/issues/39427>`_, `issue#39031 <http://tracker.ceph.com/issues/39031>`_, `pr#28126 <https://github.com/ceph/ceph/pull/28126>`_, Jason Dillaman) -* rbd: librbd: disable image mirroring when moving to trash (`pr#28149 <https://github.com/ceph/ceph/pull/28149>`_, Mykola Golub) -* rbd: librbd: ensure compare-and-write doesn't skip compare after copyup (`issue#38440 <http://tracker.ceph.com/issues/38440>`_, `issue#38383 <http://tracker.ceph.com/issues/38383>`_, `pr#28134 <https://github.com/ceph/ceph/pull/28134>`_, Ilya Dryomov) -* rbd: librbd: improve object map performance under high IOPS workloads (`issue#38674 <http://tracker.ceph.com/issues/38674>`_, `issue#38538 <http://tracker.ceph.com/issues/38538>`_, `pr#28137 <https://github.com/ceph/ceph/pull/28137>`_, Jason Dillaman) -* rbd: librbd: properly track in-flight flush requests (`issue#40574 <http://tracker.ceph.com/issues/40574>`_, `pr#28773 <https://github.com/ceph/ceph/pull/28773>`_, Jason Dillaman) -* rbd: librbd: race condition possible when validating RBD pool (`issue#38500 <http://tracker.ceph.com/issues/38500>`_, `issue#38564 <http://tracker.ceph.com/issues/38564>`_, `pr#28140 <https://github.com/ceph/ceph/pull/28140>`_, Jason Dillaman) -* rbd: rbd-mirror: clear out bufferlist prior to listing mirror images (`issue#39460 <http://tracker.ceph.com/issues/39460>`_, `issue#39407 <http://tracker.ceph.com/issues/39407>`_, `pr#28124 <https://github.com/ceph/ceph/pull/28124>`_, Jason Dillaman) -* rbd: rbd-mirror: don't overwrite status error returned by replay (`pr#29874 <https://github.com/ceph/ceph/pull/29874>`_, Mykola Golub) -* rbd: rbd-mirror: handle duplicates in image sync throttler queue (`issue#40592 <http://tracker.ceph.com/issues/40592>`_, `issue#40519 <http://tracker.ceph.com/issues/40519>`_, `pr#28812 <https://github.com/ceph/ceph/pull/28812>`_, Mykola Golub) -* rbd: rbd-mirror: ignore errors relating to parsing the cluster config file (`pr#30118 <https://github.com/ceph/ceph/pull/30118>`_, Jason Dillaman) -* rbd: rbd-mirror: make logrotate work (`pr#32599 <https://github.com/ceph/ceph/pull/32599>`_, Mykola Golub) -* rbd: rbd/action: fix error getting positional argument (`issue#40095 <http://tracker.ceph.com/issues/40095>`_, `pr#29295 <https://github.com/ceph/ceph/pull/29295>`_, songweibin) -* rbd: tools/rbd-ggate: close log before running postfork (`pr#30858 <https://github.com/ceph/ceph/pull/30858>`_, Willem Jan Withagen) -* rbd: use the ordered throttle for the export action (`issue#40435 <http://tracker.ceph.com/issues/40435>`_, `pr#30856 <https://github.com/ceph/ceph/pull/30856>`_, Jason Dillaman) -* rgw: Adding tcp_nodelay option to Beast (`issue#38925 <http://tracker.ceph.com/issues/38925>`_, `pr#27424 <https://github.com/ceph/ceph/pull/27424>`_, Or Friedmann) -* rgw: GetBucketCORS API returns Not Found error code when CORS configuration does not exist (`issue#38887 <http://tracker.ceph.com/issues/38887>`_, `issue#26964 <http://tracker.ceph.com/issues/26964>`_, `pr#27123 <https://github.com/ceph/ceph/pull/27123>`_, yuliyang, ashitakasam) -* rgw: LC: handle resharded buckets (`pr#29122 <https://github.com/ceph/ceph/pull/29122>`_, Abhishek Lekshmanan) -* rgw: RGWCoroutine::call(nullptr) sets retcode=0 (`pr#30329 <https://github.com/ceph/ceph/pull/30329>`_, Casey Bodley) -* rgw: TempURL should not allow PUTs with the X-Object-Manifest (`issue#20797 <http://tracker.ceph.com/issues/20797>`_, `pr#31652 <https://github.com/ceph/ceph/pull/31652>`_, Radoslaw Zarzynski) -* rgw: add list user admin OP API (`pr#30984 <https://github.com/ceph/ceph/pull/30984>`_, Oshyn Song) -* rgw: allow radosgw-admin to list bucket w --allow-unordered (`pr#31220 <https://github.com/ceph/ceph/pull/31220>`_, J. Eric Ivancich) -* rgw: civetweb frontend: response is buffered in memory if content length is not explicitly specified (`issue#39615 <http://tracker.ceph.com/issues/39615>`_, `issue#12713 <http://tracker.ceph.com/issues/12713>`_, `pr#28069 <https://github.com/ceph/ceph/pull/28069>`_, Robin H. Johnson) -* rgw: cls/rgw: raise debug level of bi_log_iterate_entries output (`issue#40559 <http://tracker.ceph.com/issues/40559>`_, `pr#27974 <https://github.com/ceph/ceph/pull/27974>`_, Casey Bodley) -* rgw: cls/user: cls_user_set_buckets_info overwrites creation_time (`issue#39635 <http://tracker.ceph.com/issues/39635>`_, `pr#31648 <https://github.com/ceph/ceph/pull/31648>`_, Casey Bodley) -* rgw: conditionally allow builtin users with non-unique email addresses (`issue#40089 <http://tracker.ceph.com/issues/40089>`_, `issue#40506 <http://tracker.ceph.com/issues/40506>`_, `pr#28717 <https://github.com/ceph/ceph/pull/28717>`_, Matt Benjamin) -* rgw: crypt: permit RGW-AUTO/default with SSE-S3 headers (`pr#31860 <https://github.com/ceph/ceph/pull/31860>`_, Matt Benjamin) -* rgw: datalog/mdlog trim commands loop until done (`pr#29713 <https://github.com/ceph/ceph/pull/29713>`_, Casey Bodley) -* rgw: delete_obj_index() takes mtime for bilog (`issue#24991 <http://tracker.ceph.com/issues/24991>`_, `pr#31649 <https://github.com/ceph/ceph/pull/31649>`_, Casey Bodley) -* rgw: don't crash on missing /etc/mime.types (`issue#38920 <http://tracker.ceph.com/issues/38920>`_, `issue#38328 <http://tracker.ceph.com/issues/38328>`_, `pr#27332 <https://github.com/ceph/ceph/pull/27332>`_, Casey Bodley) -* rgw: don't throw when accept errors are happening on frontend (`pr#30147 <https://github.com/ceph/ceph/pull/30147>`_, Yuval Lifshitz) -* rgw: failed to pass test_bucket_create_naming_bad_punctuation in s3test (`issue#39360 <http://tracker.ceph.com/issues/39360>`_, `issue#39358 <http://tracker.ceph.com/issues/39358>`_, `issue#23587 <http://tracker.ceph.com/issues/23587>`_, `issue#26965 <http://tracker.ceph.com/issues/26965>`_, `pr#27668 <https://github.com/ceph/ceph/pull/27668>`_, yuliyang, Abhishek Lekshmanan) -* rgw: fix bucket may redundantly list keys after BI_PREFIX_CHAR (`issue#39984 <http://tracker.ceph.com/issues/39984>`_, `issue#40149 <http://tracker.ceph.com/issues/40149>`_, `pr#28408 <https://github.com/ceph/ceph/pull/28408>`_, Tianshan Qu, Casey Bodley) -* rgw: fix cls_bucket_list_unordered() partial results (`pr#30254 <https://github.com/ceph/ceph/pull/30254>`_, Mark Kogan) -* rgw: fix drain handles error when deleting bucket with bypass-gc option (`pr#30198 <https://github.com/ceph/ceph/pull/30198>`_, dongdong tao) -* rgw: fix issue for CreateBucket with BucketLocation param (`pr#29826 <https://github.com/ceph/ceph/pull/29826>`_, Enming Zhang, Matt Benjamin) -* rgw: fix read not exists null version return wrong (`issue#38811 <http://tracker.ceph.com/issues/38811>`_, `issue#38908 <http://tracker.ceph.com/issues/38908>`_, `pr#27330 <https://github.com/ceph/ceph/pull/27330>`_, Tianshan Qu) -* rgw: fix refcount tags to match and update object's idtag (`pr#30323 <https://github.com/ceph/ceph/pull/30323>`_, J. Eric Ivancich) -* rgw: gc use aio (`issue#24592 <http://tracker.ceph.com/issues/24592>`_, `pr#28784 <https://github.com/ceph/ceph/pull/28784>`_, Yehuda Sadeh, Zhang Shaowen, Yao Zongyou, Jesse Williamson) -* rgw: get or set realm zonegroup zone need check user's caps (`issue#37497 <http://tracker.ceph.com/issues/37497>`_, `pr#28332 <https://github.com/ceph/ceph/pull/28332>`_, yuliyang, Casey Bodley) -* rgw: housekeeping of reset stats operation in radosgw-admin and cls back-end (`pr#30674 <https://github.com/ceph/ceph/pull/30674>`_, J. Eric Ivancich) -* rgw: inefficient unordered bucket listing (`issue#39409 <http://tracker.ceph.com/issues/39409>`_, `issue#39393 <http://tracker.ceph.com/issues/39393>`_, `pr#28350 <https://github.com/ceph/ceph/pull/28350>`_, Casey Bodley) -* rgw: lc: continue past get_obj_state() failure (`pr#32194 <https://github.com/ceph/ceph/pull/32194>`_, Matt Benjamin) -* rgw: make dns hostnames matching case insensitive (`issue#40995 <http://tracker.ceph.com/issues/40995>`_, `pr#30375 <https://github.com/ceph/ceph/pull/30375>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: mitigate bucket list with max-entries excessively high (`pr#30666 <https://github.com/ceph/ceph/pull/30666>`_, J. Eric Ivancich) -* rgw: multisite: 'radosgw-admin bucket sync status' should call syncs_from(source.name) instead of id (`issue#40022 <http://tracker.ceph.com/issues/40022>`_, `issue#40143 <http://tracker.ceph.com/issues/40143>`_, `pr#29271 <https://github.com/ceph/ceph/pull/29271>`_, Casey Bodley) -* rgw: orphans find perf improvments (`issue#39180 <http://tracker.ceph.com/issues/39180>`_, `pr#28314 <https://github.com/ceph/ceph/pull/28314>`_, Abhishek Lekshmanan) -* rgw: parse_copy_location defers url-decode (`issue#27217 <http://tracker.ceph.com/issues/27217>`_, `pr#31651 <https://github.com/ceph/ceph/pull/31651>`_, Casey Bodley) -* rgw: policy fix for nonexistent objects (`issue#38638 <http://tracker.ceph.com/issues/38638>`_, `pr#29153 <https://github.com/ceph/ceph/pull/29153>`_, Pritha Srivastava) -* rgw: remove_olh_pending_entries() does not limit the number of xattrs to remove (`issue#39118 <http://tracker.ceph.com/issues/39118>`_, `issue#39177 <http://tracker.ceph.com/issues/39177>`_, `pr#28349 <https://github.com/ceph/ceph/pull/28349>`_, Casey Bodley) -* rgw: resolve bugs and clean up garbage collection code (`issue#38454 <http://tracker.ceph.com/issues/38454>`_, `pr#31664 <https://github.com/ceph/ceph/pull/31664>`_, Dan Hill, J. Eric Ivancich) -* rgw: return ERR_NO_SUCH_BUCKET early while evaluating bucket policy (`issue#38420 <http://tracker.ceph.com/issues/38420>`_, `pr#31218 <https://github.com/ceph/ceph/pull/31218>`_, Abhishek Lekshmanan) -* rgw: rgw-admin: fix data sync report for master zone (`issue#38958 <http://tracker.ceph.com/issues/38958>`_, `pr#27453 <https://github.com/ceph/ceph/pull/27453>`_, cfanz) -* rgw: rgw-admin: object stat command output's delete_at not readable (`issue#39497 <http://tracker.ceph.com/issues/39497>`_, `pr#27991 <https://github.com/ceph/ceph/pull/27991>`_, Abhishek Lekshmanan) -* rgw: rgw/OutputDataSocket: actually discard data on full buffer (`issue#40178 <http://tracker.ceph.com/issues/40178>`_, `pr#31654 <https://github.com/ceph/ceph/pull/31654>`_, Matt Benjamin) -* rgw: rgw/multisite: Don't allow certain radosgw-admin commands to run on non-master zone (`issue#39548 <http://tracker.ceph.com/issues/39548>`_, `pr#30946 <https://github.com/ceph/ceph/pull/30946>`_, Danny Al-Gaaf, Shilpa Jagannath) -* rgw: rgw_file: save etag and acl info in setattr (`issue#39227 <http://tracker.ceph.com/issues/39227>`_, `pr#27881 <https://github.com/ceph/ceph/pull/27881>`_, Tao Chen) -* rgw: rgw_sync: drop ENOENT error logs from mdlog (`issue#40032 <http://tracker.ceph.com/issues/40032>`_, `issue#38748 <http://tracker.ceph.com/issues/38748>`_, `pr#27110 <https://github.com/ceph/ceph/pull/27110>`_, Abhishek Lekshmanan) -* rgw: set null version object acl issues (`issue#36763 <http://tracker.ceph.com/issues/36763>`_, `pr#31653 <https://github.com/ceph/ceph/pull/31653>`_, Tianshan Qu) -* rgw: the Multi-Object Delete operation of S3 API wrongly handles the Code response element (`issue#18241 <http://tracker.ceph.com/issues/18241>`_, `issue#40135 <http://tracker.ceph.com/issues/40135>`_, `pr#29269 <https://github.com/ceph/ceph/pull/29269>`_, Radoslaw Zarzynski) -* rgw: unable to cancel reshard operations for buckets with tenants (`issue#39016 <http://tracker.ceph.com/issues/39016>`_, `pr#27992 <https://github.com/ceph/ceph/pull/27992>`_, Abhishek Lekshmanan) -* rgw: update civetweb submodule to match version in mimic (`issue#24158 <http://tracker.ceph.com/issues/24158>`_, `pr#27982 <https://github.com/ceph/ceph/pull/27982>`_, Abhishek Lekshmanan) -* rgw: update s3-test download code for s3-test tasks (`pr#32227 <https://github.com/ceph/ceph/pull/32227>`_, Ali Maredia) -* rgw: when exclusive lock fails due existing lock, log add'l info (`issue#38397 <http://tracker.ceph.com/issues/38397>`_, `issue#38171 <http://tracker.ceph.com/issues/38171>`_, `pr#26554 <https://github.com/ceph/ceph/pull/26554>`_, J. Eric Ivancich) -* rgw:send x-amz-version-id header when upload files (`issue#39572 <http://tracker.ceph.com/issues/39572>`_, `pr#27935 <https://github.com/ceph/ceph/pull/27935>`_, Xinying Song) -* tools: Add clear-data-digest command to objectstore tool (`pr#29366 <https://github.com/ceph/ceph/pull/29366>`_, Li Yichao) -* tools: platform.linux_distribution() is deprecated; stop using it (`issue#39277 <http://tracker.ceph.com/issues/39277>`_, `issue#18163 <http://tracker.ceph.com/issues/18163>`_, `pr#27557 <https://github.com/ceph/ceph/pull/27557>`_, Nathan Cutler) -* tools: rados tools list objects in a pg (`issue#36732 <http://tracker.ceph.com/issues/36732>`_, `pr#30608 <https://github.com/ceph/ceph/pull/30608>`_, Li Wang, Vikhyat Umrao) - - -v12.2.12 Luminous -================= - -This is the twelfth bug fix release of the Luminous v12.2.x long term stable -release series. We recommend that all users upgrade to this release. - -Notable Changes ---------------- - -* In 12.2.11 and earlier releases, keyring caps were not checked for validity, - so the caps string could be anything. As of 12.2.12, caps strings are - validated and providing a keyring with an invalid caps string to, e.g., - `ceph auth add` will result in an error. - -Changelog ---------- - -* auth: ceph auth add does not sanity-check caps (`issue#22525 <https://tracker.ceph.com/issues/22525>`_, `pr#24906 <https://github.com/ceph/ceph/pull/24906>`_, Jing Li, Nathan Cutler, Sage Weil) -* build/ops: Allow multi instances of "make tests" on the same machine (`issue#36737 <https://tracker.ceph.com/issues/36737>`_, `pr#26186 <https://github.com/ceph/ceph/pull/26186>`_, Kefu Chai) -* build/ops: rpm: require ceph-base instead of ceph-common (`issue#37620 <https://tracker.ceph.com/issues/37620>`_, `pr#25810 <https://github.com/ceph/ceph/pull/25810>`_, Sébastien Han) -* ceph-volume: add --all flag to simple activate (`pr#26656 <https://github.com/ceph/ceph/pull/26656>`_, Jan Fajerski) -* ceph-volume: look for rotational data in lsblk (`pr#26989 <https://github.com/ceph/ceph/pull/26989>`_, Andrew Schoen) -* ceph-volume: replace testinfra command with py.test (`pr#26824 <https://github.com/ceph/ceph/pull/26824>`_, Alfredo Deza) -* ceph-volume: revert partition as disk (`issue#37506 <https://tracker.ceph.com/issues/37506>`_, `pr#26295 <https://github.com/ceph/ceph/pull/26295>`_, Jan Fajerski) -* ceph-volume: `simple scan` will now scan all running ceph-disk OSDs (`pr#26857 <https://github.com/ceph/ceph/pull/26857>`_, Andrew Schoen) -* ceph-volume: use our own testinfra suite for functional testing (`pr#26703 <https://github.com/ceph/ceph/pull/26703>`_, Andrew Schoen) -* CLI: ability to change file ownership (`issue#38370 <https://tracker.ceph.com/issues/38370>`_, `pr#26758 <https://github.com/ceph/ceph/pull/26758>`_, Sébastien Han) -* client: session flush does not cause cap release message flush (`issue#38009 <https://tracker.ceph.com/issues/38009>`_, `pr#26271 <https://github.com/ceph/ceph/pull/26271>`_, Patrick Donnelly) -* common: ceph_timer: stop timer's thread when it is suspended (`issue#37766 <https://tracker.ceph.com/issues/37766>`_, `pr#26579 <https://github.com/ceph/ceph/pull/26579>`_, Peng Wang) -* common: fix for broken rbdmap parameter parsing (`issue#36327 <https://tracker.ceph.com/issues/36327>`_, `pr#26000 <https://github.com/ceph/ceph/pull/26000>`_, Marc Schoechlin) -* core: Objecter::calc_op_budget: Fix invalid access to extent union member (`issue#37932 <https://tracker.ceph.com/issues/37932>`_, `pr#26064 <https://github.com/ceph/ceph/pull/26064>`_, Simon Ruggier) -* core: os/filestore: ceph_abort() on fsync(2) or fdatasync(2) failure (`issue#38258 <https://tracker.ceph.com/issues/38258>`_, `pr#26871 <https://github.com/ceph/ceph/pull/26871>`_, Sage Weil) -* crypto: don't use PK11_ImportSymKey() in FIPS mode (`issue#38843 <https://tracker.ceph.com/issues/38843>`_, `pr#27104 <https://github.com/ceph/ceph/pull/27104>`_, Radoslaw Zarzynski) -* Fix recovery and backfill priority handling (`issue#27985 <https://tracker.ceph.com/issues/27985>`_, `issue#38041 <https://tracker.ceph.com/issues/38041>`_, `pr#26793 <https://github.com/ceph/ceph/pull/26793>`_, Sage Weil, xie xingguo, David Zafman) -* journal: max journal order is incorrectly set at 64 (`issue#37541 <https://tracker.ceph.com/issues/37541>`_, `pr#25955 <https://github.com/ceph/ceph/pull/25955>`_, Mykola Golub) -* librgw: export multitenancy support (`issue#37928 <https://tracker.ceph.com/issues/37928>`_, `pr#25986 <https://github.com/ceph/ceph/pull/25986>`_, Tao Chen) -* mds: broadcast quota message to client when disable quota (`issue#38054 <https://tracker.ceph.com/issues/38054>`_, `pr#26293 <https://github.com/ceph/ceph/pull/26293>`_, Junhui Tang) -* mds: fix potential re-evaluate stray dentry in _unlink_local_finish (`issue#38263 <https://tracker.ceph.com/issues/38263>`_, `pr#26473 <https://github.com/ceph/ceph/pull/26473>`_, Zhi Zhang) -* mds: handle fragment notify race (`issue#36035 <https://tracker.ceph.com/issues/36035>`_, `pr#25990 <https://github.com/ceph/ceph/pull/25990>`_, "Yan, Zheng") -* mds: handle state change race (`issue#37594 <https://tracker.ceph.com/issues/37594>`_, `pr#26005 <https://github.com/ceph/ceph/pull/26005>`_, "Yan, Zheng") -* mds: log evicted clients to clog/dbg (`issue#37639 <https://tracker.ceph.com/issues/37639>`_, `pr#25858 <https://github.com/ceph/ceph/pull/25858>`_, Patrick Donnelly) -* mds: log new client sessions with various metadata (`issue#37678 <https://tracker.ceph.com/issues/37678>`_, `pr#26257 <https://github.com/ceph/ceph/pull/26257>`_, Patrick Donnelly) -* mds: message invalid access (`issue#38488 <https://tracker.ceph.com/issues/38488>`_, `pr#26661 <https://github.com/ceph/ceph/pull/26661>`_, Patrick Donnelly) -* MDSMonitor: do not assign standby-replay when degraded (`issue#36384 <https://tracker.ceph.com/issues/36384>`_, `pr#26642 <https://github.com/ceph/ceph/pull/26642>`_, Patrick Donnelly) -* MDSMonitor: missing osdmon writeable check (`issue#37929 <https://tracker.ceph.com/issues/37929>`_, `pr#26065 <https://github.com/ceph/ceph/pull/26065>`_, Patrick Donnelly) -* mds: optimize revoking stale caps (`issue#38043 <https://tracker.ceph.com/issues/38043>`_, `pr#26278 <https://github.com/ceph/ceph/pull/26278>`_, "Yan, Zheng") -* mds: stopping MDS with a large cache (40+GB) causes it to miss heartbeats (`issue#37723 <https://tracker.ceph.com/issues/37723>`_, `issue#38022 <https://tracker.ceph.com/issues/38022>`_, `pr#26232 <https://github.com/ceph/ceph/pull/26232>`_, Patrick Donnelly) -* mds: trim cache after journal flush (`issue#38010 <https://tracker.ceph.com/issues/38010>`_, `pr#26215 <https://github.com/ceph/ceph/pull/26215>`_, Patrick Donnelly) -* mds: wait for client to release shared cap when re-acquiring xlock (`issue#38491 <https://tracker.ceph.com/issues/38491>`_, `pr#27024 <https://github.com/ceph/ceph/pull/27024>`_, "Yan, Zheng") -* mds: wait shorter intervals if beacon not sent (`issue#36367 <https://tracker.ceph.com/issues/36367>`_, `pr#25979 <https://github.com/ceph/ceph/pull/25979>`_, Patrick Donnelly) -* mgr: "balancer execute" only requires read permissions (`issue#25345 <https://tracker.ceph.com/issues/25345>`_, `pr#25768 <https://github.com/ceph/ceph/pull/25768>`_, John Spray) -* mgr/balancer: restrict automatic balancing to specific weekdays (`pr#26501 <https://github.com/ceph/ceph/pull/26501>`_, xie xingguo) -* mgr/BaseMgrModule: drop GIL for ceph_send_command (`issue#38537 <https://tracker.ceph.com/issues/38537>`_, `pr#26830 <https://github.com/ceph/ceph/pull/26830>`_, Sage Weil) -* mgr/DaemonServer: log pgmap usage to cluster log (`issue#37886 <https://tracker.ceph.com/issues/37886>`_, `pr#26207 <https://github.com/ceph/ceph/pull/26207>`_, Neha Ojha) -* mgr/dashboard: fix for using '::' on hosts without ipv6 (`issue#38575 <https://tracker.ceph.com/issues/38575>`_, `pr#26751 <https://github.com/ceph/ceph/pull/26751>`_, Noah Watkins) -* mgr: deadlock: _check_auth_rotating possible clock skew, rotating keys expired way too early (`issue#23460 <https://tracker.ceph.com/issues/23460>`_, `pr#26427 <https://github.com/ceph/ceph/pull/26427>`_, Yan Jun) -* mgr: drop GIL in StandbyPyModule::get_config (`issue#35985 <http://tracker.ceph.com/issues/35985>`_, `pr#26613 <https://github.com/ceph/ceph/pull/26613>`_, John Spray; `pr#27639 <https://github.com/ceph/ceph/pull/27639>`_, wumingqiao) -* mgr/restful: fix py got exception when get osd info (`issue#38182 <https://tracker.ceph.com/issues/38182>`_, `pr#26199 <https://github.com/ceph/ceph/pull/26199>`_, Boris Ranto, zouaiguo) -* mon: A PG with PG_STATE_REPAIR doesn't mean damaged data, PG_STATE_IN… (`issue#38070 <https://tracker.ceph.com/issues/38070>`_, `pr#26305 <https://github.com/ceph/ceph/pull/26305>`_, David Zafman) -* mon/MgrStatMonitor: ensure only one copy of initial service map (`issue#38839 <https://tracker.ceph.com/issues/38839>`_, `pr#27207 <https://github.com/ceph/ceph/pull/27207>`_, Sage Weil) -* mon: monstore tool rebuild does not generate creating_pgs (`issue#36306 <https://tracker.ceph.com/issues/36306>`_, `pr#25825 <https://github.com/ceph/ceph/pull/25825>`_, Sage Weil) -* mon: scrub warning check incorrectly uses mon scrub interval (`issue#37264 <https://tracker.ceph.com/issues/37264>`_, `pr#26557 <https://github.com/ceph/ceph/pull/26557>`_, Zhi Zhang, Sage Weil, David Zafman) -* msg/async: backport recent messenger fixes (`issue#36497 <https://tracker.ceph.com/issues/36497>`_, `issue#37778 <https://tracker.ceph.com/issues/37778>`_, `pr#25956 <https://github.com/ceph/ceph/pull/25956>`_, xie xingguo) -* msg/msg_types: fix the dencoder of entity_addr_t (`issue#24676 <https://tracker.ceph.com/issues/24676>`_, `pr#26042 <https://github.com/ceph/ceph/pull/26042>`_, Kefu Chai) -* msgr: should set EPOLLET flag on del_event() (`issue#38828 <https://tracker.ceph.com/issues/38828>`_, `pr#27226 <https://github.com/ceph/ceph/pull/27226>`_, Roman Penyaev) -* msg: should set EPOLLET flag on del_event() (`issue#38857 <https://tracker.ceph.com/issues/38857>`_, `pr#27226 <https://github.com/ceph/ceph/pull/27226>`_, Roman Penyaev) -* multisite: es sync null versioned object failed because of olh info (`issue#23842 <https://tracker.ceph.com/issues/23842>`_, `issue#23841 <https://tracker.ceph.com/issues/23841>`_, `pr#26358 <https://github.com/ceph/ceph/pull/26358>`_, Tianshan Qu, Shang Ding) -* Object can still be deleted even if s3:DeleteObject policy is set (`issue#37403 <https://tracker.ceph.com/issues/37403>`_, `pr#26310 <https://github.com/ceph/ceph/pull/26310>`_, Enming.Zhang) -* objecter: avoid race when reset down osd's session (`issue#24601 <https://tracker.ceph.com/issues/24601>`_, `pr#25853 <https://github.com/ceph/ceph/pull/25853>`_, Zengran Zhang) -* os/bluestore: backport new bitmap allocator (`issue#24598 <https://tracker.ceph.com/issues/24598>`_, `pr#26979 <https://github.com/ceph/ceph/pull/26979>`_, Radoslaw Zarzynski, Jianpeng Ma, Igor Fedotov, Sage Weil) -* os/bluestore: bitmap allocator might fail to return contiguous chunk despite having enough space (`issue#38761 <https://tracker.ceph.com/issues/38761>`_, `pr#27312 <https://github.com/ceph/ceph/pull/27312>`_, Igor Fedotov) -* os/bluestore: do not assert on non-zero err codes from compress() call (`issue#37839 <https://tracker.ceph.com/issues/37839>`_, `pr#26544 <https://github.com/ceph/ceph/pull/26544>`_, Igor Fedotov) -* os/bluestore: fix lack of onode ref during removal (`issue#38395 <https://tracker.ceph.com/issues/38395>`_, `pr#26540 <https://github.com/ceph/ceph/pull/26540>`_, Sage Weil) -* os/bluestore: Fix problem with bluefs's freespace not being balanced when kv_sync_thread is sleeping (`issue#38574 <https://tracker.ceph.com/issues/38574>`_, `pr#26866 <https://github.com/ceph/ceph/pull/26866>`_, Adam Kupczyk) -* os/bluestore: fixup access a destroy cond cause deadlock or undefine (`issue#37733 <https://tracker.ceph.com/issues/37733>`_, `pr#26261 <https://github.com/ceph/ceph/pull/26261>`_, linbing) -* os/bluestore: KernelDevice::read() does the EIO mapping now (`issue#36455 <https://tracker.ceph.com/issues/36455>`_, `pr#25855 <https://github.com/ceph/ceph/pull/25855>`_, Radoslaw Zarzynski) -* osd: backport recent upmap fixes (`issue#37968 <https://tracker.ceph.com/issues/37968>`_, `issue#37940 <https://tracker.ceph.com/issues/37940>`_, `issue#37881 <https://tracker.ceph.com/issues/37881>`_, `pr#26127 <https://github.com/ceph/ceph/pull/26127>`_, huangjun, xie xingguo) -* osd: backport recent upmap fixes (`issue#38826 <https://tracker.ceph.com/issues/38826>`_, `issue#38897 <https://tracker.ceph.com/issues/38897>`_, `pr#27224 <https://github.com/ceph/ceph/pull/27224>`_, huangjun, xie xingguo) -* osd/bluestore: deep fsck fails on inspecting very large onodes (`issue#38065 <https://tracker.ceph.com/issues/38065>`_, `pr#26387 <https://github.com/ceph/ceph/pull/26387>`_, Igor Fedotov) -* OSD crashes in get_str_map while creating with ceph-volume (`issue#38329 <https://tracker.ceph.com/issues/38329>`_, `pr#26900 <https://github.com/ceph/ceph/pull/26900>`_, Sage Weil) -* osd: keep using cache even if op will invalid cache (`issue#37593 <https://tracker.ceph.com/issues/37593>`_, `pr#26078 <https://github.com/ceph/ceph/pull/26078>`_, Zengran Zhang) -* osd/PG.cc: account for missing set irrespective of last_complete (`issue#37919 <https://tracker.ceph.com/issues/37919>`_, `pr#26236 <https://github.com/ceph/ceph/pull/26236>`_, Neha Ojha) -* osd/PrimaryLogPG: fix the extent length error of the sync read (`issue#37680 <https://tracker.ceph.com/issues/37680>`_, `pr#25711 <https://github.com/ceph/ceph/pull/25711>`_, Xiaofei Cui) -* osd/PrimaryLogPG: handle object !exists in handle_watch_timeout (`issue#38432 <https://tracker.ceph.com/issues/38432>`_, `pr#26706 <https://github.com/ceph/ceph/pull/26706>`_, Sage Weil) -* rbd-mirror: update mirror status when stopping (`issue#36659 <https://tracker.ceph.com/issues/36659>`_, `pr#25720 <https://github.com/ceph/ceph/pull/25720>`_, Jason Dillaman) -* rgw: bucket full sync handles delete markers (`issue#38007 <https://tracker.ceph.com/issues/38007>`_, `pr#26192 <https://github.com/ceph/ceph/pull/26192>`_, Casey Bodley) -* rgw: bucket limit check misbehaves for > max-entries buckets (usually 1000) (`issue#35973 <https://tracker.ceph.com/issues/35973>`_, `pr#26946 <https://github.com/ceph/ceph/pull/26946>`_, Matt Benjamin) -* rgw: bug in versioning concurrent, list and get have consistency issue (`issue#38060 <https://tracker.ceph.com/issues/38060>`_, `pr#26548 <https://github.com/ceph/ceph/pull/26548>`_, Wang Hao) -* rgw: check for non-existent bucket in RGWGetACLs (`issue#38116 <https://tracker.ceph.com/issues/38116>`_, `pr#26530 <https://github.com/ceph/ceph/pull/26530>`_, Matt Benjamin) -* rgw: data sync drains lease stack on lease failure (`issue#38479 <https://tracker.ceph.com/issues/38479>`_, `pr#26761 <https://github.com/ceph/ceph/pull/26761>`_, Casey Bodley) -* rgw: fails to start on Fedora 28 from default configuration (`issue#24228 <https://tracker.ceph.com/issues/24228>`_, `pr#26131 <https://github.com/ceph/ceph/pull/26131>`_, Matt Benjamin) -* rgw: feature -- log successful bucket resharding events (`issue#37647 <https://tracker.ceph.com/issues/37647>`_, `pr#25738 <https://github.com/ceph/ceph/pull/25738>`_, J. Eric Ivancich) -* rgw: fetch_remote_obj filters out olh attrs (`issue#37792 <https://tracker.ceph.com/issues/37792>`_, `pr#26191 <https://github.com/ceph/ceph/pull/26191>`_, Casey Bodley) -* rgw: fix cls_bucket_head result order consistency (`issue#38410 <https://tracker.ceph.com/issues/38410>`_, `pr#26546 <https://github.com/ceph/ceph/pull/26546>`_, Tianshan Qu) -* rgw: fix radosgw linkage with WITH_RADOSGW_BEAST_FRONTEND=OFF (`issue#23680 <https://tracker.ceph.com/issues/23680>`_, `pr#26332 <https://github.com/ceph/ceph/pull/26332>`_, Nathan Cutler) -* rgw: fix rgw_data_sync_info::json_decode() (`issue#38373 <https://tracker.ceph.com/issues/38373>`_, `pr#26549 <https://github.com/ceph/ceph/pull/26549>`_, Casey Bodley) -* rgw: handle S3 version 2 pre-signed urls with meta-data (`issue#23470 <https://tracker.ceph.com/issues/23470>`_, `pr#25901 <https://github.com/ceph/ceph/pull/25901>`_, Matt Benjamin) -* rgw: ldap: fix LDAPAuthEngine::init() when uri !empty() (`issue#38699 <https://tracker.ceph.com/issues/38699>`_, `pr#27173 <https://github.com/ceph/ceph/pull/27173>`_, Matt Benjamin) -* rgw: multiple es related fixes and improvements (`issue#22877 <https://tracker.ceph.com/issues/22877>`_, `issue#23655 <https://tracker.ceph.com/issues/23655>`_, `issue#38030 <https://tracker.ceph.com/issues/38030>`_, `issue#38028 <https://tracker.ceph.com/issues/38028>`_, `issue#36092 <https://tracker.ceph.com/issues/36092>`_, `pr#26516 <https://github.com/ceph/ceph/pull/26516>`_, Yehuda Sadeh, Abhishek Lekshmanan) -* rgw multisite: data sync checks empty next_marker for datalog (`issue#39033 <https://tracker.ceph.com/issues/39033>`_, `pr#27299 <https://github.com/ceph/ceph/pull/27299>`_, Casey Bodley) -* rgw: nfs: skip empty (non-POSIX) path segments (`issue#38744 <https://tracker.ceph.com/issues/38744>`_, `pr#27180 <https://github.com/ceph/ceph/pull/27180>`_, Matt Benjamin) -* rgw: only update last_trim marker on ENODATA (`issue#38075 <https://tracker.ceph.com/issues/38075>`_, `pr#26619 <https://github.com/ceph/ceph/pull/26619>`_, Casey Bodley) -* rgw: "radosgw-admin bucket rm ... --purge-objects" can hang (`issue#38007 <https://tracker.ceph.com/issues/38007>`_, `issue#38134 <https://tracker.ceph.com/issues/38134>`_, `pr#26263 <https://github.com/ceph/ceph/pull/26263>`_, J. Eric Ivancich) -* rgw: rgw_file: only first subuser can be exported to nfs (`issue#37855 <https://tracker.ceph.com/issues/37855>`_, `pr#26677 <https://github.com/ceph/ceph/pull/26677>`_, MinSheng Lin) -* rgw: rgwgc: process coredump in some special case (`issue#23199 <https://tracker.ceph.com/issues/23199>`_, `pr#25611 <https://github.com/ceph/ceph/pull/25611>`_, zhaokun) -* rgw: sse-c-fixes (`issue#38700 <https://tracker.ceph.com/issues/38700>`_, `pr#27295 <https://github.com/ceph/ceph/pull/27295>`_, Adam Kupczyk, Casey Bodley, Abhishek Lekshmanan) -* rgw: sync module: avoid printing attrs of objects in log (`issue#37646 <https://tracker.ceph.com/issues/37646>`_, `pr#27030 <https://github.com/ceph/ceph/pull/27030>`_, Abhishek Lekshmanan) -* tools: ceph-objectstore-tool: Dump hashinfo (`issue#37597 <https://tracker.ceph.com/issues/37597>`_, `pr#25722 <https://github.com/ceph/ceph/pull/25722>`_, David Zafman) - - -v12.2.11 Luminous -================= - -This is the eleventh bug fix release of the Luminous v12.2.x long term stable -release series. We recommend that all users upgrade to this release. Please note -the following precautions while upgrading. - -Notable Changes ---------------- - -* This release fixes the pg log hard limit bug that was introduced in - 12.2.9, https://tracker.ceph.com/issues/36686. A flag called - `pglog_hardlimit` has been introduced, which is off by default. Enabling - this flag will limit the length of the pg log. In order to enable - that, the flag must be set by running `ceph osd set pglog_hardlimit` - after completely upgrading to 12.2.11. Once the cluster has this flag - set, the length of the pg log will be capped by a hard limit. Once set, - this flag *must not* be unset anymore. - -* There have been fixes to RGW dynamic and manual resharding, which no longer - leaves behind stale bucket instances to be removed manually. For finding and - cleaning up older instances from a reshard a radosgw-admin command `reshard - stale-instances list` and `reshard stale-instances rm` should do the necessary - cleanup. - -* `cephfs-journal-tool` makes rank argument (--rank) mandatory. Rank is - of format `filesystem:rank`, where `filesystem` is the CephFS filesystem - and `rank` is the MDS rank on which the operation is to be executed. To - operate on all ranks, use `all` or `*` as the rank specifier. Note that, - operations that dump journal information to file will now dump to per-rank - suffixed dump files. Importing journal information from dump files is - disallowed if operation is targetted for all ranks. - -* CVE-2018-14662: mon: limit caps allowed to access the config store - -* CVE-2018-16846: rgw: enforce bounds on max-keys/max-uploads/max-parts (`issue#35994 <http://tracker.ceph.com/issues/35994>`) - -* CVE-2018-16889: rgw: sanitize customer encryption keys from log output in v4 auth (`issue#37847 <http://tracker.ceph.com/issues/37847>`) - -Changelog ---------- - -* build/ops: cmake: link unittest_compression against gtest (`pr#24921 <https://github.com/ceph/ceph/pull/24921>`_, Willem Jan Withagen) -* build/ops: run-make-check.sh ccache tweaks (`issue#24826 <http://tracker.ceph.com/issues/24826>`_, `issue#24817 <http://tracker.ceph.com/issues/24817>`_, `issue#24777 <http://tracker.ceph.com/issues/24777>`_, `pr#23902 <https://github.com/ceph/ceph/pull/23902>`_, Nathan Cutler, Erwan Velu) -* ceph-bluestore-tool: fix set label functionality for specific keys (`pr#25187 <https://github.com/ceph/ceph/pull/25187>`_, Igor Fedotov) -* ceph-create-keys: fix octal notation for Python 3 without losing compatibility with Python 2 (`issue#37643 <http://tracker.ceph.com/issues/37643>`_, `pr#25532 <https://github.com/ceph/ceph/pull/25532>`_, James Page) -* cephfs: ceph-volume-client: allow setting mode of CephFS volumes (`pr#25407 <https://github.com/ceph/ceph/pull/25407>`_, Tom Barron) -* cephfs-journal-tool: make --rank argument mandatory (`pr#24728 <https://github.com/ceph/ceph/pull/24728>`_, Venky Shankar) -* cephfs: mgr/status: fix fs status subcommand did not show standby-replay MDS' perf info (`issue#36575 <http://tracker.ceph.com/issues/36575>`_, `issue#36399 <http://tracker.ceph.com/issues/36399>`_, `pr#25032 <https://github.com/ceph/ceph/pull/25032>`_, Zhi Zhang) -* cephfs: race of updating wanted caps (`issue#37635 <http://tracker.ceph.com/issues/37635>`_, `issue#37464 <http://tracker.ceph.com/issues/37464>`_, `pr#25762 <https://github.com/ceph/ceph/pull/25762>`_, "Yan, Zheng") -* ceph-volume: Adapt code to support Python3 (`pr#26030 <https://github.com/ceph/ceph/pull/26030>`_, Volker Theile) -* ceph-volume add device_id to inventory listing (`pr#25350 <https://github.com/ceph/ceph/pull/25350>`_, Jan Fajerski) -* ceph-volume: enable device discards (`issue#36532 <http://tracker.ceph.com/issues/36532>`_, `pr#25748 <https://github.com/ceph/ceph/pull/25748>`_, Jonas Jelten) -* ceph-volume: fix Batch object in py3 environments (`pr#25552 <https://github.com/ceph/ceph/pull/25552>`_, Jan Fajerski) -* ceph-volume: fix JSON output in `inventory` (`issue#37390 <http://tracker.ceph.com/issues/37390>`_, `pr#25922 <https://github.com/ceph/ceph/pull/25922>`_, Sebastian Wagner) -* ceph-volume: Fix TypeError: join() takes exactly one argument (2 given) (`issue#37595 <http://tracker.ceph.com/issues/37595>`_, `pr#25772 <https://github.com/ceph/ceph/pull/25772>`_, Sebastian Wagner) -* ceph-volume fix TypeError on dmcrypt when using Python3 (`pr#26114 <https://github.com/ceph/ceph/pull/26114>`_, Alfredo Deza) -* ceph-volume: introduce class hierachy for strategies (`pr#25553 <https://github.com/ceph/ceph/pull/25553>`_, Jan Fajerski, Alfredo Deza) -* ceph-volume: mark a device not available if it belongs to ceph-disk (`pr#26117 <https://github.com/ceph/ceph/pull/26117>`_, Andrew Schoen) -* ceph-volume normalize comma to dot for string to int conversions (`issue#37442 <http://tracker.ceph.com/issues/37442>`_, `pr#25776 <https://github.com/ceph/ceph/pull/25776>`_, Alfredo Deza) -* ceph-volume: set permissions right before prime-osd-dir (`issue#37486 <http://tracker.ceph.com/issues/37486>`_, `pr#25778 <https://github.com/ceph/ceph/pull/25778>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume tests/functional declare ceph-ansible roles instead of importing them (`issue#37805 <http://tracker.ceph.com/issues/37805>`_, `pr#25838 <https://github.com/ceph/ceph/pull/25838>`_, Alfredo Deza) -* ceph-volume zap devices associated with an OSD ID and/or OSD FSID (`pr#26014 <https://github.com/ceph/ceph/pull/26014>`_, Alfredo Deza) -* ceph-volume: zap: improve zapping to remove all partitions and all LVs, encrypted or not (`issue#37449 <http://tracker.ceph.com/issues/37449>`_, `pr#25352 <https://github.com/ceph/ceph/pull/25352>`_, Alfredo Deza) -* cli: dump osd-fsid as part of osd find <id> (`issue#37966 <http://tracker.ceph.com/issues/37966>`_, `pr#26036 <https://github.com/ceph/ceph/pull/26036>`_, Noah Watkins) -* client: do not move f->pos untill success write (`issue#37631 <http://tracker.ceph.com/issues/37631>`_, `pr#25684 <https://github.com/ceph/ceph/pull/25684>`_, Junhui Tang) -* client: explicitly show blacklisted state via asok status command (`issue#36456 <http://tracker.ceph.com/issues/36456>`_, `issue#36352 <http://tracker.ceph.com/issues/36352>`_, `pr#24994 <https://github.com/ceph/ceph/pull/24994>`_, Jonathan Brielmaier, Zhi Zhang) -* client: fix fuse client hang because its pipe to mds is not ok4 (`issue#37829 <http://tracker.ceph.com/issues/37829>`_, `issue#36079 <http://tracker.ceph.com/issues/36079>`_, `pr#25904 <https://github.com/ceph/ceph/pull/25904>`_, Guan yunfei) -* client: request next osdmap for blacklisted client (`issue#36668 <http://tracker.ceph.com/issues/36668>`_, `issue#36691 <http://tracker.ceph.com/issues/36691>`_, `pr#24986 <https://github.com/ceph/ceph/pull/24986>`_, Zhi Zhang) -* common: auth/AuthSessionHandler: no handler if no session key (`issue#37427 <http://tracker.ceph.com/issues/37427>`_, `issue#36443 <http://tracker.ceph.com/issues/36443>`_, `pr#25297 <https://github.com/ceph/ceph/pull/25297>`_, Sage Weil) -* common/blkdev, ceph-volume: improve get_device_id (`pr#25752 <https://github.com/ceph/ceph/pull/25752>`_, Sage Weil) -* common: fix memory leaks in WeightedPriorityQueue (`issue#37429 <http://tracker.ceph.com/issues/37429>`_, `issue#36248 <http://tracker.ceph.com/issues/36248>`_, `pr#25296 <https://github.com/ceph/ceph/pull/25296>`_, Radoslaw Zarzynski) -* common: (mon) command sanitization accepts floats when Int type is defined resulting in exception fault in ceph-mon (`issue#26919 <http://tracker.ceph.com/issues/26919>`_, `pr#24374 <https://github.com/ceph/ceph/pull/24374>`_, Sage Weil) -* common: shut up some warnings (`pr#24648 <https://github.com/ceph/ceph/pull/24648>`_, Kefu Chai) -* config: drop config::lock when invoking config observer (`issue#37762 <http://tracker.ceph.com/issues/37762>`_, `pr#25833 <https://github.com/ceph/ceph/pull/25833>`_, Kefu Chai, Venky Shankar) -* core: bluestore: rename does not old ref to replacement onode at old name (`issue#36541 <http://tracker.ceph.com/issues/36541>`_, `issue#36638 <http://tracker.ceph.com/issues/36638>`_, `pr#24989 <https://github.com/ceph/ceph/pull/24989>`_, Jonathan Brielmaier, Sage Weil) -* core: enable the pg deletion process to be throttled (`issue#36321 <http://tracker.ceph.com/issues/36321>`_, `pr#24501 <https://github.com/ceph/ceph/pull/24501>`_, David Zafman) -* core: mgr crash on scrub of unconnected osd (`issue#36110 <http://tracker.ceph.com/issues/36110>`_, `issue#36464 <http://tracker.ceph.com/issues/36464>`_, `pr#25030 <https://github.com/ceph/ceph/pull/25030>`_, Sage Weil) -* core: mon osdmap cash too small during upgrade to mimic (`issue#36506 <http://tracker.ceph.com/issues/36506>`_, `pr#25021 <https://github.com/ceph/ceph/pull/25021>`_, Sage Weil) -* core: Objecter: add ignore cache flag if got redirect reply (`issue#36657 <http://tracker.ceph.com/issues/36657>`_, `pr#25074 <https://github.com/ceph/ceph/pull/25074>`_, Iain Buclaw, Jonathan Brielmaier) -* core: os/bluestore_tool: fix bluefs expand (`pr#25384 <https://github.com/ceph/ceph/pull/25384>`_, Igor Fedotov) -* core: rados rm --force-full is blocked when cluster is in full status (`issue#36436 <http://tracker.ceph.com/issues/36436>`_, `pr#25018 <https://github.com/ceph/ceph/pull/25018>`_, Yang Honggang) -* crushtool: add --reclassify operation to convert legacy crush maps to use device classes (`pr#25307 <https://github.com/ceph/ceph/pull/25307>`_, Sage Weil) -* debian: correct ceph-common relationship with older radosgw package (`pr#24997 <https://github.com/ceph/ceph/pull/24997>`_, Matthew Vernon) -* doc: broken link on troubleshooting-mon page (`pr#25500 <https://github.com/ceph/ceph/pull/25500>`_, James McClune) -* doc: fix broken fstab url in cephfs/fuse (`issue#36286 <http://tracker.ceph.com/issues/36286>`_, `pr#24434 <https://github.com/ceph/ceph/pull/24434>`_, Jos Collin) -* doc: Fix typo error on cephfs/fuse/ (`issue#36180 <http://tracker.ceph.com/issues/36180>`_, `issue#36309 <http://tracker.ceph.com/issues/36309>`_, `pr#24752 <https://github.com/ceph/ceph/pull/24752>`_, Karun Josy) -* doc: Put command template into literal block (`pr#25001 <https://github.com/ceph/ceph/pull/25001>`_, Alexey Stupnikov) -* doc/rados: update bluestore provisioning and autotuning docs (`issue#37341 <http://tracker.ceph.com/issues/37341>`_, `pr#25284 <https://github.com/ceph/ceph/pull/25284>`_, Mark Nelson) -* doc: show edit on github links and version warnings (`pr#25267 <https://github.com/ceph/ceph/pull/25267>`_, Neha Ojha, Noah Watkins) -* doc/user-management: Remove obsolete reset caps command (`issue#37663 <http://tracker.ceph.com/issues/37663>`_, `pr#25609 <https://github.com/ceph/ceph/pull/25609>`_, Brad Hubbard) -* examples: fix link order in librados example Makefile (`issue#37795 <http://tracker.ceph.com/issues/37795>`_, `pr#25829 <https://github.com/ceph/ceph/pull/25829>`_, Mahati Chamarthy) -* extend reconnect period when mds is busy (`issue#37739 <http://tracker.ceph.com/issues/37739>`_, `pr#25784 <https://github.com/ceph/ceph/pull/25784>`_, "Yan, Zheng") -* fsck: cid is improperly matched to oid (`issue#36145 <http://tracker.ceph.com/issues/36145>`_, `issue#32731 <http://tracker.ceph.com/issues/32731>`_, `pr#24705 <https://github.com/ceph/ceph/pull/24705>`_, Sage Weil) -* libcephfs: expose CEPH_SETATTR_MTIME_NOW and CEPH_SETATTR_ATIME_NOW (`issue#36206 <http://tracker.ceph.com/issues/36206>`_, `issue#35961 <http://tracker.ceph.com/issues/35961>`_, `pr#24465 <https://github.com/ceph/ceph/pull/24465>`_, Zhu Shangzhong) -* librbd: fix missing unblock_writes if shrink is not allowed (`issue#37363 <http://tracker.ceph.com/issues/37363>`_, `issue#36778 <http://tracker.ceph.com/issues/36778>`_, `pr#25253 <https://github.com/ceph/ceph/pull/25253>`_, runsisi) -* librbd: reset snaps in rbd_snap_list() (`issue#37535 <http://tracker.ceph.com/issues/37535>`_, `issue#37508 <http://tracker.ceph.com/issues/37508>`_, `pr#25458 <https://github.com/ceph/ceph/pull/25458>`_, Kefu Chai) -* mds: add "drop cache" command (`issue#36695 <http://tracker.ceph.com/issues/36695>`_, `issue#36281 <http://tracker.ceph.com/issues/36281>`_, `pr#24468 <https://github.com/ceph/ceph/pull/24468>`_, Rishabh Dave, Patrick Donnelly, Venky Shankar) -* mds: clean up log messages for standby-replay (`pr#25804 <https://github.com/ceph/ceph/pull/25804>`_, Patrick Donnelly) -* mds: create heartbeat grace config option (`issue#37674 <http://tracker.ceph.com/issues/37674>`_, `issue#37820 <http://tracker.ceph.com/issues/37820>`_, `pr#25889 <https://github.com/ceph/ceph/pull/25889>`_, Patrick Donnelly) -* mds: directories pinned keep being replicated back and forth between exporting mds and importing mds (`issue#37368 <http://tracker.ceph.com/issues/37368>`_, `issue#37606 <http://tracker.ceph.com/issues/37606>`_, `pr#25522 <https://github.com/ceph/ceph/pull/25522>`_, Xuehan Xu) -* mds: disallow dumping huge caches to formatter (`issue#37608 <http://tracker.ceph.com/issues/37608>`_, `pr#25567 <https://github.com/ceph/ceph/pull/25567>`_, Venky Shankar) -* mds: do not call Journaler::_trim twice (`issue#37566 <http://tracker.ceph.com/issues/37566>`_, `issue#37629 <http://tracker.ceph.com/issues/37629>`_, `pr#25562 <https://github.com/ceph/ceph/pull/25562>`_, Tang Junhui) -* mds: fix bug filelock stuck at LOCK_XSYN leading client can't read data (`issue#37700 <http://tracker.ceph.com/issues/37700>`_, `issue#37333 <http://tracker.ceph.com/issues/37333>`_, `pr#25677 <https://github.com/ceph/ceph/pull/25677>`_, Guan yunfei) -* mds: fix incorrect l_pq_executing_ops statistics when meet an invalid item in purge queue (`issue#37627 <http://tracker.ceph.com/issues/37627>`_, `issue#37567 <http://tracker.ceph.com/issues/37567>`_, `pr#25560 <https://github.com/ceph/ceph/pull/25560>`_, Junhui Tang) -* mds: fix infinite loop in OpTracker::check_ops_in_flight (`issue#37977 <http://tracker.ceph.com/issues/37977>`_, `pr#26048 <https://github.com/ceph/ceph/pull/26048>`_, "Yan, Zheng") -* mds: fix infinite loop in OpTracker::check_ops_in_flight (`issue#37977 <http://tracker.ceph.com/issues/37977>`_, `pr#26088 <https://github.com/ceph/ceph/pull/26088>`_, "Yan, Zheng") -* mds: fix mds damaged due to unexpected journal length (`issue#36200 <http://tracker.ceph.com/issues/36200>`_, `pr#24440 <https://github.com/ceph/ceph/pull/24440>`_, Zhi Zhang) -* mds: migrate strays part by part when shutdown mds (`issue#26926 <http://tracker.ceph.com/issues/26926>`_, `issue#32091 <http://tracker.ceph.com/issues/32091>`_, `pr#24324 <https://github.com/ceph/ceph/pull/24324>`_, "Yan, Zheng") -* MDSMonitor: allow beacons from stopping MDS that was laggy (`issue#37737 <http://tracker.ceph.com/issues/37737>`_, `pr#25686 <https://github.com/ceph/ceph/pull/25686>`_, Patrick Donnelly) -* mds: obsolete MDSMap option configs (`issue#37540 <http://tracker.ceph.com/issues/37540>`_, `pr#25431 <https://github.com/ceph/ceph/pull/25431>`_, Patrick Donnelly) -* mds: purge queue recovery hangs during boot if PQ journal is damaged (`issue#37899 <http://tracker.ceph.com/issues/37899>`_, `issue#37543 <http://tracker.ceph.com/issues/37543>`_, `pr#25968 <https://github.com/ceph/ceph/pull/25968>`_, Patrick Donnelly) -* mds: PurgeQueue write error handler does not handle EBLACKLISTED (`issue#37604 <http://tracker.ceph.com/issues/37604>`_, `pr#25524 <https://github.com/ceph/ceph/pull/25524>`_, Patrick Donnelly) -* mds: rctime not set on system inode (root) at startup (`issue#36221 <http://tracker.ceph.com/issues/36221>`_, `issue#36460 <http://tracker.ceph.com/issues/36460>`_, `pr#25043 <https://github.com/ceph/ceph/pull/25043>`_, Patrick Donnelly) -* mds: remove duplicated l_mdc_num_strays perfcounter set (`issue#37633 <http://tracker.ceph.com/issues/37633>`_, `issue#37516 <http://tracker.ceph.com/issues/37516>`_, `pr#25682 <https://github.com/ceph/ceph/pull/25682>`_, Zhi Zhang) -* mds: severe internal fragment when decoding xattr_map from log event (`issue#37399 <http://tracker.ceph.com/issues/37399>`_, `issue#37602 <http://tracker.ceph.com/issues/37602>`_, `pr#25520 <https://github.com/ceph/ceph/pull/25520>`_, "Yan, Zheng") -* mds: "src/mds/MDLog.cc: 281: FAILED ceph_assert(!capped)" during max_mds thrashing (`issue#36350 <http://tracker.ceph.com/issues/36350>`_, `issue#37092 <http://tracker.ceph.com/issues/37092>`_, `pr#25826 <https://github.com/ceph/ceph/pull/25826>`_, "Yan, Zheng") -* mgr/balancer: add cmd to list all plans (`issue#37420 <http://tracker.ceph.com/issues/37420>`_, `pr#25259 <https://github.com/ceph/ceph/pull/25259>`_, Yang Honggang) -* mgr/balancer: add crush_compat_metrics param (`issue#37413 <http://tracker.ceph.com/issues/37413>`_, `pr#25257 <https://github.com/ceph/ceph/pull/25257>`_, Dan van der Ster) -* mgr: balancer: python 3 compat fixes (`issue#37416 <http://tracker.ceph.com/issues/37416>`_, `pr#25258 <https://github.com/ceph/ceph/pull/25258>`_, Noah Watkins) -* mgr: fix crash due to multiple sessions from daemons with same name (`pr#25867 <https://github.com/ceph/ceph/pull/25867>`_, Mykola Golub) -* mgr: hold lock while accessing the request list and submitting request (`pr#25047 <https://github.com/ceph/ceph/pull/25047>`_, Jerry Lee) -* mgr: Module 'influx' has failed (`issue#25201 <http://tracker.ceph.com/issues/25201>`_, `pr#25184 <https://github.com/ceph/ceph/pull/25184>`_, Nathan Cutler, Wido den Hollander) -* mgr: prometheus: added bluestore db and wal devices to ceph_disk_occupation metric.// (`issue#37362 <http://tracker.ceph.com/issues/37362>`_, `pr#25216 <https://github.com/ceph/ceph/pull/25216>`_, Konstantin Shalygin) -* mgr: race between daemon state and service map in 'service status' (`issue#37478 <http://tracker.ceph.com/issues/37478>`_, `issue#36656 <http://tracker.ceph.com/issues/36656>`_, `pr#25369 <https://github.com/ceph/ceph/pull/25369>`_, Mykola Golub) -* mgr: [restful] deep_scrub is not a valid OSD command (`issue#36720 <http://tracker.ceph.com/issues/36720>`_, `issue#36750 <http://tracker.ceph.com/issues/36750>`_, `pr#25041 <https://github.com/ceph/ceph/pull/25041>`_, Boris Ranto) -* mon: mark REMOVE_SNAPS messages as no_reply (`issue#37568 <http://tracker.ceph.com/issues/37568>`_, `issue#37694 <http://tracker.ceph.com/issues/37694>`_, `pr#25779 <https://github.com/ceph/ceph/pull/25779>`_, "Yan, Zheng") -* mon/OSDMonitor: do not populate void pg_temp into nextmap (`issue#37811 <http://tracker.ceph.com/issues/37811>`_, `pr#25845 <https://github.com/ceph/ceph/pull/25845>`_, Aleksei Zakharov) -* mon: shutdown messenger early to avoid accessing deleted logger (`issue#37780 <http://tracker.ceph.com/issues/37780>`_, `issue#37813 <http://tracker.ceph.com/issues/37813>`_, `pr#25847 <https://github.com/ceph/ceph/pull/25847>`_, ningtao) -* os/bluestore: avoid frequent allocator dump on bluefs rebalance failure (`pr#24543 <https://github.com/ceph/ceph/pull/24543>`_, Igor Fedotov) -* os/bluestore/BlueStore.cc: 1025: FAILED assert(buffer_bytes >= b->length) from ObjectStore/StoreTest.ColSplitTest2/2 (`issue#26943 <http://tracker.ceph.com/issues/26943>`_, `issue#24439 <http://tracker.ceph.com/issues/24439>`_, `pr#24992 <https://github.com/ceph/ceph/pull/24992>`_, Jonathan Brielmaier, Sage Weil) -* os/bluestore: handle spurious read errors (`issue#22464 <http://tracker.ceph.com/issues/22464>`_, `pr#24649 <https://github.com/ceph/ceph/pull/24649>`_, Paul Emmerich) -* osd: backport recent upmap fixes (`pr#25418 <https://github.com/ceph/ceph/pull/25418>`_, ningtao, xie xingguo) -* osdc/Objecter: update op_target_t::paused in _calc_target (`issue#37398 <http://tracker.ceph.com/issues/37398>`_, `issue#37553 <http://tracker.ceph.com/issues/37553>`_, `pr#25719 <https://github.com/ceph/ceph/pull/25719>`_, Song Shun, runsisi) -* osdc: reduce ObjectCacher's memory fragments (`issue#36642 <http://tracker.ceph.com/issues/36642>`_, `issue#36192 <http://tracker.ceph.com/issues/36192>`_, `pr#24872 <https://github.com/ceph/ceph/pull/24872>`_, "Yan, Zheng") -* osd: failed assert when osd_memory_target options mismatch (`issue#37697 <http://tracker.ceph.com/issues/37697>`_, `issue#37507 <http://tracker.ceph.com/issues/37507>`_, `pr#25604 <https://github.com/ceph/ceph/pull/25604>`_, xie xingguo) -* osd/mon: pg log hard limit with upgrades fixed (`issue#37903 <http://tracker.ceph.com/issues/37903>`_, `issue#21416 <http://tracker.ceph.com/issues/21416>`_, `pr#25949 <https://github.com/ceph/ceph/pull/25949>`_, Neha Ojha, xie xingguo) -* osd/OSD.cc: log slow requests in OSD logs (`pr#25824 <https://github.com/ceph/ceph/pull/25824>`_, Neha Ojha) -* osd/OSDMap: cancel mapping if target osd is out (`issue#37501 <http://tracker.ceph.com/issues/37501>`_, `pr#25698 <https://github.com/ceph/ceph/pull/25698>`_, ningtao, xie xingguo) -* osd: potential deadlock in PG::_scan_snaps when repairing snap mapper (`issue#36630 <http://tracker.ceph.com/issues/36630>`_, `pr#24833 <https://github.com/ceph/ceph/pull/24833>`_, Mykola Golub) -* osd: Prioritize user specified scrubs (`issue#37343 <http://tracker.ceph.com/issues/37343>`_, `issue#37269 <http://tracker.ceph.com/issues/37269>`_, `pr#25514 <https://github.com/ceph/ceph/pull/25514>`_, kungf, David Zafman) -* osd: race condition opening heartbeat connection (`issue#36602 <http://tracker.ceph.com/issues/36602>`_, `issue#36636 <http://tracker.ceph.com/issues/36636>`_, `pr#25035 <https://github.com/ceph/ceph/pull/25035>`_, Sage Weil) -* osd: RBD client IOPS pool stats are incorrect (2x higher; includes IO hints as an op) (`issue#24909 <http://tracker.ceph.com/issues/24909>`_, `issue#36556 <http://tracker.ceph.com/issues/36556>`_, `pr#25025 <https://github.com/ceph/ceph/pull/25025>`_, Jason Dillaman) -* pybind/mgr/status: fix ceph fs status in py3 environments (`issue#37573 <http://tracker.ceph.com/issues/37573>`_, `issue#37625 <http://tracker.ceph.com/issues/37625>`_, `pr#25695 <https://github.com/ceph/ceph/pull/25695>`_, Jan Fajerski) -* rbd: pybind: added missing RBD_FLAG_FAST_DIFF_INVALID constant (`issue#36407 <http://tracker.ceph.com/issues/36407>`_, `pr#25006 <https://github.com/ceph/ceph/pull/25006>`_, Jason Dillaman) -* rbd: [rbd-mirror] periodic mirror status timer might fail to be scheduled (`issue#36500 <http://tracker.ceph.com/issues/36500>`_, `issue#36554 <http://tracker.ceph.com/issues/36554>`_, `pr#24917 <https://github.com/ceph/ceph/pull/24917>`_, Nathan Cutler, Jason Dillaman) -* rgw: add ssl support to beast frontend (`issue#22832 <http://tracker.ceph.com/issues/22832>`_, `issue#24358 <http://tracker.ceph.com/issues/24358>`_, `pr#24621 <https://github.com/ceph/ceph/pull/24621>`_, Casey Bodley) -* rgw: apply quota config to users created via external auth (`issue#24595 <http://tracker.ceph.com/issues/24595>`_, `issue#36222 <http://tracker.ceph.com/issues/36222>`_, `pr#24547 <https://github.com/ceph/ceph/pull/24547>`_, Casey Bodley, Matt Benjamin) -* rgw: beast frontend fails to parse ipv6 endpoints (`issue#36733 <http://tracker.ceph.com/issues/36733>`_, `issue#36662 <http://tracker.ceph.com/issues/36662>`_, `pr#25512 <https://github.com/ceph/ceph/pull/25512>`_, Casey Bodley) -* rgw: bucket resharding fixes (`issue#37446 <http://tracker.ceph.com/issues/37446>`_, `issue#36688 <http://tracker.ceph.com/issues/36688>`_, `pr#25326 <https://github.com/ceph/ceph/pull/25326>`_, Orit Wasserman, Abhishek Lekshmanan, J. Eric Ivancich) -* rgw: catch exceptions from librados::NObjectIterator (`issue#37091 <http://tracker.ceph.com/issues/37091>`_, `issue#37475 <http://tracker.ceph.com/issues/37475>`_, `pr#25289 <https://github.com/ceph/ceph/pull/25289>`_, Casey Bodley) -* rgw: Don't treat colons specially in resource part of ARN (`issue#37482 <http://tracker.ceph.com/issues/37482>`_, `issue#23817 <http://tracker.ceph.com/issues/23817>`_, `pr#25387 <https://github.com/ceph/ceph/pull/25387>`_, Adam C. Emerson) -* rgw: es fixes for working with nfs ganesha (`issue#37349 <http://tracker.ceph.com/issues/37349>`_, `issue#36233 <http://tracker.ceph.com/issues/36233>`_, `issue#22758 <http://tracker.ceph.com/issues/22758>`_, `pr#25444 <https://github.com/ceph/ceph/pull/25444>`_, Abhishek Lekshmanan) -* rgw_file: user info never synced since librgw init (`issue#37549 <http://tracker.ceph.com/issues/37549>`_, `pr#25484 <https://github.com/ceph/ceph/pull/25484>`_, Tao Chen) -* rgw: fixes for zone deletion (`issue#37328 <http://tracker.ceph.com/issues/37328>`_, `issue#37466 <http://tracker.ceph.com/issues/37466>`_, `pr#25320 <https://github.com/ceph/ceph/pull/25320>`_, Abhishek Lekshmanan) -* rgw: fix max-size in radosgw-admin and REST Admin API (`issue#37519 <http://tracker.ceph.com/issues/37519>`_, `pr#25448 <https://github.com/ceph/ceph/pull/25448>`_, Nick Erdmann) -* rgw: fix version bucket stats (`issue#37563 <http://tracker.ceph.com/issues/37563>`_, `issue#21429 <http://tracker.ceph.com/issues/21429>`_, `pr#25644 <https://github.com/ceph/ceph/pull/25644>`_, Shasha Lu) -* rgw: librgw: crashes in multisite configuration (`issue#36302 <http://tracker.ceph.com/issues/36302>`_, `issue#36414 <http://tracker.ceph.com/issues/36414>`_, `pr#24909 <https://github.com/ceph/ceph/pull/24909>`_, Casey Bodley) -* rgw: multisite: sync gets stuck retrying deletes that fail with ERR_PRECONDITION_FAILED (`issue#37551 <http://tracker.ceph.com/issues/37551>`_, `issue#37448 <http://tracker.ceph.com/issues/37448>`_, `pr#25506 <https://github.com/ceph/ceph/pull/25506>`_, Casey Bodley) -* rgw: radosgw-admin: translate reshard status codes (trivial) (`issue#37284 <http://tracker.ceph.com/issues/37284>`_, `issue#36486 <http://tracker.ceph.com/issues/36486>`_, `pr#25195 <https://github.com/ceph/ceph/pull/25195>`_, Matt Benjamin) -* rgw: rgw-admin: reshard add can add a non-existent bucket (`issue#36449 <http://tracker.ceph.com/issues/36449>`_, `issue#36757 <http://tracker.ceph.com/issues/36757>`_, `pr#25088 <https://github.com/ceph/ceph/pull/25088>`_, Jonathan Brielmaier, Abhishek Lekshmanan) -* rgw: SSE encryption does not detect ssl termination in proxy (`issue#36644 <http://tracker.ceph.com/issues/36644>`_, `issue#27221 <http://tracker.ceph.com/issues/27221>`_, `pr#24944 <https://github.com/ceph/ceph/pull/24944>`_, Jonathan Brielmaier, Casey Bodley) -* rpm: Use hardened LDFLAGS (`issue#36316 <http://tracker.ceph.com/issues/36316>`_, `issue#36391 <http://tracker.ceph.com/issues/36391>`_, `pr#25173 <https://github.com/ceph/ceph/pull/25173>`_, Boris Ranto) - - -v12.2.10 Luminous -================= - -This is the tenth bug fix release of the Luminous v12.2.x long term stable -release series. The previous release, v12.2.9, introduced the PG hard-limit -patches which were found to cause an issue in certain upgrade scenarios, and -this release was expedited to revert those patches. If you already successfully -upgraded to v12.2.9, you should **not** upgrade to v12.2.10, but rather **wait** -for a release in which http://tracker.ceph.com/issues/36686 is addressed. All -other users are encouraged to upgrade to this release. - -Notable Changes ---------------- - -OSD - -* This release reverts the PG hard-limit patches added in v12.2.9. - -Changelog ---------- - -* ceph-volume: add some choose_disk capabilities (`issue#36446 <http://tracker.ceph.com/issues/36446>`_, `pr#24783 <https://github.com/ceph/ceph/pull/24783>`_, Erwan Velu) -* ceph-volume: remove version reporting from help menu (`issue#36386 <http://tracker.ceph.com/issues/36386>`_, `pr#24754 <https://github.com/ceph/ceph/pull/24754>`_, Alfredo Deza) -* ceph-volume: systemd import main so console_scripts work for executable (`issue#36648 <http://tracker.ceph.com/issues/36648>`_, `pr#24853 <https://github.com/ceph/ceph/pull/24853>`_, Alfredo Deza) -* ceph-volume: tests install ceph-ansible's requirements.txt dependencies (`issue#36672 <http://tracker.ceph.com/issues/36672>`_, `pr#24960 <https://github.com/ceph/ceph/pull/24960>`_, Alfredo Deza) -* ceph-volume: util.encryption don't push stderr to terminal (`issue#36246 <http://tracker.ceph.com/issues/36246>`_, `pr#24827 <https://github.com/ceph/ceph/pull/24827>`_, Alfredo Deza) -* ceph-volume: util.encryption robust blkid+lsblk detection of lockbox (`pr#24981 <https://github.com/ceph/ceph/pull/24981>`_, Alfredo Deza) -* ceph-volume: use console_scripts (`issue#36601 <http://tracker.ceph.com/issues/36601>`_, `pr#24837 <https://github.com/ceph/ceph/pull/24837>`_, Mehdi Abaakouk) -* OSDMapMapping does not handle active.size() > pool size (`issue#26866 <http://tracker.ceph.com/issues/26866>`_, `issue#35935 <http://tracker.ceph.com/issues/35935>`_, `pr#24432 <https://github.com/ceph/ceph/pull/24432>`_, Sage Weil) -* PG: add custom_reaction Backfilled and release reservations (`issue#24333 <http://tracker.ceph.com/issues/24333>`_, `pr#23493 <https://github.com/ceph/ceph/pull/23493>`_, Neha Ojha) -* Revert "PG: add custom_reaction Backfilled and release reservations after backfill (`pr#24902 <https://github.com/ceph/ceph/pull/24902>`_, Neha Ojha) -* Revert pg log limit changes (`issue#36686 <http://tracker.ceph.com/issues/36686>`_, `pr#24903 <https://github.com/ceph/ceph/pull/24903>`_, Neha Ojha) -* backport and other test fixes for osd-scrub-repair.sh (`issue#35845 <http://tracker.ceph.com/issues/35845>`_, `issue#36393 <http://tracker.ceph.com/issues/36393>`_, `pr#24532 <https://github.com/ceph/ceph/pull/24532>`_, Xinying Song, David Zafman) -* ceph-volume tests.systemd update imports for systemd module (`issue#36704 <http://tracker.ceph.com/issues/36704>`_, `pr#24958 <https://github.com/ceph/ceph/pull/24958>`_, Alfredo Deza) -* ceph-volume: adds a --prepare flag to `lvm batch` (`issue#36363 <http://tracker.ceph.com/issues/36363>`_, `pr#24759 <https://github.com/ceph/ceph/pull/24759>`_, Andrew Schoen) -* cls/user: cls_user_remove_bucket writes modified header (`issue#36534 <http://tracker.ceph.com/issues/36534>`_, `issue#36496 <http://tracker.ceph.com/issues/36496>`_, `pr#24855 <https://github.com/ceph/ceph/pull/24855>`_, Casey Bodley) -* core: by pass cache if performing deep scrub (`issue#35067 <http://tracker.ceph.com/issues/35067>`_, `pr#24802 <https://github.com/ceph/ceph/pull/24802>`_, Xiaoguang Wang) -* crush/CrushWrapper: fix crush tree json dumper (`issue#36149 <http://tracker.ceph.com/issues/36149>`_, `pr#24482 <https://github.com/ceph/ceph/pull/24482>`_, Oshyn Song) -* ec: src/common/interval_map.h: 161: FAILED assert(len > 0) (`issue#21931 <http://tracker.ceph.com/issues/21931>`_, `issue#22330 <http://tracker.ceph.com/issues/22330>`_, `pr#24582 <https://github.com/ceph/ceph/pull/24582>`_, Neha Ojha) -* gperftools-libs-2.6.1-1 or newer required for binaries linked against corresponding version at build time (`issue#36552 <http://tracker.ceph.com/issues/36552>`_, `issue#23657 <http://tracker.ceph.com/issues/23657>`_, `issue#36558 <http://tracker.ceph.com/issues/36558>`_, `issue#36508 <http://tracker.ceph.com/issues/36508>`_, `pr#24706 <https://github.com/ceph/ceph/pull/24706>`_, Brad Hubbard) -* osd: add creating to pg_string_state (`issue#36174 <http://tracker.ceph.com/issues/36174>`_, `issue#36297 <http://tracker.ceph.com/issues/36297>`_, `pr#24602 <https://github.com/ceph/ceph/pull/24602>`_, Dan van der Ster) -* osd: cast 'whoami' to unsigned so it can be used as the seed for RNG (`issue#26890 <http://tracker.ceph.com/issues/26890>`_, `pr#24659 <https://github.com/ceph/ceph/pull/24659>`_, Kefu Chai) -* osd: get loadavg per cpu for scrub load threshold check (`pr#24593 <https://github.com/ceph/ceph/pull/24593>`_, kungf) -* osdc/Objecter: possible race condition with connection reset (`issue#36183 <http://tracker.ceph.com/issues/36183>`_, `issue#36295 <http://tracker.ceph.com/issues/36295>`_, `pr#24574 <https://github.com/ceph/ceph/pull/24574>`_, Jason Dillaman) -* qa: add test that builds example librados programs (`issue#36229 <http://tracker.ceph.com/issues/36229>`_, `issue#15100 <http://tracker.ceph.com/issues/15100>`_, `pr#24538 <https://github.com/ceph/ceph/pull/24538>`_, Nathan Cutler) -* qa/ceph-ansible: Specify stable-3.2 branch (`issue#37331 <https://tracker.ceph.com/issues/37331>`_, `pr#25170 <https://github.com/ceph/ceph/pull/25170>`_, Brad Hubbard) -* rgw/beast: drop privileges after binding ports (`issue#36041 <http://tracker.ceph.com/issues/36041>`_, `pr#24454 <https://github.com/ceph/ceph/pull/24454>`_, Paul Emmerich) -* rgw: RGWAsyncGetBucketInstanceInfo does not access coroutine memory (`issue#35812 <http://tracker.ceph.com/issues/35812>`_, `issue#36212 <http://tracker.ceph.com/issues/36212>`_, `pr#24507 <https://github.com/ceph/ceph/pull/24507>`_, Casey Bodley) -* rgw: fix leak of curl handle on shutdown (`issue#35715 <http://tracker.ceph.com/issues/35715>`_, `issue#36214 <http://tracker.ceph.com/issues/36214>`_, `pr#24519 <https://github.com/ceph/ceph/pull/24519>`_, Casey Bodley) -* rgw: list bucket can not show the object uploaded by RGWPostObj when enable bucket versioning (`pr#24570 <https://github.com/ceph/ceph/pull/24570>`_, yuliyang) -* rgw: multisite: enforce spawn_window for data full sync (`issue#26897 <http://tracker.ceph.com/issues/26897>`_, `pr#24857 <https://github.com/ceph/ceph/pull/24857>`_, Casey Bodley) -* rgw: set default objecter_inflight_ops = 24576 (`issue#36570 <http://tracker.ceph.com/issues/36570>`_, `issue#25109 <http://tracker.ceph.com/issues/25109>`_, `pr#24862 <https://github.com/ceph/ceph/pull/24862>`_, Matt Benjamin) -* rgw: user stats account for resharded buckets (`pr#24854 <https://github.com/ceph/ceph/pull/24854>`_, Casey Bodley) -* segv in BlueStore::OldExtent::create (`issue#36526 <http://tracker.ceph.com/issues/36526>`_, `issue#36591 <http://tracker.ceph.com/issues/36591>`_, `pr#24746 <https://github.com/ceph/ceph/pull/24746>`_, Sage Weil) -* test/common: unittest_mclock_priority_queue builds with "make" command (`pr#24808 <https://github.com/ceph/ceph/pull/24808>`_, J. Eric Ivancich) - - -v12.2.9 Luminous -================ - -This is the ninth bug fix release of the Luminous v12.2.x long term stable -release series. Although this release contains several bugfixes across all the -components, it also introduced the PG hard-limit patches which could cause -problems during upgrade when not all PGs were active+clean. Therefore, users -should not install this release. Instead, they should skip it and upgrade to -12.2.10 directly. - -Notable Changes ---------------- - -OSD - -* 12.2.9 contains the pg hard limit patches (https://tracker.ceph.com/issues/23979). - A partial upgrade during recovery/backfill, can cause the osds on the - previous version, to fail with assert(trim_to <= info.last_complete). The - workaround for users is to upgrade and restart all OSDs to a version with the - pg hard limit, or only upgrade when all PGs are active+clean. This patch will - be reverted in 12.2.10, until a clean upgrade path is added to the pg log hard - limit patches. - - See also: http://tracker.ceph.com/issues/36686 - -* The bluestore_cache_* options are no longer needed. They are replaced - by osd_memory_target, defaulting to 4GB. BlueStore will expand - and contract its cache to attempt to stay within this - limit. Users upgrading should note this is a higher default - than the previous bluestore_cache_size of 1GB, so OSDs using - BlueStore will use more memory by default. - - For more details, see `BlueStore docs <http://docs.ceph.com/docs/master/rados/configuration/bluestore-config-ref/#cache-size>_` - -Changelog ---------- - -* build/ops: add e2fsprogs runtime dependency (`pr#24663 <https://github.com/ceph/ceph/pull/24663>`_, Guillaume Abrioux, Alfredo Deza) -* build/ops: deb: fix ceph-mgr .pyc files left behind (`issue#26883 <http://tracker.ceph.com/issues/26883>`_, `pr#23832 <https://github.com/ceph/ceph/pull/23832>`_, Dan Mick) -* build/ops: deb: require fuse for ceph-fuse (`issue#21057 <http://tracker.ceph.com/issues/21057>`_, `pr#23693 <https://github.com/ceph/ceph/pull/23693>`_, Thomas Serlin) -* build/ops: rpm: selinux-policy fixes (`pr#24136 <https://github.com/ceph/ceph/pull/24136>`_, Brad Hubbard) -* build/ops: rpm: use updated gperftools (`issue#35969 <http://tracker.ceph.com/issues/35969>`_, `pr#24259 <https://github.com/ceph/ceph/pull/24259>`_, Kefu Chai) -* ceph-volume: activate option --auto-detect-objectstore respects --no-systemd (`issue#36249 <http://tracker.ceph.com/issues/36249>`_, `pr#24358 <https://github.com/ceph/ceph/pull/24358>`_, Alfredo Deza) -* ceph-volume: lsblk can fail to find PARTLABEL, must fallback to blkid (`issue#36098 <http://tracker.ceph.com/issues/36098>`_, `pr#24335 <https://github.com/ceph/ceph/pull/24335>`_, Alfredo Deza) -* ceph-volume: add new ceph-handlers role from ceph-ansible (`issue#36251 <http://tracker.ceph.com/issues/36251>`_, `pr#24338 <https://github.com/ceph/ceph/pull/24338>`_, Alfredo Deza) -* ceph-volume: batch carve out lvs for bluestore (`issue#34535 <http://tracker.ceph.com/issues/34535>`_, `pr#24075 <https://github.com/ceph/ceph/pull/24075>`_, Alfredo Deza) -* ceph-volume: batch tests for mixed-type of devices (`issue#35535 <http://tracker.ceph.com/issues/35535>`_, `issue#27210 <http://tracker.ceph.com/issues/27210>`_, `pr#23967 <https://github.com/ceph/ceph/pull/23967>`_, Alfredo Deza) -* ceph-volume: batch: allow --osds-per-device, default it to 1 (`issue#35913 <http://tracker.ceph.com/issues/35913>`_, `pr#24080 <https://github.com/ceph/ceph/pull/24080>`_, Alfredo Deza) -* ceph-volume: batch: allow journal+block.db sizing on the CLI (`issue#36088 <http://tracker.ceph.com/issues/36088>`_, `pr#24209 <https://github.com/ceph/ceph/pull/24209>`_, Alfredo Deza) -* ceph-volume: custom cluster names fail on filestore trigger (`issue#27210 <http://tracker.ceph.com/issues/27210>`_, `pr#24280 <https://github.com/ceph/ceph/pull/24280>`_, Alfredo Deza) -* ceph-volume: do not send (lvm) stderr/stdout to the terminal, use the logfile (`issue#36492 <http://tracker.ceph.com/issues/36492>`_, `pr#24741 <https://github.com/ceph/ceph/pull/24741>`_, Alfredo Deza) -* ceph-volume: earlier detection for --journal and --filestore flag requirements (`issue#24794 <http://tracker.ceph.com/issues/24794>`_, `pr#24206 <https://github.com/ceph/ceph/pull/24206>`_, Alfredo Deza) -* ceph-volume: fix journal and filestore data size in `lvm batch --report` (`issue#36242 <http://tracker.ceph.com/issues/36242>`_, `pr#24307 <https://github.com/ceph/ceph/pull/24307>`_, Andrew Schoen) -* ceph-volume: fix zap not working with LVs (`issue#35970 <http://tracker.ceph.com/issues/35970>`_, `pr#24082 <https://github.com/ceph/ceph/pull/24082>`_, Alfredo Deza) -* ceph-volume: lvm.prepare update help to indicate partitions are needed, not devices (`issue#24795 <http://tracker.ceph.com/issues/24795>`_, `pr#24451 <https://github.com/ceph/ceph/pull/24451>`_, Jeffrey Zhang, Alfredo Deza) -* ceph-volume: make `lvm batch` idempotent (`pr#24589 <https://github.com/ceph/ceph/pull/24589>`_, Andrew Schoen) -* ceph-volume: remove version reporting from help menu (`issue#36386 <http://tracker.ceph.com/issues/36386>`_, `pr#24754 <https://github.com/ceph/ceph/pull/24754>`_, Alfredo Deza) -* ceph-volume: skip processing devices that don't exist when scanning system disks (`issue#36247 <http://tracker.ceph.com/issues/36247>`_, `pr#24382 <https://github.com/ceph/ceph/pull/24382>`_, Alfredo Deza) -* cephfs: MDSMonitor: consider raising priority of MMDSBeacons from MDS so they are processed before other client messages (`issue#26899 <http://tracker.ceph.com/issues/26899>`_, `pr#23554 <https://github.com/ceph/ceph/pull/23554>`_, Patrick Donnelly) -* cephfs: MDSMonitor: lookup of gid in prepare_beacon that has been removed will cause exception (`issue#35848 <http://tracker.ceph.com/issues/35848>`_, `pr#23990 <https://github.com/ceph/ceph/pull/23990>`_, Patrick Donnelly) -* cephfs: ceph-fuse: add SELinux policy (`issue#36103 <http://tracker.ceph.com/issues/36103>`_, `pr#24313 <https://github.com/ceph/ceph/pull/24313>`_, Patrick Donnelly) -* cephfs: ceph_volume_client: allow atomic update of RADOS objects (`issue#24173 <http://tracker.ceph.com/issues/24173>`_, `pr#24084 <https://github.com/ceph/ceph/pull/24084>`_, Rishabh Dave) -* cephfs: ceph_volume_client: delay required after adding data pool to MDSMap (`issue#25141 <http://tracker.ceph.com/issues/25141>`_, `pr#23726 <https://github.com/ceph/ceph/pull/23726>`_, Patrick Donnelly) -* cephfs: ceph_volume_client: py3 compatible (`issue#17230 <http://tracker.ceph.com/issues/17230>`_, `pr#24083 <https://github.com/ceph/ceph/pull/24083>`_, Rishabh Dave, Patrick Donnelly) -* cephfs: cephfs-data-scan: print the max used ino (`issue#26925 <http://tracker.ceph.com/issues/26925>`_, `pr#23881 <https://github.com/ceph/ceph/pull/23881>`_, "Yan, Zheng") -* cephfs: cephfs-journal-tool: wrong layout info used (`issue#24644 <http://tracker.ceph.com/issues/24644>`_, `pr#24033 <https://github.com/ceph/ceph/pull/24033>`_, Gu Zhongyan) -* cephfs: client: check for unmounted condition before printing debug output (`issue#25213 <http://tracker.ceph.com/issues/25213>`_, `pr#23617 <https://github.com/ceph/ceph/pull/23617>`_, Jeff Layton) -* cephfs: client: drop null child dentries before try pruning inode's alias (`issue#22293 <http://tracker.ceph.com/issues/22293>`_, `pr#24119 <https://github.com/ceph/ceph/pull/24119>`_, "Yan, Zheng") -* cephfs: client: fix choose_target_mds for requests that do name lookup (`issue#26860 <http://tracker.ceph.com/issues/26860>`_, `pr#23793 <https://github.com/ceph/ceph/pull/23793>`_, "Yan, Zheng") -* cephfs: client: retry remount on dcache invalidation failure (`issue#27657 <http://tracker.ceph.com/issues/27657>`_, `pr#24303 <https://github.com/ceph/ceph/pull/24303>`_, Venky Shankar) -* cephfs: client: statfs inode count odd (`issue#24849 <http://tracker.ceph.com/issues/24849>`_, `pr#24376 <https://github.com/ceph/ceph/pull/24376>`_, Rishabh Dave) -* cephfs: client: two ceph-fuse clients, one can not list out files created by another (`issue#27051 <http://tracker.ceph.com/issues/27051>`_, `pr#24282 <https://github.com/ceph/ceph/pull/24282>`_, Peng Xie) -* cephfs: client: update ctime when modifying file content (`issue#35945 <http://tracker.ceph.com/issues/35945>`_, `pr#24323 <https://github.com/ceph/ceph/pull/24323>`_, "Yan, Zheng") -* common: get real hostname from container/pod environment (`pr#23915 <https://github.com/ceph/ceph/pull/23915>`_, Sage Weil) -* core: PGPool::update optimizations (`pr#23969 <https://github.com/ceph/ceph/pull/23969>`_, Zac Medico) -* core: ceph-disk: compatibility fix for python 3 (`issue#35906 <http://tracker.ceph.com/issues/35906>`_, `pr#24347 <https://github.com/ceph/ceph/pull/24347>`_, Tim Serong) -* core: discover_all_missing() not always called during activating (`issue#22837 <http://tracker.ceph.com/issues/22837>`_, `pr#23817 <https://github.com/ceph/ceph/pull/23817>`_, Sage Weil, David Zafman) -* core: kv/KeyValueDB: return const char\* from MergeOperator::name() (`issue#26875 <http://tracker.ceph.com/issues/26875>`_, `pr#23566 <https://github.com/ceph/ceph/pull/23566>`_, Sage Weil) -* core: librados application's symbol could conflict with the libceph-common (`issue#25154 <http://tracker.ceph.com/issues/25154>`_, `pr#23483 <https://github.com/ceph/ceph/pull/23483>`_, Kefu Chai) -* core: mgr/MgrClient: guard send_pgstats() with lock (`issue#23370 <http://tracker.ceph.com/issues/23370>`_, `pr#23791 <https://github.com/ceph/ceph/pull/23791>`_, Kefu Chai) -* core: mgr/balancer: deepcopy best plan - otherwise we get latest (`issue#27000 <http://tracker.ceph.com/issues/27000>`_, `pr#23740 <https://github.com/ceph/ceph/pull/23740>`_, Stefan Priebe) -* core: mgrc: enable disabling stats via mgr_stats_threshold (`issue#25197 <http://tracker.ceph.com/issues/25197>`_, `pr#23461 <https://github.com/ceph/ceph/pull/23461>`_, John Spray) -* core: mon/OSDMonitor: invalidate max_failed_since on cancel_report (`issue#35860 <http://tracker.ceph.com/issues/35860>`_, `pr#24257 <https://github.com/ceph/ceph/pull/24257>`_, xie xingguo) -* core: object errors found in be_select_auth_object() aren't logged the same (`issue#25108 <http://tracker.ceph.com/issues/25108>`_, `pr#23871 <https://github.com/ceph/ceph/pull/23871>`_, David Zafman) -* core: os/bluestore: bluestore_buffer_hit_bytes perf counter doesn't reset (`pr#23773 <https://github.com/ceph/ceph/pull/23773>`_, Igor Fedotov) -* core: os/bluestore: cache autotuning and memory limit (`pr#24065 <https://github.com/ceph/ceph/pull/24065>`_, Mark Nelson) -* core: osd,mon: increase mon_max_pg_per_osd to 250 (`issue#25112 <http://tracker.ceph.com/issues/25112>`_, `pr#23862 <https://github.com/ceph/ceph/pull/23862>`_, Neha Ojha) -* core: osd/PG: avoid choose_acting picking want with > pool size items (`issue#35924 <http://tracker.ceph.com/issues/35924>`_, `pr#24299 <https://github.com/ceph/ceph/pull/24299>`_, Sage Weil) -* core: osdc/Objecter: fix split vs reconnect race (`issue#22544 <http://tracker.ceph.com/issues/22544>`_, `pr#24188 <https://github.com/ceph/ceph/pull/24188>`_, Sage Weil) -* core: rados python bindings use prval from stack (`issue#25175 <http://tracker.ceph.com/issues/25175>`_, `pr#23864 <https://github.com/ceph/ceph/pull/23864>`_, Sage Weil) -* doc: Fix broken urls (`issue#25185 <http://tracker.ceph.com/issues/25185>`_, `pr#23621 <https://github.com/ceph/ceph/pull/23621>`_, Jos Collin) -* doc: remove deprecated 'scrubq' from ceph(8) (`issue#35813 <http://tracker.ceph.com/issues/35813>`_, `pr#24211 <https://github.com/ceph/ceph/pull/24211>`_, Ruben Kerkhof) -* doc: rgw: ldap-auth: fixed option name 'rgw_ldap_searchfilter' (`issue#23081 <http://tracker.ceph.com/issues/23081>`_, `pr#23761 <https://github.com/ceph/ceph/pull/23761>`_, Konstantin Shalygin) -* mds: MDBalancer::try_rebalance() may stop prematurely (`issue#26973 <http://tracker.ceph.com/issues/26973>`_, `pr#23884 <https://github.com/ceph/ceph/pull/23884>`_, "Yan, Zheng") -* mds: allows client to create .. and . dirents (`issue#25113 <http://tracker.ceph.com/issues/25113>`_, `pr#24329 <https://github.com/ceph/ceph/pull/24329>`_, Venky Shankar) -* mds: avoid using g_conf->get_val<...>(...) in hot path (`issue#24820 <http://tracker.ceph.com/issues/24820>`_, `pr#23408 <https://github.com/ceph/ceph/pull/23408>`_, "Yan, Zheng") -* mds: calculate load by checking self CPU usage (`issue#26834 <http://tracker.ceph.com/issues/26834>`_, `pr#23505 <https://github.com/ceph/ceph/pull/23505>`_, "Yan, Zheng") -* mds: configurable timeout for client eviction (`issue#25188 <http://tracker.ceph.com/issues/25188>`_, `pr#24086 <https://github.com/ceph/ceph/pull/24086>`_, Patrick Donnelly, Venky Shankar) -* mds: crash when dumping ops in flight (`issue#26894 <http://tracker.ceph.com/issues/26894>`_, `pr#23677 <https://github.com/ceph/ceph/pull/23677>`_, "Yan, Zheng") -* mds: curate priority of perf counters sent to mgr (`issue#22097 <http://tracker.ceph.com/issues/22097>`_, `issue#24004 <http://tracker.ceph.com/issues/24004>`_, `pr#24089 <https://github.com/ceph/ceph/pull/24089>`_, Guan yunfei, Venky Shankar) -* mds: explain delayed client_request due to subtree migration (`issue#24840 <http://tracker.ceph.com/issues/24840>`_, `pr#23678 <https://github.com/ceph/ceph/pull/23678>`_, Yan, Zheng, "Yan, Zheng") -* mds: health warning for slow metadata IO (`issue#24879 <http://tracker.ceph.com/issues/24879>`_, `pr#24171 <https://github.com/ceph/ceph/pull/24171>`_, "Yan, Zheng") -* mds: internal op missing events time 'throttled', 'all_read', 'dispatched' (`issue#36114 <http://tracker.ceph.com/issues/36114>`_, `pr#24410 <https://github.com/ceph/ceph/pull/24410>`_, Yanhu Cao) -* mds: mds got laggy because of MDSBeacon stuck in mqueue (`issue#23519 <http://tracker.ceph.com/issues/23519>`_, `pr#23556 <https://github.com/ceph/ceph/pull/23556>`_, "Yan, Zheng") -* mds: optimize the way how max export size is enforced (`issue#25131 <http://tracker.ceph.com/issues/25131>`_, `pr#23789 <https://github.com/ceph/ceph/pull/23789>`_, "Yan, Zheng") -* mds: prevent MDSRank::evict_client from blocking finisher thread (`issue#35720 <http://tracker.ceph.com/issues/35720>`_, `pr#23946 <https://github.com/ceph/ceph/pull/23946>`_, "Yan, Zheng") -* mds: print is_laggy message once (`issue#35250 <http://tracker.ceph.com/issues/35250>`_, `pr#24138 <https://github.com/ceph/ceph/pull/24138>`_, Patrick Donnelly) -* mds: rctime may go back (`issue#35916 <http://tracker.ceph.com/issues/35916>`_, `pr#24378 <https://github.com/ceph/ceph/pull/24378>`_, "Yan, Zheng") -* mds: reset heartbeat map at potential time-consuming places (`issue#26858 <http://tracker.ceph.com/issues/26858>`_, `pr#23507 <https://github.com/ceph/ceph/pull/23507>`_, Yan, Zheng, "Yan, Zheng") -* mds: runs out of file descriptors after several respawns (`issue#35850 <http://tracker.ceph.com/issues/35850>`_, `pr#24310 <https://github.com/ceph/ceph/pull/24310>`_, Patrick Donnelly) -* mds: track average session uptime (`issue#25013 <http://tracker.ceph.com/issues/25013>`_, `pr#24421 <https://github.com/ceph/ceph/pull/24421>`_, Patrick Donnelly, Venky Shankar) -* mds: use monotonic clock for beacon message timekeeping (`issue#26959 <http://tracker.ceph.com/issues/26959>`_, `pr#24311 <https://github.com/ceph/ceph/pull/24311>`_, Patrick Donnelly) -* mgr: Sync the prometheus module (`pr#23216 <https://github.com/ceph/ceph/pull/23216>`_, Boris Ranto) -* mon: Automatically set expected_num_objects for new pools with >=100 PGs per OSD (`issue#24687 <http://tracker.ceph.com/issues/24687>`_, `pr#24395 <https://github.com/ceph/ceph/pull/24395>`_, Douglas Fuller) -* msg: "challenging authorizer" messages appear at debug_ms=0 (`issue#35251 <http://tracker.ceph.com/issues/35251>`_, `pr#23943 <https://github.com/ceph/ceph/pull/23943>`_, Patrick Donnelly) -* msg: async: clean up local buffers on dispatch (`issue#35987 <http://tracker.ceph.com/issues/35987>`_, `pr#24387 <https://github.com/ceph/ceph/pull/24387>`_, Greg Farnum) -* msg: ceph_abort() when there are enough accepter errors in msg server (`issue#23649 <http://tracker.ceph.com/issues/23649>`_, `pr#24419 <https://github.com/ceph/ceph/pull/24419>`_, penglaiyxy@gmail.com) -* osd: EC: slow/hung ops in multimds suite test (`issue#23769 <http://tracker.ceph.com/issues/23769>`_, `pr#24393 <https://github.com/ceph/ceph/pull/24393>`_, Sage Weil) -* osd: ECBackend: don't get result code of subchunk-read overwritten (`issue#21769 <http://tracker.ceph.com/issues/21769>`_, `pr#24342 <https://github.com/ceph/ceph/pull/24342>`_, songweibin) -* osd: Limit pg log length during recovery/backfill so that we don't run out of memory (`issue#21416 <http://tracker.ceph.com/issues/21416>`_, `pr#23211 <https://github.com/ceph/ceph/pull/23211>`_, Neha Ojha, xie xingguo) -* osd: OSDMap: fix apply upmap segfault (`issue#22056 <http://tracker.ceph.com/issues/22056>`_, `pr#23579 <https://github.com/ceph/ceph/pull/23579>`_, Brad Hubbard) -* osd: PG: add custom_reaction Backfilled and release reservations after bac… (`issue#23614 <http://tracker.ceph.com/issues/23614>`_, `pr#23493 <https://github.com/ceph/ceph/pull/23493>`_, Neha Ojha) -* osd: PrimaryLogPG: fix potential pg-log overtrimming (`pr#24308 <https://github.com/ceph/ceph/pull/24308>`_, xie xingguo) -* osd: backport 'bench' and stdout changes (`issue#24022 <http://tracker.ceph.com/issues/24022>`_, `pr#23680 <https://github.com/ceph/ceph/pull/23680>`_, Коренберг Маркr, John Spray, Kefu Chai) -* osd: read object attrs failed at EC recovery (`issue#24406 <http://tracker.ceph.com/issues/24406>`_, `pr#24327 <https://github.com/ceph/ceph/pull/24327>`_, xiaofei cui) -* osd: scrub livelock (`issue#26890 <http://tracker.ceph.com/issues/26890>`_, `pr#24396 <https://github.com/ceph/ceph/pull/24396>`_, Sage Weil) -* qa/suites/rados/upgrade/jewel-x-singleton: exclude python3-rados, python3-cephfs (`pr#24479 <https://github.com/ceph/ceph/pull/24479>`_, Neha Ojha) -* rbd: [rbd-mirror] failed assertion when updating mirror status (`issue#36084 <http://tracker.ceph.com/issues/36084>`_, `pr#24320 <https://github.com/ceph/ceph/pull/24320>`_, Jason Dillaman) -* rbd: fix error import when the input is a pipe (`issue#34536 <http://tracker.ceph.com/issues/34536>`_, `pr#24003 <https://github.com/ceph/ceph/pull/24003>`_, songweibin) -* rbd: librbd: blacklisted client might not notice it lost the lock (`issue#34534 <http://tracker.ceph.com/issues/34534>`_, `pr#24405 <https://github.com/ceph/ceph/pull/24405>`_, Song Shun, Mykola Golub, Jason Dillaman) -* rbd: librbd: discard should wait for in-flight cache writeback to complete (`issue#23548 <http://tracker.ceph.com/issues/23548>`_, `pr#23594 <https://github.com/ceph/ceph/pull/23594>`_, Jason Dillaman) -* rbd: librbd: ensure exclusive lock acquired when removing sync point snaps… (`issue#24898 <http://tracker.ceph.com/issues/24898>`_, `pr#24123 <https://github.com/ceph/ceph/pull/24123>`_, Mykola Golub, Jason Dillaman) -* rbd: librbd: fix refuse to release lock when cookie is the same at rewatch (`issue#27986 <http://tracker.ceph.com/issues/27986>`_, `pr#23758 <https://github.com/ceph/ceph/pull/23758>`_, Song Shun) -* rbd: librbd: fixed assert when flattening clone with zero overlap (`issue#35702 <http://tracker.ceph.com/issues/35702>`_, `pr#24285 <https://github.com/ceph/ceph/pull/24285>`_, Jason Dillaman) -* rbd: librbd: image create request should validate data pool for self-managed snapshot support (`issue#24675 <http://tracker.ceph.com/issues/24675>`_, `pr#24390 <https://github.com/ceph/ceph/pull/24390>`_, Mykola Golub) -* rbd: librbd: journaling unable request can not be sent to remote lock owner (`issue#26939 <http://tracker.ceph.com/issues/26939>`_, `pr#24100 <https://github.com/ceph/ceph/pull/24100>`_, Mykola Golub) -* rbd: librbd: object map improperly flagged as invalidated (`issue#24516 <http://tracker.ceph.com/issues/24516>`_, `pr#24415 <https://github.com/ceph/ceph/pull/24415>`_, Jason Dillaman) -* rbd: librbd: potential race on image create request complete (`issue#24910 <http://tracker.ceph.com/issues/24910>`_, `pr#23892 <https://github.com/ceph/ceph/pull/23892>`_, Mykola Golub) -* rgw: 'radosgw-admin sync error trim' only trims partially (`issue#24873 <http://tracker.ceph.com/issues/24873>`_, `pr#24054 <https://github.com/ceph/ceph/pull/24054>`_, Casey Bodley) -* rgw: Fix log level of gc_iterate_entries (`issue#23801 <http://tracker.ceph.com/issues/23801>`_, `pr#23665 <https://github.com/ceph/ceph/pull/23665>`_, iliul) -* rgw: Limit the number of lifecycle rules on one bucket (`issue#24572 <http://tracker.ceph.com/issues/24572>`_, `pr#23522 <https://github.com/ceph/ceph/pull/23522>`_, Zhang Shaowen) -* rgw: The delete markers generated by object expiration should have owner (`issue#24568 <http://tracker.ceph.com/issues/24568>`_, `pr#23545 <https://github.com/ceph/ceph/pull/23545>`_, Zhang Shaowen) -* rgw: abort_bucket_multiparts() ignores individual NoSuchUpload errors (`issue#35986 <http://tracker.ceph.com/issues/35986>`_, `pr#24389 <https://github.com/ceph/ceph/pull/24389>`_, Casey Bodley) -* rgw: change default rgw_thread_pool_size to 512 (`issue#25214 <http://tracker.ceph.com/issues/25214>`_, `issue#24544 <http://tracker.ceph.com/issues/24544>`_, `pr#24034 <https://github.com/ceph/ceph/pull/24034>`_, Douglas Fuller, Casey Bodley) -* rgw: cls/rgw: don't assert in decode_list_index_key() (`issue#24117 <http://tracker.ceph.com/issues/24117>`_, `pr#24391 <https://github.com/ceph/ceph/pull/24391>`_, Yehuda Sadeh) -* rgw: cls/rgw: ready rgw_usage_log_entry for extraction via ceph-dencoder (`issue#34537 <http://tracker.ceph.com/issues/34537>`_, `pr#23974 <https://github.com/ceph/ceph/pull/23974>`_, Vaibhav Bhembre) -* rgw: fix chunked-encoding for chunks >1MiB (`issue#35990 <http://tracker.ceph.com/issues/35990>`_, `pr#24361 <https://github.com/ceph/ceph/pull/24361>`_, Robin H. Johnson) -* rgw: fix deadlock on RGWIndexCompletionManager::stop (`issue#26949 <http://tracker.ceph.com/issues/26949>`_, `pr#24069 <https://github.com/ceph/ceph/pull/24069>`_, Yao Zongyou) -* rgw: incremental data sync uses truncated flag to detect end of listing (`issue#26952 <http://tracker.ceph.com/issues/26952>`_, `pr#24242 <https://github.com/ceph/ceph/pull/24242>`_, Casey Bodley) -* rgw: multisite: data sync error repo processing does not back off on empty (`issue#26938 <http://tracker.ceph.com/issues/26938>`_, `pr#24318 <https://github.com/ceph/ceph/pull/24318>`_, Casey Bodley) -* rgw: multisite: intermittent failures in test_bucket_sync_disable_enable (`issue#26895 <http://tracker.ceph.com/issues/26895>`_, `pr#24316 <https://github.com/ceph/ceph/pull/24316>`_, Casey Bodley) -* rgw: multisite: intermittent test_bucket_index_log_trim failures (`issue#36034 <http://tracker.ceph.com/issues/36034>`_, `pr#24398 <https://github.com/ceph/ceph/pull/24398>`_, Casey Bodley) -* rgw: multisite: object metadata operations are skipped by sync (`issue#24367 <http://tracker.ceph.com/issues/24367>`_, `pr#24056 <https://github.com/ceph/ceph/pull/24056>`_, Casey Bodley) -* rgw: multisite: object name should be urlencoded when we put it into ES (`issue#23216 <http://tracker.ceph.com/issues/23216>`_, `pr#24424 <https://github.com/ceph/ceph/pull/24424>`_, Chang Liu) -* rgw: multisite: out of order updates to sync status markers (`issue#35539 <http://tracker.ceph.com/issues/35539>`_, `pr#24317 <https://github.com/ceph/ceph/pull/24317>`_, Yehuda Sadeh) -* rgw: multisite: segfault on shutdown/realm reload (`issue#35543 <http://tracker.ceph.com/issues/35543>`_, `pr#24231 <https://github.com/ceph/ceph/pull/24231>`_, Casey Bodley) -* rgw: multisite: update index segfault on shutdown/realm reload (`issue#35905 <http://tracker.ceph.com/issues/35905>`_, `pr#24397 <https://github.com/ceph/ceph/pull/24397>`_, Tianshan Qu) -* rgw: raise debug level on redundant data sync error messages (`issue#35830 <http://tracker.ceph.com/issues/35830>`_, `issue#36037 <http://tracker.ceph.com/issues/36037>`_, `pr#24135 <https://github.com/ceph/ceph/pull/24135>`_, Casey Bodley, Matt Benjamin) -* rgw: raise default rgw_curl_low_speed_time to 300 seconds (`issue#27989 <http://tracker.ceph.com/issues/27989>`_, `pr#24046 <https://github.com/ceph/ceph/pull/24046>`_, Casey Bodley) -* rgw: resharding produces invalid values of bucket stats (`issue#36290 <http://tracker.ceph.com/issues/36290>`_, `pr#24527 <https://github.com/ceph/ceph/pull/24527>`_, Abhishek Lekshmanan) -* rgw: return x-amz-version-id: null when delete obj in versioning suspended bucket (`issue#35814 <http://tracker.ceph.com/issues/35814>`_, `pr#24190 <https://github.com/ceph/ceph/pull/24190>`_, yuliyang) -* rgw: rgw_file: deep stat handling (`issue#24915 <http://tracker.ceph.com/issues/24915>`_, `pr#23499 <https://github.com/ceph/ceph/pull/23499>`_, Matt Benjamin) -* tests: Excluded 'python34-cephfs' from the install tasks (`pr#24650 <https://github.com/ceph/ceph/pull/24650>`_, Yuri Weinstein) -* tests: Use pids instead of jobspecs which were wrong (`issue#27056 <http://tracker.ceph.com/issues/27056>`_, `pr#23901 <https://github.com/ceph/ceph/pull/23901>`_, David Zafman) -* tests: cephfs: multifs requires 4 mds but gets only 2 (`issue#24899 <http://tracker.ceph.com/issues/24899>`_, `pr#24328 <https://github.com/ceph/ceph/pull/24328>`_, Patrick Donnelly) -* tests: cls_rgw test is only run in rados suite: add it to rgw suite as well (`issue#24815 <http://tracker.ceph.com/issues/24815>`_, `pr#24070 <https://github.com/ceph/ceph/pull/24070>`_, Casey Bodley, Sage Weil) -* tests: librbd: not valid to have different parents between image snapshots (`issue#36097 <http://tracker.ceph.com/issues/36097>`_, `pr#24245 <https://github.com/ceph/ceph/pull/24245>`_, Jason Dillaman) -* tests: move mds/client config to qa from teuthology ceph.conf.template (`issue#26900 <http://tracker.ceph.com/issues/26900>`_, `issue#24839 <http://tracker.ceph.com/issues/24839>`_, `pr#23877 <https://github.com/ceph/ceph/pull/23877>`_, Patrick Donnelly) -* tests: qa/tasks: s3a fix mirror (`pr#24039 <https://github.com/ceph/ceph/pull/24039>`_, Vasu Kulkarni) -* tests: qa/workunits: replace 'realpath' with 'readlink -f' in fsstress.sh (`issue#27211 <http://tracker.ceph.com/issues/27211>`_, `issue#36409 <http://tracker.ceph.com/issues/36409>`_, `pr#24620 <https://github.com/ceph/ceph/pull/24620>`_, Ilya Dryomov, Jason Dillaman) -* tests: qa: add .qa helper link (`pr#24134 <https://github.com/ceph/ceph/pull/24134>`_, Patrick Donnelly) -* tests: qa: added v12.2.8 to the mix (`issue#35541 <http://tracker.ceph.com/issues/35541>`_, `pr#23913 <https://github.com/ceph/ceph/pull/23913>`_, Yuri Weinstein) -* tests: remove knfs qa suite from future releases (`issue#36075 <http://tracker.ceph.com/issues/36075>`_, `pr#24268 <https://github.com/ceph/ceph/pull/24268>`_, Yuri Weinstein) -* tools: ceph-objectstore-tool: Allow target level as first positional parameter (`issue#35846 <http://tracker.ceph.com/issues/35846>`_, `pr#24115 <https://github.com/ceph/ceph/pull/24115>`_, David Zafman) - - -v12.2.8 Luminous -================ - -This is the eighth bug fix release of the Luminous v12.2.x long term stable -release series. This release contains several bugfixes across all the components -and we recommend all users upgrade. - -Upgrade Notes from previous luminous releases ---------------------------------------------- - -When upgrading from v12.2.5 or v12.2.6 please note that upgrade caveats from -12.2.5 will apply to any _newer_ luminous version including 12.2.8. Please read -the notes at luminous-12-2-5-upgrades_ . - -For the cluster that installed the broken 12.2.6 release, 12.2.7 fixed the -regression and introduced a workaround option `osd distrust data digest = true`, -but 12.2.7 clusters still generated health warnings like :: - - [ERR] 11.288 shard 207: soid 11:1155c332:::rbd_data.207dce238e1f29.0000000000000527:head data_digest 0xc8997a5b != data_digest 0x2ca15853 - - -12.2.8 improves the deep scrub code to automatically repair these -inconsistencies. Once the entire cluster has been upgraded and then fully deep -scrubbed, and all such inconsistencies are resolved, it will be safe to disable -the `osd distrust data digest = true` workaround option. - -Notable Changes ---------------- - -- *OSD* - - * Scrub repair is enhanced to handle data digest mismatch info on - replicas as long as all replicas' digests match each other. - -- *RGW* - - * Options `rgw curl low speed limit` and `rgw curl low speed time` - are added to control the lower speed limits and times below which - the requests are considered too slow to be aborted and can help - mitigate data sync getting blocked during network issues - - * Option `rgw s3 auth order` configurable added which takes a comma - separated list of order to try for s3 authentication when external - engines are involved. - -Changelog ---------- -* bluestore: set correctly shard for existed Collection (`issue#24761 <http://tracker.ceph.com/issues/24761>`_, `pr#22860 <https://github.com/ceph/ceph/pull/22860>`_, Jianpeng Ma) -* build/ops: Boost system library is no longer required to compile and link example librados program (`issue#25054 <http://tracker.ceph.com/issues/25054>`_, `pr#23202 <https://github.com/ceph/ceph/pull/23202>`_, Nathan Cutler) -* build/ops: Bring back diff -y for non-FreeBSD (`issue#24396 <http://tracker.ceph.com/issues/24396>`_, `issue#21664 <http://tracker.ceph.com/issues/21664>`_, `pr#22848 <https://github.com/ceph/ceph/pull/22848>`_, Sage Weil, David Zafman) -* build/ops: install-deps.sh fails on newest openSUSE Leap (`issue#25064 <http://tracker.ceph.com/issues/25064>`_, `pr#23179 <https://github.com/ceph/ceph/pull/23179>`_, Kyr Shatskyy) -* build/ops: Mimic build fails with -DWITH_RADOSGW=0 (`issue#24437 <http://tracker.ceph.com/issues/24437>`_, `pr#22864 <https://github.com/ceph/ceph/pull/22864>`_, Dan Mick) -* build/ops: order rbdmap.service before remote-fs-pre.target (`issue#24713 <http://tracker.ceph.com/issues/24713>`_, `pr#22844 <https://github.com/ceph/ceph/pull/22844>`_, Ilya Dryomov) -* build/ops: rpm: silence osd block chown (`issue#25152 <http://tracker.ceph.com/issues/25152>`_, `pr#23313 <https://github.com/ceph/ceph/pull/23313>`_, Dan van der Ster) -* cephfs-journal-tool: Fix purging when importing an zero-length journal (`issue#24239 <http://tracker.ceph.com/issues/24239>`_, `pr#22980 <https://github.com/ceph/ceph/pull/22980>`_, yupeng chen, zhongyan gu) -* cephfs: MDSMonitor: uncommitted state exposed to clients/mdss (`issue#23768 <http://tracker.ceph.com/issues/23768>`_, `pr#23013 <https://github.com/ceph/ceph/pull/23013>`_, Patrick Donnelly) -* ceph-fuse mount failed because no mds (`issue#22205 <http://tracker.ceph.com/issues/22205>`_, `pr#22895 <https://github.com/ceph/ceph/pull/22895>`_, liyan) -* ceph-volume add a __release__ string, to help version-conditional calls (`issue#25170 <http://tracker.ceph.com/issues/25170>`_, `pr#23331 <https://github.com/ceph/ceph/pull/23331>`_, Alfredo Deza) -* ceph-volume: adds test for `ceph-volume lvm list /dev/sda` (`issue#24784 <http://tracker.ceph.com/issues/24784>`_, `issue#24957 <http://tracker.ceph.com/issues/24957>`_, `pr#23350 <https://github.com/ceph/ceph/pull/23350>`_, Andrew Schoen) -* ceph-volume: do not use stdin in luminous (`issue#25173 <http://tracker.ceph.com/issues/25173>`_, `issue#23260 <http://tracker.ceph.com/issues/23260>`_, `pr#23367 <https://github.com/ceph/ceph/pull/23367>`_, Alfredo Deza) -* ceph-volume enable the ceph-osd during lvm activation (`issue#24152 <http://tracker.ceph.com/issues/24152>`_, `pr#23394 <https://github.com/ceph/ceph/pull/23394>`_, Dan van der Ster, Alfredo Deza) -* ceph-volume expand on the LVM API to create multiple LVs at different sizes (`issue#24020 <http://tracker.ceph.com/issues/24020>`_, `pr#23395 <https://github.com/ceph/ceph/pull/23395>`_, Alfredo Deza) -* ceph-volume lvm.activate conditional mon-config on prime-osd-dir (`issue#25216 <http://tracker.ceph.com/issues/25216>`_, `pr#23397 <https://github.com/ceph/ceph/pull/23397>`_, Alfredo Deza) -* ceph-volume lvm.batch remove non-existent sys_api property (`issue#34310 <http://tracker.ceph.com/issues/34310>`_, `pr#23811 <https://github.com/ceph/ceph/pull/23811>`_, Alfredo Deza) -* ceph-volume lvm.listing only include devices if they exist (`issue#24952 <http://tracker.ceph.com/issues/24952>`_, `pr#23150 <https://github.com/ceph/ceph/pull/23150>`_, Alfredo Deza) -* ceph-volume: process.call with stdin in Python 3 fix (`issue#24993 <http://tracker.ceph.com/issues/24993>`_, `pr#23238 <https://github.com/ceph/ceph/pull/23238>`_, Alfredo Deza) -* ceph-volume: PVolumes.get() should return one PV when using name or uuid (`issue#24784 <http://tracker.ceph.com/issues/24784>`_, `pr#23329 <https://github.com/ceph/ceph/pull/23329>`_, Andrew Schoen) -* ceph-volume: refuse to zap mapper devices (`issue#24504 <http://tracker.ceph.com/issues/24504>`_, `pr#23374 <https://github.com/ceph/ceph/pull/23374>`_, Andrew Schoen) -* ceph-volume: tests.functional inherit SSH_ARGS from ansible (`issue#34311 <http://tracker.ceph.com/issues/34311>`_, `pr#23813 <https://github.com/ceph/ceph/pull/23813>`_, Alfredo Deza) -* ceph-volume tests/functional run lvm list after OSD provisioning (`issue#24961 <http://tracker.ceph.com/issues/24961>`_, `pr#23147 <https://github.com/ceph/ceph/pull/23147>`_, Alfredo Deza) -* ceph-volume: unmount lvs correctly before zapping (`issue#24796 <http://tracker.ceph.com/issues/24796>`_, `pr#23128 <https://github.com/ceph/ceph/pull/23128>`_, Andrew Schoen) -* ceph-volume: update batch documentation to explain filestore strategies (`issue#34309 <http://tracker.ceph.com/issues/34309>`_, `pr#23825 <https://github.com/ceph/ceph/pull/23825>`_, Alfredo Deza) -* change default filestore_merge_threshold to -10 (`issue#24686 <http://tracker.ceph.com/issues/24686>`_, `pr#22814 <https://github.com/ceph/ceph/pull/22814>`_, Douglas Fuller) -* client: add inst to asok status output (`issue#24724 <http://tracker.ceph.com/issues/24724>`_, `pr#23107 <https://github.com/ceph/ceph/pull/23107>`_, Patrick Donnelly) -* client: fixup parallel calls to ceph_ll_lookup_inode() in NFS FASL (`issue#22683 <http://tracker.ceph.com/issues/22683>`_, `pr#23012 <https://github.com/ceph/ceph/pull/23012>`_, huanwen ren) -* client: increase verbosity level for log messages in helper methods (`issue#21014 <http://tracker.ceph.com/issues/21014>`_, `pr#23014 <https://github.com/ceph/ceph/pull/23014>`_, Rishabh Dave) -* client: update inode fields according to issued caps (`issue#24269 <http://tracker.ceph.com/issues/24269>`_, `pr#22783 <https://github.com/ceph/ceph/pull/22783>`_, "Yan, Zheng") -* common: Abort in OSDMap::decode() during qa/standalone/erasure-code/test-erasure-eio.sh (`issue#23492 <http://tracker.ceph.com/issues/23492>`_, `pr#23025 <https://github.com/ceph/ceph/pull/23025>`_, Sage Weil) -* common/DecayCounter: set last_decay to current time when decoding decay counter (`issue#24440 <http://tracker.ceph.com/issues/24440>`_, `pr#22779 <https://github.com/ceph/ceph/pull/22779>`_, Zhi Zhang) -* doc: ceph-bluestore-tool manpage not getting rendered correctly (`issue#24800 <http://tracker.ceph.com/issues/24800>`_, `pr#23177 <https://github.com/ceph/ceph/pull/23177>`_, Nathan Cutler) -* filestore: add pgid in filestore pg dir split log message (`issue#24878 <http://tracker.ceph.com/issues/24878>`_, `pr#23454 <https://github.com/ceph/ceph/pull/23454>`_, Vikhyat Umrao) -* let "ceph status" use base 10 when printing numbers not sizes (`issue#22095 <http://tracker.ceph.com/issues/22095>`_, `pr#22680 <https://github.com/ceph/ceph/pull/22680>`_, Jan Fajerski, Kefu Chai) -* librados: fix buffer overflow for aio_exec python binding (`issue#23964 <http://tracker.ceph.com/issues/23964>`_, `pr#22708 <https://github.com/ceph/ceph/pull/22708>`_, Aleksei Gutikov) -* librbd: force 'invalid object map' flag on-disk update (`issue#24434 <http://tracker.ceph.com/issues/24434>`_, `pr#22753 <https://github.com/ceph/ceph/pull/22753>`_, Mykola Golub) -* librbd: utilize the journal disabled policy when removing images (`issue#23512 <http://tracker.ceph.com/issues/23512>`_, `pr#23595 <https://github.com/ceph/ceph/pull/23595>`_, Jason Dillaman) -* mds: don't report slow request for blocked filelock request (`issue#22428 <http://tracker.ceph.com/issues/22428>`_, `pr#22782 <https://github.com/ceph/ceph/pull/22782>`_, "Yan, Zheng") -* mds: dump recent events on respawn (`issue#24853 <http://tracker.ceph.com/issues/24853>`_, `pr#23213 <https://github.com/ceph/ceph/pull/23213>`_, Patrick Donnelly) -* mds: handle discontinuous mdsmap (`issue#24856 <http://tracker.ceph.com/issues/24856>`_, `pr#23169 <https://github.com/ceph/ceph/pull/23169>`_, "Yan, Zheng") -* mds: increase debug level for dropped client cap msg (`issue#24855 <http://tracker.ceph.com/issues/24855>`_, `pr#23214 <https://github.com/ceph/ceph/pull/23214>`_, Patrick Donnelly) -* mds: low wrlock efficiency due to dirfrags traversal (`issue#24467 <http://tracker.ceph.com/issues/24467>`_, `pr#22885 <https://github.com/ceph/ceph/pull/22885>`_, Xuehan Xu) -* mds: print mdsmap processed at low debug level (`issue#24852 <http://tracker.ceph.com/issues/24852>`_, `pr#23212 <https://github.com/ceph/ceph/pull/23212>`_, Patrick Donnelly) -* mds: scrub doesn't always return JSON results (`issue#23958 <http://tracker.ceph.com/issues/23958>`_, `pr#23222 <https://github.com/ceph/ceph/pull/23222>`_, Venky Shankar) -* mds: unset deleted vars in shutdown_pass (`issue#23766 <http://tracker.ceph.com/issues/23766>`_, `pr#23015 <https://github.com/ceph/ceph/pull/23015>`_, Patrick Donnelly) -* mgr: add units to performance counters (`issue#22747 <http://tracker.ceph.com/issues/22747>`_, `pr#23266 <https://github.com/ceph/ceph/pull/23266>`_, Ernesto Puerta, Rubab Syed) -* mgr: ceph osd safe-to-destroy crashes the mgr (`issue#23249 <http://tracker.ceph.com/issues/23249>`_, `pr#22806 <https://github.com/ceph/ceph/pull/22806>`_, Sage Weil) -* mgr/MgrClient: Protect daemon_health_metrics (`issue#23352 <http://tracker.ceph.com/issues/23352>`_, `pr#23459 <https://github.com/ceph/ceph/pull/23459>`_, Kjetil Joergensen, Brad Hubbard) -* mon: Add option to view IP addresses of clients in output of 'ceph features' (`issue#21315 <http://tracker.ceph.com/issues/21315>`_, `pr#22773 <https://github.com/ceph/ceph/pull/22773>`_, Paul Emmerich) -* mon/HealthMonitor: do not send MMonHealthChecks to pre-luminous mon (`issue#24481 <http://tracker.ceph.com/issues/24481>`_, `pr#22655 <https://github.com/ceph/ceph/pull/22655>`_, Sage Weil) -* os/bluestore: fix flush_commit locking (`issue#21480 <http://tracker.ceph.com/issues/21480>`_, `pr#22904 <https://github.com/ceph/ceph/pull/22904>`_, Sage Weil) -* os/bluestore: fix incomplete faulty range marking when doing compression (`issue#21480 <http://tracker.ceph.com/issues/21480>`_, `pr#22909 <https://github.com/ceph/ceph/pull/22909>`_, Igor Fedotov) -* os/bluestore: fix races on SharedBlob::coll in ~SharedBlob (`issue#24859 <http://tracker.ceph.com/issues/24859>`_, `pr#23064 <https://github.com/ceph/ceph/pull/23064>`_, Radoslaw Zarzynski) -* osdc: Fix the wrong BufferHead offset (`issue#24484 <http://tracker.ceph.com/issues/24484>`_, `pr#22865 <https://github.com/ceph/ceph/pull/22865>`_, dongdong tao) -* osd: do_sparse_read(): Verify checksum earlier so we will try to repair and missed backport (`issue#24875 <http://tracker.ceph.com/issues/24875>`_, `pr#23379 <https://github.com/ceph/ceph/pull/23379>`_, xie xingguo, David Zafman) -* osd: eternal stuck PG in 'unfound_recovery' (`issue#24373 <http://tracker.ceph.com/issues/24373>`_, `pr#22546 <https://github.com/ceph/ceph/pull/22546>`_, Sage Weil) -* osd: may get empty info at recovery (`issue#24588 <http://tracker.ceph.com/issues/24588>`_, `pr#22862 <https://github.com/ceph/ceph/pull/22862>`_, Sage Weil) -* osd/OSDMap: CRUSH_TUNABLES5 added in jewel, not kraken (`issue#25057 <http://tracker.ceph.com/issues/25057>`_, `pr#23227 <https://github.com/ceph/ceph/pull/23227>`_, Sage Weil) -* osd/Session: fix invalid iterator dereference in Sessoin::have_backoff() (`issue#24486 <http://tracker.ceph.com/issues/24486>`_, `pr#22729 <https://github.com/ceph/ceph/pull/22729>`_, Sage Weil) -* pjd: cd: too many arguments (`issue#24307 <http://tracker.ceph.com/issues/24307>`_, `pr#22883 <https://github.com/ceph/ceph/pull/22883>`_, Neha Ojha) -* PurgeQueue sometimes ignores Journaler errors (`issue#24533 <http://tracker.ceph.com/issues/24533>`_, `pr#22811 <https://github.com/ceph/ceph/pull/22811>`_, John Spray) -* pybind: pybind/mgr/mgr_module: make rados handle available to all modules (`issue#24788 <http://tracker.ceph.com/issues/24788>`_, `issue#25102 <http://tracker.ceph.com/issues/25102>`_, `pr#23235 <https://github.com/ceph/ceph/pull/23235>`_, Ernesto Puerta, Sage Weil) -* pybind: Python bindings use iteritems method which is not Python 3 compatible (`issue#24779 <http://tracker.ceph.com/issues/24779>`_, `pr#22918 <https://github.com/ceph/ceph/pull/22918>`_, Nathan Cutler, Kefu Chai) -* pybind: rados.pyx: make all exceptions accept keyword arguments (`issue#24033 <http://tracker.ceph.com/issues/24033>`_, `pr#22979 <https://github.com/ceph/ceph/pull/22979>`_, Rishabh Dave) -* rbd: fix issues in IEC unit handling (`issue#26927 <http://tracker.ceph.com/issues/26927>`_, `issue#26928 <http://tracker.ceph.com/issues/26928>`_, `pr#23776 <https://github.com/ceph/ceph/pull/23776>`_, Jason Dillaman) -* repeated eviction of idle client until some IO happens (`issue#24052 <http://tracker.ceph.com/issues/24052>`_, `pr#22780 <https://github.com/ceph/ceph/pull/22780>`_, "Yan, Zheng") -* rgw: add curl_low_speed_limit and curl_low_speed_time config to avoid the thread hangs in data sync (`issue#25019 <http://tracker.ceph.com/issues/25019>`_, `pr#23144 <https://github.com/ceph/ceph/pull/23144>`_, Mark Kogan, Zhang Shaowen) -* rgw: add unit test for cls bi list command (`issue#24483 <http://tracker.ceph.com/issues/24483>`_, `pr#22846 <https://github.com/ceph/ceph/pull/22846>`_, Orit Wasserman, Xinying Song) -* rgw: do not ignore EEXIST in RGWPutObj::execute (`issue#22790 <http://tracker.ceph.com/issues/22790>`_, `pr#23207 <https://github.com/ceph/ceph/pull/23207>`_, Matt Benjamin) -* rgw: fail to recover index from crash luminous backport (`issue#24640 <http://tracker.ceph.com/issues/24640>`_, `issue#24280 <http://tracker.ceph.com/issues/24280>`_, `pr#23130 <https://github.com/ceph/ceph/pull/23130>`_, Tianshan Qu) -* rgw: fix gc may cause a large number of read traffic (`issue#24767 <http://tracker.ceph.com/issues/24767>`_, `pr#22984 <https://github.com/ceph/ceph/pull/22984>`_, Xin Liao) -* rgw: fix the bug of radowgw-admin zonegroup set requires realm (`issue#21583 <http://tracker.ceph.com/issues/21583>`_, `pr#22767 <https://github.com/ceph/ceph/pull/22767>`_, lvshanchun) -* rgw: have a configurable authentication order (`issue#23089 <http://tracker.ceph.com/issues/23089>`_, `pr#23501 <https://github.com/ceph/ceph/pull/23501>`_, Abhishek Lekshmanan) -* rgw: index complete miss zones_trace set (`issue#24590 <http://tracker.ceph.com/issues/24590>`_, `pr#22820 <https://github.com/ceph/ceph/pull/22820>`_, Tianshan Qu) -* rgw: Invalid Access-Control-Request-Request may bypass validate_cors_rule_method (`issue#24223 <http://tracker.ceph.com/issues/24223>`_, `pr#22934 <https://github.com/ceph/ceph/pull/22934>`_, Jeegn Chen) -* rgw: meta and data notify thread miss stop cr manager (`issue#24589 <http://tracker.ceph.com/issues/24589>`_, `pr#22822 <https://github.com/ceph/ceph/pull/22822>`_, Tianshan Qu) -* rgw-multisite: endless loop in RGWBucketShardIncrementalSyncCR (`issue#24603 <http://tracker.ceph.com/issues/24603>`_, `pr#22817 <https://github.com/ceph/ceph/pull/22817>`_, cfanz) -* rgw performance regression for luminous 12.2.4 (`issue#23379 <http://tracker.ceph.com/issues/23379>`_, `pr#22930 <https://github.com/ceph/ceph/pull/22930>`_, Mark Kogan) -* rgw: radogw-admin reshard status command should print text for reshar… (`issue#23257 <http://tracker.ceph.com/issues/23257>`_, `pr#23019 <https://github.com/ceph/ceph/pull/23019>`_, Orit Wasserman) -* rgw: "radosgw-admin objects expire" always returns ok even if the pro… (`issue#24592 <http://tracker.ceph.com/issues/24592>`_, `pr#23000 <https://github.com/ceph/ceph/pull/23000>`_, Zhang Shaowen) -* rgw: require --yes-i-really-mean-it to run radosgw-admin orphans find (`issue#24146 <http://tracker.ceph.com/issues/24146>`_, `pr#22985 <https://github.com/ceph/ceph/pull/22985>`_, Matt Benjamin) -* rgw: REST admin metadata API paging failure bucket & bucket.instance: InvalidArgument (`issue#23099 <http://tracker.ceph.com/issues/23099>`_, `pr#22932 <https://github.com/ceph/ceph/pull/22932>`_, Matt Benjamin) -* rgw: set cr state if aio_read err return in RGWCloneMetaLogCoroutine (`issue#24566 <http://tracker.ceph.com/issues/24566>`_, `pr#22942 <https://github.com/ceph/ceph/pull/22942>`_, Tianshan Qu) -* spdk: fix ceph-osd crash when activate SPDK (`issue#24371 <http://tracker.ceph.com/issues/24371>`_, `pr#22686 <https://github.com/ceph/ceph/pull/22686>`_, tone-zhang) -* tools/ceph-objectstore-tool: split filestore directories offline to target hash level (`issue#21366 <http://tracker.ceph.com/issues/21366>`_, `pr#23418 <https://github.com/ceph/ceph/pull/23418>`_, Zhi Zhang) - - -v12.2.7 Luminous -================ - -This is the seventh bugfix release of Luminous v12.2.x long term -stable release series. This release contains several fixes for -regressions in the v12.2.6 and v12.2.5 releases. We recommend that -all users upgrade. - -:note: The v12.2.6 release has serious known regressions. If you installed this release, please see the upgrade procedure below. - -:note: The v12.2.5 release has a potential data corruption issue with erasure coded pools. If you ran v12.2.5 with erasure coding, please see below. - -.. _luminous-12-2-5-upgrades: - -Upgrading from v12.2.6 ----------------------- - -v12.2.6 included an incomplete backport of an optimization for -BlueStore OSDs that avoids maintaining both the per-object checksum -and the internal BlueStore checksum. Due to the accidental omission -of a critical follow-on patch, v12.2.6 corrupts (fails to update) the -stored per-object checksum value for some objects. This can result in -an EIO error when trying to read those objects. - -#. If your cluster uses FileStore only, no special action is required. - This problem only affects clusters with BlueStore. - -#. If your cluster has only BlueStore OSDs (no FileStore), then you - should enable the following OSD option:: - - osd skip data digest = true - - This will avoid setting and start ignoring the full-object digests - whenever the primary for a PG is BlueStore. - -#. If you have a mix of BlueStore and FileStore OSDs, then you should - enable the following OSD option:: - - osd distrust data digest = true - - This will avoid setting and start ignoring the full-object digests - in all cases. This weakens the data integrity checks for - FileStore (although those checks were always only opportunistic). - -If your cluster includes BlueStore OSDs and was affected, deep scrubs -will generate errors about mismatched CRCs for affected objects. -Currently the repair operation does not know how to correct them -(since all replicas do not match the expected checksum it does not -know how to proceed). These warnings are harmless in the sense that -IO is not affected and the replicas are all still in sync. The number -of affected objects is likely to drop (possibly to zero) on their own -over time as those objects are modified. We expect to include a scrub -improvement in v12.2.8 to clean up any remaining objects. - -Additionally, see the notes below, which apply to both v12.2.5 and v12.2.6. - -Upgrading from v12.2.5 or v12.2.6 ---------------------------------- - -If you used v12.2.5 or v12.2.6 in combination with erasure coded -pools, there is a small risk of corruption under certain workloads. -Specifically, when: - -* An erasure coded pool is in use -* The pool is busy with successful writes -* The pool is also busy with updates that result in an error result to - the librados user. RGW garbage collection is the most common - example of this (it sends delete operations on objects that don't - always exist.) -* Some OSDs are reasonably busy. One known example of such load is - FileStore splitting, although in principle any load on the cluster - could also trigger the behavior. -* One or more OSDs restarts. - -This combination can trigger an OSD crash and possibly leave PGs in a state -where they fail to peer. - -Notably, upgrading a cluster involves OSD restarts and as such may -increase the risk of encountering this bug. For this reason, for -clusters with erasure coded pools, we recommend the following upgrade -procedure to minimize risk: - -#. Install the v12.2.7 packages. -#. Temporarily quiesce IO to cluster:: - - ceph osd pause - -#. Restart all OSDs and wait for all PGs to become active. -#. Resume IO:: - - ceph osd unpause - -This will cause an availability outage for the duration of the OSD -restarts. If this in unacceptable, an *more risky* alternative is to -disable RGW garbage collection (the primary known cause of these rados -operations) for the duration of the upgrade:: - -#. Set ``rgw_enable_gc_threads = false`` in ceph.conf -#. Restart all radosgw daemons -#. Upgrade and restart all OSDs -#. Remove ``rgw_enable_gc_threads = false`` from ceph.conf -#. Restart all radosgw daemons - -Upgrading from other versions ------------------------------ - -If your cluster did not run v12.2.5 or v12.2.6 then none of the above -issues apply to you and you should upgrade normally. - -Notable Changes ---------------- - -* mon/AuthMonitor: improve error message (`issue#21765 <http://tracker.ceph.com/issues/21765>`_, `pr#22963 <https://github.com/ceph/ceph/pull/22963>`_, Douglas Fuller) -* osd/PG: do not blindly roll forward to log.head (`issue#24597 <http://tracker.ceph.com/issues/24597>`_, `pr#22976 <https://github.com/ceph/ceph/pull/22976>`_, Sage Weil) -* osd/PrimaryLogPG: rebuild attrs from clients (`issue#24768 <http://tracker.ceph.com/issues/24768>`_, `pr#22962 <https://github.com/ceph/ceph/pull/22962>`_, Sage Weil) -* osd: work around data digest problems in 12.2.6 (version 2) (`issue#24922 <http://tracker.ceph.com/issues/24922>`_, `pr#23055 <https://github.com/ceph/ceph/pull/23055>`_, Sage Weil) -* rgw: objects in cache never refresh after rgw_cache_expiry_interval (`issue#24346 <http://tracker.ceph.com/issues/24346>`_, `pr#22369 <https://github.com/ceph/ceph/pull/22369>`_, Casey Bodley, Matt Benjamin) - - -v12.2.6 Luminous -================ - -:note: This is a broken release with serious known regressions. Do not install it. - -This is the sixth bugfix release of Luminous v12.2.x long term stable release -series. This release contains a range of bug fixes across all components of -Ceph and a few security fixes. - -Notable Changes ---------------- - -- *Auth*: - - * In 12.2.4 and earlier releases, keyring caps were not checked for validity, - so the caps string could be anything. As of 12.2.6, caps strings are - validated and providing a keyring with an invalid caps string to, e.g., - "ceph auth add" will result in an error. - * CVE 2018-1128: auth: cephx authorizer subject to replay attack (`issue#24836 <http://tracker.ceph.com/issues/24836>`_, Sage Weil) - * CVE 2018-1129: auth: cephx signature check is weak (`issue#24837 <http://tracker.ceph.com/issues/24837>`_, Sage Weil) - * CVE 2018-10861: mon: auth checks not correct for pool ops (`issue#24838 <http://tracker.ceph.com/issues/24838>`_, Jason Dillaman) - - -* The config-key interface can store arbitrary binary blobs but JSON - can only express printable strings. If binary blobs are present, - the 'ceph config-key dump' command will show them as something like - ``<<< binary blob of length N >>>``. - - -Other Notable Changes ---------------------- -* build/ops: build-integration-branch script (`issue#24003 <http://tracker.ceph.com/issues/24003>`_, `pr#21919 <https://github.com/ceph/ceph/pull/21919>`_, Nathan Cutler, Kefu Chai, Sage Weil) -* cephfs-journal-tool: wait prezero ops before destroying journal (`issue#20549 <http://tracker.ceph.com/issues/20549>`_, `pr#21874 <https://github.com/ceph/ceph/pull/21874>`_, "Yan, Zheng") -* cephfs: MDSMonitor: cleanup and protect fsmap access (`issue#23762 <http://tracker.ceph.com/issues/23762>`_, `pr#21732 <https://github.com/ceph/ceph/pull/21732>`_, Patrick Donnelly) -* cephfs: MDSMonitor: crash after assigning standby-replay daemon in multifs setup (`issue#23762 <http://tracker.ceph.com/issues/23762>`_, `issue#23658 <http://tracker.ceph.com/issues/23658>`_, `pr#22603 <https://github.com/ceph/ceph/pull/22603>`_, "Yan, Zheng") -* cephfs: MDSMonitor: fix mds health printed in bad format (`issue#23582 <http://tracker.ceph.com/issues/23582>`_, `pr#21447 <https://github.com/ceph/ceph/pull/21447>`_, Patrick Donnelly) -* cephfs: MDSMonitor: initialize new Filesystem epoch from pending (`issue#23764 <http://tracker.ceph.com/issues/23764>`_, `pr#21512 <https://github.com/ceph/ceph/pull/21512>`_, Patrick Donnelly) -* ceph-fuse: missing dentries in readdir result (`issue#23894 <http://tracker.ceph.com/issues/23894>`_, `pr#22119 <https://github.com/ceph/ceph/pull/22119>`_, "Yan, Zheng") -* ceph-fuse: return proper exit code (`issue#23665 <http://tracker.ceph.com/issues/23665>`_, `pr#21495 <https://github.com/ceph/ceph/pull/21495>`_, Patrick Donnelly) -* ceph-fuse: trim ceph-fuse -V output (`issue#23248 <http://tracker.ceph.com/issues/23248>`_, `pr#21600 <https://github.com/ceph/ceph/pull/21600>`_, Jos Collin) -* ceph_test_rados_api_aio: fix race with full pool and osdmap (`issue#23917 <http://tracker.ceph.com/issues/23917>`_, `issue#23876 <http://tracker.ceph.com/issues/23876>`_, `pr#21778 <https://github.com/ceph/ceph/pull/21778>`_, Sage Weil) -* ceph-volume: error on commands that need ceph.conf to operate (`issue#23941 <http://tracker.ceph.com/issues/23941>`_, `pr#22746 <https://github.com/ceph/ceph/pull/22746>`_, Andrew Schoen) -* ceph-volume: failed ceph-osd --mkfs command doesn't halt the OSD creation process (`issue#23874 <http://tracker.ceph.com/issues/23874>`_, `pr#21746 <https://github.com/ceph/ceph/pull/21746>`_, Alfredo Deza) -* client: add ceph_ll_sync_inode (`issue#23291 <http://tracker.ceph.com/issues/23291>`_, `pr#21109 <https://github.com/ceph/ceph/pull/21109>`_, Jeff Layton) -* client: add client option descriptions (`issue#22933 <http://tracker.ceph.com/issues/22933>`_, `pr#21589 <https://github.com/ceph/ceph/pull/21589>`_, Patrick Donnelly) -* client: anchor dentries for trimming to make cap traversal safe (`issue#24137 <http://tracker.ceph.com/issues/24137>`_, `pr#22201 <https://github.com/ceph/ceph/pull/22201>`_, Patrick Donnelly) -* client: avoid freeing inode when it contains TX buffer head (`issue#23837 <http://tracker.ceph.com/issues/23837>`_, `pr#22168 <https://github.com/ceph/ceph/pull/22168>`_, Guan yunfei, "Yan, Zheng", Jason Dillaman) -* client: dirty caps may never get the chance to flush (`issue#22546 <http://tracker.ceph.com/issues/22546>`_, `pr#21278 <https://github.com/ceph/ceph/pull/21278>`_, dongdong tao) -* client: fix issue of revoking non-auth caps (`issue#24172 <http://tracker.ceph.com/issues/24172>`_, `pr#22221 <https://github.com/ceph/ceph/pull/22221>`_, "Yan, Zheng") -* client: fix request send_to_auth was never really used (`issue#23541 <http://tracker.ceph.com/issues/23541>`_, `pr#21354 <https://github.com/ceph/ceph/pull/21354>`_, Zhi Zhang) -* client: Fix the gid_count check (`issue#23652 <http://tracker.ceph.com/issues/23652>`_, `pr#21596 <https://github.com/ceph/ceph/pull/21596>`_, Jos Collin) -* client: flush the mdlog in _fsync before waiting on unstable reqs (`issue#23714 <http://tracker.ceph.com/issues/23714>`_, `pr#21542 <https://github.com/ceph/ceph/pull/21542>`_, Jeff Layton) -* client: hangs on umount if it had an MDS session evicted (`issue#10915 <http://tracker.ceph.com/issues/10915>`_, `pr#22018 <https://github.com/ceph/ceph/pull/22018>`_, Rishabh Dave) -* client: void sending mds request while holding cap reference (`issue#24369 <http://tracker.ceph.com/issues/24369>`_, `pr#22354 <https://github.com/ceph/ceph/pull/22354>`_, "Yan, Zheng") -* cmake: fix the cepfs java binding build on Bionic (`issue#23458 <http://tracker.ceph.com/issues/23458>`_, `issue#24012 <http://tracker.ceph.com/issues/24012>`_, `pr#21872 <https://github.com/ceph/ceph/pull/21872>`_, Kefu Chai, Shengjing Zhu) -* cmake/modules/BuildRocksDB.cmake: enable compressions for rocksdb (`issue#24025 <http://tracker.ceph.com/issues/24025>`_, `pr#22215 <https://github.com/ceph/ceph/pull/22215>`_, Kefu Chai) -* common: ARMv8 feature detection broken, leading to illegal instruction crashes (`issue#23464 <http://tracker.ceph.com/issues/23464>`_, `pr#22567 <https://github.com/ceph/ceph/pull/22567>`_, Adam Kupczyk) -* common: fix BoundedKeyCounter const_pointer_iterator (`issue#22139 <http://tracker.ceph.com/issues/22139>`_, `pr#21083 <https://github.com/ceph/ceph/pull/21083>`_, Casey Bodley) -* common: fix typo in rados bench write JSON output (`issue#24199 <http://tracker.ceph.com/issues/24199>`_, `pr#22391 <https://github.com/ceph/ceph/pull/22391>`_, Sandor Zeestraten) -* common: partially revert 95fc248 to make get_process_name work (`issue#24123 <http://tracker.ceph.com/issues/24123>`_, `pr#22290 <https://github.com/ceph/ceph/pull/22290>`_, Mykola Golub) -* core: Deleting a pool with active notify linger ops can result in seg fault (`issue#23966 <http://tracker.ceph.com/issues/23966>`_, `pr#22143 <https://github.com/ceph/ceph/pull/22143>`_, Kefu Chai, Jason Dillaman) -* core: mon/MgrMonitor: change 'unresponsive' message to info level (`issue#24222 <http://tracker.ceph.com/issues/24222>`_, `pr#22331 <https://github.com/ceph/ceph/pull/22331>`_, Sage Weil) -* core: Wip scrub omap (`issue#24366 <http://tracker.ceph.com/issues/24366>`_, `pr#22375 <https://github.com/ceph/ceph/pull/22375>`_, xie xingguo, David Zafman) -* crush: fix device_class_clone for unpopulated/empty weight-sets (`issue#23386 <http://tracker.ceph.com/issues/23386>`_, `pr#22381 <https://github.com/ceph/ceph/pull/22381>`_, Sage Weil) -* crush, osd: handle multiple parents properly when applying pg upmaps (`issue#23921 <http://tracker.ceph.com/issues/23921>`_, `pr#22115 <https://github.com/ceph/ceph/pull/22115>`_, xiexingguo) -* doc: Fix -d description in ceph-fuse (`issue#23214 <http://tracker.ceph.com/issues/23214>`_, `pr#21616 <https://github.com/ceph/ceph/pull/21616>`_, Jos Collin) -* doc:Update ceph-fuse doc (`issue#23084 <http://tracker.ceph.com/issues/23084>`_, `pr#21603 <https://github.com/ceph/ceph/pull/21603>`_, Jos Collin) -* fuse: wire up fuse_ll_access (`issue#23509 <http://tracker.ceph.com/issues/23509>`_, `pr#21475 <https://github.com/ceph/ceph/pull/21475>`_, Jeff Layton) -* kceph: umount on evicted client blocks forever (`issue#24053 <http://tracker.ceph.com/issues/24053>`_, `issue#24054 <http://tracker.ceph.com/issues/24054>`_, `pr#22208 <https://github.com/ceph/ceph/pull/22208>`_, Yan, Zheng, "Yan, Zheng") -* librbd: commit IO as safe when complete if writeback cache is disabled (`issue#23516 <http://tracker.ceph.com/issues/23516>`_, `pr#22370 <https://github.com/ceph/ceph/pull/22370>`_, Jason Dillaman) -* librbd: prevent watcher from unregistering with in-flight actions (`issue#23955 <http://tracker.ceph.com/issues/23955>`_, `pr#21938 <https://github.com/ceph/ceph/pull/21938>`_, Jason Dillaman) -* lvm: when osd creation fails log the exception (`issue#24456 <http://tracker.ceph.com/issues/24456>`_, `pr#22641 <https://github.com/ceph/ceph/pull/22641>`_, Andrew Schoen) -* mds: avoid calling rejoin_gather_finish() two times successively (`issue#24047 <http://tracker.ceph.com/issues/24047>`_, `pr#22171 <https://github.com/ceph/ceph/pull/22171>`_, "Yan, Zheng") -* mds: broadcast quota to relevant clients when quota is explicitly set (`issue#24133 <http://tracker.ceph.com/issues/24133>`_, `pr#22271 <https://github.com/ceph/ceph/pull/22271>`_, Zhi Zhang) -* mds: crash when failover (`issue#23518 <http://tracker.ceph.com/issues/23518>`_, `pr#21900 <https://github.com/ceph/ceph/pull/21900>`_, "Yan, Zheng") -* mds: don't discover inode/dirfrag when mds is in 'starting' state (`issue#23812 <http://tracker.ceph.com/issues/23812>`_, `pr#21990 <https://github.com/ceph/ceph/pull/21990>`_, "Yan, Zheng") -* mds: fix occasional dir rstat inconsistency between multi-MDSes (`issue#23538 <http://tracker.ceph.com/issues/23538>`_, `pr#21617 <https://github.com/ceph/ceph/pull/21617>`_, "Yan, Zheng", Zhi Zhang) -* mds: fix some memory leak (`issue#24289 <http://tracker.ceph.com/issues/24289>`_, `pr#22310 <https://github.com/ceph/ceph/pull/22310>`_, "Yan, Zheng") -* mds: fix unhealth heartbeat during rejoin (`issue#23530 <http://tracker.ceph.com/issues/23530>`_, `pr#21366 <https://github.com/ceph/ceph/pull/21366>`_, dongdong tao) -* mds: handle imported session race (`issue#24072 <http://tracker.ceph.com/issues/24072>`_, `issue#24087 <http://tracker.ceph.com/issues/24087>`_, `pr#21989 <https://github.com/ceph/ceph/pull/21989>`_, Patrick Donnelly) -* mds: include nfiles/nsubdirs of directory inode in MClientCaps (`issue#23855 <http://tracker.ceph.com/issues/23855>`_, `pr#22118 <https://github.com/ceph/ceph/pull/22118>`_, "Yan, Zheng") -* mds: kick rdlock if waiting for dirfragtreelock (`issue#23919 <http://tracker.ceph.com/issues/23919>`_, `pr#21901 <https://github.com/ceph/ceph/pull/21901>`_, Patrick Donnelly) -* mds: make rstat.rctime follow inodes' ctime (`issue#23380 <http://tracker.ceph.com/issues/23380>`_, `pr#21448 <https://github.com/ceph/ceph/pull/21448>`_, "Yan, Zheng") -* mds: mark damaged if sessions' preallocated inos don't match inotable (`issue#23452 <http://tracker.ceph.com/issues/23452>`_, `pr#21372 <https://github.com/ceph/ceph/pull/21372>`_, "Yan, Zheng") -* mds: mark new root inode dirty (`issue#23960 <http://tracker.ceph.com/issues/23960>`_, `pr#21922 <https://github.com/ceph/ceph/pull/21922>`_, Patrick Donnelly) -* mds: mds shutdown fixes and optimization (`issue#23602 <http://tracker.ceph.com/issues/23602>`_, `pr#21346 <https://github.com/ceph/ceph/pull/21346>`_, "Yan, Zheng") -* mds: misc load balancer fixes (`issue#21745 <http://tracker.ceph.com/issues/21745>`_, `pr#21412 <https://github.com/ceph/ceph/pull/21412>`_, "Yan, Zheng", Jianyu Li) -* mds: properly check auth subtree count in MDCache::shutdown_pass() (`issue#23813 <http://tracker.ceph.com/issues/23813>`_, `pr#21844 <https://github.com/ceph/ceph/pull/21844>`_, "Yan, Zheng") -* mds: properly dirty sessions opened by journal replay (`issue#23625 <http://tracker.ceph.com/issues/23625>`_, `pr#21441 <https://github.com/ceph/ceph/pull/21441>`_, "Yan, Zheng") -* mds: properly trim log segments after scrub repairs something (`issue#23880 <http://tracker.ceph.com/issues/23880>`_, `pr#21840 <https://github.com/ceph/ceph/pull/21840>`_, "Yan, Zheng") -* mds: set could_consume to false when no purge queue item actually exe… (`issue#24073 <http://tracker.ceph.com/issues/24073>`_, `pr#22176 <https://github.com/ceph/ceph/pull/22176>`_, Xuehan Xu) -* mds: trim log during shutdown to clean metadata (`issue#23923 <http://tracker.ceph.com/issues/23923>`_, `pr#21899 <https://github.com/ceph/ceph/pull/21899>`_, Patrick Donnelly) -* mds: underwater dentry check in CDir::_omap_fetched is racy (`issue#23032 <http://tracker.ceph.com/issues/23032>`_, `pr#21187 <https://github.com/ceph/ceph/pull/21187>`_, Yan, Zheng) -* mg_read() call has wrong arguments (`issue#23596 <http://tracker.ceph.com/issues/23596>`_, `pr#21382 <https://github.com/ceph/ceph/pull/21382>`_, Nathan Cutler) -* mgr/influx: Only split string on first occurence of dot (.) (`issue#23996 <http://tracker.ceph.com/issues/23996>`_, `pr#21965 <https://github.com/ceph/ceph/pull/21965>`_, Wido den Hollander) -* mgr: Module 'balancer' has failed: could not find bucket -14 (`issue#24167 <http://tracker.ceph.com/issues/24167>`_, `pr#22308 <https://github.com/ceph/ceph/pull/22308>`_, Sage Weil) -* mon: add 'ceph osd pool get erasure allow_ec_overwrites' command (`issue#23487 <http://tracker.ceph.com/issues/23487>`_, `pr#21378 <https://github.com/ceph/ceph/pull/21378>`_, Mykola Golub) -* mon: enable level_compaction_dynamic_level_bytes for rocksdb (`issue#24361 <http://tracker.ceph.com/issues/24361>`_, `pr#22360 <https://github.com/ceph/ceph/pull/22360>`_, Kefu Chai) -* mon: handle bad snapshot removal reqs gracefully (`issue#18746 <http://tracker.ceph.com/issues/18746>`_, `pr#21717 <https://github.com/ceph/ceph/pull/21717>`_, Paul Emmerich) -* mon: High MON cpu usage when cluster is changing (`issue#23713 <http://tracker.ceph.com/issues/23713>`_, `pr#21968 <https://github.com/ceph/ceph/pull/21968>`_, Sage Weil, Xiaoxi CHEN) -* mon/MDSMonitor: do not send redundant MDS health messages to cluster log (`issue#24308 <http://tracker.ceph.com/issues/24308>`_, `pr#22558 <https://github.com/ceph/ceph/pull/22558>`_, Sage Weil) -* msg/async/AsyncConnection: Fix FPE in process_connection (`issue#23618 <http://tracker.ceph.com/issues/23618>`_, `pr#21376 <https://github.com/ceph/ceph/pull/21376>`_, Brad Hubbard) -* os/bluestore: alter the allow_eio policy regarding kernel's error list (`issue#23333 <http://tracker.ceph.com/issues/23333>`_, `pr#21405 <https://github.com/ceph/ceph/pull/21405>`_, Radoslaw Zarzynski) -* os/bluestore/bluefs_types: make block_mask 64-bit (`issue#23840 <http://tracker.ceph.com/issues/23840>`_, `pr#21740 <https://github.com/ceph/ceph/pull/21740>`_, Sage Weil) -* os/bluestore: fix exceeding the max IO queue depth in KernelDevice (`issue#23246 <http://tracker.ceph.com/issues/23246>`_, `pr#21407 <https://github.com/ceph/ceph/pull/21407>`_, Radoslaw Zarzynski) -* os/bluestore: fix SharedBlobSet refcounting race (`issue#24319 <http://tracker.ceph.com/issues/24319>`_, `pr#22650 <https://github.com/ceph/ceph/pull/22650>`_, Sage Weil) -* os/bluestore: simplify and fix SharedBlob::put() (`issue#24211 <http://tracker.ceph.com/issues/24211>`_, `pr#22351 <https://github.com/ceph/ceph/pull/22351>`_, Sage Weil) -* osdc/Objecter: fix recursive locking in _finish_command (`issue#23940 <http://tracker.ceph.com/issues/23940>`_, `pr#21939 <https://github.com/ceph/ceph/pull/21939>`_, Sage Weil) -* osdc/Objecter: prevent double-invocation of linger op callback (`issue#23872 <http://tracker.ceph.com/issues/23872>`_, `pr#21752 <https://github.com/ceph/ceph/pull/21752>`_, Jason Dillaman) -* osd: do not crash on empty snapset (`issue#23851 <http://tracker.ceph.com/issues/23851>`_, `pr#21638 <https://github.com/ceph/ceph/pull/21638>`_, Mykola Golub, Igor Fedotov) -* osd: Don't evict even when preemption has restarted with smaller chunk (`issue#22881 <http://tracker.ceph.com/issues/22881>`_, `issue#23909 <http://tracker.ceph.com/issues/23909>`_, `issue#23646 <http://tracker.ceph.com/issues/23646>`_, `pr#22044 <https://github.com/ceph/ceph/pull/22044>`_, Sage Weil, fang yuxiang, Jianpeng Ma, kungf, xie xingguo, David Zafman) -* osd/ECBackend: only check required shards when finishing recovery reads (`issue#23195 <http://tracker.ceph.com/issues/23195>`_, `pr#21911 <https://github.com/ceph/ceph/pull/21911>`_, Josh Durgin, Kefu Chai) -* osd: increase default hard pg limit (`issue#24243 <http://tracker.ceph.com/issues/24243>`_, `pr#22592 <https://github.com/ceph/ceph/pull/22592>`_, Josh Durgin) -* osd/OSDMap: check against cluster topology changing before applying pg upmaps (`issue#23878 <http://tracker.ceph.com/issues/23878>`_, `pr#21818 <https://github.com/ceph/ceph/pull/21818>`_, xiexingguo) -* osd/PG: fix DeferRecovery vs AllReplicasRecovered race (`issue#23860 <http://tracker.ceph.com/issues/23860>`_, `pr#21964 <https://github.com/ceph/ceph/pull/21964>`_, Sage Weil) -* osd/PG: fix uninit read in Incomplete::react(AdvMap&) (`issue#23980 <http://tracker.ceph.com/issues/23980>`_, `pr#21993 <https://github.com/ceph/ceph/pull/21993>`_, Sage Weil) -* osd/PrimaryLogPG: avoid infinite loop when flush collides with write … (`issue#23664 <http://tracker.ceph.com/issues/23664>`_, `pr#21764 <https://github.com/ceph/ceph/pull/21764>`_, Sage Weil) -* osd: publish osdmap to OSDService before starting wq threads (`issue#21977 <http://tracker.ceph.com/issues/21977>`_, `pr#21737 <https://github.com/ceph/ceph/pull/21737>`_, Sage Weil) -* osd: Warn about objects with too many omap entries (`issue#23784 <http://tracker.ceph.com/issues/23784>`_, `pr#21518 <https://github.com/ceph/ceph/pull/21518>`_, Brad Hubbard) -* qa: disable -Werror when compiling env_librados_test (`issue#23786 <http://tracker.ceph.com/issues/23786>`_, `pr#21655 <https://github.com/ceph/ceph/pull/21655>`_, Kefu Chai) -* qa: fix blacklisted check for test_lifecycle (`issue#23975 <http://tracker.ceph.com/issues/23975>`_, `pr#21921 <https://github.com/ceph/ceph/pull/21921>`_, Patrick Donnelly) -* qa: remove racy/buggy test_purge_queue_op_rate (`issue#23829 <http://tracker.ceph.com/issues/23829>`_, `pr#21841 <https://github.com/ceph/ceph/pull/21841>`_, Patrick Donnelly) -* qa/suites/rbd/basic/msgr-failures: remove many.yaml (`issue#23789 <http://tracker.ceph.com/issues/23789>`_, `pr#22128 <https://github.com/ceph/ceph/pull/22128>`_, Sage Weil) -* qa: wait longer for osd to flush pg stats (`issue#24321 <http://tracker.ceph.com/issues/24321>`_, `pr#22296 <https://github.com/ceph/ceph/pull/22296>`_, Kefu Chai) -* qa/workunits/mon/test_mon_config_key.py fails on master (`issue#23622 <http://tracker.ceph.com/issues/23622>`_, `pr#21368 <https://github.com/ceph/ceph/pull/21368>`_, Sage Weil) -* qa/workunits/rbd: adapt import_export test to handle multiple units (`issue#24733 <http://tracker.ceph.com/issues/24733>`_, `pr#22911 <https://github.com/ceph/ceph/pull/22911>`_, Jason Dillaman) -* qa/workunits/rbd: potential race in mirror disconnect test (`issue#23938 <http://tracker.ceph.com/issues/23938>`_, `pr#21869 <https://github.com/ceph/ceph/pull/21869>`_, Mykola Golub) -* radosgw-admin sync status improvements (`issue#20473 <http://tracker.ceph.com/issues/20473>`_, `pr#21908 <https://github.com/ceph/ceph/pull/21908>`_, lvshanchun, Casey Bodley) -* rbd: improve 'import-diff' corrupt input error messages (`issue#18844 <http://tracker.ceph.com/issues/18844>`_, `issue#23038 <http://tracker.ceph.com/issues/23038>`_, `pr#21316 <https://github.com/ceph/ceph/pull/21316>`_, PCzhangPC, songweibin, Jason Dillaman) -* rbd-mirror: ensure remote demotion is replayed locally (`issue#24009 <http://tracker.ceph.com/issues/24009>`_, `pr#22142 <https://github.com/ceph/ceph/pull/22142>`_, Jason Dillaman) -* rbd-nbd can deadlock in logging thread (`issue#23143 <http://tracker.ceph.com/issues/23143>`_, `pr#21705 <https://github.com/ceph/ceph/pull/21705>`_, Sage Weil) -* rbd: python bindings fixes and improvements (`issue#23609 <http://tracker.ceph.com/issues/23609>`_, `pr#21725 <https://github.com/ceph/ceph/pull/21725>`_, Ricardo Dias) -* rbd: [rbd-mirror] asok hook for image replayer not re-registered after bootstrap (`issue#23888 <http://tracker.ceph.com/issues/23888>`_, `pr#21726 <https://github.com/ceph/ceph/pull/21726>`_, Jason Dillaman) -* rbd: [rbd-mirror] local tag predecessor mirror uuid is incorrectly replaced with remote (`issue#23876 <http://tracker.ceph.com/issues/23876>`_, `pr#21741 <https://github.com/ceph/ceph/pull/21741>`_, Jason Dillaman) -* rbd: [rbd-mirror] potential deadlock when running asok 'flush' command (`issue#24141 <http://tracker.ceph.com/issues/24141>`_, `pr#22180 <https://github.com/ceph/ceph/pull/22180>`_, Mykola Golub) -* rbd: [rbd-mirror] potential races during PoolReplayer shut-down (`issue#24008 <http://tracker.ceph.com/issues/24008>`_, `pr#22172 <https://github.com/ceph/ceph/pull/22172>`_, Jason Dillaman) -* rgw: add buffering filter to compression for fetch_remote_obj (`issue#23547 <http://tracker.ceph.com/issues/23547>`_, `pr#21758 <https://github.com/ceph/ceph/pull/21758>`_, Casey Bodley) -* rgw: add configurable AWS-compat invalid range get behavior (`issue#24317 <http://tracker.ceph.com/issues/24317>`_, `pr#22302 <https://github.com/ceph/ceph/pull/22302>`_, Matt Benjamin) -* rgw: admin rest api shouldn't return error when getting user's stats if (`issue#23821 <http://tracker.ceph.com/issues/23821>`_, `pr#21661 <https://github.com/ceph/ceph/pull/21661>`_, Zhang Shaowen) -* rgw: Allow swift acls to be deleted (`issue#22897 <http://tracker.ceph.com/issues/22897>`_, `pr#22465 <https://github.com/ceph/ceph/pull/22465>`_, Marcus Watts) -* rgw: aws4 auth supports PutBucketRequestPayment (`issue#23803 <http://tracker.ceph.com/issues/23803>`_, `pr#21660 <https://github.com/ceph/ceph/pull/21660>`_, Casey Bodley) -* rgw: beast frontend can listen on multiple endpoints (`issue#22779 <http://tracker.ceph.com/issues/22779>`_, `pr#21568 <https://github.com/ceph/ceph/pull/21568>`_, Casey Bodley) -* rgw: Bucket lifecycles stick around after buckets are deleted (`issue#19632 <http://tracker.ceph.com/issues/19632>`_, `pr#22551 <https://github.com/ceph/ceph/pull/22551>`_, Wei Qiaomiao) -* rgw: Do not modify email if argument is not set (`issue#24142 <http://tracker.ceph.com/issues/24142>`_, `pr#22352 <https://github.com/ceph/ceph/pull/22352>`_, Volker Theile) -* rgw: do not reflect period if not current (`issue#22844 <http://tracker.ceph.com/issues/22844>`_, `pr#21735 <https://github.com/ceph/ceph/pull/21735>`_, Tianshan Qu) -* rgw: es module: set compression type correctly (`issue#22758 <http://tracker.ceph.com/issues/22758>`_, `pr#21736 <https://github.com/ceph/ceph/pull/21736>`_, Abhishek Lekshmanan) -* rgw_file: conditionally unlink handles when direct deleted (`issue#23299 <http://tracker.ceph.com/issues/23299>`_, `pr#21438 <https://github.com/ceph/ceph/pull/21438>`_, Matt Benjamin) -* rgw: fix bi_list to reset is_truncated flag if it skips entires (`issue#22721 <http://tracker.ceph.com/issues/22721>`_, `pr#21669 <https://github.com/ceph/ceph/pull/21669>`_, Orit Wasserman) -* rgw: fix 'copy part' without 'x-amz-copy-source-range' when compressi… (`issue#23196 <http://tracker.ceph.com/issues/23196>`_, `pr#22438 <https://github.com/ceph/ceph/pull/22438>`_, fang yuxiang) -* rgw: fix error handling for GET with ?torrent (`issue#23506 <http://tracker.ceph.com/issues/23506>`_, `pr#21674 <https://github.com/ceph/ceph/pull/21674>`_, Casey Bodley) -* rgw: fix use of libcurl with empty header values (`issue#23663 <http://tracker.ceph.com/issues/23663>`_, `pr#21738 <https://github.com/ceph/ceph/pull/21738>`_, Casey Bodley) -* rgw:lc: RGWPutLC return ERR_MALFORMED_XML when missing <Rule> tag in… (`issue#21377 <http://tracker.ceph.com/issues/21377>`_, `pr#19884 <https://github.com/ceph/ceph/pull/19884>`_, Shasha Lu) -* rgw: making implicit_tenants backwards compatible (`issue#24348 <http://tracker.ceph.com/issues/24348>`_, `pr#22363 <https://github.com/ceph/ceph/pull/22363>`_, Marcus Watts) -* rgw: Misnamed S3 operation (`issue#24061 <http://tracker.ceph.com/issues/24061>`_, `pr#21917 <https://github.com/ceph/ceph/pull/21917>`_, xiangxiang) -* rgw: move all pool creation into rgw_init_ioctx (`issue#23480 <http://tracker.ceph.com/issues/23480>`_, `pr#21675 <https://github.com/ceph/ceph/pull/21675>`_, Casey Bodley) -* rgw: radosgw-admin should not use metadata cache for readonly commands (`issue#23468 <http://tracker.ceph.com/issues/23468>`_, `pr#21437 <https://github.com/ceph/ceph/pull/21437>`_, Orit Wasserman) -* rgw: raise log level on coroutine shutdown errors (`issue#23974 <http://tracker.ceph.com/issues/23974>`_, `pr#21792 <https://github.com/ceph/ceph/pull/21792>`_, Casey Bodley) -* rgw: return EINVAL if max_keys can not convert correctly (`issue#23586 <http://tracker.ceph.com/issues/23586>`_, `pr#21435 <https://github.com/ceph/ceph/pull/21435>`_, yuliyang) -* rgw: rgw_statfs should report the correct stats (`issue#22202 <http://tracker.ceph.com/issues/22202>`_, `pr#21724 <https://github.com/ceph/ceph/pull/21724>`_, Supriti Singh) -* rgw: trim all spaces inside a metadata value (`issue#23301 <http://tracker.ceph.com/issues/23301>`_, `pr#22177 <https://github.com/ceph/ceph/pull/22177>`_, Orit Wasserman) -* slow mon ops from osd_failure (`issue#24322 <http://tracker.ceph.com/issues/24322>`_, `pr#22568 <https://github.com/ceph/ceph/pull/22568>`_, Sage Weil) -* table of contents doesn't render for luminous/jewel docs (`issue#23780 <http://tracker.ceph.com/issues/23780>`_, `pr#21502 <https://github.com/ceph/ceph/pull/21502>`_, Alfredo Deza) -* test/librados: increase pgp_num along with pg_num (`issue#23763 <http://tracker.ceph.com/issues/23763>`_, `pr#21556 <https://github.com/ceph/ceph/pull/21556>`_, Kefu Chai) -* test/rgw: fix for bucket checkpoints (`issue#24212 <http://tracker.ceph.com/issues/24212>`_, `pr#22541 <https://github.com/ceph/ceph/pull/22541>`_, Casey Bodley) -* tests: filestore journal replay does not guard omap operations (`issue#22920 <http://tracker.ceph.com/issues/22920>`_, `pr#21547 <https://github.com/ceph/ceph/pull/21547>`_, Sage Weil) -* tools: ceph-disk: write log to /var/log/ceph not to /var/run/ceph (`issue#24041 <http://tracker.ceph.com/issues/24041>`_, `pr#21870 <https://github.com/ceph/ceph/pull/21870>`_, Kefu Chai) -* tools: ceph-fuse: getgroups failure causes exception (`issue#23446 <http://tracker.ceph.com/issues/23446>`_, `pr#21687 <https://github.com/ceph/ceph/pull/21687>`_, Jeff Layton) - - -v12.2.5 Luminous -================ - -This is the fifth bugfix release of Luminous v12.2.x long term stable -release series. This release contains a range of bug fixes across all -components of Ceph. We recommend all the users of 12.2.x series to -update. - -Notable Changes ---------------- - -* MGR - - The ceph-rest-api command-line tool included in the ceph-mon - package has been obsoleted by the MGR "restful" module. The - ceph-rest-api tool is hereby declared deprecated and will be dropped - in Mimic. - - The MGR "restful" module provides similar functionality via a "pass through" - method. See http://docs.ceph.com/docs/luminous/mgr/restful for details. - -* CephFS - - Upgrading an MDS cluster to 12.2.3+ will result in all active MDS - exiting due to feature incompatibilities once an upgraded MDS comes - online (even as standby). Operators may ignore the error messages - and continue upgrading/restarting or follow this upgrade sequence: - - Reduce the number of ranks to 1 (`ceph fs set <fs_name> max_mds 1`), - wait for all other MDS to deactivate, leaving the one active MDS, - upgrade the single active MDS, then upgrade/start standbys. Finally, - restore the previous max_mds. - - See also: https://tracker.ceph.com/issues/23172 - - -Other Notable Changes ---------------------- - -* add --add-bucket and --move options to crushtool (`issue#23472 <http://tracker.ceph.com/issues/23472>`_, `issue#23471 <http://tracker.ceph.com/issues/23471>`_, `pr#21079 <https://github.com/ceph/ceph/pull/21079>`_, Kefu Chai) -* BlueStore.cc: _balance_bluefs_freespace: assert(0 == "allocate failed, wtf") (`issue#23063 <http://tracker.ceph.com/issues/23063>`_, `pr#21394 <https://github.com/ceph/ceph/pull/21394>`_, Igor Fedotov, xie xingguo, Sage Weil, Zac Medico) -* bluestore: correctly check all block devices to decide if journal is\_… (`issue#23173 <http://tracker.ceph.com/issues/23173>`_, `issue#23141 <http://tracker.ceph.com/issues/23141>`_, `pr#20651 <https://github.com/ceph/ceph/pull/20651>`_, Greg Farnum) -* bluestore: statfs available can go negative (`issue#23074 <http://tracker.ceph.com/issues/23074>`_, `pr#20554 <https://github.com/ceph/ceph/pull/20554>`_, Igor Fedotov, Sage Weil) -* build Debian installation packages failure (`issue#22856 <http://tracker.ceph.com/issues/22856>`_, `issue#22828 <http://tracker.ceph.com/issues/22828>`_, `pr#20250 <https://github.com/ceph/ceph/pull/20250>`_, Tone Zhang) -* build/ops: deb: move python-jinja2 dependency to mgr (`issue#22457 <http://tracker.ceph.com/issues/22457>`_, `pr#20748 <https://github.com/ceph/ceph/pull/20748>`_, Nathan Cutler) -* build/ops: deb: move python-jinja2 dependency to mgr (`issue#22457 <http://tracker.ceph.com/issues/22457>`_, `pr#21233 <https://github.com/ceph/ceph/pull/21233>`_, Nathan Cutler) -* build/ops: run-make-check.sh: fix SUSE support (`issue#22875 <http://tracker.ceph.com/issues/22875>`_, `issue#23178 <http://tracker.ceph.com/issues/23178>`_, `pr#20737 <https://github.com/ceph/ceph/pull/20737>`_, Nathan Cutler) -* cephfs-journal-tool: Fix Dumper destroyed before shutdown (`issue#22862 <http://tracker.ceph.com/issues/22862>`_, `issue#22734 <http://tracker.ceph.com/issues/22734>`_, `pr#20251 <https://github.com/ceph/ceph/pull/20251>`_, dongdong tao) -* ceph.in: print all matched commands if arg missing (`issue#22344 <http://tracker.ceph.com/issues/22344>`_, `issue#23186 <http://tracker.ceph.com/issues/23186>`_, `pr#20664 <https://github.com/ceph/ceph/pull/20664>`_, Luo Kexue, Kefu Chai) -* ceph-objectstore-tool command to trim the pg log (`issue#23242 <http://tracker.ceph.com/issues/23242>`_, `pr#20803 <https://github.com/ceph/ceph/pull/20803>`_, Josh Durgin, David Zafman) -* ceph osd force-create-pg cause all ceph-mon to crash and unable to come up again (`issue#22942 <http://tracker.ceph.com/issues/22942>`_, `pr#20399 <https://github.com/ceph/ceph/pull/20399>`_, Sage Weil) -* ceph-volume: adds raw device support to 'lvm list' (`issue#23140 <http://tracker.ceph.com/issues/23140>`_, `pr#20647 <https://github.com/ceph/ceph/pull/20647>`_, Andrew Schoen) -* ceph-volume: allow parallel creates (`issue#23757 <http://tracker.ceph.com/issues/23757>`_, `pr#21509 <https://github.com/ceph/ceph/pull/21509>`_, Theofilos Mouratidis) -* ceph-volume: allow skipping systemd interactions on activate/create (`issue#23678 <http://tracker.ceph.com/issues/23678>`_, `pr#21538 <https://github.com/ceph/ceph/pull/21538>`_, Alfredo Deza) -* ceph-volume: automatic VDO detection (`issue#23581 <http://tracker.ceph.com/issues/23581>`_, `pr#21505 <https://github.com/ceph/ceph/pull/21505>`_, Alfredo Deza) -* ceph-volume be resilient to $PATH issues (`pr#20716 <https://github.com/ceph/ceph/pull/20716>`_, Alfredo Deza) -* ceph-volume: fix action plugins path in tox (`pr#20923 <https://github.com/ceph/ceph/pull/20923>`_, Guillaume Abrioux) -* ceph-volume Implement an 'activate all' to help with dense servers or migrating OSDs (`pr#21533 <https://github.com/ceph/ceph/pull/21533>`_, Alfredo Deza) -* ceph-volume improve robustness when reloading vms in tests (`pr#21072 <https://github.com/ceph/ceph/pull/21072>`_, Alfredo Deza) -* ceph-volume lvm.activate error if no bluestore OSDs are found (`issue#23644 <http://tracker.ceph.com/issues/23644>`_, `pr#21335 <https://github.com/ceph/ceph/pull/21335>`_, Alfredo Deza) -* ceph-volume: Nits noticed while studying code (`pr#21565 <https://github.com/ceph/ceph/pull/21565>`_, Dan Mick) -* ceph-volume tests alleviate libvirt timeouts when reloading (`issue#23163 <http://tracker.ceph.com/issues/23163>`_, `pr#20754 <https://github.com/ceph/ceph/pull/20754>`_, Alfredo Deza) -* ceph-volume update man page for prepare/activate flags (`pr#21574 <https://github.com/ceph/ceph/pull/21574>`_, Alfredo Deza) -* ceph-volume: Using --readonly for {vg|pv|lv}s commands (`pr#21519 <https://github.com/ceph/ceph/pull/21519>`_, Erwan Velu) -* client: allow client to use caps that are revoked but not yet returned (`issue#23028 <http://tracker.ceph.com/issues/23028>`_, `issue#23314 <http://tracker.ceph.com/issues/23314>`_, `pr#20904 <https://github.com/ceph/ceph/pull/20904>`_, Jeff Layton) -* : Client:Fix readdir bug (`issue#22936 <http://tracker.ceph.com/issues/22936>`_, `pr#20356 <https://github.com/ceph/ceph/pull/20356>`_, dongdong tao) -* client: release revoking Fc after invalidate cache (`issue#22652 <http://tracker.ceph.com/issues/22652>`_, `pr#20342 <https://github.com/ceph/ceph/pull/20342>`_, "Yan, Zheng") -* Client: setattr should drop "Fs" rather than "As" for mtime and size (`issue#22935 <http://tracker.ceph.com/issues/22935>`_, `pr#20354 <https://github.com/ceph/ceph/pull/20354>`_, dongdong tao) -* client: use either dentry_invalidate_cb or remount_cb to invalidate k… (`issue#23355 <http://tracker.ceph.com/issues/23355>`_, `pr#20960 <https://github.com/ceph/ceph/pull/20960>`_, Zhi Zhang) -* cls/rbd: group_image_list incorrectly flagged as RW (`issue#23407 <http://tracker.ceph.com/issues/23407>`_, `issue#23388 <http://tracker.ceph.com/issues/23388>`_, `pr#20967 <https://github.com/ceph/ceph/pull/20967>`_, Jason Dillaman) -* cls/rgw: fix bi_log_iterate_entries return wrong truncated (`issue#22737 <http://tracker.ceph.com/issues/22737>`_, `issue#23225 <http://tracker.ceph.com/issues/23225>`_, `pr#21054 <https://github.com/ceph/ceph/pull/21054>`_, Tianshan Qu) -* cmake: rbd resource agent needs to be executable (`issue#22980 <http://tracker.ceph.com/issues/22980>`_, `pr#20617 <https://github.com/ceph/ceph/pull/20617>`_, Tim Bishop) -* common/dns_resolv.cc: Query for AAAA-record if ms_bind_ipv6 is True (`issue#23078 <http://tracker.ceph.com/issues/23078>`_, `issue#23174 <http://tracker.ceph.com/issues/23174>`_, `pr#20710 <https://github.com/ceph/ceph/pull/20710>`_, Wido den Hollander) -* common/ipaddr: Do not select link-local IPv6 addresses (`issue#21813 <http://tracker.ceph.com/issues/21813>`_, `pr#21111 <https://github.com/ceph/ceph/pull/21111>`_, Willem Jan Withagen) -* common: omit short option for id in help for clients (`issue#23156 <http://tracker.ceph.com/issues/23156>`_, `issue#23041 <http://tracker.ceph.com/issues/23041>`_, `pr#20654 <https://github.com/ceph/ceph/pull/20654>`_, Patrick Donnelly) -* common: should not check for VERSION_ID (`issue#23477 <http://tracker.ceph.com/issues/23477>`_, `issue#23478 <http://tracker.ceph.com/issues/23478>`_, `pr#21090 <https://github.com/ceph/ceph/pull/21090>`_, Kefu Chai, Shengjing Zhu) -* config: Change bluestore_cache_kv_max to type INT64 (`pr#20334 <https://github.com/ceph/ceph/pull/20334>`_, Zhi Zhang) -* Couldn't init storage provider (RADOS) (`issue#23349 <http://tracker.ceph.com/issues/23349>`_, `issue#22351 <http://tracker.ceph.com/issues/22351>`_, `pr#20896 <https://github.com/ceph/ceph/pull/20896>`_, Brad Hubbard) -* doc: Add missing pg states from doc (`issue#23113 <http://tracker.ceph.com/issues/23113>`_, `pr#20584 <https://github.com/ceph/ceph/pull/20584>`_, David Zafman) -* doc: outline upgrade procedure for mds cluster (`issue#23634 <http://tracker.ceph.com/issues/23634>`_, `issue#23568 <http://tracker.ceph.com/issues/23568>`_, `pr#21352 <https://github.com/ceph/ceph/pull/21352>`_, Patrick Donnelly) -* doc/rgw: add page for http frontend configuration (`issue#13523 <http://tracker.ceph.com/issues/13523>`_, `issue#22884 <http://tracker.ceph.com/issues/22884>`_, `pr#20242 <https://github.com/ceph/ceph/pull/20242>`_, Casey Bodley) -* doc: rgw: mention the civetweb support for binding to multiple ports (`issue#20942 <http://tracker.ceph.com/issues/20942>`_, `issue#23317 <http://tracker.ceph.com/issues/23317>`_, `pr#20906 <https://github.com/ceph/ceph/pull/20906>`_, Abhishek Lekshmanan) -* docs fix ceph-volume missing sub-commands (`pr#20691 <https://github.com/ceph/ceph/pull/20691>`_, Katie Holly, Yao Zongyou, David Galloway, Sage Weil, Alfredo Deza) -* doc: update man page to explain ceph-volume support bluestore (`issue#23142 <http://tracker.ceph.com/issues/23142>`_, `issue#22663 <http://tracker.ceph.com/issues/22663>`_, `pr#20679 <https://github.com/ceph/ceph/pull/20679>`_, lijing) -* Double free in rados_getxattrs_next (`issue#22940 <http://tracker.ceph.com/issues/22940>`_, `issue#22042 <http://tracker.ceph.com/issues/22042>`_, `pr#20358 <https://github.com/ceph/ceph/pull/20358>`_, Gu Zhongyan) -* fixes for openssl & libcurl (`issue#23239 <http://tracker.ceph.com/issues/23239>`_, `issue#23245 <http://tracker.ceph.com/issues/23245>`_, `issue#22951 <http://tracker.ceph.com/issues/22951>`_, `issue#23221 <http://tracker.ceph.com/issues/23221>`_, `issue#23203 <http://tracker.ceph.com/issues/23203>`_, `pr#20722 <https://github.com/ceph/ceph/pull/20722>`_, Marcus Watts, Abhishek Lekshmanan, Jesse Williamson) -* invalid JSON returned when querying pool parameters (`issue#23312 <http://tracker.ceph.com/issues/23312>`_, `issue#23200 <http://tracker.ceph.com/issues/23200>`_, `pr#20890 <https://github.com/ceph/ceph/pull/20890>`_, Chang Liu) -* is_qemu_running in qemu_rebuild_object_map.sh and qemu_dynamic_features.sh may return false positive (`issue#23524 <http://tracker.ceph.com/issues/23524>`_, `pr#21192 <https://github.com/ceph/ceph/pull/21192>`_, Mykola Golub) -* [journal] allocating a new tag after acquiring the lock should use on-disk committed position (`issue#23011 <http://tracker.ceph.com/issues/23011>`_, `issue#22945 <http://tracker.ceph.com/issues/22945>`_, `pr#20454 <https://github.com/ceph/ceph/pull/20454>`_, Jason Dillaman) -* journal: Message too long error when appending journal (`issue#23545 <http://tracker.ceph.com/issues/23545>`_, `issue#23526 <http://tracker.ceph.com/issues/23526>`_, `pr#21216 <https://github.com/ceph/ceph/pull/21216>`_, Mykola Golub) -* legal: remove doc license ambiguity (`issue#23410 <http://tracker.ceph.com/issues/23410>`_, `issue#23336 <http://tracker.ceph.com/issues/23336>`_, `pr#20988 <https://github.com/ceph/ceph/pull/20988>`_, Nathan Cutler) -* librados: make OPERATION_FULL_FORCE the default for rados_remove() (`issue#23114 <http://tracker.ceph.com/issues/23114>`_, `issue#22413 <http://tracker.ceph.com/issues/22413>`_, `pr#20585 <https://github.com/ceph/ceph/pull/20585>`_, Kefu Chai) -* librados/snap_set_diff: don't assert on empty snapset (`issue#23423 <http://tracker.ceph.com/issues/23423>`_, `pr#20991 <https://github.com/ceph/ceph/pull/20991>`_, Mykola Golub) -* librbd: potential crash if object map check encounters error (`issue#22857 <http://tracker.ceph.com/issues/22857>`_, `issue#22819 <http://tracker.ceph.com/issues/22819>`_, `pr#20253 <https://github.com/ceph/ceph/pull/20253>`_, Jason Dillaman) -* log: Fix AddressSanitizer: new-delete-type-mismatch (`issue#23324 <http://tracker.ceph.com/issues/23324>`_, `issue#23412 <http://tracker.ceph.com/issues/23412>`_, `pr#20998 <https://github.com/ceph/ceph/pull/20998>`_, Brad Hubbard) -* mds: add uptime to MDS status (`issue#23150 <http://tracker.ceph.com/issues/23150>`_, `pr#20626 <https://github.com/ceph/ceph/pull/20626>`_, Patrick Donnelly) -* mds: FAILED assert (p != active_requests.end()) in MDRequestRef MDCache::request_get(metareqid_t) (`issue#23154 <http://tracker.ceph.com/issues/23154>`_, `issue#23059 <http://tracker.ceph.com/issues/23059>`_, `pr#21176 <https://github.com/ceph/ceph/pull/21176>`_, "Yan, Zheng") -* mds: fix session reference leak (`issue#22821 <http://tracker.ceph.com/issues/22821>`_, `issue#22969 <http://tracker.ceph.com/issues/22969>`_, `pr#20432 <https://github.com/ceph/ceph/pull/20432>`_, "Yan, Zheng") -* mds: optimize getattr file size (`issue#23013 <http://tracker.ceph.com/issues/23013>`_, `issue#22925 <http://tracker.ceph.com/issues/22925>`_, `pr#20455 <https://github.com/ceph/ceph/pull/20455>`_, "Yan, Zheng") -* mgr: Backport recent prometheus exporter changes (`pr#20642 <https://github.com/ceph/ceph/pull/20642>`_, Jan Fajerski, Boris Ranto) -* mgr: Backport recent prometheus rgw changes (`pr#21492 <https://github.com/ceph/ceph/pull/21492>`_, Jan Fajerski, John Spray, Boris Ranto, Rubab-Syed) -* mgr/balancer: pool-specific optimization support and bug fixes (`pr#20359 <https://github.com/ceph/ceph/pull/20359>`_, xie xingguo) -* mgr: die on bind() failure (`issue#23175 <http://tracker.ceph.com/issues/23175>`_, `pr#20712 <https://github.com/ceph/ceph/pull/20712>`_, John Spray) -* mgr: fix MSG_MGR_MAP handling (`issue#23409 <http://tracker.ceph.com/issues/23409>`_, `pr#20973 <https://github.com/ceph/ceph/pull/20973>`_, Gu Zhongyan) -* mgr: prometheus: fix PG state names (`pr#21365 <https://github.com/ceph/ceph/pull/21365>`_, John Spray) -* mgr: prometheus: set metadata metrics value to '1' (#22717) (`pr#20254 <https://github.com/ceph/ceph/pull/20254>`_, Konstantin Shalygin) -* mgr: quieten logging on missing OSD stats (`issue#23224 <http://tracker.ceph.com/issues/23224>`_, `pr#21053 <https://github.com/ceph/ceph/pull/21053>`_, John Spray) -* mgr/zabbix: Backports to Luminous (`pr#20781 <https://github.com/ceph/ceph/pull/20781>`_, Wido den Hollander) -* mon: allow removal of tier of ec overwritable pool (`issue#22971 <http://tracker.ceph.com/issues/22971>`_, `issue#22754 <http://tracker.ceph.com/issues/22754>`_, `pr#20433 <https://github.com/ceph/ceph/pull/20433>`_, Patrick Donnelly) -* mon: ops get stuck in "resend forwarded message to leader" (`issue#22114 <http://tracker.ceph.com/issues/22114>`_, `issue#23077 <http://tracker.ceph.com/issues/23077>`_, `pr#21016 <https://github.com/ceph/ceph/pull/21016>`_, Kefu Chai, Greg Farnum) -* mon, osd: fix potential collided \*Up Set\* after PG remapping (`issue#23118 <http://tracker.ceph.com/issues/23118>`_, `pr#20829 <https://github.com/ceph/ceph/pull/20829>`_, xie xingguo) -* mon/OSDMonitor.cc: fix expected_num_objects interpret error (`issue#22530 <http://tracker.ceph.com/issues/22530>`_, `issue#23315 <http://tracker.ceph.com/issues/23315>`_, `pr#20907 <https://github.com/ceph/ceph/pull/20907>`_, Yang Honggang) -* mon: update PaxosService::cached_first_committed in PaxosService::may… (`issue#23626 <http://tracker.ceph.com/issues/23626>`_, `issue#11332 <http://tracker.ceph.com/issues/11332>`_, `pr#21328 <https://github.com/ceph/ceph/pull/21328>`_, Xuehan Xu, yupeng chen) -* msg/async: size of EventCenter::file_events should be greater than fd (`issue#23253 <http://tracker.ceph.com/issues/23253>`_, `issue#23306 <http://tracker.ceph.com/issues/23306>`_, `pr#20867 <https://github.com/ceph/ceph/pull/20867>`_, Yupeng Chen) -* Objecter: add ignore overlay flag if got redirect reply (`pr#20766 <https://github.com/ceph/ceph/pull/20766>`_, Ting Yi Lin) -* os/bluestore: avoid overhead of std::function in blob_t (`pr#20674 <https://github.com/ceph/ceph/pull/20674>`_, Radoslaw Zarzynski) -* os/bluestore: avoid unneeded BlobRefing in _do_read() (`pr#20675 <https://github.com/ceph/ceph/pull/20675>`_, Radoslaw Zarzynski) -* os/bluestore: backport fixes around _reap_collection (`pr#20964 <https://github.com/ceph/ceph/pull/20964>`_, Jianpeng Ma) -* os/bluestore: change the type of aio_t:res to long (`issue#23527 <http://tracker.ceph.com/issues/23527>`_, `issue#23544 <http://tracker.ceph.com/issues/23544>`_, `pr#21231 <https://github.com/ceph/ceph/pull/21231>`_, kungf) -* os/bluestore: _dump_onode() don't prolongate Onode anymore (`pr#20676 <https://github.com/ceph/ceph/pull/20676>`_, Radoslaw Zarzynski) -* os/bluestore: recalc_allocated() when decoding bluefs_fnode_t (`issue#23256 <http://tracker.ceph.com/issues/23256>`_, `issue#23212 <http://tracker.ceph.com/issues/23212>`_, `pr#20771 <https://github.com/ceph/ceph/pull/20771>`_, Jianpeng Ma, Igor Fedotov, Kefu Chai) -* os/bluestore: trim cache every 50ms (instead of 200ms) (`issue#23226 <http://tracker.ceph.com/issues/23226>`_, `pr#21059 <https://github.com/ceph/ceph/pull/21059>`_, Sage Weil) -* osd: add numpg_removing metric (`pr#20785 <https://github.com/ceph/ceph/pull/20785>`_, Sage Weil) -* osdc/Journaler: make sure flush() writes enough data (`issue#22967 <http://tracker.ceph.com/issues/22967>`_, `issue#22824 <http://tracker.ceph.com/issues/22824>`_, `pr#20431 <https://github.com/ceph/ceph/pull/20431>`_, "Yan, Zheng") -* osd: do not release_reserved_pushes when requeuing (`pr#21229 <https://github.com/ceph/ceph/pull/21229>`_, Sage Weil) -* osd: Fix assert when checking missing version (`issue#21218 <http://tracker.ceph.com/issues/21218>`_, `issue#23024 <http://tracker.ceph.com/issues/23024>`_, `pr#20495 <https://github.com/ceph/ceph/pull/20495>`_, David Zafman) -* osd: objecter sends out of sync with pg epochs for proxied ops (`issue#22123 <http://tracker.ceph.com/issues/22123>`_, `issue#23075 <http://tracker.ceph.com/issues/23075>`_, `pr#20609 <https://github.com/ceph/ceph/pull/20609>`_, Sage Weil) -* osd/OSDMap: skip out/crush-out osds (`pr#20840 <https://github.com/ceph/ceph/pull/20840>`_, xie xingguo) -* osd/osd_types: fix pg_pool_t encoding for hammer (`pr#21283 <https://github.com/ceph/ceph/pull/21283>`_, Sage Weil) -* osd: remove cost from mclock op queues; cost not handled well in dmcl… (`pr#21426 <https://github.com/ceph/ceph/pull/21426>`_, J. Eric Ivancich) -* osd: Remove partially created pg known as DNE (`issue#23160 <http://tracker.ceph.com/issues/23160>`_, `issue#21833 <http://tracker.ceph.com/issues/21833>`_, `pr#20668 <https://github.com/ceph/ceph/pull/20668>`_, David Zafman) -* osd: resend osd_pgtemp if it's not acked (`issue#23610 <http://tracker.ceph.com/issues/23610>`_, `issue#23630 <http://tracker.ceph.com/issues/23630>`_, `pr#21330 <https://github.com/ceph/ceph/pull/21330>`_, Kefu Chai) -* osd: treat successful and erroroneous writes the same for log trimming (`issue#23323 <http://tracker.ceph.com/issues/23323>`_, `issue#22050 <http://tracker.ceph.com/issues/22050>`_, `pr#20851 <https://github.com/ceph/ceph/pull/20851>`_, Josh Durgin) -* os/filestore: fix do_copy_range replay bug (`issue#23351 <http://tracker.ceph.com/issues/23351>`_, `issue#23298 <http://tracker.ceph.com/issues/23298>`_, `pr#20957 <https://github.com/ceph/ceph/pull/20957>`_, Sage Weil) -* parent blocks are still seen after a whole-object discard (`issue#23304 <http://tracker.ceph.com/issues/23304>`_, `issue#23285 <http://tracker.ceph.com/issues/23285>`_, `pr#20860 <https://github.com/ceph/ceph/pull/20860>`_, Ilya Dryomov, Jason Dillaman) -* PendingReleaseNotes: add note about upgrading MDS (`issue#23414 <http://tracker.ceph.com/issues/23414>`_, `pr#21001 <https://github.com/ceph/ceph/pull/21001>`_, Patrick Donnelly) -* : qa: adjust cephfs full test for kclient (`issue#22966 <http://tracker.ceph.com/issues/22966>`_, `issue#22886 <http://tracker.ceph.com/issues/22886>`_, `pr#20417 <https://github.com/ceph/ceph/pull/20417>`_, "Yan, Zheng") -* qa: ignore io pause warnings in mds-full test (`issue#23062 <http://tracker.ceph.com/issues/23062>`_, `issue#22990 <http://tracker.ceph.com/issues/22990>`_, `pr#20525 <https://github.com/ceph/ceph/pull/20525>`_, Patrick Donnelly) -* qa: ignore MON_DOWN while thrashing mons (`issue#23061 <http://tracker.ceph.com/issues/23061>`_, `pr#20523 <https://github.com/ceph/ceph/pull/20523>`_, Patrick Donnelly) -* qa/rgw: remove some civetweb overrides for beast testing (`issue#23002 <http://tracker.ceph.com/issues/23002>`_, `issue#23176 <http://tracker.ceph.com/issues/23176>`_, `pr#20736 <https://github.com/ceph/ceph/pull/20736>`_, Casey Bodley) -* qa: src/test/libcephfs/test.cc:376: Expected: (len) > (0), actual: -34 vs 0 (`issue#22383 <http://tracker.ceph.com/issues/22383>`_, `issue#22221 <http://tracker.ceph.com/issues/22221>`_, `pr#21173 <https://github.com/ceph/ceph/pull/21173>`_, Patrick Donnelly) -* qa: synchronize kcephfs suites with fs/multimds (`issue#22891 <http://tracker.ceph.com/issues/22891>`_, `issue#22627 <http://tracker.ceph.com/issues/22627>`_, `pr#20302 <https://github.com/ceph/ceph/pull/20302>`_, Patrick Donnelly) -* qa/tests - added tag: v12.2.2 to be used by client.1 (`pr#21452 <https://github.com/ceph/ceph/pull/21452>`_, Yuri Weinstein) -* qa/tests - Change machine type from 'vps' to 'ovh' as 'vps' does not … (`pr#21031 <https://github.com/ceph/ceph/pull/21031>`_, Yuri Weinstein) -* qa/workunits/rados/test-upgrade-to-mimic.sh: fix tee output (`pr#21506 <https://github.com/ceph/ceph/pull/21506>`_, Sage Weil) -* qa/workunits/rbd: switch devstack tempest to 17.2.0 tag (`issue#23177 <http://tracker.ceph.com/issues/23177>`_, `issue#22961 <http://tracker.ceph.com/issues/22961>`_, `pr#20715 <https://github.com/ceph/ceph/pull/20715>`_, Jason Dillaman) -* radosgw-admin data sync run crashes (`issue#23180 <http://tracker.ceph.com/issues/23180>`_, `pr#20762 <https://github.com/ceph/ceph/pull/20762>`_, lvshanchun) -* rbd-mirror: fix potential infinite loop when formatting status message (`issue#22964 <http://tracker.ceph.com/issues/22964>`_, `issue#22932 <http://tracker.ceph.com/issues/22932>`_, `pr#20416 <https://github.com/ceph/ceph/pull/20416>`_, Mykola Golub) -* rbd-nbd: fix ebusy when do map (`issue#23542 <http://tracker.ceph.com/issues/23542>`_, `issue#23528 <http://tracker.ceph.com/issues/23528>`_, `pr#21230 <https://github.com/ceph/ceph/pull/21230>`_, Li Wang) -* rgw: add radosgw-admin sync error trim to trim sync error log (`issue#23302 <http://tracker.ceph.com/issues/23302>`_, `pr#20859 <https://github.com/ceph/ceph/pull/20859>`_, fang yuxiang) -* rgw: add xml output header in RGWCopyObj_ObjStore_S3 response msg (`issue#22416 <http://tracker.ceph.com/issues/22416>`_, `issue#22635 <http://tracker.ceph.com/issues/22635>`_, `pr#19883 <https://github.com/ceph/ceph/pull/19883>`_, Enming Zhang) -* rgw: Admin API Support for bucket quota change (`issue#23357 <http://tracker.ceph.com/issues/23357>`_, `issue#21811 <http://tracker.ceph.com/issues/21811>`_, `pr#20885 <https://github.com/ceph/ceph/pull/20885>`_, Jeegn Chen) -* rgw: allow beast frontend to listen on specific IP address (`issue#22858 <http://tracker.ceph.com/issues/22858>`_, `issue#22778 <http://tracker.ceph.com/issues/22778>`_, `pr#20252 <https://github.com/ceph/ceph/pull/20252>`_, Yuan Zhou) -* rgw: can't download object with range when compression enabled (`issue#23146 <http://tracker.ceph.com/issues/23146>`_, `issue#23179 <http://tracker.ceph.com/issues/23179>`_, `issue#22852 <http://tracker.ceph.com/issues/22852>`_, `pr#20741 <https://github.com/ceph/ceph/pull/20741>`_, fang yuxiang) -* rgw: data sync of versioned objects, note updating bi marker (`issue#23025 <http://tracker.ceph.com/issues/23025>`_, `pr#21214 <https://github.com/ceph/ceph/pull/21214>`_, Yehuda Sadeh) -* RGW doesn't check time skew in auth v4 http header request (`issue#23252 <http://tracker.ceph.com/issues/23252>`_, `issue#22766 <http://tracker.ceph.com/issues/22766>`_, `issue#22439 <http://tracker.ceph.com/issues/22439>`_, `issue#22418 <http://tracker.ceph.com/issues/22418>`_, `pr#20072 <https://github.com/ceph/ceph/pull/20072>`_, Bingyin Zhang, Casey Bodley) -* rgw_file: avoid evaluating nullptr for readdir offset (`issue#22889 <http://tracker.ceph.com/issues/22889>`_, `pr#20345 <https://github.com/ceph/ceph/pull/20345>`_, Matt Benjamin) -* rgw: fix crash with rgw_run_sync_thread false (`issue#23318 <http://tracker.ceph.com/issues/23318>`_, `issue#20448 <http://tracker.ceph.com/issues/20448>`_, `pr#20932 <https://github.com/ceph/ceph/pull/20932>`_, Orit Wasserman) -* rgw: fix memory fragmentation problem reading data from client (`issue#23347 <http://tracker.ceph.com/issues/23347>`_, `pr#20953 <https://github.com/ceph/ceph/pull/20953>`_, Marcus Watts) -* rgw: fix mutlisite read-write issues (`issue#23690 <http://tracker.ceph.com/issues/23690>`_, `issue#22804 <http://tracker.ceph.com/issues/22804>`_, `pr#21390 <https://github.com/ceph/ceph/pull/21390>`_, Niu Pengju) -* rgw: fix the max-uploads parameter not work (`issue#23020 <http://tracker.ceph.com/issues/23020>`_, `issue#22825 <http://tracker.ceph.com/issues/22825>`_, `pr#20476 <https://github.com/ceph/ceph/pull/20476>`_, Xin Liao) -* rgw_log, rgw_file: account for new required envvars (`issue#23192 <http://tracker.ceph.com/issues/23192>`_, `issue#21942 <http://tracker.ceph.com/issues/21942>`_, `pr#20672 <https://github.com/ceph/ceph/pull/20672>`_, Matt Benjamin) -* rgw: log the right http status code in civetweb frontend's access log (`issue#22812 <http://tracker.ceph.com/issues/22812>`_, `issue#22538 <http://tracker.ceph.com/issues/22538>`_, `pr#20157 <https://github.com/ceph/ceph/pull/20157>`_, Yao Zongyou) -* rgw: parse old rgw_obj with namespace correctly (`issue#23102 <http://tracker.ceph.com/issues/23102>`_, `issue#22982 <http://tracker.ceph.com/issues/22982>`_, `pr#20586 <https://github.com/ceph/ceph/pull/20586>`_, Yehuda Sadeh) -* rgw recalculate stats option added (`issue#23691 <http://tracker.ceph.com/issues/23691>`_, `issue#23720 <http://tracker.ceph.com/issues/23720>`_, `issue#23335 <http://tracker.ceph.com/issues/23335>`_, `issue#23322 <http://tracker.ceph.com/issues/23322>`_, `pr#21393 <https://github.com/ceph/ceph/pull/21393>`_, Abhishek Lekshmanan) -* rgw: reject encrypted object COPY before supported (`issue#23232 <http://tracker.ceph.com/issues/23232>`_, `issue#23346 <http://tracker.ceph.com/issues/23346>`_, `pr#20937 <https://github.com/ceph/ceph/pull/20937>`_, Jeegn Chen) -* rgw: rgw: reshard cancel command should clear bucket resharding flag (`issue#21619 <http://tracker.ceph.com/issues/21619>`_, `pr#21389 <https://github.com/ceph/ceph/pull/21389>`_, Orit Wasserman) -* rgw: s3website error handler uses original object name (`issue#23201 <http://tracker.ceph.com/issues/23201>`_, `issue#23310 <http://tracker.ceph.com/issues/23310>`_, `pr#20889 <https://github.com/ceph/ceph/pull/20889>`_, Casey Bodley) -* rgw: upldate the max-buckets when the quota is uploaded (`issue#23022 <http://tracker.ceph.com/issues/23022>`_, `pr#20477 <https://github.com/ceph/ceph/pull/20477>`_, zhaokun) -* rgw: usage log fixes (`issue#23686 <http://tracker.ceph.com/issues/23686>`_, `issue#23758 <http://tracker.ceph.com/issues/23758>`_, `pr#21388 <https://github.com/ceph/ceph/pull/21388>`_, Yehuda Sadeh, Greg Farnum, Robin H. Johnson) -* rocksdb: incorporate the fix in RocksDB for no fast CRC32 path (`issue#22534 <http://tracker.ceph.com/issues/22534>`_, `pr#20825 <https://github.com/ceph/ceph/pull/20825>`_, Radoslaw Zarzynski) -* scrub errors not cleared on replicas can cause inconsistent pg state when replica takes over primary (`issue#23267 <http://tracker.ceph.com/issues/23267>`_, `pr#21103 <https://github.com/ceph/ceph/pull/21103>`_, David Zafman) -* snapmapper inconsistency, crash on luminous (`issue#23500 <http://tracker.ceph.com/issues/23500>`_, `pr#21118 <https://github.com/ceph/ceph/pull/21118>`_, Sage Weil) -* Special scrub handling of hinfo_key errors (`issue#23654 <http://tracker.ceph.com/issues/23654>`_, `issue#23428 <http://tracker.ceph.com/issues/23428>`_, `issue#23364 <http://tracker.ceph.com/issues/23364>`_, `pr#21397 <https://github.com/ceph/ceph/pull/21397>`_, David Zafman) -* src: s/--use-wheel// (`pr#21177 <https://github.com/ceph/ceph/pull/21177>`_, Kefu Chai) -* systemd: Wait 10 seconds before restarting ceph-mgr (`issue#23083 <http://tracker.ceph.com/issues/23083>`_, `issue#23101 <http://tracker.ceph.com/issues/23101>`_, `pr#20604 <https://github.com/ceph/ceph/pull/20604>`_, Wido den Hollander) -* test_admin_socket.sh may fail on wait_for_clean (`issue#23507 <http://tracker.ceph.com/issues/23507>`_, `pr#21124 <https://github.com/ceph/ceph/pull/21124>`_, Mykola Golub) -* test/ceph-disk: specify the python used for creating venv (`issue#23281 <http://tracker.ceph.com/issues/23281>`_, `pr#20817 <https://github.com/ceph/ceph/pull/20817>`_, Kefu Chai) -* TestLibRBD.RenameViaLockOwner may still fail with -ENOENT (`issue#23152 <http://tracker.ceph.com/issues/23152>`_, `issue#23068 <http://tracker.ceph.com/issues/23068>`_, `pr#20628 <https://github.com/ceph/ceph/pull/20628>`_, Mykola Golub) -* test/librbd: utilize unique pool for cache tier testing (`issue#23064 <http://tracker.ceph.com/issues/23064>`_, `issue#11502 <http://tracker.ceph.com/issues/11502>`_, `pr#20550 <https://github.com/ceph/ceph/pull/20550>`_, Jason Dillaman) -* test/pybind/test_rbd: allow v1 images for testing (`pr#21471 <https://github.com/ceph/ceph/pull/21471>`_, Sage Weil) -* test: Replace bc command with printf command (`pr#21015 <https://github.com/ceph/ceph/pull/21015>`_, David Zafman) -* tests: drop upgrade/jewel-x/point-to-point-x in luminous and master (`issue#23159 <http://tracker.ceph.com/issues/23159>`_, `issue#22888 <http://tracker.ceph.com/issues/22888>`_, `pr#20641 <https://github.com/ceph/ceph/pull/20641>`_, Nathan Cutler) -* tests: ENGINE Error in 'start' listener <bound in rados (`issue#23606 <http://tracker.ceph.com/issues/23606>`_, `pr#21307 <https://github.com/ceph/ceph/pull/21307>`_, John Spray) -* tests: rgw: swift tests target ceph-luminous branch (`pr#21048 <https://github.com/ceph/ceph/pull/21048>`_, Nathan Cutler) -* tests: unittest_pglog timeout (`issue#23522 <http://tracker.ceph.com/issues/23522>`_, `issue#23504 <http://tracker.ceph.com/issues/23504>`_, `pr#21134 <https://github.com/ceph/ceph/pull/21134>`_, Nathan Cutler) -* Update mgr/restful documentation (`issue#23230 <http://tracker.ceph.com/issues/23230>`_, `pr#20725 <https://github.com/ceph/ceph/pull/20725>`_, Boris Ranto) - -v12.2.4 Luminous -================ - -This is the fourth bugfix release of Luminous v12.2.x long term stable release -series. This was primarily intended to fix a few build, ceph-volume/ceph-disk -and RGW issues. We recommend all the users of 12.2.x series to update. - -Notable Changes ---------------- - -* ceph-volume: adds support to zap encrypted devices (`issue#22878 <http://tracker.ceph.com/issues/22878>`_, `pr#20545 <https://github.com/ceph/ceph/pull/20545>`_, Andrew Schoen) -* ceph-volume: log the current running command for easier debugging (`issue#23004 <http://tracker.ceph.com/issues/23004>`_, `pr#20597 <https://github.com/ceph/ceph/pull/20597>`_, Andrew Schoen) -* ceph-volume: warn on mix of filestore and bluestore flags (`issue#23003 <http://tracker.ceph.com/issues/23003>`_, `pr#20568 <https://github.com/ceph/ceph/pull/20568>`_, Alfredo Deza) -* cmake: check bootstrap.sh instead before downloading boost (`issue#23071 <http://tracker.ceph.com/issues/23071>`_, `pr#20515 <https://github.com/ceph/ceph/pull/20515>`_, Kefu Chai) -* core: Backport of cache manipulation: issues #22603 and #22604 (`issue#22604 <http://tracker.ceph.com/issues/22604>`_, `issue#22603 <http://tracker.ceph.com/issues/22603>`_, `pr#20353 <https://github.com/ceph/ceph/pull/20353>`_, Adam C. Emerson) -* core: last-stat-seq returns 0 because osd stats are cleared (`issue#23093 <http://tracker.ceph.com/issues/23093>`_, `pr#20548 <https://github.com/ceph/ceph/pull/20548>`_, Sage Weil, David Zafman) -* core: Snapset inconsistency is detected with its own error (`issue#22996 <http://tracker.ceph.com/issues/22996>`_, `pr#20501 <https://github.com/ceph/ceph/pull/20501>`_, David Zafman) -* rgw: make init env methods return an error (`issue#23039 <http://tracker.ceph.com/issues/23039>`_, `pr#20564 <https://github.com/ceph/ceph/pull/20564>`_, Abhishek Lekshmanan) -* rgw: parse old rgw_obj with namespace correctly (`issue#22982 <http://tracker.ceph.com/issues/22982>`_, `pr#20566 <https://github.com/ceph/ceph/pull/20566>`_, Yehuda Sadeh) -* rgw: return valid Location element, CompleteMultipartUpload (`issue#22655 <http://tracker.ceph.com/issues/22655>`_, `pr#20266 <https://github.com/ceph/ceph/pull/20266>`_, Matt Benjamin) -* rgw: URL-decode S3 and Swift object-copy URLs (`issue#22121 <http://tracker.ceph.com/issues/22121>`_, `issue#22729 <http://tracker.ceph.com/issues/22729>`_, `pr#20236 <https://github.com/ceph/ceph/pull/20236>`_, Malcolm Lee, Matt Benjamin) -* rgw: use explicit index pool placement (`issue#22928 <http://tracker.ceph.com/issues/22928>`_, `pr#20565 <https://github.com/ceph/ceph/pull/20565>`_, Yehuda Sadeh) -* tools: ceph-disk: v12.2.2 unable to create bluestore osd using ceph-disk (`issue#22354 <http://tracker.ceph.com/issues/22354>`_, `pr#20563 <https://github.com/ceph/ceph/pull/20563>`_, Kefu Chai) -* tools: ceph-objectstore-tool: "$OBJ get-omaphdr" and "$OBJ list-omap" scan all pgs instead of using specific pg (`issue#21327 <http://tracker.ceph.com/issues/21327>`_, `pr#20283 <https://github.com/ceph/ceph/pull/20283>`_, David Zafman) - - -v12.2.3 Luminous -================ - -This is the third bugfix release of Luminous v12.2.x long term stable release -series. It contains a range of bug fixes and a few features across Bluestore, -CephFS, RBD & RGW. We recommend all the users of 12.2.x series update. - -Notable Changes ---------------- - -- *CephFS*: - - * The CephFS client now checks for older kernels' inability to reliably clear - dentries from the kernel dentry cache. The new option - client_die_on_failed_dentry_invalidate (default: true) may be turned off to - allow the client to proceed (dangerous!). - - -Other Notable Changes ---------------------- -* bluestore: do not crash on over-large objects (`issue#22161 <http://tracker.ceph.com/issues/22161>`_, `pr#19630 <https://github.com/ceph/ceph/pull/19630>`_, Sage Weil) -* bluestore: OSD crash on boot with assert caused by Bluefs on flush write (`issue#21932 <http://tracker.ceph.com/issues/21932>`_, `pr#19047 <https://github.com/ceph/ceph/pull/19047>`_, Jianpeng Ma) -* build/ops: ceph-base symbols not stripped in debs (`issue#22640 <http://tracker.ceph.com/issues/22640>`_, `pr#19969 <https://github.com/ceph/ceph/pull/19969>`_, Sage Weil) -* build/ops: ceph-conf: dump parsed config in plain text or as json (`issue#21862 <http://tracker.ceph.com/issues/21862>`_, `pr#18842 <https://github.com/ceph/ceph/pull/18842>`_, Piotr Dałek) -* build/ops: ceph-mgr dashboard has dependency on python-jinja2 (`issue#22457 <http://tracker.ceph.com/issues/22457>`_, `pr#19865 <https://github.com/ceph/ceph/pull/19865>`_, John Spray) -* build/ops: ceph-volume fails when centos7 image doesn't have lvm2 installed (`issue#22443 <http://tracker.ceph.com/issues/22443>`_, `issue#22217 <http://tracker.ceph.com/issues/22217>`_, `pr#20215 <https://github.com/ceph/ceph/pull/20215>`_, Nathan Cutler, Theofilos Mouratidis) -* build/ops: Default kernel.pid_max is easily exceeded during recovery on high OSD-count system (`issue#21929 <http://tracker.ceph.com/issues/21929>`_, `pr#19133 <https://github.com/ceph/ceph/pull/19133>`_, David Disseldorp, Kefu Chai) -* build/ops: install-deps.sh: revert gcc to the one shipped by distro (`issue#22220 <http://tracker.ceph.com/issues/22220>`_, `pr#19680 <https://github.com/ceph/ceph/pull/19680>`_, Kefu Chai) -* build/ops: luminous build fails with --without-radosgw (`issue#22321 <http://tracker.ceph.com/issues/22321>`_, `pr#19483 <https://github.com/ceph/ceph/pull/19483>`_, Jason Dillaman) -* build/ops: move ceph-\*-tool binaries out of ceph-test subpackage (`issue#22319 <http://tracker.ceph.com/issues/22319>`_, `issue#21762 <http://tracker.ceph.com/issues/21762>`_, `pr#19355 <https://github.com/ceph/ceph/pull/19355>`_, liuchang0812, Nathan Cutler, Kefu Chai, Sage Weil) -* build.ops: rpm: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22558 <http://tracker.ceph.com/issues/22558>`_, `pr#19839 <https://github.com/ceph/ceph/pull/19839>`_, Kefu Chai) -* ceph: cluster [ERR] Unhandled exception from module 'balancer' while running on mgr.x: 'NoneType' object has no attribute 'iteritems'" in cluster log (`issue#22090 <http://tracker.ceph.com/issues/22090>`_, `pr#19023 <https://github.com/ceph/ceph/pull/19023>`_, Sage Weil) -* cephfs: cephfs-journal-tool: add "set pool_id" option (`issue#22631 <http://tracker.ceph.com/issues/22631>`_, `pr#20085 <https://github.com/ceph/ceph/pull/20085>`_, dongdong tao) -* cephfs: cephfs-journal-tool: tool would miss to report some invalid range (`issue#22459 <http://tracker.ceph.com/issues/22459>`_, `pr#19626 <https://github.com/ceph/ceph/pull/19626>`_, dongdong tao) -* cephfs: cephfs: potential adjust failure in lru_expire (`issue#22458 <http://tracker.ceph.com/issues/22458>`_, `pr#19627 <https://github.com/ceph/ceph/pull/19627>`_, dongdong tao) -* cephfs: "ceph tell mds" commands result in "File exists" errors on client admin socket (`issue#21406 <http://tracker.ceph.com/issues/21406>`_, `issue#21967 <http://tracker.ceph.com/issues/21967>`_, `pr#18831 <https://github.com/ceph/ceph/pull/18831>`_, Patrick Donnelly) -* cephfs: client: anchor Inode while trimming caps (`issue#22157 <http://tracker.ceph.com/issues/22157>`_, `pr#19105 <https://github.com/ceph/ceph/pull/19105>`_, Patrick Donnelly) -* cephfs: client: avoid recursive lock in ll_get_vino (`issue#22629 <http://tracker.ceph.com/issues/22629>`_, `pr#20086 <https://github.com/ceph/ceph/pull/20086>`_, dongdong tao) -* cephfs: client: dual client segfault with racing ceph_shutdown (`issue#21512 <http://tracker.ceph.com/issues/21512>`_, `issue#20988 <http://tracker.ceph.com/issues/20988>`_, `pr#20082 <https://github.com/ceph/ceph/pull/20082>`_, Jeff Layton) -* cephfs: client: implement delegation support in userland cephfs (`issue#18490 <http://tracker.ceph.com/issues/18490>`_, `pr#19480 <https://github.com/ceph/ceph/pull/19480>`_, Jeff Layton) -* cephfs: client: quit on failed remount during dentry invalidate test #19218 (`issue#22269 <http://tracker.ceph.com/issues/22269>`_, `pr#19370 <https://github.com/ceph/ceph/pull/19370>`_, Patrick Donnelly) -* cephfs: List of filesystems does not get refreshed after a filesystem deletion (`issue#21599 <http://tracker.ceph.com/issues/21599>`_, `pr#18730 <https://github.com/ceph/ceph/pull/18730>`_, John Spray) -* cephfs: MDS : Avoid the assert failure when the inode for the cap_export from other… (`issue#22610 <http://tracker.ceph.com/issues/22610>`_, `pr#20300 <https://github.com/ceph/ceph/pull/20300>`_, Jianyu Li) -* cephfs: MDSMonitor: monitor gives constant "is now active in filesystem cephfs as rank" cluster log info messages (`issue#21959 <http://tracker.ceph.com/issues/21959>`_, `pr#19055 <https://github.com/ceph/ceph/pull/19055>`_, Patrick Donnelly) -* cephfs: racy is_mounted() checks in libcephfs (`issue#21025 <http://tracker.ceph.com/issues/21025>`_, `pr#17875 <https://github.com/ceph/ceph/pull/17875>`_, Jeff Layton) -* cephfs: src/mds/MDCache.cc: 7421: FAILED assert(CInode::count() == inode_map.size() + snap_inode_map.size()) (`issue#21928 <http://tracker.ceph.com/issues/21928>`_, `pr#18912 <https://github.com/ceph/ceph/pull/18912>`_, "Yan, Zheng") -* cephfs: vstart_runner: fixes for recent cephfs changes (`issue#22526 <http://tracker.ceph.com/issues/22526>`_, `pr#19829 <https://github.com/ceph/ceph/pull/19829>`_, Patrick Donnelly) -* ceph-volume: adds a --destroy flag to ceph-volume lvm zap (`issue#22653 <http://tracker.ceph.com/issues/22653>`_, `pr#20240 <https://github.com/ceph/ceph/pull/20240>`_, Andrew Schoen) -* ceph-volume: adds success messages for lvm prepare/activate/create (`issue#22307 <http://tracker.ceph.com/issues/22307>`_, `pr#20238 <https://github.com/ceph/ceph/pull/20238>`_, Andrew Schoen) -* ceph-volume: dmcrypt support for lvm (`issue#22619 <http://tracker.ceph.com/issues/22619>`_, `pr#20241 <https://github.com/ceph/ceph/pull/20241>`_, Alfredo Deza) -* ceph-volume dmcrypt support for simple (`issue#22620 <http://tracker.ceph.com/issues/22620>`_, `pr#20350 <https://github.com/ceph/ceph/pull/20350>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: do not use --key during mkfs (`issue#22283 <http://tracker.ceph.com/issues/22283>`_, `pr#20244 <https://github.com/ceph/ceph/pull/20244>`_, Kefu Chai, Sage Weil) -* ceph-volume: fix usage of the --osd-id flag (`issue#22642 <http://tracker.ceph.com/issues/22642>`_, `issue#22836 <http://tracker.ceph.com/issues/22836>`_, `pr#20323 <https://github.com/ceph/ceph/pull/20323>`_, Andrew Schoen) -* ceph-volume Format correctly when vg/lv cannot be used (`issue#22299 <http://tracker.ceph.com/issues/22299>`_, `pr#19527 <https://github.com/ceph/ceph/pull/19527>`_, Alfredo Deza) -* ceph-volume handle inline comments in the ceph.conf file (`issue#22297 <http://tracker.ceph.com/issues/22297>`_, `pr#19532 <https://github.com/ceph/ceph/pull/19532>`_, Alfredo Deza) -* ceph-volume: handle leading whitespace/tabs in ceph.conf (`issue#22280 <http://tracker.ceph.com/issues/22280>`_, `pr#19526 <https://github.com/ceph/ceph/pull/19526>`_, Alfredo Deza) -* ceph-volume: lvm zap will unmount osd paths used by zapped devices (`issue#22876 <http://tracker.ceph.com/issues/22876>`_, `pr#20438 <https://github.com/ceph/ceph/pull/20438>`_, Andrew Schoen) -* ceph-volume: removed the explicit use of sudo (`issue#22282 <http://tracker.ceph.com/issues/22282>`_, `pr#19525 <https://github.com/ceph/ceph/pull/19525>`_, Andrew Schoen) -* ceph-volume rollback on failed OSD prepare/create (`issue#22281 <http://tracker.ceph.com/issues/22281>`_, `pr#20237 <https://github.com/ceph/ceph/pull/20237>`_, Alfredo Deza) -* ceph-volume should be able to handle multiple LVM (VG/LV) tags (`issue#22305 <http://tracker.ceph.com/issues/22305>`_, `pr#19528 <https://github.com/ceph/ceph/pull/19528>`_, Alfredo Deza) -* ceph-volume use realpath when checking mounts (`issue#22988 <http://tracker.ceph.com/issues/22988>`_, `pr#20429 <https://github.com/ceph/ceph/pull/20429>`_, Alfredo Deza) -* ceph-volume: warn on missing ceph.conf file (`issue#22326 <http://tracker.ceph.com/issues/22326>`_, `pr#19530 <https://github.com/ceph/ceph/pull/19530>`_, Alfredo Deza) -* common: compute SimpleLRU's size with contents.size() instead of lru.… (`issue#22613 <http://tracker.ceph.com/issues/22613>`_, `pr#19977 <https://github.com/ceph/ceph/pull/19977>`_, Xuehan Xu) -* config: lower default omap entries recovered at once (`issue#21897 <http://tracker.ceph.com/issues/21897>`_, `pr#19928 <https://github.com/ceph/ceph/pull/19928>`_, Josh Durgin) -* core: backoff causes out of order op (`issue#21407 <http://tracker.ceph.com/issues/21407>`_, `pr#18747 <https://github.com/ceph/ceph/pull/18747>`_, Sage Weil) -* core: common/throttle: start using 64-bit values (`issue#22539 <http://tracker.ceph.com/issues/22539>`_, `pr#19995 <https://github.com/ceph/ceph/pull/19995>`_, Igor Fedotov) -* core: fix broken use of streamstream::rdbuf() (`issue#22715 <http://tracker.ceph.com/issues/22715>`_, `pr#20042 <https://github.com/ceph/ceph/pull/20042>`_, Sage Weil) -* core: possible deadlock in various maintenance operations (`issue#22120 <http://tracker.ceph.com/issues/22120>`_, `pr#19123 <https://github.com/ceph/ceph/pull/19123>`_, Jason Dillaman) -* core: _read_bdev_label unable to decode label at offset (`issue#22285 <http://tracker.ceph.com/issues/22285>`_, `pr#20326 <https://github.com/ceph/ceph/pull/20326>`_, Sage Weil) -* core: rocksdb: fixes early metadata spill over to slow device in (`issue#22264 <http://tracker.ceph.com/issues/22264>`_, `pr#19257 <https://github.com/ceph/ceph/pull/19257>`_, Igor Fedotov) -* core: Various odd clog messages for mons (`issue#22082 <http://tracker.ceph.com/issues/22082>`_, `pr#19031 <https://github.com/ceph/ceph/pull/19031>`_, John Spray) -* crush: balancer crush-compat sends "foo" command (`issue#22361 <http://tracker.ceph.com/issues/22361>`_, `pr#19555 <https://github.com/ceph/ceph/pull/19555>`_, John Spray) -* doc: crush_ruleset is invalid command in luminous (`issue#20559 <http://tracker.ceph.com/issues/20559>`_, `pr#19446 <https://github.com/ceph/ceph/pull/19446>`_, Nathan Cutler) -* doc: doc/rbd: tweaks for the LIO iSCSI gateway (`issue#21763 <http://tracker.ceph.com/issues/21763>`_, `pr#20213 <https://github.com/ceph/ceph/pull/20213>`_, Ashish Singh, Mike Christie, Jason Dillaman) -* doc: man page for mount.fuse.ceph (`issue#21539 <http://tracker.ceph.com/issues/21539>`_, `issue#22595 <http://tracker.ceph.com/issues/22595>`_, `pr#19449 <https://github.com/ceph/ceph/pull/19449>`_, Jos Collin) -* doc: misc fixes for CephFS best practices (`issue#22630 <http://tracker.ceph.com/issues/22630>`_, `pr#19858 <https://github.com/ceph/ceph/pull/19858>`_, Jos Collin) -* doc: remove region from "INSTALL CEPH OBJECT GATEWAY" (`issue#21610 <http://tracker.ceph.com/issues/21610>`_, `pr#18865 <https://github.com/ceph/ceph/pull/18865>`_, Orit Wasserman) -* doc: update Blacklisting and OSD epoch barrier (`issue#22542 <http://tracker.ceph.com/issues/22542>`_, `pr#19741 <https://github.com/ceph/ceph/pull/19741>`_, Jos Collin) -* librbd: cannot clone all image-metas if we have more than 64 key/value pairs (`issue#21814 <http://tracker.ceph.com/issues/21814>`_, `pr#19503 <https://github.com/ceph/ceph/pull/19503>`_, PCzhangPC) -* librbd: cannot copy all image-metas if we have more than 64 key/value pairs (`issue#21815 <http://tracker.ceph.com/issues/21815>`_, `pr#19504 <https://github.com/ceph/ceph/pull/19504>`_, PCzhangPC) -* librbd: compare and write against a clone can result in failure (`issue#20789 <http://tracker.ceph.com/issues/20789>`_, `pr#20211 <https://github.com/ceph/ceph/pull/20211>`_, Mykola Golub, Jason Dillaman) -* librbd: default to sparse-reads for any IO operation over 64K (`issue#21849 <http://tracker.ceph.com/issues/21849>`_, `pr#20208 <https://github.com/ceph/ceph/pull/20208>`_, Jason Dillaman) -* librbd: fix snap create/rm may taking long time (`issue#22716 <http://tracker.ceph.com/issues/22716>`_, `pr#20153 <https://github.com/ceph/ceph/pull/20153>`_, Song Shun) -* librbd: force removal of a snapshot cannot ignore dependent children (`issue#22791 <http://tracker.ceph.com/issues/22791>`_, `pr#20135 <https://github.com/ceph/ceph/pull/20135>`_, Jason Dillaman) -* librbd: Image-meta should be dynamically refreshed (`issue#21529 <http://tracker.ceph.com/issues/21529>`_, `pr#19447 <https://github.com/ceph/ceph/pull/19447>`_, Dongsheng Yang, Jason Dillaman) -* librbd: journal should ignore -EILSEQ errors from compare-and-write (`issue#21628 <http://tracker.ceph.com/issues/21628>`_, `pr#20206 <https://github.com/ceph/ceph/pull/20206>`_, Jason Dillaman) -* librbd: refresh image after applying new/removing old metadata (`issue#21711 <http://tracker.ceph.com/issues/21711>`_, `pr#19485 <https://github.com/ceph/ceph/pull/19485>`_, Jason Dillaman) -* librbd: set deleted parent pointer to null (`issue#22158 <http://tracker.ceph.com/issues/22158>`_, `pr#20210 <https://github.com/ceph/ceph/pull/20210>`_, Jason Dillaman) -* luminous: ceph-fuse: ::rmdir() uses a deleted memory structure of dentry leads … (`issue#22536 <http://tracker.ceph.com/issues/22536>`_, `pr#19968 <https://github.com/ceph/ceph/pull/19968>`_, YunfeiGuan) -* mds: check for CEPH_OSDMAP_FULL is now wrong; cluster full flag is obsolete (`issue#22483 <http://tracker.ceph.com/issues/22483>`_, `pr#19830 <https://github.com/ceph/ceph/pull/19830>`_, Patrick Donnelly) -* mds: don't check gid when none specified in auth caps (`issue#22009 <http://tracker.ceph.com/issues/22009>`_, `pr#18835 <https://github.com/ceph/ceph/pull/18835>`_, Douglas Fuller) -* mds: don't delay processing completed requests in replay queue (`issue#22163 <http://tracker.ceph.com/issues/22163>`_, `pr#19157 <https://github.com/ceph/ceph/pull/19157>`_, "Yan, Zheng") -* mds: don't report repaired backtraces in damagetable, write back after repair, clean up scrub log (`issue#18743 <http://tracker.ceph.com/issues/18743>`_, `issue#22058 <http://tracker.ceph.com/issues/22058>`_, `pr#20341 <https://github.com/ceph/ceph/pull/20341>`_, "Yan, Zheng", John Spray) -* mds: fix CDir::log_mark_dirty() (`issue#21584 <http://tracker.ceph.com/issues/21584>`_, `pr#18008 <https://github.com/ceph/ceph/pull/18008>`_, "Yan, Zheng") -* mds: fix dump last_sent (`issue#22562 <http://tracker.ceph.com/issues/22562>`_, `pr#19959 <https://github.com/ceph/ceph/pull/19959>`_, dongdong tao) -* mds: fix MDS_FEATURE_INCOMPAT_FILE_LAYOUT_V2 definition (`issue#21985 <http://tracker.ceph.com/issues/21985>`_, `pr#18782 <https://github.com/ceph/ceph/pull/18782>`_, "Yan, Zheng") -* mds: fix return value of MDCache::dump_cache (`issue#22798 <http://tracker.ceph.com/issues/22798>`_, `pr#20121 <https://github.com/ceph/ceph/pull/20121>`_, "Yan, Zheng") -* mds: fix scrub crash (`issue#22730 <http://tracker.ceph.com/issues/22730>`_, `pr#20249 <https://github.com/ceph/ceph/pull/20249>`_, dongdong tao) -* mds: fix StrayManager::truncate() (`issue#21091 <http://tracker.ceph.com/issues/21091>`_, `pr#18019 <https://github.com/ceph/ceph/pull/18019>`_, "Yan, Zheng") -* mds: handle client reconnect gather race (`issue#22263 <http://tracker.ceph.com/issues/22263>`_, `pr#19326 <https://github.com/ceph/ceph/pull/19326>`_, "Yan, Zheng") -* mds: handle client session messages when mds is stopping (`issue#22460 <http://tracker.ceph.com/issues/22460>`_, `pr#19585 <https://github.com/ceph/ceph/pull/19585>`_, "Yan, Zheng") -* mds: handle 'inode gets queued for recovery multiple times' (`issue#22647 <http://tracker.ceph.com/issues/22647>`_, `pr#19982 <https://github.com/ceph/ceph/pull/19982>`_, "Yan, Zheng") -* mds: ignore export pin for unlinked directory (`issue#22219 <http://tracker.ceph.com/issues/22219>`_, `pr#19360 <https://github.com/ceph/ceph/pull/19360>`_, "Yan, Zheng") -* mds: limit size of subtree migration (`issue#21892 <http://tracker.ceph.com/issues/21892>`_, `pr#20339 <https://github.com/ceph/ceph/pull/20339>`_, "Yan, Zheng") -* mds: no assertion on inode being purging in find_ino_peers() (`issue#21722 <http://tracker.ceph.com/issues/21722>`_, `pr#18869 <https://github.com/ceph/ceph/pull/18869>`_, Zhi Zhang) -* mds: preserve order of requests during recovery of multimds cluster (`issue#21843 <http://tracker.ceph.com/issues/21843>`_, `pr#18871 <https://github.com/ceph/ceph/pull/18871>`_, "Yan, Zheng") -* mds: prevent filelock from being stuck at XSYN state (`issue#22008 <http://tracker.ceph.com/issues/22008>`_, `pr#20340 <https://github.com/ceph/ceph/pull/20340>`_, "Yan, Zheng") -* mds: properly eval locks after importing inode (`issue#22357 <http://tracker.ceph.com/issues/22357>`_, `pr#19646 <https://github.com/ceph/ceph/pull/19646>`_, "Yan, Zheng") -* mds: reduce debugging level for balancer messages (`issue#21853 <http://tracker.ceph.com/issues/21853>`_, `pr#19827 <https://github.com/ceph/ceph/pull/19827>`_, Patrick Donnelly) -* mds: respect mds_client_writeable_range_max_inc_objs config (`issue#22492 <http://tracker.ceph.com/issues/22492>`_, `pr#19776 <https://github.com/ceph/ceph/pull/19776>`_, "Yan, Zheng") -* mds: set higher priority for some perf counters (`issue#22776 <http://tracker.ceph.com/issues/22776>`_, `pr#20299 <https://github.com/ceph/ceph/pull/20299>`_, Shangzhong Zhu) -* mds: set PRIO_USEFUL on num_sessions counter (`issue#21927 <http://tracker.ceph.com/issues/21927>`_, `pr#18722 <https://github.com/ceph/ceph/pull/18722>`_, John Spray) -* mds: tell session ls returns vanila EINVAL when MDS is not active (`issue#21991 <http://tracker.ceph.com/issues/21991>`_, `pr#19505 <https://github.com/ceph/ceph/pull/19505>`_, Jos Collin) -* mds: track dirty dentries in separate list (`issue#19578 <http://tracker.ceph.com/issues/19578>`_, `pr#19775 <https://github.com/ceph/ceph/pull/19775>`_, "Yan, Zheng") -* mds: trim 'N' log segments according to how many log segments are there (`issue#21975 <http://tracker.ceph.com/issues/21975>`_, `pr#18783 <https://github.com/ceph/ceph/pull/18783>`_, "Yan, Zheng") -* mgr: ceph-mgr spuriously reloading OSD metadata on map changes (`issue#21159 <http://tracker.ceph.com/issues/21159>`_, `pr#18732 <https://github.com/ceph/ceph/pull/18732>`_, Yanhu Cao) -* mgr: disconnect unregistered service daemon when report received (`issue#22286 <http://tracker.ceph.com/issues/22286>`_, `pr#20089 <https://github.com/ceph/ceph/pull/20089>`_, Jason Dillaman) -* mgr: KeyError: ('name',) in balancer rm (`issue#22470 <http://tracker.ceph.com/issues/22470>`_, `pr#19624 <https://github.com/ceph/ceph/pull/19624>`_, Dan van der Ster) -* mgr: Manager daemon x is unresponsive. No standby daemons available (`issue#21147 <http://tracker.ceph.com/issues/21147>`_, `pr#19501 <https://github.com/ceph/ceph/pull/19501>`_, Sage Weil) -* mgr: mgr/balancer/upmap_max_iterations must be cast to integer (`issue#22429 <http://tracker.ceph.com/issues/22429>`_, `pr#19553 <https://github.com/ceph/ceph/pull/19553>`_, Dan van der Ster) -* mgr: mgr/dashboard: added iSCSI IOPS/throughput metrics (`issue#21391 <http://tracker.ceph.com/issues/21391>`_, `pr#20209 <https://github.com/ceph/ceph/pull/20209>`_, Jason Dillaman) -* mgr: mgr/dashboard: Fix PG status coloring (`issue#22615 <http://tracker.ceph.com/issues/22615>`_, `pr#19844 <https://github.com/ceph/ceph/pull/19844>`_, Wido den Hollander) -* mgr: mgr/prometheus: add missing 'deep' state to PG_STATES in ceph-mgr pro… (`issue#22116 <http://tracker.ceph.com/issues/22116>`_, `pr#19929 <https://github.com/ceph/ceph/pull/19929>`_, Jan Fajerski, Peter Woodman) -* mgr: mgr tests don't indicate failure if exception thrown from serve() (`issue#21999 <http://tracker.ceph.com/issues/21999>`_, `pr#18832 <https://github.com/ceph/ceph/pull/18832>`_, John Spray) -* mgr: mgr[zabbix] float division by zero (osd['kb'] = 0) (`issue#21904 <http://tracker.ceph.com/issues/21904>`_, `pr#19048 <https://github.com/ceph/ceph/pull/19048>`_, Ilja Slepnev) -* mgr: prometheus: added osd commit/apply latency metrics (#22718) (`issue#22718 <http://tracker.ceph.com/issues/22718>`_, `pr#20084 <https://github.com/ceph/ceph/pull/20084>`_, Konstantin Shalygin) -* mgr: pybind/mgr/dashboard: fix duplicated slash in html href (`issue#22851 <http://tracker.ceph.com/issues/22851>`_, `pr#20325 <https://github.com/ceph/ceph/pull/20325>`_, Shengjing Zhu) -* mgr: pybind/mgr/dashboard: fix reverse proxy support (`issue#22557 <http://tracker.ceph.com/issues/22557>`_, `pr#20182 <https://github.com/ceph/ceph/pull/20182>`_, Nick Erdmann, Kefu Chai) -* mgr: pybind/mgr/prometheus: fix metric type undef -> untyped (`issue#22313 <http://tracker.ceph.com/issues/22313>`_, `pr#19834 <https://github.com/ceph/ceph/pull/19834>`_, Ilya Margolin) -* mgr: restarting active ceph-mgr cause glitches in bps and iops metrics (`issue#21773 <http://tracker.ceph.com/issues/21773>`_, `pr#18735 <https://github.com/ceph/ceph/pull/18735>`_, Aleksei Gutikov, Kefu Chai) -* mgr: Services reported with blank hostname (`issue#20887 <http://tracker.ceph.com/issues/20887>`_, `issue#21687 <http://tracker.ceph.com/issues/21687>`_, `pr#17869 <https://github.com/ceph/ceph/pull/17869>`_, liuchang0812, Chang Liu) -* mon: do not use per_pool_sum_delta to show recovery summary (`issue#22727 <http://tracker.ceph.com/issues/22727>`_, `pr#20150 <https://github.com/ceph/ceph/pull/20150>`_, Chang Liu) -* mon: fix mgr using auth_client_required policy (`issue#22096 <http://tracker.ceph.com/issues/22096>`_, `pr#20156 <https://github.com/ceph/ceph/pull/20156>`_, John Spray) -* mon: MDSMonitor: reject misconfigured mds_blacklist_interval (`issue#21821 <http://tracker.ceph.com/issues/21821>`_, `pr#19871 <https://github.com/ceph/ceph/pull/19871>`_, John Spray) -* mon/MgrMonitor: limit mgrmap history (`issue#22257 <http://tracker.ceph.com/issues/22257>`_, `pr#19187 <https://github.com/ceph/ceph/pull/19187>`_, Sage Weil) -* mon: reenable timer to send digest when paxos is temporarily inactive (`issue#22142 <http://tracker.ceph.com/issues/22142>`_, `pr#19481 <https://github.com/ceph/ceph/pull/19481>`_, Jan Fajerski) -* msg: msg/async/AsyncConnection.cc: 1835: FAILED assert(state == STATE_CLOSED) (`issue#21883 <http://tracker.ceph.com/issues/21883>`_, `pr#18746 <https://github.com/ceph/ceph/pull/18746>`_, Haomai Wang) -* msg: msg/async: unregister connection failed when racing happened (`issue#22437 <http://tracker.ceph.com/issues/22437>`_, `pr#19552 <https://github.com/ceph/ceph/pull/19552>`_, Haomai Wang) -* osdc: "FAILED assert(bh->last_write_tid > tid)" in powercycle-wip-yuri-master-1.19.18-distro-basic-smithi (`issue#22741 <http://tracker.ceph.com/issues/22741>`_, `pr#20256 <https://github.com/ceph/ceph/pull/20256>`_, "Yan, Zheng") -* osdc/Journaler: add 'stopping' check to various finish callbacks (`issue#22360 <http://tracker.ceph.com/issues/22360>`_, `pr#19610 <https://github.com/ceph/ceph/pull/19610>`_, "Yan, Zheng") -* osdc/Objecter: objecter op_send_bytes perf counter always 0 (`issue#21982 <http://tracker.ceph.com/issues/21982>`_, `pr#19046 <https://github.com/ceph/ceph/pull/19046>`_, Jianpeng Ma) -* osd: do not check out-of-date osdmap for DESTROYED flag on start (`issue#22673 <http://tracker.ceph.com/issues/22673>`_, `pr#20068 <https://github.com/ceph/ceph/pull/20068>`_, Sage Weil) -* osd,mgr: report pending creating pgs to mgr (`issue#22440 <http://tracker.ceph.com/issues/22440>`_, `pr#20204 <https://github.com/ceph/ceph/pull/20204>`_, Kefu Chai) -* osd: miscounting degraded objects and PG stuck in recovery_unfound (`issue#22145 <http://tracker.ceph.com/issues/22145>`_, `pr#20055 <https://github.com/ceph/ceph/pull/20055>`_, Sage Weil, David Zafman) -* osd: Objecter::C_ObjectOperation_sparse_read throws/catches exceptions on -ENOENT (`issue#21844 <http://tracker.ceph.com/issues/21844>`_, `pr#18744 <https://github.com/ceph/ceph/pull/18744>`_, Jason Dillaman) -* osd: Objecter::_send_op unnecessarily constructs costly hobject_t (`issue#21845 <http://tracker.ceph.com/issues/21845>`_, `pr#18745 <https://github.com/ceph/ceph/pull/18745>`_, Jason Dillaman) -* osd: On pg repair the primary is not favored as was intended (`issue#21907 <http://tracker.ceph.com/issues/21907>`_, `pr#19083 <https://github.com/ceph/ceph/pull/19083>`_, David Zafman) -* osd: OSD crushes with FAILED assert(used_blocks.size() > count) during the first start after upgrade 12.2.1 -> 12.2.2 (`issue#22535 <http://tracker.ceph.com/issues/22535>`_, `pr#19888 <https://github.com/ceph/ceph/pull/19888>`_, Igor Fedotov) -* osd: OSDMap cache assert on shutdown (`issue#21737 <http://tracker.ceph.com/issues/21737>`_, `pr#18749 <https://github.com/ceph/ceph/pull/18749>`_, Greg Farnum) -* osd: OSDService::recovery_need_sleep read+updated without locking (`issue#21566 <http://tracker.ceph.com/issues/21566>`_, `pr#18753 <https://github.com/ceph/ceph/pull/18753>`_, Neha Ojha) -* osd: "osd status" command exception if OSD not in pgmap stats (`issue#21707 <http://tracker.ceph.com/issues/21707>`_, `pr#19084 <https://github.com/ceph/ceph/pull/19084>`_, Yanhu Cao) -* osd, pg, mgr: make snap trim queue problems visible (`issue#22448 <http://tracker.ceph.com/issues/22448>`_, `pr#20098 <https://github.com/ceph/ceph/pull/20098>`_, Piotr Dałek) -* osd: Pool Compression type option doesn't apply to new OSDs (`issue#22419 <http://tracker.ceph.com/issues/22419>`_, `pr#20106 <https://github.com/ceph/ceph/pull/20106>`_, Kefu Chai) -* osd: replica read can trigger cache promotion (`issue#20919 <http://tracker.ceph.com/issues/20919>`_, `pr#19499 <https://github.com/ceph/ceph/pull/19499>`_, Sage Weil) -* osd/ReplicatedPG.cc: recover_replicas: object added to missing set for backfill, but is not in recovering, error! (`issue#21382 <http://tracker.ceph.com/issues/21382>`_, `issue#14513 <http://tracker.ceph.com/issues/14513>`_, `issue#18162 <http://tracker.ceph.com/issues/18162>`_, `pr#20081 <https://github.com/ceph/ceph/pull/20081>`_, David Zafman) -* osd: subscribe osdmaps if any pending pgs (`issue#22113 <http://tracker.ceph.com/issues/22113>`_, `pr#19059 <https://github.com/ceph/ceph/pull/19059>`_, Kefu Chai) -* osd: "sudo cp /var/lib/ceph/osd/ceph-0/fsid ..." fails (`issue#20736 <http://tracker.ceph.com/issues/20736>`_, `pr#19631 <https://github.com/ceph/ceph/pull/19631>`_, Patrick Donnelly) -* os: fix 0-length zero semantics, test (`issue#21712 <http://tracker.ceph.com/issues/21712>`_, `pr#20049 <https://github.com/ceph/ceph/pull/20049>`_, Sage Weil) -* qa/tests: Applied PR 20053 to stress-split tests (`issue#22665 <http://tracker.ceph.com/issues/22665>`_, `pr#20451 <https://github.com/ceph/ceph/pull/20451>`_, Yuri Weinstein) -* rbd: abort in listing mapped nbd devices when running in a container (`issue#22012 <http://tracker.ceph.com/issues/22012>`_, `issue#22011 <http://tracker.ceph.com/issues/22011>`_, `pr#19051 <https://github.com/ceph/ceph/pull/19051>`_, Li Wang) -* rbd: [api] compare-and-write methods not properly advertised (`issue#22036 <http://tracker.ceph.com/issues/22036>`_, `pr#18834 <https://github.com/ceph/ceph/pull/18834>`_, Jason Dillaman) -* rbd: class rbd.Image discard----OSError: [errno 2147483648] error discarding region (`issue#21966 <http://tracker.ceph.com/issues/21966>`_, `pr#19058 <https://github.com/ceph/ceph/pull/19058>`_, Jason Dillaman) -* rbd: cluster resource agent ocf:ceph:rbd - wrong permissions (`issue#22362 <http://tracker.ceph.com/issues/22362>`_, `pr#19554 <https://github.com/ceph/ceph/pull/19554>`_, Nathan Cutler) -* rbd: disk usage on empty pool no longer returns an error message (`issue#22200 <http://tracker.ceph.com/issues/22200>`_, `pr#19107 <https://github.com/ceph/ceph/pull/19107>`_, Jason Dillaman) -* rbd: fix crash during map (`issue#21808 <http://tracker.ceph.com/issues/21808>`_, `pr#18698 <https://github.com/ceph/ceph/pull/18698>`_, Peter Keresztes Schmidt) -* rbd: [journal] tags are not being expired if no other clients are registered (`issue#21960 <http://tracker.ceph.com/issues/21960>`_, `pr#18840 <https://github.com/ceph/ceph/pull/18840>`_, Jason Dillaman) -* rbd: librbd: filter out potential race with image rename (`issue#18435 <http://tracker.ceph.com/issues/18435>`_, `pr#19853 <https://github.com/ceph/ceph/pull/19853>`_, Jason Dillaman) -* rbd-mirror: Allow a different data-pool to be used on the secondary cluster (`issue#21088 <http://tracker.ceph.com/issues/21088>`_, `pr#19305 <https://github.com/ceph/ceph/pull/19305>`_, Adam Wolfe Gordon) -* rbd-mirror: primary image should register in remote, non-primary image's journal (`issue#21961 <http://tracker.ceph.com/issues/21961>`_, `issue#21561 <http://tracker.ceph.com/issues/21561>`_, `pr#20207 <https://github.com/ceph/ceph/pull/20207>`_, Jason Dillaman) -* rbd-mirror: sync image metadata when transfering remote image (`issue#21535 <http://tracker.ceph.com/issues/21535>`_, `pr#19484 <https://github.com/ceph/ceph/pull/19484>`_, Jason Dillaman) -* rbd: Python RBD metadata_get does not work (`issue#22306 <http://tracker.ceph.com/issues/22306>`_, `pr#19479 <https://github.com/ceph/ceph/pull/19479>`_, Mykola Golub) -* rbd: rbd ls -l crashes with SIGABRT (`issue#21558 <http://tracker.ceph.com/issues/21558>`_, `pr#19800 <https://github.com/ceph/ceph/pull/19800>`_, Jason Dillaman) -* rbd: [rbd-mirror] new pools might not be detected (`issue#22461 <http://tracker.ceph.com/issues/22461>`_, `pr#19625 <https://github.com/ceph/ceph/pull/19625>`_, Jason Dillaman) -* rbd: [rbd-nbd] Fedora does not register resize events (`issue#22131 <http://tracker.ceph.com/issues/22131>`_, `pr#19066 <https://github.com/ceph/ceph/pull/19066>`_, Jason Dillaman) -* rbd: [test] UpdateFeatures RPC message should be included in test_notify.py (`issue#21936 <http://tracker.ceph.com/issues/21936>`_, `pr#18838 <https://github.com/ceph/ceph/pull/18838>`_, Jason Dillaman) -* Revert " luminous: msg/async: unregister connection failed when racing happened" (`issue#22231 <http://tracker.ceph.com/issues/22231>`_, `pr#20247 <https://github.com/ceph/ceph/pull/20247>`_, Sage Weil) -* rgw: 501 is returned When init multipart is using V4 signature and chunk encoding (`issue#22129 <http://tracker.ceph.com/issues/22129>`_, `pr#19506 <https://github.com/ceph/ceph/pull/19506>`_, Jeegn Chen) -* rgw: add cors header rule check in cors option request (`issue#22002 <http://tracker.ceph.com/issues/22002>`_, `pr#19053 <https://github.com/ceph/ceph/pull/19053>`_, yuliyang) -* rgw: backport beast frontend and boost 1.66 update (`issue#22101 <http://tracker.ceph.com/issues/22101>`_, `issue#20935 <http://tracker.ceph.com/issues/20935>`_, `issue#21831 <http://tracker.ceph.com/issues/21831>`_, `issue#20048 <http://tracker.ceph.com/issues/20048>`_, `issue#22600 <http://tracker.ceph.com/issues/22600>`_, `issue#20971 <http://tracker.ceph.com/issues/20971>`_, `pr#19848 <https://github.com/ceph/ceph/pull/19848>`_, Casey Bodley, Jiaying Ren) -* rgw: bucket index object not deleted after radosgw-admin bucket rm --purge-objects --bypass-gc (`issue#22122 <http://tracker.ceph.com/issues/22122>`_, `issue#19959 <http://tracker.ceph.com/issues/19959>`_, `pr#19085 <https://github.com/ceph/ceph/pull/19085>`_, Aleksei Gutikov) -* rgw: bucket policy evaluation logical error (`issue#21901 <http://tracker.ceph.com/issues/21901>`_, `issue#21896 <http://tracker.ceph.com/issues/21896>`_, `pr#19810 <https://github.com/ceph/ceph/pull/19810>`_, Adam C. Emerson) -* rgw: bucket resharding should not update bucket ACL or user stats (`issue#22742 <http://tracker.ceph.com/issues/22742>`_, `issue#22124 <http://tracker.ceph.com/issues/22124>`_, `pr#20327 <https://github.com/ceph/ceph/pull/20327>`_, Orit Wasserman) -* rgw: check going_down() when lifecycle processing (`issue#22099 <http://tracker.ceph.com/issues/22099>`_, `pr#19088 <https://github.com/ceph/ceph/pull/19088>`_, Yao Zongyou) -* rgw: Dynamic bucket indexing, resharding and tenants seems to be broken (`issue#22046 <http://tracker.ceph.com/issues/22046>`_, `pr#19050 <https://github.com/ceph/ceph/pull/19050>`_, Orit Wasserman) -* rgw: file deadlock on lru evicting (`issue#22736 <http://tracker.ceph.com/issues/22736>`_, `pr#20075 <https://github.com/ceph/ceph/pull/20075>`_, Matt Benjamin) -* rgw: fix chained cache invalidation to prevent cache size growth (`issue#22410 <http://tracker.ceph.com/issues/22410>`_, `pr#19785 <https://github.com/ceph/ceph/pull/19785>`_, Mark Kogan) -* rgw: fix for empty query string in beast frontend (`issue#22797 <http://tracker.ceph.com/issues/22797>`_, `pr#20338 <https://github.com/ceph/ceph/pull/20338>`_, Casey Bodley) -* rgw: fix GET website response error code (`issue#22272 <http://tracker.ceph.com/issues/22272>`_, `pr#19489 <https://github.com/ceph/ceph/pull/19489>`_, Dmitry Plyakin) -* rgw: fix rewrite a versioning object create a new object bug (`issue#21984 <http://tracker.ceph.com/issues/21984>`_, `issue#22529 <http://tracker.ceph.com/issues/22529>`_, `pr#19787 <https://github.com/ceph/ceph/pull/19787>`_, Enming Zhang, Matt Benjamin) -* rgw: Fix swift object expiry not deleting objects (`issue#22084 <http://tracker.ceph.com/issues/22084>`_, `pr#18972 <https://github.com/ceph/ceph/pull/18972>`_, Pavan Rallabhandi) -* rgw: Fix swift object expiry not deleting objects (`issue#22084 <http://tracker.ceph.com/issues/22084>`_, `pr#19090 <https://github.com/ceph/ceph/pull/19090>`_, Pavan Rallabhandi) -* rgw: librgw: fix shutdown error with resources uncleaned (`issue#22296 <http://tracker.ceph.com/issues/22296>`_, `pr#20073 <https://github.com/ceph/ceph/pull/20073>`_, Tao Chen) -* rgw: log keystone errors at a higher level (`issue#22151 <http://tracker.ceph.com/issues/22151>`_, `pr#19077 <https://github.com/ceph/ceph/pull/19077>`_, Abhishek Lekshmanan) -* rgw: make HTTP dechunking compatible with Amazon S3 (`issue#21015 <http://tracker.ceph.com/issues/21015>`_, `pr#19500 <https://github.com/ceph/ceph/pull/19500>`_, Radoslaw Zarzynski) -* rgw: modify s3 type subuser access permission fail (`issue#21983 <http://tracker.ceph.com/issues/21983>`_, `pr#18766 <https://github.com/ceph/ceph/pull/18766>`_, yuliyang) -* rgw: multisite: destination zone does not compress synced objects (`issue#21895 <http://tracker.ceph.com/issues/21895>`_, `pr#18867 <https://github.com/ceph/ceph/pull/18867>`_, Casey Bodley) -* rgw: multisite: 'radosgw-admin sync error list' contains temporary EBUSY errors (`issue#22473 <http://tracker.ceph.com/issues/22473>`_, `pr#19799 <https://github.com/ceph/ceph/pull/19799>`_, Casey Bodley) -* rgw: null instance mtime incorrect when enable versioning (`issue#21743 <http://tracker.ceph.com/issues/21743>`_, `pr#18870 <https://github.com/ceph/ceph/pull/18870>`_, Shasha Lu) -* rgw: Policy parser may or may not dereference uninitialized boost::optional sometimes (`issue#21962 <http://tracker.ceph.com/issues/21962>`_, `pr#18868 <https://github.com/ceph/ceph/pull/18868>`_, Adam C. Emerson) -* rgw: Possible deadlock in 'list_children' when refresh is required (`issue#21670 <http://tracker.ceph.com/issues/21670>`_, `pr#18564 <https://github.com/ceph/ceph/pull/18564>`_, Jason Dillaman) -* rgw: put bucket policy panics RGW process (`issue#22541 <http://tracker.ceph.com/issues/22541>`_, `pr#19847 <https://github.com/ceph/ceph/pull/19847>`_, Bingyin Zhang) -* rgw: radosgw-admin reshard command argument error (`issue#21723 <http://tracker.ceph.com/issues/21723>`_, `pr#19502 <https://github.com/ceph/ceph/pull/19502>`_, Yao Zongyou) -* rgw: radosgw-admin zonegroup get and zone get should return defaults when there is no realm (`issue#21615 <http://tracker.ceph.com/issues/21615>`_, `pr#19086 <https://github.com/ceph/ceph/pull/19086>`_, lvshanchun) -* rgw: Random 500 errors in Swift PutObject (needs cache fixes) (`issue#22517 <http://tracker.ceph.com/issues/22517>`_, `issue#21560 <http://tracker.ceph.com/issues/21560>`_, `pr#19788 <https://github.com/ceph/ceph/pull/19788>`_, Adam C. Emerson) -* rgw: refuses upload when Content-Type missing from POST policy (`issue#20201 <http://tracker.ceph.com/issues/20201>`_, `pr#19867 <https://github.com/ceph/ceph/pull/19867>`_, Matt Benjamin) -* rgw: revert PR #8765 (`issue#22364 <http://tracker.ceph.com/issues/22364>`_, `pr#19434 <https://github.com/ceph/ceph/pull/19434>`_, fang.yuxiang) -* rgw: RGWCrashError: RGW will crash if a putting lc config request does not include an ID tag in the request xml (`issue#21980 <http://tracker.ceph.com/issues/21980>`_, `issue#22006 <http://tracker.ceph.com/issues/22006>`_, `pr#18765 <https://github.com/ceph/ceph/pull/18765>`_, Enming Zhang) -* rgw: rgw multisite: automated trimming for bucket index logs (`issue#18229 <http://tracker.ceph.com/issues/18229>`_, `pr#20062 <https://github.com/ceph/ceph/pull/20062>`_, Casey Bodley) -* rgw: RGW: S3 POST policy should not require Content-Type (`issue#20201 <http://tracker.ceph.com/issues/20201>`_, `pr#19784 <https://github.com/ceph/ceph/pull/19784>`_, Matt Benjamin) -* rgw: rgw segfaults after running radosgw-admin data sync init (`issue#22083 <http://tracker.ceph.com/issues/22083>`_, `pr#19071 <https://github.com/ceph/ceph/pull/19071>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: rgw usage trim only trims a few entries (`issue#22234 <http://tracker.ceph.com/issues/22234>`_, `pr#19636 <https://github.com/ceph/ceph/pull/19636>`_, Abhishek Lekshmanan) -* rgw: S3 API Policy Conditions IpAddress and NotIpAddress do not work (`issue#20931 <http://tracker.ceph.com/issues/20931>`_, `issue#20991 <http://tracker.ceph.com/issues/20991>`_, `pr#19819 <https://github.com/ceph/ceph/pull/19819>`_, John Gibson, yuliyang, Casey Bodley, Abhishek Lekshmanan, Jiaying Ren) -* rgw: Segmentation fault when starting radosgw after reverting .rgw.root (`issue#21996 <http://tracker.ceph.com/issues/21996>`_, `pr#18764 <https://github.com/ceph/ceph/pull/18764>`_, Orit Wasserman, Casey Bodley) -* rgw: set sync_from_all as true when no value is seen (`issue#22062 <http://tracker.ceph.com/issues/22062>`_, `pr#19038 <https://github.com/ceph/ceph/pull/19038>`_, Abhishek Lekshmanan) -* rgw: unlink deleted bucket from bucket's owner (`issue#22248 <http://tracker.ceph.com/issues/22248>`_, `pr#20357 <https://github.com/ceph/ceph/pull/20357>`_, Casey Bodley) -* rgw: user stats increased after bucket reshard (`issue#22124 <http://tracker.ceph.com/issues/22124>`_, `pr#19538 <https://github.com/ceph/ceph/pull/19538>`_, Orit Wasserman) -* rgw: When a system object is created exclusively, do not distribute the (`issue#22792 <http://tracker.ceph.com/issues/22792>`_, `pr#20107 <https://github.com/ceph/ceph/pull/20107>`_, J. Eric Ivancich, Robin H. Johnson) -* tests: ceph_test_cls_log failures related to cls_cxx_subop_version() (`issue#21964 <http://tracker.ceph.com/issues/21964>`_, `pr#18715 <https://github.com/ceph/ceph/pull/18715>`_, Casey Bodley) -* tests: ceph_test_objectstore fails ObjectStore/StoreTest.Synthetic/1 (filestore) buffer content mismatch (`issue#21712 <http://tracker.ceph.com/issues/21712>`_, `issue#21818 <http://tracker.ceph.com/issues/21818>`_, `pr#18742 <https://github.com/ceph/ceph/pull/18742>`_, Sage Weil) -* tests: configure zabbix properly before selftest (`issue#22514 <http://tracker.ceph.com/issues/22514>`_, `pr#19831 <https://github.com/ceph/ceph/pull/19831>`_, John Spray) -* tests: do not configure ec data pool with memstore (`issue#22436 <http://tracker.ceph.com/issues/22436>`_, `pr#19628 <https://github.com/ceph/ceph/pull/19628>`_, Patrick Donnelly) -* tests: force backfill test can conflict with pool removal (`issue#22614 <http://tracker.ceph.com/issues/22614>`_, `pr#19966 <https://github.com/ceph/ceph/pull/19966>`_, Sage Weil) -* tests: full flag not set on osdmap for tasks.cephfs.test_full (`issue#22475 <http://tracker.ceph.com/issues/22475>`_, `pr#19962 <https://github.com/ceph/ceph/pull/19962>`_, Patrick Donnelly) -* tests: increase osd count for ec testing (`issue#22646 <http://tracker.ceph.com/issues/22646>`_, `pr#19976 <https://github.com/ceph/ceph/pull/19976>`_, Patrick Donnelly) -* tests - Initial checkin for luminous point-to-point upgrade (`issue#22048 <http://tracker.ceph.com/issues/22048>`_, `pr#18771 <https://github.com/ceph/ceph/pull/18771>`_, Yuri Weinstein) -* tests: qa/workunits/rbd: simplify split-brain test to avoid potential race (`issue#22485 <http://tracker.ceph.com/issues/22485>`_, `pr#20205 <https://github.com/ceph/ceph/pull/20205>`_, Jason Dillaman) -* tests: qa/workunits/rbd: switch devstack to pike release (`issue#22786 <http://tracker.ceph.com/issues/22786>`_, `pr#20136 <https://github.com/ceph/ceph/pull/20136>`_, Jason Dillaman) -* tests: rbd_mirror_helpers.sh request_resync_image function saves image id to wrong variable (`issue#21663 <http://tracker.ceph.com/issues/21663>`_, `pr#19802 <https://github.com/ceph/ceph/pull/19802>`_, Jason Dillaman) -* tools/ceph_monstore_tool: include mgrmap in initial paxos epoch (`issue#22266 <http://tracker.ceph.com/issues/22266>`_, `pr#20116 <https://github.com/ceph/ceph/pull/20116>`_, Kefu Chai) -* tools: ceph-monstore-tool --readable mode doesn't understand FSMap, MgrMap (`issue#21577 <http://tracker.ceph.com/issues/21577>`_, `pr#18754 <https://github.com/ceph/ceph/pull/18754>`_, John Spray) -* tools: ceph-objectstore-tool: Add option dump-import to examine an export (`issue#22086 <http://tracker.ceph.com/issues/22086>`_, `pr#19487 <https://github.com/ceph/ceph/pull/19487>`_, David Zafman) -* tools: ceph_objectstore_tool: no flush before collection_empty() calls; ObjectStore/StoreTest.SimpleAttrTest/2 fails (`issue#22409 <http://tracker.ceph.com/issues/22409>`_, `pr#19967 <https://github.com/ceph/ceph/pull/19967>`_, Igor Fedotov) -* tools: ceph-objectstore-tool set-size should clear data-digest (`issue#22112 <http://tracker.ceph.com/issues/22112>`_, `pr#20069 <https://github.com/ceph/ceph/pull/20069>`_, David Zafman) -* tools/crushtool: skip device id if no name exists (`issue#22117 <http://tracker.ceph.com/issues/22117>`_, `pr#19039 <https://github.com/ceph/ceph/pull/19039>`_, Jan Fajerski) - - -v12.2.2 Luminous -================ - -This is the second bugfix release of Luminous v12.2.x long term stable release -series. It contains a range of bug fixes and a few features across Bluestore, -CephFS, RBD & RGW. We recommend all the users of 12.2.x series update. - -For more detailed information, see :download:`the complete changelog <../changelog/v12.2.2.txt>`. - - -Notable Changes ---------------- - -* Standby ceph-mgr daemons now redirect requests to the active messenger, easing - configuration for tools & users accessing the web dashboard, restful API, or - other ceph-mgr module services. -* The prometheus module has several significant updates and improvements. -* The new balancer module enables automatic optimization of CRUSH weights to - balance data across the cluster. -* The ceph-volume tool has been updated to include support for BlueStore as well - as FileStore. The only major missing ceph-volume feature is dm-crypt support. -* RGW's dynamic bucket index resharding is disabled in multisite environments, - as it can cause inconsistencies in replication of bucket indexes to remote - sites. - -Other Notable Changes ---------------------- - -* build/ops: bump sphinx to 1.6 (`issue#21717 <http://tracker.ceph.com/issues/21717>`_, `pr#18167 <https://github.com/ceph/ceph/pull/18167>`_, Kefu Chai, Alfredo Deza) -* build/ops: macros expanding in spec file comment (`issue#22250 <http://tracker.ceph.com/issues/22250>`_, `pr#19173 <https://github.com/ceph/ceph/pull/19173>`_, Ken Dreyer) -* build/ops: python-numpy-devel build dependency for SUSE (`issue#21176 <http://tracker.ceph.com/issues/21176>`_, `pr#17692 <https://github.com/ceph/ceph/pull/17692>`_, Nathan Cutler) -* build/ops: selinux: Allow getattr on lnk sysfs files (`issue#21492 <http://tracker.ceph.com/issues/21492>`_, `pr#18650 <https://github.com/ceph/ceph/pull/18650>`_, Boris Ranto) -* build/ops: Ubuntu amd64 client can not discover the ubuntu arm64 ceph cluster (`issue#19705 <http://tracker.ceph.com/issues/19705>`_, `pr#18293 <https://github.com/ceph/ceph/pull/18293>`_, Kefu Chai) -* core: buffer: fix ABI breakage by removing list _mempool member (`issue#21573 <http://tracker.ceph.com/issues/21573>`_, `pr#18491 <https://github.com/ceph/ceph/pull/18491>`_, Sage Weil) -* core: Daemons(OSD, Mon...) exit abnormally at injectargs command (`issue#21365 <http://tracker.ceph.com/issues/21365>`_, `pr#17864 <https://github.com/ceph/ceph/pull/17864>`_, Yan Jun) -* core: Disable messenger logging (debug ms = 0/0) for clients unless overridden (`issue#21860 <http://tracker.ceph.com/issues/21860>`_, `pr#18529 <https://github.com/ceph/ceph/pull/18529>`_, Jason Dillaman) -* core: Improve OSD startup time by only scanning for omap corruption once (`issue#21328 <http://tracker.ceph.com/issues/21328>`_, `pr#17889 <https://github.com/ceph/ceph/pull/17889>`_, Luo Kexue, David Zafman) -* core: upmap does not respect osd reweights (`issue#21538 <http://tracker.ceph.com/issues/21538>`_, `pr#18699 <https://github.com/ceph/ceph/pull/18699>`_, Theofilos Mouratidis) -* dashboard: barfs on nulls where it expects numbers (`issue#21570 <http://tracker.ceph.com/issues/21570>`_, `pr#18728 <https://github.com/ceph/ceph/pull/18728>`_, John Spray) -* dashboard: OSD list has servers and osds in arbitrary order (`issue#21572 <http://tracker.ceph.com/issues/21572>`_, `pr#18736 <https://github.com/ceph/ceph/pull/18736>`_, John Spray) -* dashboard: the dashboard uses absolute links for filesystems and clients (`issue#20568 <http://tracker.ceph.com/issues/20568>`_, `pr#18737 <https://github.com/ceph/ceph/pull/18737>`_, Nick Erdmann) -* filestore: set default readahead and compaction threads for rocksdb (`issue#21505 <http://tracker.ceph.com/issues/21505>`_, `pr#18234 <https://github.com/ceph/ceph/pull/18234>`_, Josh Durgin, Mark Nelson) -* librbd: object map batch update might cause OSD suicide timeout (`issue#21797 <http://tracker.ceph.com/issues/21797>`_, `pr#18416 <https://github.com/ceph/ceph/pull/18416>`_, Jason Dillaman) -* librbd: snapshots should be created/removed against data pool (`issue#21567 <http://tracker.ceph.com/issues/21567>`_, `pr#18336 <https://github.com/ceph/ceph/pull/18336>`_, Jason Dillaman) -* mds: make sure snap inode's last matches its parent dentry's last (`issue#21337 <http://tracker.ceph.com/issues/21337>`_, `pr#17994 <https://github.com/ceph/ceph/pull/17994>`_, "Yan, Zheng") -* mds: sanitize mdsmap of removed pools (`issue#21945 <http://tracker.ceph.com/issues/21945>`_, `issue#21568 <http://tracker.ceph.com/issues/21568>`_, `pr#18628 <https://github.com/ceph/ceph/pull/18628>`_, Patrick Donnelly) -* mgr: bulk backport of ceph-mgr improvements (`issue#21594 <http://tracker.ceph.com/issues/21594>`_, `issue#17460 <http://tracker.ceph.com/issues/17460>`_, `issue#21197 <http://tracker.ceph.com/issues/21197>`_, `issue#21158 <http://tracker.ceph.com/issues/21158>`_, `issue#21593 <http://tracker.ceph.com/issues/21593>`_, `pr#18675 <https://github.com/ceph/ceph/pull/18675>`_, Benjeman Meekhof, Sage Weil, Jan Fajerski, John Spray, Kefu Chai, My Do, Spandan Kumar Sahu) -* mgr: ceph-mgr gets process called "exe" after respawn (`issue#21404 <http://tracker.ceph.com/issues/21404>`_, `pr#18738 <https://github.com/ceph/ceph/pull/18738>`_, John Spray) -* mgr: fix crashable DaemonStateIndex::get calls (`issue#17737 <http://tracker.ceph.com/issues/17737>`_, `pr#18412 <https://github.com/ceph/ceph/pull/18412>`_, John Spray) -* mgr: key mismatch for mgr after upgrade from jewel to luminous(dev) (`issue#20950 <http://tracker.ceph.com/issues/20950>`_, `pr#18727 <https://github.com/ceph/ceph/pull/18727>`_, John Spray) -* mgr: mgr status module uses base 10 units (`issue#21189 <http://tracker.ceph.com/issues/21189>`_, `issue#21752 <http://tracker.ceph.com/issues/21752>`_, `pr#18257 <https://github.com/ceph/ceph/pull/18257>`_, John Spray, Yanhu Cao) -* mgr: mgr[zabbix] float division by zero (`issue#21518 <http://tracker.ceph.com/issues/21518>`_, `pr#18734 <https://github.com/ceph/ceph/pull/18734>`_, John Spray) -* mgr: Prometheus crash when update (`issue#21253 <http://tracker.ceph.com/issues/21253>`_, `pr#17867 <https://github.com/ceph/ceph/pull/17867>`_, John Spray) -* mgr: prometheus module generates invalid output when counter names contain non-alphanum characters (`issue#20899 <http://tracker.ceph.com/issues/20899>`_, `pr#17868 <https://github.com/ceph/ceph/pull/17868>`_, John Spray, Jeremy H Austin) -* mgr: Quieten scary RuntimeError from restful module on startup (`issue#21292 <http://tracker.ceph.com/issues/21292>`_, `pr#17866 <https://github.com/ceph/ceph/pull/17866>`_, John Spray) -* mgr: Spurious ceph-mgr failovers during mon elections (`issue#20629 <http://tracker.ceph.com/issues/20629>`_, `pr#18726 <https://github.com/ceph/ceph/pull/18726>`_, John Spray) -* mon: Client client.admin marked osd.2 out, after it was down for 1504627577 seconds (`issue#21249 <http://tracker.ceph.com/issues/21249>`_, `pr#17862 <https://github.com/ceph/ceph/pull/17862>`_, John Spray) -* mon: DNS SRV default service name not used anymore (`issue#21204 <http://tracker.ceph.com/issues/21204>`_, `pr#17863 <https://github.com/ceph/ceph/pull/17863>`_, Kefu Chai) -* mon/MgrMonitor: handle cmd descs to/from disk in the absence of active mgr (`issue#21300 <http://tracker.ceph.com/issues/21300>`_, `pr#18038 <https://github.com/ceph/ceph/pull/18038>`_, Joao Eduardo Luis) -* mon/mgr: sync "mgr_command_descs","osd_metadata" and "mgr_metadata" prefixes to new mons (`issue#21527 <http://tracker.ceph.com/issues/21527>`_, `pr#18620 <https://github.com/ceph/ceph/pull/18620>`_, huanwen ren) -* mon: osd feature checks with 0 up osds (`issue#21471 <http://tracker.ceph.com/issues/21471>`_, `issue#20751 <http://tracker.ceph.com/issues/20751>`_, `pr#18364 <https://github.com/ceph/ceph/pull/18364>`_, Brad Hubbard, Sage Weil) -* mon,osd: fix "pg ls {forced_backfill, backfilling}" (`issue#21609 <http://tracker.ceph.com/issues/21609>`_, `pr#18236 <https://github.com/ceph/ceph/pull/18236>`_, Kefu Chai) -* mon/OSDMonitor: add option to fix up ruleset-\* to crush-\* for ec profiles (`issue#22128 <http://tracker.ceph.com/issues/22128>`_, `pr#18945 <https://github.com/ceph/ceph/pull/18945>`_, Sage Weil) -* mon, osd: per pool space-full flag support (`issue#21409 <http://tracker.ceph.com/issues/21409>`_, `pr#17730 <https://github.com/ceph/ceph/pull/17730>`_, xie xingguo) -* mon/PGMap: Fix %USED calculation (`issue#22247 <http://tracker.ceph.com/issues/22247>`_, `pr#19230 <https://github.com/ceph/ceph/pull/19230>`_, Xiaoxi Chen) -* mon: update get_store_prefixes implementations (`issue#21534 <http://tracker.ceph.com/issues/21534>`_, `pr#18621 <https://github.com/ceph/ceph/pull/18621>`_, John Spray, huanwen ren) -* msgr: messages/MOSDMap: do compat reencode of crush map, too (`issue#21882 <http://tracker.ceph.com/issues/21882>`_, `pr#18456 <https://github.com/ceph/ceph/pull/18456>`_, Sage Weil) -* msgr: src/messages/MOSDMap: reencode OSDMap for older clients (`issue#21660 <http://tracker.ceph.com/issues/21660>`_, `pr#18140 <https://github.com/ceph/ceph/pull/18140>`_, Sage Weil) -* os/bluestore/BlueFS: fix race with log flush during async log compaction (`issue#21878 <http://tracker.ceph.com/issues/21878>`_, `pr#18503 <https://github.com/ceph/ceph/pull/18503>`_, Sage Weil) -* os/bluestore: fix another aio stall/deadlock (`issue#21470 <http://tracker.ceph.com/issues/21470>`_, `pr#18127 <https://github.com/ceph/ceph/pull/18127>`_, Sage Weil) -* os/bluestore: fix SharedBlob unregistration (`issue#22039 <http://tracker.ceph.com/issues/22039>`_, `pr#18983 <https://github.com/ceph/ceph/pull/18983>`_, Sage Weil) -* os/bluestore: handle compressed extents in blob unsharing checks (`issue#21766 <http://tracker.ceph.com/issues/21766>`_, `pr#18501 <https://github.com/ceph/ceph/pull/18501>`_, Sage Weil) -* os/bluestore: replace 21089 repair with something online (instead of fsck) (`issue#21089 <http://tracker.ceph.com/issues/21089>`_, `pr#17734 <https://github.com/ceph/ceph/pull/17734>`_, Sage Weil) -* os/bluestore: set bitmap freelist resolution to min_alloc_size (`issue#21408 <http://tracker.ceph.com/issues/21408>`_, `pr#18050 <https://github.com/ceph/ceph/pull/18050>`_, Sage Weil) -* os/blueStore::umount will crash when the BlueStore is opened by start_kv_only() (`issue#21624 <http://tracker.ceph.com/issues/21624>`_, `pr#18750 <https://github.com/ceph/ceph/pull/18750>`_, Chang Liu) -* osd: additional protection for out-of-bounds EC reads (`issue#21629 <http://tracker.ceph.com/issues/21629>`_, `pr#18413 <https://github.com/ceph/ceph/pull/18413>`_, Jason Dillaman) -* osd: allow recovery preemption (`issue#21613 <http://tracker.ceph.com/issues/21613>`_, `pr#18025 <https://github.com/ceph/ceph/pull/18025>`_, Sage Weil) -* osd: build_past_intervals_parallel: Ignore new partially created PGs (`issue#21833 <http://tracker.ceph.com/issues/21833>`_, `pr#18673 <https://github.com/ceph/ceph/pull/18673>`_, David Zafman) -* osd: dump bluestore debug on shutdown if debug option is set (`issue#21259 <http://tracker.ceph.com/issues/21259>`_, `pr#18103 <https://github.com/ceph/ceph/pull/18103>`_, Sage Weil) -* osd: make stat_bytes and stat_bytes_used counters PRIO_USEFUL (`issue#21981 <http://tracker.ceph.com/issues/21981>`_, `pr#18723 <https://github.com/ceph/ceph/pull/18723>`_, Yao Zongyou) -* osd: make the PG's SORTBITWISE assert a more generous shutdown (`issue#20416 <http://tracker.ceph.com/issues/20416>`_, `pr#18132 <https://github.com/ceph/ceph/pull/18132>`_, Greg Farnum) -* osd: OSD metadata 'backend_filestore_dev_node' is unknown even for simple deployment (`issue#20944 <http://tracker.ceph.com/issues/20944>`_, `pr#17865 <https://github.com/ceph/ceph/pull/17865>`_, Sage Weil) -* rbd: [cli] mirror getter commands will fail if mirroring has never been enabled (`issue#21319 <http://tracker.ceph.com/issues/21319>`_, `pr#17861 <https://github.com/ceph/ceph/pull/17861>`_, Jason Dillaman) -* rbd: cls/journal: fixed possible infinite loop in expire_tags (`issue#21956 <http://tracker.ceph.com/issues/21956>`_, `pr#18626 <https://github.com/ceph/ceph/pull/18626>`_, Jason Dillaman) -* rbd: cls/journal: possible infinite loop within tag_list class method (`issue#21771 <http://tracker.ceph.com/issues/21771>`_, `pr#18417 <https://github.com/ceph/ceph/pull/18417>`_, Jason Dillaman) -* rbd: [rbd-mirror] asok hook names not updated when image is renamed (`issue#20860 <http://tracker.ceph.com/issues/20860>`_, `pr#17860 <https://github.com/ceph/ceph/pull/17860>`_, Mykola Golub) -* rbd: [rbd-mirror] forced promotion can result in incorrect status (`issue#21559 <http://tracker.ceph.com/issues/21559>`_, `pr#18337 <https://github.com/ceph/ceph/pull/18337>`_, Jason Dillaman) -* rbd: [rbd-mirror] peer cluster connections should filter out command line optionals (`issue#21894 <http://tracker.ceph.com/issues/21894>`_, `pr#18566 <https://github.com/ceph/ceph/pull/18566>`_, Jason Dillaman) -* rgw: add support for Swift's per storage policy statistics (`issue#17932 <http://tracker.ceph.com/issues/17932>`_, `issue#21506 <http://tracker.ceph.com/issues/21506>`_, `pr#17835 <https://github.com/ceph/ceph/pull/17835>`_, Radoslaw Zarzynski, Casey Bodley) -* rgw: add support for Swift's reversed account listings (`issue#21148 <http://tracker.ceph.com/issues/21148>`_, `pr#17834 <https://github.com/ceph/ceph/pull/17834>`_, Radoslaw Zarzynski) -* rgw: avoid logging keystone revocation failures when no keystone is configured (`issue#21400 <http://tracker.ceph.com/issues/21400>`_, `pr#18441 <https://github.com/ceph/ceph/pull/18441>`_, Abhishek Lekshmanan) -* rgw: disable dynamic resharding in multisite enviorment (`issue#21725 <http://tracker.ceph.com/issues/21725>`_, `pr#18432 <https://github.com/ceph/ceph/pull/18432>`_, Orit Wasserman) -* rgw: encryption: PutObj response does not include sse-kms headers (`issue#21576 <http://tracker.ceph.com/issues/21576>`_, `pr#18442 <https://github.com/ceph/ceph/pull/18442>`_, Casey Bodley) -* rgw: encryption: reject requests that don't provide all expected headers (`issue#21581 <http://tracker.ceph.com/issues/21581>`_, `pr#18429 <https://github.com/ceph/ceph/pull/18429>`_, Enming Zhang) -* rgw: expose --sync-stats via admin api (`issue#21301 <http://tracker.ceph.com/issues/21301>`_, `pr#18439 <https://github.com/ceph/ceph/pull/18439>`_, Nathan Johnson) -* rgw: failed CompleteMultipartUpload request does not release lock (`issue#21596 <http://tracker.ceph.com/issues/21596>`_, `pr#18430 <https://github.com/ceph/ceph/pull/18430>`_, Matt Benjamin) -* rgw_file: set s->obj_size from bytes_written (`issue#21940 <http://tracker.ceph.com/issues/21940>`_, `pr#18599 <https://github.com/ceph/ceph/pull/18599>`_, Matt Benjamin) -* rgw: fix a bug about inconsistent unit of comparison (`issue#21590 <http://tracker.ceph.com/issues/21590>`_, `pr#18438 <https://github.com/ceph/ceph/pull/18438>`_, gaosibei) -* rgw: fix bilog entries on multipart complete (`issue#21772 <http://tracker.ceph.com/issues/21772>`_, `pr#18334 <https://github.com/ceph/ceph/pull/18334>`_, Casey Bodley) -* rgw: fix error handling in ListBucketIndexesCR (`issue#21735 <http://tracker.ceph.com/issues/21735>`_, `pr#18591 <https://github.com/ceph/ceph/pull/18591>`_, Casey Bodley) -* rgw: fix refcnt issues (`issue#21819 <http://tracker.ceph.com/issues/21819>`_, `pr#18539 <https://github.com/ceph/ceph/pull/18539>`_, baixueyu) -* rgw: lc process only schdule the first item of lc objects (`issue#21022 <http://tracker.ceph.com/issues/21022>`_, `pr#17859 <https://github.com/ceph/ceph/pull/17859>`_, Shasha Lu) -* rgw: list bucket which enable versioning get wrong result when user marker (`issue#21500 <http://tracker.ceph.com/issues/21500>`_, `pr#18569 <https://github.com/ceph/ceph/pull/18569>`_, yuliyang) -* rgw: list_objects() honors end_marker regardless of namespace (`issue#18977 <http://tracker.ceph.com/issues/18977>`_, `pr#17832 <https://github.com/ceph/ceph/pull/17832>`_, Radoslaw Zarzynski) -* rgw: Multipart upload may double the quota (`issue#21586 <http://tracker.ceph.com/issues/21586>`_, `pr#18435 <https://github.com/ceph/ceph/pull/18435>`_, Sibei Gao) -* rgw: multisite: Get bucket location which is located in another zonegroup, will return 301 Moved Permanently (`issue#21125 <http://tracker.ceph.com/issues/21125>`_, `pr#17857 <https://github.com/ceph/ceph/pull/17857>`_, Shasha Lu) -* rgw: multisite: race between sync of bucket and bucket instance metadata (`issue#21990 <http://tracker.ceph.com/issues/21990>`_, `pr#18767 <https://github.com/ceph/ceph/pull/18767>`_, Casey Bodley) -* rgw: policy checks missing from Get/SetRequestPayment operations (`issue#21389 <http://tracker.ceph.com/issues/21389>`_, `pr#18440 <https://github.com/ceph/ceph/pull/18440>`_, Adam C. Emerson) -* rgw: radosgw-admin usage show loops indefinitly (`issue#21196 <http://tracker.ceph.com/issues/21196>`_, `pr#18437 <https://github.com/ceph/ceph/pull/18437>`_, Mark Kogan) -* rgw: rgw_file: explicit NFSv3 open() emulation (`issue#21854 <http://tracker.ceph.com/issues/21854>`_, `pr#18446 <https://github.com/ceph/ceph/pull/18446>`_, Matt Benjamin) -* rgw: rgw_file: fix write error when the write offset overlaps (`issue#21455 <http://tracker.ceph.com/issues/21455>`_, `pr#18004 <https://github.com/ceph/ceph/pull/18004>`_, Yao Zongyou) -* rgw: rgw file write error (`issue#21455 <http://tracker.ceph.com/issues/21455>`_, `pr#18433 <https://github.com/ceph/ceph/pull/18433>`_, Yao Zongyou) -* rgw: s3:GetBucketCORS/s3:PutBucketCORS policy fails with 403 (`issue#21578 <http://tracker.ceph.com/issues/21578>`_, `pr#18444 <https://github.com/ceph/ceph/pull/18444>`_, Adam C. Emerson) -* rgw: s3:GetBucketLocation bucket policy fails with 403 (`issue#21582 <http://tracker.ceph.com/issues/21582>`_, `pr#18443 <https://github.com/ceph/ceph/pull/18443>`_, Adam C. Emerson) -* rgw: s3:GetBucketWebsite/PutBucketWebsite fails with 403 (`issue#21597 <http://tracker.ceph.com/issues/21597>`_, `pr#18445 <https://github.com/ceph/ceph/pull/18445>`_, Adam C. Emerson) -* rgw: setxattrs call leads to different mtimes for bucket index and object (`issue#21200 <http://tracker.ceph.com/issues/21200>`_, `pr#17856 <https://github.com/ceph/ceph/pull/17856>`_, Abhishek Lekshmanan) -* rgw: stop/join TokenCache revoke thread only if started (`issue#21666 <http://tracker.ceph.com/issues/21666>`_, `pr#18138 <https://github.com/ceph/ceph/pull/18138>`_, Karol Mroz) -* rgw: string_view instance points to expired memory in PrefixableSignatureHelper (`issue#21085 <http://tracker.ceph.com/issues/21085>`_, `pr#17858 <https://github.com/ceph/ceph/pull/17858>`_, Radoslaw Zarzynski) -* rgw: user creation can overwrite existing user even if different uid is given (`issue#21685 <http://tracker.ceph.com/issues/21685>`_, `pr#18436 <https://github.com/ceph/ceph/pull/18436>`_, Casey Bodley) -* rgw: We cant't get torrents if objects are encrypted using SSE-C (`issue#21720 <http://tracker.ceph.com/issues/21720>`_, `pr#18431 <https://github.com/ceph/ceph/pull/18431>`_, Zhang Shaowen) -* rgw: wrong error message is returned when putting container with a name that is too long (`issue#17938 <http://tracker.ceph.com/issues/17938>`_, `issue#21169 <http://tracker.ceph.com/issues/21169>`_, `issue#17935 <http://tracker.ceph.com/issues/17935>`_, `issue#17934 <http://tracker.ceph.com/issues/17934>`_, `issue#17936 <http://tracker.ceph.com/issues/17936>`_, `pr#17811 <https://github.com/ceph/ceph/pull/17811>`_, Radoslaw Zarzynski) -* rgw: zone compression type is not validated (`issue#21775 <http://tracker.ceph.com/issues/21775>`_, `pr#18434 <https://github.com/ceph/ceph/pull/18434>`_, Casey Bodley) -* tools: ceph-disk create deprecation warnings (`issue#22154 <http://tracker.ceph.com/issues/22154>`_, `pr#18989 <https://github.com/ceph/ceph/pull/18989>`_, Alfredo Deza) -* tools: ceph-disk: fix '--runtime' omission for ceph-osd service (`issue#21498 <http://tracker.ceph.com/issues/21498>`_, `pr#17914 <https://github.com/ceph/ceph/pull/17914>`_, Carl Xiong) -* tools: ceph-disk flake8 test fails on very old, and very new, versions of flake8 (`issue#22207 <http://tracker.ceph.com/issues/22207>`_, `pr#19152 <https://github.com/ceph/ceph/pull/19152>`_, Nathan Cutler) -* tools: ceph-disk: retry on OSError (`issue#21728 <http://tracker.ceph.com/issues/21728>`_, `pr#18189 <https://github.com/ceph/ceph/pull/18189>`_, Kefu Chai) -* tools: ceph-disk: unlocks dmcrypted partitions when activating them (`issue#20488 <http://tracker.ceph.com/issues/20488>`_, `pr#18625 <https://github.com/ceph/ceph/pull/18625>`_, Kefu Chai, Felix Winterhalter) -* tools: ceph-kvstore-tool does not call bluestore's umount when exit (`issue#21625 <http://tracker.ceph.com/issues/21625>`_, `pr#18751 <https://github.com/ceph/ceph/pull/18751>`_, Chang Liu) -* tools: ceph_monstore_tool: rebuild initial mgrmap also (`issue#22266 <http://tracker.ceph.com/issues/22266>`_, `pr#19240 <https://github.com/ceph/ceph/pull/19240>`_, Kefu Chai) -* tools: ceph-objectstore-tool and ceph-bluestore-tool: backports from master (`issue#21272 <http://tracker.ceph.com/issues/21272>`_, `pr#17896 <https://github.com/ceph/ceph/pull/17896>`_, Sage Weil, David Zafman) -* tools: ceph_volume_client: add get, put, and delete object interfaces (`issue#21601 <http://tracker.ceph.com/issues/21601>`_, `pr#18037 <https://github.com/ceph/ceph/pull/18037>`_, Ramana Raja) -* tools: cli/crushtools/build.t sometimes fails in jenkins' make check run (`issue#21758 <http://tracker.ceph.com/issues/21758>`_, `pr#18398 <https://github.com/ceph/ceph/pull/18398>`_, Kefu Chai, Sage Weil) - - - -v12.2.1 Luminous -================ - -This is the first bugfix release of Luminous v12.2.x long term stable -release series. It contains a range of bug fixes and a few features -across CephFS, RBD & RGW. We recommend all the users of 12.2.x series -update. - -For more detailed information, see :download:`the complete changelog <../changelog/v12.2.1.txt>`. - - -Notable Changes ---------------- - -* Dynamic resharding is now enabled by default for RGW, RGW will now - automatically reshard there bucket index once the index grows beyond - `rgw_max_objs_per_shard` - -* Limiting MDS cache via a memory limit is now supported using the new - mds_cache_memory_limit config option (1GB by default). A cache reservation - can also be specified using mds_cache_reservation as a percentage of the - limit (5% by default). Limits by inode count are still supported using - mds_cache_size. Setting mds_cache_size to 0 (the default) disables the - inode limit. - -* The maximum number of PGs per OSD before the monitor issues a - warning has been reduced from 300 to 200 PGs. 200 is still twice - the generally recommended target of 100 PGs per OSD. This limit can - be adjusted via the ``mon_max_pg_per_osd`` option on the - monitors. The older ``mon_pg_warn_max_per_osd`` option has been removed. - -* Creating pools or adjusting pg_num will now fail if the change would - make the number of PGs per OSD exceed the configured - ``mon_max_pg_per_osd`` limit. The option can be adjusted if it - is really necessary to create a pool with more PGs. - -* There was a bug in the PG mapping behavior of the new *upmap* - feature. If you made use of this feature (e.g., via the `ceph osd - pg-upmap-items` command), we recommend that all mappings be removed (via - the `ceph osd rm-pg-upmap-items` command) before upgrading to this - point release. - -* A stall in BlueStore IO submission that was affecting many users has - been resolved. - -Other Notable Changes ---------------------- - -* bluestore: asyn cdeferred_try_submit deadlock (`issue#21207 <http://tracker.ceph.com/issues/21207>`_, `pr#17494 <https://github.com/ceph/ceph/pull/17494>`_, Sage Weil) -* bluestore: fix deferred write deadlock, aio short return handling (`issue#21171 <http://tracker.ceph.com/issues/21171>`_, `pr#17601 <https://github.com/ceph/ceph/pull/17601>`_, Sage Weil) -* bluestore: osd crash when change option bluestore_csum_type from none to CRC32 (`issue#21175 <http://tracker.ceph.com/issues/21175>`_, `pr#17497 <https://github.com/ceph/ceph/pull/17497>`_, xie xingguo) -* bluestore: os/bluestore/BlueFS.cc: 1255: FAILED assert(!log_file->fnode.extents.empty()) (`issue#21250 <http://tracker.ceph.com/issues/21250>`_, `pr#17562 <https://github.com/ceph/ceph/pull/17562>`_, Sage Weil) -* build/ops: ceph-fuse RPM should require fusermount (`issue#21057 <http://tracker.ceph.com/issues/21057>`_, `pr#17470 <https://github.com/ceph/ceph/pull/17470>`_, Ken Dreyer) -* build/ops: RHEL 7.3 Selinux denials at OSD start (`issue#19200 <http://tracker.ceph.com/issues/19200>`_, `pr#17468 <https://github.com/ceph/ceph/pull/17468>`_, Boris Ranto) -* build/ops: rocksdb,cmake: build portable binaries (`issue#20529 <http://tracker.ceph.com/issues/20529>`_, `pr#17745 <https://github.com/ceph/ceph/pull/17745>`_, Kefu Chai) -* cephfs: client/mds has wrong check to clear S_ISGID on chown (`issue#21004 <http://tracker.ceph.com/issues/21004>`_, `pr#17471 <https://github.com/ceph/ceph/pull/17471>`_, Patrick Donnelly) -* cephfs: get_quota_root sends lookupname op for every buffered write (`issue#20945 <http://tracker.ceph.com/issues/20945>`_, `pr#17473 <https://github.com/ceph/ceph/pull/17473>`_, Dan van der Ster) -* cephfs: MDCache::try_subtree_merge() may print N^2 lines of debug message (`issue#21221 <http://tracker.ceph.com/issues/21221>`_, `pr#17712 <https://github.com/ceph/ceph/pull/17712>`_, Patrick Donnelly) -* cephfs: MDS rank add/remove log messages say wrong number of ranks (`issue#21421 <http://tracker.ceph.com/issues/21421>`_, `pr#17887 <https://github.com/ceph/ceph/pull/17887>`_, John Spray) -* cephfs: MDS: standby-replay mds should avoid initiating subtree export (`issue#21378 <http://tracker.ceph.com/issues/21378>`_, `issue#21222 <http://tracker.ceph.com/issues/21222>`_, `pr#17714 <https://github.com/ceph/ceph/pull/17714>`_, "Yan, Zheng", Jianyu Li) -* cephfs: the standbys are not updated via ceph tell mds.\* command (`issue#21230 <http://tracker.ceph.com/issues/21230>`_, `pr#17565 <https://github.com/ceph/ceph/pull/17565>`_, Kefu Chai) -* common: adding line break at end of some cli results (`issue#21019 <http://tracker.ceph.com/issues/21019>`_, `pr#17467 <https://github.com/ceph/ceph/pull/17467>`_, songweibin) -* core: [cls] metadata_list API function does not honor `max_return` parameter (`issue#21247 <http://tracker.ceph.com/issues/21247>`_, `pr#17558 <https://github.com/ceph/ceph/pull/17558>`_, Jason Dillaman) -* core: incorrect erasure-code space in command ceph df (`issue#21243 <http://tracker.ceph.com/issues/21243>`_, `pr#17724 <https://github.com/ceph/ceph/pull/17724>`_, liuchang0812) -* core: interval_set: optimize intersect_of insert operations (`issue#21229 <http://tracker.ceph.com/issues/21229>`_, `pr#17487 <https://github.com/ceph/ceph/pull/17487>`_, Zac Medico) -* core: osd crush rule rename not idempotent (`issue#21162 <http://tracker.ceph.com/issues/21162>`_, `pr#17481 <https://github.com/ceph/ceph/pull/17481>`_, xie xingguo) -* core: osd/PGLog: write only changed dup entries (`issue#21026 <http://tracker.ceph.com/issues/21026>`_, `pr#17378 <https://github.com/ceph/ceph/pull/17378>`_, Josh Durgin) -* doc: doc/rbd: iSCSI Gateway Documentation (`issue#20437 <http://tracker.ceph.com/issues/20437>`_, `pr#17381 <https://github.com/ceph/ceph/pull/17381>`_, Aron Gunn, Jason Dillaman) -* mds: fix 'dirfrag end' check in Server::handle_client_readdir (`issue#21070 <http://tracker.ceph.com/issues/21070>`_, `pr#17686 <https://github.com/ceph/ceph/pull/17686>`_, "Yan, Zheng") -* mds: support limiting cache by memory (`issue#20594 <http://tracker.ceph.com/issues/20594>`_, `pr#17711 <https://github.com/ceph/ceph/pull/17711>`_, "Yan, Zheng", Patrick Donnelly) -* mgr: 500 error when attempting to view filesystem data (`issue#20692 <http://tracker.ceph.com/issues/20692>`_, `pr#17477 <https://github.com/ceph/ceph/pull/17477>`_, John Spray) -* mgr: ceph mgr versions shows active mgr as Unknown (`issue#21260 <http://tracker.ceph.com/issues/21260>`_, `pr#17635 <https://github.com/ceph/ceph/pull/17635>`_, John Spray) -* mgr: Crash in MonCommandCompletion (`issue#21157 <http://tracker.ceph.com/issues/21157>`_, `pr#17483 <https://github.com/ceph/ceph/pull/17483>`_, John Spray) -* mon: mon/OSDMonitor: deleting pool while pgs are being created leads to assert(p != pools.end) in update_creating_pgs() (`issue#21309 <http://tracker.ceph.com/issues/21309>`_, `pr#17634 <https://github.com/ceph/ceph/pull/17634>`_, Joao Eduardo Luis) -* mon: OSDMonitor: osd pool application get support (`issue#20976 <http://tracker.ceph.com/issues/20976>`_, `pr#17472 <https://github.com/ceph/ceph/pull/17472>`_, xie xingguo) -* mon: rate limit on health check update logging (`issue#20888 <http://tracker.ceph.com/issues/20888>`_, `pr#17500 <https://github.com/ceph/ceph/pull/17500>`_, John Spray) -* osd: build_initial_pg_history doesn't update up/acting/etc (`issue#21203 <http://tracker.ceph.com/issues/21203>`_, `pr#17496 <https://github.com/ceph/ceph/pull/17496>`_, w11979, Sage Weil) -* osd: osd/PG: discard msgs from down peers (`issue#19605 <http://tracker.ceph.com/issues/19605>`_, `pr#17501 <https://github.com/ceph/ceph/pull/17501>`_, Kefu Chai) -* osd/PrimaryLogPG: request osdmap update in the right block (`issue#21428 <http://tracker.ceph.com/issues/21428>`_, `pr#17829 <https://github.com/ceph/ceph/pull/17829>`_, Josh Durgin) -* osd: PrimaryLogPG: sparse read won't trigger repair correctly (`issue#21123 <http://tracker.ceph.com/issues/21123>`_, `pr#17475 <https://github.com/ceph/ceph/pull/17475>`_, xie xingguo) -* osd: request new map from PG when needed (`issue#21428 <http://tracker.ceph.com/issues/21428>`_, `pr#17796 <https://github.com/ceph/ceph/pull/17796>`_, Josh Durgin) -* osd: Revert "osd/OSDMap: allow bidirectional swap of pg-upmap-items" (`issue#21410 <http://tracker.ceph.com/issues/21410>`_, `pr#17812 <https://github.com/ceph/ceph/pull/17812>`_, Sage Weil) -* osd: subscribe to new osdmap while waiting_for_healthy (`issue#21121 <http://tracker.ceph.com/issues/21121>`_, `pr#17498 <https://github.com/ceph/ceph/pull/17498>`_, Sage Weil) -* osd: update info only if new_interval (`issue#21203 <http://tracker.ceph.com/issues/21203>`_, `pr#17622 <https://github.com/ceph/ceph/pull/17622>`_, Kefu Chai) -* pybind: dashboard usage graph getting bigger and bigger (`issue#20746 <http://tracker.ceph.com/issues/20746>`_, `pr#17486 <https://github.com/ceph/ceph/pull/17486>`_, Yixing Yan) -* rbd: image-meta list does not return all entries (`issue#21179 <http://tracker.ceph.com/issues/21179>`_, `pr#17561 <https://github.com/ceph/ceph/pull/17561>`_, Jason Dillaman) -* rbd: some generic options can not be passed by rbd-nbd (`issue#20426 <http://tracker.ceph.com/issues/20426>`_, `pr#17557 <https://github.com/ceph/ceph/pull/17557>`_, Pan Liu) -* rbd: switch to new config option getter methods (`issue#20737 <http://tracker.ceph.com/issues/20737>`_, `pr#17464 <https://github.com/ceph/ceph/pull/17464>`_, Jason Dillaman) -* rbd: TestMirroringWatcher.ModeUpdated: periodic failure due to injected message failures (`issue#21029 <http://tracker.ceph.com/issues/21029>`_, `pr#17465 <https://github.com/ceph/ceph/pull/17465>`_, Jason Dillaman) -* rgw: bucket index sporadically reshards to 65521 shards (`issue#20934 <http://tracker.ceph.com/issues/20934>`_, `pr#17476 <https://github.com/ceph/ceph/pull/17476>`_, Aleksei Gutikov) -* rgw: bytes_send and bytes_recv in the msg of usage show returning is 0 in master branch (`issue#19870 <http://tracker.ceph.com/issues/19870>`_, `pr#17444 <https://github.com/ceph/ceph/pull/17444>`_, Marcus Watts) -* rgw: data encryption sometimes fails to follow AWS settings (`issue#21349 <http://tracker.ceph.com/issues/21349>`_, `pr#17642 <https://github.com/ceph/ceph/pull/17642>`_, hechuang) -* rgw: memory leak in MetadataHandlers (`issue#21214 <http://tracker.ceph.com/issues/21214>`_, `pr#17570 <https://github.com/ceph/ceph/pull/17570>`_, Luo Kexue, Jos Collin) -* rgw: multisite: objects encrypted with SSE-KMS are stored unencrypted in target zone (`issue#20668 <http://tracker.ceph.com/issues/20668>`_, `issue#20671 <http://tracker.ceph.com/issues/20671>`_, `pr#17446 <https://github.com/ceph/ceph/pull/17446>`_, Casey Bodley) -* rgw: need to stream metadata full sync init (`issue#18079 <http://tracker.ceph.com/issues/18079>`_, `pr#17448 <https://github.com/ceph/ceph/pull/17448>`_, Yehuda Sadeh) -* rgw: object copied from remote src acl permission become full-control issue (`issue#20658 <http://tracker.ceph.com/issues/20658>`_, `pr#17478 <https://github.com/ceph/ceph/pull/17478>`_, Enming Zhang) -* rgw: put lifecycle configuration fails if Prefix is not set (`issue#19587 <http://tracker.ceph.com/issues/19587>`_, `issue#20872 <http://tracker.ceph.com/issues/20872>`_, `pr#17479 <https://github.com/ceph/ceph/pull/17479>`_, Shasha Lu, Abhishek Lekshmanan) -* rgw: rgw_file: incorrect lane lock behavior in evict_block() (`issue#21141 <http://tracker.ceph.com/issues/21141>`_, `pr#17485 <https://github.com/ceph/ceph/pull/17485>`_, Matt Benjamin) -* rgw: send data-log list infinitely (`issue#20951 <http://tracker.ceph.com/issues/20951>`_, `pr#17445 <https://github.com/ceph/ceph/pull/17445>`_, fang.yuxiang) -* rgw: shadow objects are sometimes not removed (`issue#20234 <http://tracker.ceph.com/issues/20234>`_, `pr#17555 <https://github.com/ceph/ceph/pull/17555>`_, Yehuda Sadeh) -* rgw: usage of --inconsistent-index should require user confirmation and print a warning (`issue#20777 <http://tracker.ceph.com/issues/20777>`_, `pr#17488 <https://github.com/ceph/ceph/pull/17488>`_, Orit Wasserman) -* tools: [cli] rename of non-existent image results in seg fault (`issue#21248 <http://tracker.ceph.com/issues/21248>`_, `pr#17556 <https://github.com/ceph/ceph/pull/17556>`_, Jason Dillaman) - - -v12.2.0 Luminous -================ - -This is the first release of Luminous v12.2.x long term stable release -series. There have been major changes since Kraken (v11.2.z) and -Jewel (v10.2.z), and the upgrade process is non-trivial. Please read -these release notes carefully. - -Major Changes from Kraken -------------------------- - -- *General*: - - * Ceph now has a simple, `built-in web-based dashboard - <../mgr/dashboard>`_ for monitoring cluster status. - -- *RADOS*: - - * *BlueStore*: - - - The new *BlueStore* backend for *ceph-osd* is now stable and the - new default for newly created OSDs. BlueStore manages data - stored by each OSD by directly managing the physical HDDs or - SSDs without the use of an intervening file system like XFS. - This provides greater performance and features. See - :doc:`/rados/configuration/storage-devices` and - :doc:`/rados/configuration/bluestore-config-ref`. - - BlueStore supports `full data and metadata checksums - <../rados/configuration/bluestore-config-ref/#checksums>`_ of all - data stored by Ceph. - - BlueStore supports `inline compression - <../rados/configuration/bluestore-config-ref/#inline-compression>`_ using - zlib, snappy, or LZ4. (Ceph also supports zstd for `RGW compression - <../man/8/radosgw-admin/#options>`_ but zstd is not recommended for - BlueStore for performance reasons.) - - * *Erasure coded* pools now have `full support for overwrites - <../rados/operations/erasure-code/#erasure-coding-with-overwrites>`_, - allowing them to be used with RBD and CephFS. - - * *ceph-mgr*: - - - There is a new daemon, *ceph-mgr*, which is a required part of - any Ceph deployment. Although IO can continue when *ceph-mgr* - is down, metrics will not refresh and some metrics-related calls - (e.g., ``ceph df``) may block. We recommend deploying several - instances of *ceph-mgr* for reliability. See the notes on - `Upgrading`_ below. - - The *ceph-mgr* daemon includes a `REST-based management API - <../mgr/restful>`_. The API is still experimental and somewhat - limited but will form the basis for API-based management of Ceph - going forward. - - *ceph-mgr* also includes a `Prometheus exporter - <../mgr/prometheus>`_ plugin, which can provide Ceph - perfcounters to Prometheus. - - ceph-mgr now has a `Zabbix <../mgr/zabbix>`_ plugin. Using - zabbix_sender it sends trapper events to a Zabbix server - containing high-level information of the Ceph cluster. This - makes it easy to monitor a Ceph cluster's status and send out - notifications in case of a malfunction. - - * The overall *scalability* of the cluster has improved. We have - successfully tested clusters with up to 10,000 OSDs. - * Each OSD can now have a `device class - <../rados/operations/crush-map/#device-classes>`_ associated with - it (e.g., `hdd` or `ssd`), allowing CRUSH rules to trivially map - data to a subset of devices in the system. Manually writing CRUSH - rules or manual editing of the CRUSH is normally not required. - * There is a new `upmap <../rados/operations/upmap>`_ exception - mechanism that allows individual PGs to be moved around to achieve - a *perfect distribution* (this requires luminous clients). - * Each OSD now adjusts its default configuration based on whether the - backing device is an HDD or SSD. Manual tuning generally not required. - * The prototype `mClock QoS queueing algorithm - <../rados/configuration/osd-config-ref/#qos-based-on-mclock>`_ is now - available. - * There is now a *backoff* mechanism that prevents OSDs from being - overloaded by requests to objects or PGs that are not currently able to - process IO. - * There is a simplified `OSD replacement process - <../rados/operations/add-or-rm-osds/#replacing-an-osd>`_ that is more - robust. - * You can query the supported features and (apparent) releases of - all connected daemons and clients with `ceph features - <../man/8/ceph#features>`_. - * You can configure the oldest Ceph client version you wish to allow to - connect to the cluster via ``ceph osd set-require-min-compat-client`` and - Ceph will prevent you from enabling features that will break compatibility - with those clients. - * Several `sleep` settings, include ``osd_recovery_sleep``, - ``osd_snap_trim_sleep``, and ``osd_scrub_sleep`` have been - reimplemented to work efficiently. (These are used in some cases - to work around issues throttling background work.) - * Pools are now expected to be associated with the application using them. - Upon completing the upgrade to Luminous, the cluster will attempt to associate - existing pools to known applications (i.e. CephFS, RBD, and RGW). In-use pools - that are not associated to an application will generate a health warning. Any - unassociated pools can be manually associated using the new - ``ceph osd pool application enable`` command. For more details see - `associate pool to application <../rados/operations/pools/#associate-pool-to-application>`_ - in the documentation. - -- *RGW*: - - * RGW *metadata search* backed by ElasticSearch now supports end - user requests service via RGW itself, and also supports custom - metadata fields. A query language a set of RESTful APIs were - created for users to be able to search objects by their - metadata. New APIs that allow control of custom metadata fields - were also added. - * RGW now supports *dynamic bucket index sharding*. This has to be enabled via - the `rgw dynamic resharding` configurable. As the number of objects in a - bucket grows, RGW will automatically reshard the bucket index in response. - No user intervention or bucket size capacity planning is required. - * RGW introduces *server side encryption* of uploaded objects with - three options for the management of encryption keys: automatic - encryption (only recommended for test setups), customer provided - keys similar to Amazon SSE-C specification, and through the use of - an external key management service (Openstack Barbican) similar - to Amazon SSE-KMS specification. :doc:`/radosgw/encryption` - * RGW now has preliminary AWS-like bucket policy API support. For - now, policy is a means to express a range of new authorization - concepts. In the future it will be the foundation for additional - auth capabilities such as STS and group policy. :doc:`/radosgw/bucketpolicy` - * RGW has consolidated the several metadata index pools via the use of rados - namespaces. :doc:`/radosgw/pools` - * S3 Object Tagging API has been added; while APIs are - supported for GET/PUT/DELETE object tags and in PUT object - API, there is no support for tags on Policies & Lifecycle yet - * RGW multisite now supports for enabling or disabling sync at a - bucket level. - -- *RBD*: - - * RBD now has full, stable support for *erasure coded pools* via the new - ``--data-pool`` option to ``rbd create``. - * RBD mirroring's rbd-mirror daemon is now highly available. We - recommend deploying several instances of rbd-mirror for - reliability. - * RBD mirroring's rbd-mirror daemon should utilize unique Ceph user - IDs per instance to support the new mirroring dashboard. - * The default 'rbd' pool is no longer created automatically during - cluster creation. Additionally, the name of the default pool used - by the rbd CLI when no pool is specified can be overridden via a - new ``rbd default pool = <pool name>`` configuration option. - * Initial support for deferred image deletion via new ``rbd - trash`` CLI commands. Images, even ones actively in-use by - clones, can be moved to the trash and deleted at a later time. - * New pool-level ``rbd mirror pool promote`` and ``rbd mirror pool - demote`` commands to batch promote/demote all mirrored images - within a pool. - * Mirroring now optionally supports a configurable replication delay - via the ``rbd mirroring replay delay = <seconds>`` configuration - option. - * Improved discard handling when the object map feature is enabled. - * rbd CLI ``import`` and ``copy`` commands now detect sparse and - preserve sparse regions. - * Images and Snapshots will now include a creation timestamp. - * Specifying user authorization capabilities for RBD clients has been - simplified. The general syntax for using RBD capability profiles is - "mon 'profile rbd' osd 'profile rbd[-read-only][ pool={pool-name}[, ...]]'". - For more details see :doc:`/rados/operations/user-management` - in the documentation. - -- *CephFS*: - - * *Multiple active MDS daemons* is now considered stable. The number - of active MDS servers may be adjusted up or down on an active CephFS file - system. - * CephFS *directory fragmentation* is now stable and enabled by - default on new filesystems. To enable it on existing filesystems - use "ceph fs set <fs_name> allow_dirfrags". Large or very busy - directories are sharded and (potentially) distributed across - multiple MDS daemons automatically. - * Directory subtrees can be explicitly pinned to specific MDS daemons in - cases where the automatic load balancing is not desired or effective. - * Client keys can now be created using the new ``ceph fs authorize`` command - to create keys with access to the given CephFS file system and all of its - data pools. - * When running 'df' on a CephFS filesystem comprising exactly one data pool, - the result now reflects the file storage space used and available in that - data pool (fuse client only). - -- *Miscellaneous*: - - * Release packages are now being built for *Debian Stretch*. Note - that QA is limited to CentOS and Ubuntu (xenial and trusty). The - distributions we build for now include: - - - CentOS 7 (x86_64 and aarch64) - - Debian 8 Jessie (x86_64) - - Debian 9 Stretch (x86_64) - - Ubuntu 16.04 Xenial (x86_64 and aarch64) - - Ubuntu 14.04 Trusty (x86_64) - - * A first release of Ceph for FreeBSD is available which contains a full set - of features, other than Bluestore. It will run everything needed to build a - storage cluster. For clients, all access methods are available, albeit - CephFS is only accessible through a Fuse implementation. RBD images can be - mounted on FreeBSD systems through rbd-ggate - Ceph versions are released through the regular FreeBSD ports and packages - system. The most current version is available as: net/ceph-devel. Once - Luminous goes into official release, this version will be available as - net/ceph. Future development releases will be available via net/ceph-devel - More details about this port are in: `README.FreeBSD <https://github.com/ceph/ceph/blob/master/README.FreeBSD>`_ - - * *CLI changes*: - - - The ``ceph -s`` or ``ceph status`` command has a fresh look. - - ``ceph mgr metadata`` will dump metadata associated with each mgr - daemon. - - ``ceph versions`` or ``ceph {osd,mds,mon,mgr} versions`` - summarize versions of running daemons. - - ``ceph {osd,mds,mon,mgr} count-metadata <property>`` similarly - tabulates any other daemon metadata visible via the ``ceph - {osd,mds,mon,mgr} metadata`` commands. - - ``ceph features`` summarizes features and releases of connected - clients and daemons. - - ``ceph osd require-osd-release <release>`` replaces the old - ``require_RELEASE_osds`` flags. - - ``ceph osd pg-upmap``, ``ceph osd rm-pg-upmap``, ``ceph osd - pg-upmap-items``, ``ceph osd rm-pg-upmap-items`` can explicitly - manage `upmap` items (see :doc:`/rados/operations/upmap`). - - ``ceph osd getcrushmap`` returns a crush map version number on - stderr, and ``ceph osd setcrushmap [version]`` will only inject - an updated crush map if the version matches. This allows crush - maps to be updated offline and then reinjected into the cluster - without fear of clobbering racing changes (e.g., by newly added - osds or changes by other administrators). - - ``ceph osd create`` has been replaced by ``ceph osd new``. This - should be hidden from most users by user-facing tools like - `ceph-disk`. - - ``ceph osd destroy`` will mark an OSD destroyed and remove its - cephx and lockbox keys. However, the OSD id and CRUSH map entry - will remain in place, allowing the id to be reused by a - replacement device with minimal data rebalancing. - - ``ceph osd purge`` will remove all traces of an OSD from the - cluster, including its cephx encryption keys, dm-crypt lockbox - keys, OSD id, and crush map entry. - - ``ceph osd ls-tree <name>`` will output a list of OSD ids under - the given CRUSH name (like a host or rack name). This is useful - for applying changes to entire subtrees. For example, ``ceph - osd down `ceph osd ls-tree rack1```. - - ``ceph osd {add,rm}-{noout,noin,nodown,noup}`` allow the - `noout`, `noin`, `nodown`, and `noup` flags to be applied to - specific OSDs. - - ``ceph osd safe-to-destroy <osd(s)>`` will report whether it is safe to - remove or destroy OSD(s) without reducing data durability or redundancy. - - ``ceph osd ok-to-stop <osd(s)>`` will report whether it is okay to stop - OSD(s) without immediately compromising availability (i.e., all PGs - should remain active but may be degraded). - - ``ceph log last [n]`` will output the last *n* lines of the cluster - log. - - ``ceph mgr dump`` will dump the MgrMap, including the currently active - ceph-mgr daemon and any standbys. - - ``ceph mgr module ls`` will list active ceph-mgr modules. - - ``ceph mgr module {enable,disable} <name>`` will enable or - disable the named mgr module. The module must be present in the - configured `mgr_module_path` on the host(s) where `ceph-mgr` is - running. - - ``ceph osd crush ls <node>`` will list items (OSDs or other CRUSH nodes) - directly beneath a given CRUSH node. - - ``ceph osd crush swap-bucket <src> <dest>`` will swap the - contents of two CRUSH buckets in the hierarchy while preserving - the buckets' ids. This allows an entire subtree of devices to - be replaced (e.g., to replace an entire host of FileStore OSDs - with newly-imaged BlueStore OSDs) without disrupting the - distribution of data across neighboring devices. - - ``ceph osd set-require-min-compat-client <release>`` configures - the oldest client release the cluster is required to support. - Other changes, like CRUSH tunables, will fail with an error if - they would violate this setting. Changing this setting also - fails if clients older than the specified release are currently - connected to the cluster. - - ``ceph config-key dump`` dumps config-key entries and their - contents. (The existing ``ceph config-key list`` only dumps the key - names, not the values.) - - ``ceph config-key list`` is deprecated in favor of ``ceph config-key ls``. - - ``ceph config-key put`` is deprecated in favor of ``ceph config-key set``. - - ``ceph auth list`` is deprecated in favor of ``ceph auth ls``. - - ``ceph osd crush rule list`` is deprecated in favor of ``ceph osd crush rule ls``. - - ``ceph osd set-{full,nearfull,backfillfull}-ratio`` sets the - cluster-wide ratio for various full thresholds (when the cluster - refuses IO, when the cluster warns about being close to full, - when an OSD will defer rebalancing a PG to itself, - respectively). - - ``ceph osd reweightn`` will specify the `reweight` values for - multiple OSDs in a single command. This is equivalent to a series of - ``ceph osd reweight`` commands. - - ``ceph osd crush {set,rm}-device-class`` manage the new - CRUSH *device class* feature. Note that manually creating or deleting - a device class name is generally not necessary as it will be smart - enough to be self-managed. ``ceph osd crush class ls`` and - ``ceph osd crush class ls-osd`` will output all existing device classes - and a list of OSD ids under the given device class respectively. - - ``ceph osd crush rule create-replicated`` replaces the old - ``ceph osd crush rule create-simple`` command to create a CRUSH - rule for a replicated pool. Notably it takes a `class` argument - for the *device class* the rule should target (e.g., `ssd` or - `hdd`). - - ``ceph mon feature ls`` will list monitor features recorded in the - MonMap. ``ceph mon feature set`` will set an optional feature (none of - these exist yet). - - ``ceph tell <daemon> help`` will now return a usage summary. - - ``ceph fs authorize`` creates a new client key with caps automatically - set to access the given CephFS file system. - - The ``ceph health`` structured output (JSON or XML) no longer contains - 'timechecks' section describing the time sync status. This - information is now available via the 'ceph time-sync-status' - command. - - Certain extra fields in the ``ceph health`` structured output that - used to appear if the mons were low on disk space (which duplicated - the information in the normal health warning messages) are now gone. - - The ``ceph -w`` output no longer contains audit log entries by default. - Add a ``--watch-channel=audit`` or ``--watch-channel=*`` to see them. - - New "ceph -w" behavior - the "ceph -w" output no longer contains - I/O rates, available space, pg info, etc. because these are no - longer logged to the central log (which is what ``ceph -w`` - shows). The same information can be obtained by running ``ceph pg - stat``; alternatively, I/O rates per pool can be determined using - ``ceph osd pool stats``. Although these commands do not - self-update like ``ceph -w`` did, they do have the ability to - return formatted output by providing a ``--format=<format>`` - option. - - Added new commands ``pg force-recovery`` and - ``pg-force-backfill``. Use them to boost recovery or backfill - priority of specified pgs, so they're recovered/backfilled - before any other. Note that these commands don't interrupt - ongoing recovery/backfill, but merely queue specified pgs before - others so they're recovered/backfilled as soon as possible. New - commands ``pg cancel-force-recovery`` and ``pg - cancel-force-backfill`` restore default recovery/backfill - priority of previously forced pgs. - - -Major Changes from Jewel ------------------------- - -- *RADOS*: - - * We now default to the AsyncMessenger (``ms type = async``) instead - of the legacy SimpleMessenger. The most noticeable difference is - that we now use a fixed sized thread pool for network connections - (instead of two threads per socket with SimpleMessenger). - * Some OSD failures are now detected almost immediately, whereas - previously the heartbeat timeout (which defaults to 20 seconds) - had to expire. This prevents IO from blocking for an extended - period for failures where the host remains up but the ceph-osd - process is no longer running. - * The size of encoded OSDMaps has been reduced. - * The OSDs now quiesce scrubbing when recovery or rebalancing is in progress. - -- *RGW*: - - * RGW now supports the S3 multipart object copy-part API. - * It is possible now to reshard an existing bucket offline. Offline - bucket resharding currently requires that all IO (especially - writes) to the specific bucket is quiesced. (For automatic online - resharding, see the new feature in Luminous above.) - * RGW now supports data compression for objects. - * Civetweb version has been upgraded to 1.8 - * The Swift static website API is now supported (S3 support has been added - previously). - * S3 bucket lifecycle API has been added. Note that currently it only supports - object expiration. - * Support for custom search filters has been added to the LDAP auth - implementation. - * Support for NFS version 3 has been added to the RGW NFS gateway. - * A Python binding has been created for librgw. - -- *RBD*: - - * The rbd-mirror daemon now supports replicating dynamic image - feature updates and image metadata key/value pairs from the - primary image to the non-primary image. - * The number of image snapshots can be optionally restricted to a - configurable maximum. - * The rbd Python API now supports asynchronous IO operations. - -- *CephFS*: - - * libcephfs function definitions have been changed to enable proper - uid/gid control. The library version has been increased to reflect the - interface change. - * Standby replay MDS daemons now consume less memory on workloads - doing deletions. - * Scrub now repairs backtrace, and populates `damage ls` with - discovered errors. - * A new `pg_files` subcommand to `cephfs-data-scan` can identify - files affected by a damaged or lost RADOS PG. - * The false-positive "failing to respond to cache pressure" warnings have - been fixed. - - -Upgrade from Jewel or Kraken ----------------------------- -.. _Upgrading: - -#. Ensure that the ``sortbitwise`` flag is enabled:: - - # ceph osd set sortbitwise - -#. Make sure your cluster is stable and healthy (no down or - recovering OSDs). (Optional, but recommended.) - -#. Do not create any new erasure-code pools while upgrading the monitors. - -#. You can monitor the progress of your upgrade at each stage with the - ``ceph versions`` command, which will tell you what ceph version is - running for each type of daemon. - -#. Set the ``noout`` flag for the duration of the upgrade. (Optional - but recommended.):: - - # ceph osd set noout - -#. Verify that all RBD client users have sufficient caps to blacklist - other client users. RBD client users with only ``"allow r"`` - monitor caps should be updated as follows:: - - # ceph auth caps client.<ID> mon 'allow r, allow command "osd blacklist"' osd '<existing OSD caps for user>' - -#. Upgrade monitors by installing the new packages and restarting the - monitor daemons. Note that, unlike prior releases, the ceph-mon - daemons *must* be upgraded first:: - - # systemctl restart ceph-mon.target - - Verify the monitor upgrade is complete once all monitors are up by - looking for the ``luminous`` feature string in the mon map. For - example:: - - # ceph mon feature ls - - should include `luminous` under persistent features:: - - on current monmap (epoch NNN) - persistent: [kraken,luminous] - required: [kraken,luminous] - -#. Add or restart ``ceph-mgr`` daemons. If you are upgrading from - kraken, upgrade packages and restart ceph-mgr daemons with:: - - # systemctl restart ceph-mgr.target - - If you are upgrading from kraken, you may already have ceph-mgr - daemons deployed. If not, or if you are upgrading from jewel, you - can deploy new daemons with tools like ceph-deploy or ceph-ansible. - For example:: - - # ceph-deploy mgr create HOST - - Verify the ceph-mgr daemons are running by checking ``ceph -s``:: - - # ceph -s - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the - ceph-osd daemons on all hosts:: - - # systemctl restart ceph-osd.target - - You can monitor the progress of the OSD upgrades with the new - ``ceph versions`` or ``ceph osd versions`` command:: - - # ceph osd versions - { - "ceph version 12.2.0 (...) luminous (stable)": 12, - "ceph version 10.2.6 (...)": 3, - } - -#. Upgrade all CephFS daemons by upgrading packages and restarting - daemons on all hosts:: - - # systemctl restart ceph-mds.target - -#. Upgrade all radosgw daemons by upgrading packages and restarting - daemons on all hosts:: - - # systemctl restart radosgw.target - -#. Complete the upgrade by disallowing pre-luminous OSDs and enabling - all new Luminous-only functionality:: - - # ceph osd require-osd-release luminous - - If you set ``noout`` at the beginning, be sure to clear it with:: - - # ceph osd unset noout - -#. Verify the cluster is healthy with ``ceph health``. - - -Upgrading from pre-Jewel releases (like Hammer) ------------------------------------------------ - -You *must* first upgrade to Jewel (10.2.z) before attempting an -upgrade to Luminous. - -Upgrade compatibility notes, Jewel to Kraken --------------------------------------------- - -These changes occurred between the Jewel and Kraken releases and will affect -upgrades from Jewel to Luminous. - -* The ``osd crush location`` config option is no longer supported. Please - update your ceph.conf to use the ``crush location`` option instead. Be sure - to update your config file to avoid any movement of OSDs from your customized - location back to the default one. - -* The OSDs now avoid starting new scrubs while recovery is in progress. To - revert to the old behavior (and do not let recovery activity affect the - scrub scheduling) you can set the following option:: - - osd scrub during recovery = true - -* The list of monitor hosts/addresses for building the monmap can now be - obtained from DNS SRV records. The service name used in when querying the DNS - is defined in the "mon_dns_srv_name" config option, which defaults to - "ceph-mon". - -* The 'osd class load list' config option is a list of object class names that - the OSD is permitted to load (or '*' for all classes). By default it - contains all existing in-tree classes for backwards compatibility. - -* The 'osd class default list' config option is a list of object class - names (or '*' for all classes) that clients may invoke having only - the '*', 'x', 'class-read', or 'class-write' capabilities. By - default it contains all existing in-tree classes for backwards - compatibility. Invoking classes not listed in 'osd class default - list' requires a capability naming the class (e.g. 'allow class - foo'). - -* The 'rgw rest getusage op compat' config option allows you to dump - (or not dump) the description of user stats in the S3 GetUsage - API. This option defaults to false. If the value is true, the - response data for GetUsage looks like:: - - "stats": { - "TotalBytes": 516, - "TotalBytesRounded": 1024, - "TotalEntries": 1 - } - - If the value is false, the response for GetUsage looks as it did before:: - - { - 516, - 1024, - 1 - } - -* The 'osd out ...' and 'osd in ...' commands now preserve the OSD - weight. That is, after marking an OSD out and then in, the weight - will be the same as before (instead of being reset to 1.0). - Previously the mons would only preserve the weight if the mon - automatically marked an OSD out and then in, but not when an admin - did so explicitly. - -* The 'ceph osd perf' command will display 'commit_latency(ms)' and - 'apply_latency(ms)'. Previously, the names of these two columns were - 'fs_commit_latency(ms)' and 'fs_apply_latency(ms)'. We removed the - prefix 'fs\_' because the values are not filestore-specific. - -* Monitors will no longer allow pools to be removed by default. The - setting mon_allow_pool_delete has to be set to true (defaults to - false) before they allow pools to be removed. This is a additional - safeguard against pools being removed by accident. - -* If you have manually specified the monitor user rocksdb via the - ``mon keyvaluedb = rocksdb`` option, you will need to manually add a - file to the mon data directory to preserve this option:: - - echo rocksdb > /var/lib/ceph/mon/ceph-`hostname`/kv_backend - - New monitors will now use rocksdb by default, but if that file is - not present, existing monitors will use leveldb. The ``mon - keyvaluedb`` option now only affects the backend chosen when a - monitor is created. - -* The 'osd crush initial weight' option allows you to specify a CRUSH - weight for a newly added OSD. Previously a value of 0 (the default) - meant that we should use the size of the OSD's store to weight the - new OSD. Now, a value of 0 means it should have a weight of 0, and - a negative value (the new default) means we should automatically - weight the OSD based on its size. If your configuration file - explicitly specifies a value of 0 for this option you will need to - change it to a negative value (e.g., -1) to preserve the current - behavior. - -* The static libraries are no longer included by the debian - development packages (lib*-dev) as it is not required per debian - packaging policy. The shared (.so) versions are packaged as before. - -* The libtool pseudo-libraries (.la files) are no longer included by - the debian development packages (lib*-dev) as they are not required - per https://wiki.debian.org/ReleaseGoals/LAFileRemoval and - https://www.debian.org/doc/manuals/maint-guide/advanced.en.html. - -* The jerasure and shec plugins can now detect SIMD instruction at - runtime and no longer need to be explicitly configured for different - processors. The following plugins are now deprecated: - jerasure_generic, jerasure_sse3, jerasure_sse4, jerasure_neon, - shec_generic, shec_sse3, shec_sse4, and shec_neon. If you use any of - these plugins directly you will see a warning in the mon log file. - Please switch to using just 'jerasure' or 'shec'. - -* The librados omap get_keys and get_vals operations include a start key and a - limit on the number of keys to return. The OSD now imposes a configurable - limit on the number of keys and number of total bytes it will respond with, - which means that a librados user might get fewer keys than they asked for. - This is necessary to prevent careless users from requesting an unreasonable - amount of data from the cluster in a single operation. The new limits are - configured with ``osd_max_omap_entries_per_request``, defaulting to 131,072, and - ``osd_max_omap_bytes_per_request``, defaulting to 4MB. - -* Calculation of recovery priorities has been updated. - This could lead to unintuitive recovery prioritization - during cluster upgrade. In case of such recovery, OSDs - in old version would operate on different priority ranges - than new ones. Once upgraded, cluster will operate on - consistent values. - - -Upgrade compatibility notes, Kraken to Luminous ------------------------------------------------ - -* The configuration option ``osd pool erasure code stripe width`` has - been replaced by ``osd pool erasure code stripe unit``, and given - the ability to be overridden by the erasure code profile setting - ``stripe_unit``. For more details see - :ref:`erasure-code-profiles`. - -* rbd and cephfs can use erasure coding with bluestore. This may be - enabled by setting ``allow_ec_overwrites`` to ``true`` for a pool. Since - this relies on bluestore's checksumming to do deep scrubbing, - enabling this on a pool stored on filestore is not allowed. - -* The ``rados df`` JSON output now prints numeric values as numbers instead of - strings. - -* The ``mon_osd_max_op_age`` option has been renamed to - ``mon_osd_warn_op_age`` (default: 32 seconds), to indicate we - generate a warning at this age. There is also a new - ``mon_osd_err_op_age_ratio`` that is a expressed as a multiple of - ``mon_osd_warn_op_age`` (default: 128, for roughly 60 minutes) to - control when an error is generated. - -* The default maximum size for a single RADOS object has been reduced from - 100GB to 128MB. The 100GB limit was completely impractical in practice - while the 128MB limit is a bit high but not unreasonable. If you have an - application written directly to librados that is using objects larger than - 128MB you may need to adjust ``osd_max_object_size``. - -* The semantics of the ``rados ls`` and librados object listing - operations have always been a bit confusing in that "whiteout" - objects (which logically don't exist and will return ENOENT if you - try to access them) are included in the results. Previously - whiteouts only occurred in cache tier pools. In luminous, logically - deleted but snapshotted objects now result in a whiteout object, and - as a result they will appear in ``rados ls`` results, even though - trying to read such an object will result in ENOENT. The ``rados - listsnaps`` operation can be used in such a case to enumerate which - snapshots are present. - This may seem a bit strange, but is less strange than having a - deleted-but-snapshotted object not appear at all and be completely - hidden from librados's ability to enumerate objects. Future - versions of Ceph will likely include an alternative object - enumeration interface that makes it more natural and efficient to - enumerate all objects along with their snapshot and clone metadata. - -* The deprecated ``crush_ruleset`` property has finally been removed; - please use ``crush_rule`` instead for the ``osd pool get ...`` and ``osd - pool set ...`` commands. - -* The ``osd pool default crush replicated ruleset`` option has been - removed and replaced by the ``osd pool default crush rule`` option. - By default it is -1, which means the mon will pick the first type - replicated rule in the CRUSH map for replicated pools. Erasure - coded pools have rules that are automatically created for them if - they are not specified at pool creation time. - -* We no longer test the FileStore ceph-osd backend in combination with - btrfs. We recommend against using btrfs. If you are using - btrfs-based OSDs and want to upgrade to luminous you will need to - add the following to your ceph.conf:: - - enable experimental unrecoverable data corrupting features = btrfs - - The code is mature and unlikely to change, but we are only - continuing to test the Jewel stable branch against btrfs. We - recommend moving these OSDs to FileStore with XFS or BlueStore. -* The ``ruleset-*`` properties for the erasure code profiles have been - renamed to ``crush-*`` to move away from the obsolete 'ruleset' - term and to be more clear about their purpose. There is also a new - optional ``crush-device-class`` property to specify a CRUSH device - class to use for the erasure coded pool. Existing erasure code - profiles will be converted automatically when upgrade completes - (when the ``ceph osd require-osd-release luminous`` command is run) - but any provisioning tools that create erasure coded pools may need - to be updated. -* The structure of the XML output for ``osd crush tree`` has changed - slightly to better match the ``osd tree`` output. The top level - structure is now ``nodes`` instead of ``crush_map_roots``. -* When assigning a network to the public network and not to - the cluster network the network specification of the public - network will be used for the cluster network as well. - In older versions this would lead to cluster services - being bound to 0.0.0.0:<port>, thus making the - cluster service even more publicly available than the - public services. When only specifying a cluster network it - will still result in the public services binding to 0.0.0.0. - -* In previous versions, if a client sent an op to the wrong OSD, the OSD - would reply with ENXIO. The rationale here is that the client or OSD is - clearly buggy and we want to surface the error as clearly as possible. - We now only send the ENXIO reply if the osd_enxio_on_misdirected_op option - is enabled (it's off by default). This means that a VM using librbd that - previously would have gotten an EIO and gone read-only will now see a - blocked/hung IO instead. - -* The "journaler allow split entries" config setting has been removed. - -* The 'mon_warn_osd_usage_min_max_delta' config option has been - removed and the associated health warning has been disabled because - it does not address clusters undergoing recovery or CRUSH rules that do - not target all devices in the cluster. - -* Added new configuration "public bind addr" to support dynamic - environments like Kubernetes. When set the Ceph MON daemon could - bind locally to an IP address and advertise a different IP address - ``public addr`` on the network. - -* The crush ``choose_args`` encoding has been changed to make it - architecture-independent. If you deployed Luminous dev releases or - 12.1.0 rc release and made use of the CRUSH choose_args feature, you - need to remove all choose_args mappings from your CRUSH map before - starting the upgrade. - - -- *librados*: - - * Some variants of the omap_get_keys and omap_get_vals librados - functions have been deprecated in favor of omap_get_vals2 and - omap_get_keys2. The new methods include an output argument - indicating whether there are additional keys left to fetch. - Previously this had to be inferred from the requested key count vs - the number of keys returned, but this breaks with new OSD-side - limits on the number of keys or bytes that can be returned by a - single omap request. These limits were introduced by kraken but - are effectively disabled by default (by setting a very large limit - of 1 GB) because users of the newly deprecated interface cannot - tell whether they should fetch more keys or not. In the case of - the standalone calls in the C++ interface - (IoCtx::get_omap_{keys,vals}), librados has been updated to loop on - the client side to provide a correct result via multiple calls to - the OSD. In the case of the methods used for building - multi-operation transactions, however, client-side looping is not - practical, and the methods have been deprecated. Note that use of - either the IoCtx methods on older librados versions or the - deprecated methods on any version of librados will lead to - incomplete results if/when the new OSD limits are enabled. - - * The original librados rados_objects_list_open (C) and objects_begin - (C++) object listing API, deprecated in Hammer, has finally been - removed. Users of this interface must update their software to use - either the rados_nobjects_list_open (C) and nobjects_begin (C++) API or - the new rados_object_list_begin (C) and object_list_begin (C++) API - before updating the client-side librados library to Luminous. - Object enumeration (via any API) with the latest librados version - and pre-Hammer OSDs is no longer supported. Note that no in-tree - Ceph services rely on object enumeration via the deprecated APIs, so - only external librados users might be affected. - The newest (and recommended) rados_object_list_begin (C) and - object_list_begin (C++) API is only usable on clusters with the - SORTBITWISE flag enabled (Jewel and later). (Note that this flag is - required to be set before upgrading beyond Jewel.) - -- *CephFS*: - - * When configuring ceph-fuse mounts in /etc/fstab, a new syntax is - available that uses "ceph.<arg>=<val>" in the options column, instead - of putting configuration in the device column. The old style syntax - still works. See the documentation page "Mount CephFS in your - file systems table" for details. - * CephFS clients without the 'p' flag in their authentication capability - string will no longer be able to set quotas or any layout fields. This - flag previously only restricted modification of the pool and namespace - fields in layouts. - * CephFS will generate a health warning if you have fewer standby daemons - than it thinks you wanted. By default this will be 1 if you ever had - a standby, and 0 if you did not. You can customize this using - ``ceph fs set <fs> standby_count_wanted <number>``. Setting it - to zero will effectively disable the health check. - * The "ceph mds tell ..." command has been removed. It is superseded - by "ceph tell mds.<id> ..." - * The ``apply`` mode of cephfs-journal-tool has been removed - - -Other Notable Changes ---------------------- -* async: Fixed compilation error when enable -DWITH_DPDK (`pr#12660 <https://github.com/ceph/ceph/pull/12660>`_, Pan Liu) -* async: fixed coredump when enable dpdk (`pr#12854 <https://github.com/ceph/ceph/pull/12854>`_, Pan Liu) -* async: fixed the error "Cause: Cannot create lock on '/var/run/.rte_c… (`pr#12860 <https://github.com/ceph/ceph/pull/12860>`_, Pan Liu) -* bluestore: avoid unnecessary copy with coll_t (`pr#12576 <https://github.com/ceph/ceph/pull/12576>`_, Yunchuan Wen) -* bluestore: BitAllocator: delete useless codes (`pr#13619 <https://github.com/ceph/ceph/pull/13619>`_, Jie Wang) -* bluestore: bluestore/BlueFS: pass string as const ref (`pr#16600 <https://github.com/ceph/ceph/pull/16600>`_, dingdangzhang) -* bluestore: bluestore, NVMEDEVICE: Specify the max io completion in conf (`pr#13799 <https://github.com/ceph/ceph/pull/13799>`_, optimistyzy) -* bluestore: bluestore/NVMEDEVICE: update SPDK to version 17.03 (`pr#14585 <https://github.com/ceph/ceph/pull/14585>`_, optimistyzy) -* bluestore: bluestore, NVMeDevice: use task' own lock for (random) read (`pr#14094 <https://github.com/ceph/ceph/pull/14094>`_, optimistyzy) -* bluestore,build/ops,performance: os/bluestore: enable SSE-assisted CRC32 calculations in RocksDB (`pr#13741 <https://github.com/ceph/ceph/pull/13741>`_, Radoslaw Zarzynski) -* bluestore: ceph-disk: add --filestore argument, default to --bluestore (`pr#15437 <https://github.com/ceph/ceph/pull/15437>`_, Loic Dachary, Sage Weil) -* bluestore: common/config: set rocksdb_cache_size to OPT_U64 (`pr#13995 <https://github.com/ceph/ceph/pull/13995>`_, liuhongtong) -* bluestore: common/options: make "blue{fs,store}_allocator" LEVEL_DEV (`issue#20660 <http://tracker.ceph.com/issues/20660>`_, `pr#16645 <https://github.com/ceph/ceph/pull/16645>`_, Kefu Chai) -* bluestore,common,performance: common/Finisher: Using queue(list<context\*>) instead queue(context\*) (`pr#8942 <https://github.com/ceph/ceph/pull/8942>`_, Jianpeng Ma) -* bluestore,common,performance: isa-l: update isa-l to v2.18 (`pr#15895 <https://github.com/ceph/ceph/pull/15895>`_, Ganesh Mahalingam, Tushar Gohad) -* bluestore,core: os/bluestore: fix statfs to not include DB partition in free space (`issue#18599 <http://tracker.ceph.com/issues/18599>`_, `pr#13140 <https://github.com/ceph/ceph/pull/13140>`_, Sage Weil) -* bluestore,core: os/bluestore: fix warning (`pr#15435 <https://github.com/ceph/ceph/pull/15435>`_, Sage Weil) -* bluestore,core: os/bluestore: improve mempool usage (`pr#15402 <https://github.com/ceph/ceph/pull/15402>`_, Sage Weil) -* bluestore,core: os/bluestore: write "mkfs_done" into disk only if we pass fsck() tests (`pr#15238 <https://github.com/ceph/ceph/pull/15238>`_, xie xingguo) -* bluestore,core: osd/OSDMap: should update input param if osd dne (`pr#14863 <https://github.com/ceph/ceph/pull/14863>`_, Kefu Chai) -* bluestore,core: os: remove experimental status for BlueStore (`pr#15177 <https://github.com/ceph/ceph/pull/15177>`_, Sage Weil) -* bluestore: fixed compilation error when enable spdk (`pr#12672 <https://github.com/ceph/ceph/pull/12672>`_, Pan Liu) -* bluestore: include/intarith: templatize ctz/clz/cbits helpers (`pr#14862 <https://github.com/ceph/ceph/pull/14862>`_, Kefu Chai) -* bluestore: luminous: os/bluestore: compensate for bad freelistmanager size/blocks metadata (`issue#21089 <http://tracker.ceph.com/issues/21089>`_, `pr#17273 <https://github.com/ceph/ceph/pull/17273>`_, Sage Weil) -* bluestore: NVMEDevice: add the spdk core mask check (`pr#14068 <https://github.com/ceph/ceph/pull/14068>`_, optimistyzy) -* bluestore: NVMEDevice: cleanup the logic in data_buf_next_sge (`pr#13056 <https://github.com/ceph/ceph/pull/13056>`_, optimistyzy) -* bluestore: NVMeDevice: fix the core id for rte_remote_launch (`pr#13896 <https://github.com/ceph/ceph/pull/13896>`_, optimistyzy) -* bluestore: NVMEDevice: fix bug in data_buf_next_sge (`pr#12812 <https://github.com/ceph/ceph/pull/12812>`_, optimistyzy) -* bluestore: NVMEDevice: minor error for get slave core (`pr#14012 <https://github.com/ceph/ceph/pull/14012>`_, Ziye Yang) -* bluestore: NVMEDevice: optimize sector_size usage (`pr#12780 <https://github.com/ceph/ceph/pull/12780>`_, optimistyzy) -* bluestore: NVMEDevice: remove unnessary dpdk header file (`pr#14650 <https://github.com/ceph/ceph/pull/14650>`_, optimistyzy) -* bluestore: NVMEDevice: fix the I/O logic for read (`pr#13971 <https://github.com/ceph/ceph/pull/13971>`_, optimistyzy) -* bluestore: os/bluestore: add a debug option to bypass block device writes for bl… (`pr#12464 <https://github.com/ceph/ceph/pull/12464>`_, Igor Fedotov) -* bluestore: os/bluestore: Add bluestore pextent vector to mempool (`pr#12946 <https://github.com/ceph/ceph/pull/12946>`_, Igor Fedotvo, Igor Fedotov) -* bluestore: os/bluestore: add flush_store_cache cmd (`pr#13428 <https://github.com/ceph/ceph/pull/13428>`_, xie xingguo) -* bluestore: os/bluestore: add more perf_counters to BlueStore (`pr#13274 <https://github.com/ceph/ceph/pull/13274>`_, Igor Fedotov) -* bluestore: os/bluestore: add new garbage collector (`pr#12144 <https://github.com/ceph/ceph/pull/12144>`_, Igor Fedotov) -* bluestore: os/bluestore: add perf variable for throttle info in bluestore (`pr#12583 <https://github.com/ceph/ceph/pull/12583>`_, Pan Liu) -* bluestore: os/bluestore: add "_" prefix for internal methods (`pr#13409 <https://github.com/ceph/ceph/pull/13409>`_, xie xingguo) -* bluestore: os/bluestore: align reclaim size to bluefs_alloc_size (`pr#14744 <https://github.com/ceph/ceph/pull/14744>`_, Haomai Wang) -* bluestore: os/bluestore/Allocator: drop unused return value in release function (`pr#13913 <https://github.com/ceph/ceph/pull/13913>`_, wangzhengyong) -* bluestore: os/bluestore: allow multiple DeferredBatches in flight at once (`issue#20295 <http://tracker.ceph.com/issues/20295>`_, `pr#16769 <https://github.com/ceph/ceph/pull/16769>`_, Nathan Cutler, Sage Weil) -* bluestore: os/bluestore: allow multiple SPDK BlueStore OSD instances (`issue#16966 <http://tracker.ceph.com/issues/16966>`_, `pr#12604 <https://github.com/ceph/ceph/pull/12604>`_, Orlando Moreno) -* bluestore: os/bluestore: assert blob map returns success (`pr#14473 <https://github.com/ceph/ceph/pull/14473>`_, shiqi) -* bluestore: os/bluestore: avoid nullptr in bluestore_extent_ref_map_t::bound_encode (`pr#14073 <https://github.com/ceph/ceph/pull/14073>`_, Sage Weil) -* bluestore: os/bluestore: avoid unnecessary memory copy, use variable reference in BlockDevice::Open (`pr#12942 <https://github.com/ceph/ceph/pull/12942>`_, liuchang0812) -* bluestore: os/bluestore: better debug output on unsharing blobs (`issue#20227 <http://tracker.ceph.com/issues/20227>`_, `pr#15746 <https://github.com/ceph/ceph/pull/15746>`_, Sage Weil) -* bluestore: os/bluestore/BitAllocator: fix bug of checking required blocks (`pr#13470 <https://github.com/ceph/ceph/pull/13470>`_, wangzhengyong) -* bluestore: os/bluestore/BitMapAllocator: rm unused variable (`pr#13599 <https://github.com/ceph/ceph/pull/13599>`_, Jie Wang) -* bluestore: os/bluestore/BitmapFreelistManager: readability improvements (`pr#12719 <https://github.com/ceph/ceph/pull/12719>`_, xie xingguo) -* bluestore: os/bluestore/BlockDevice: support pmem device as bluestore backend (`pr#15102 <https://github.com/ceph/ceph/pull/15102>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: clean up log_writer aios from compaction (`issue#20454 <http://tracker.ceph.com/issues/20454>`_, `pr#16017 <https://github.com/ceph/ceph/pull/16017>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: clear current log entrys before dump all fnode (`pr#15973 <https://github.com/ceph/ceph/pull/15973>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: fix reclaim_blocks (`issue#18368 <http://tracker.ceph.com/issues/18368>`_, `pr#12725 <https://github.com/ceph/ceph/pull/12725>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: Rebuild memcopy for bufferlist::page_aligned_app… (`pr#15728 <https://github.com/ceph/ceph/pull/15728>`_, Jianpeng Ma, Sage Weil) -* bluestore: os/bluestore/BlueFS: .slow should be compared with dirname (`pr#15595 <https://github.com/ceph/ceph/pull/15595>`_, zhanglei) -* bluestore: os/bluestore/BlueStore: Avoid double counting state_kv_queued_lat (`pr#16374 <https://github.com/ceph/ceph/pull/16374>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueStore.cc:remove unuse code in _open_bdev() (`pr#13553 <https://github.com/ceph/ceph/pull/13553>`_, yonghengdexin735) -* bluestore: os/bluestore/BlueStore.cc: remove unused variable (`pr#12703 <https://github.com/ceph/ceph/pull/12703>`_, Li Wang) -* bluestore: os/bluestore/BlueStore: no device no symlink (`pr#15721 <https://github.com/ceph/ceph/pull/15721>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueStore: remove unused code (`pr#16522 <https://github.com/ceph/ceph/pull/16522>`_, Jianpeng Ma) -* bluestore: os/bluestore: cleanup BitAllocator (`pr#12661 <https://github.com/ceph/ceph/pull/12661>`_, xie xingguo) -* bluestore: os/bluestore: cleanup bluestore_types (`pr#15680 <https://github.com/ceph/ceph/pull/15680>`_, xie xingguo) -* bluestore: os/bluestore: clean up flush logic (`pr#14162 <https://github.com/ceph/ceph/pull/14162>`_, Jianpeng Ma) -* bluestore: os/bluestore: cleanup, got rid of table reference of 1<<x (`pr#13718 <https://github.com/ceph/ceph/pull/13718>`_, Adam Kupczyk) -* bluestore: os/bluestore: clean up Invalid return value judgment (`pr#14219 <https://github.com/ceph/ceph/pull/14219>`_, shiqi) -* bluestore: os/bluestore: cleanup min_alloc_size; some formatting nits (`pr#15826 <https://github.com/ceph/ceph/pull/15826>`_, xie xingguo) -* bluestore: os/bluestore: clear result in BlueRocksEnv::getChildren (`issue#20857 <http://tracker.ceph.com/issues/20857>`_, `pr#16683 <https://github.com/ceph/ceph/pull/16683>`_, liuchang0812) -* bluestore: os/bluestore: clear up redundant size assignment in KerenelDevice (`pr#16121 <https://github.com/ceph/ceph/pull/16121>`_, Shasha Lu) -* bluestore: os/bluestore: conditionally load crr option (`pr#12877 <https://github.com/ceph/ceph/pull/12877>`_, xie xingguo) -* bluestore: os/bluestore: configure rocksdb cache via bluestore_cache_kv_ratio (`pr#15580 <https://github.com/ceph/ceph/pull/15580>`_, Sage Weil) -* bluestore: os/bluestore: default journal media to store media if bluefs is disabled (`pr#16844 <https://github.com/ceph/ceph/pull/16844>`_, xie xingguo) -* bluestore: os/bluestore: _do_remove: dirty shard individually as each blob is unshared (`issue#20849 <http://tracker.ceph.com/issues/20849>`_, `pr#16822 <https://github.com/ceph/ceph/pull/16822>`_, Sage Weil) -* bluestore: os/blueStore: Failure retry for opening file (`pr#16237 <https://github.com/ceph/ceph/pull/16237>`_, Yankun Li) -* bluestore: os/bluestore: fix a bug in small write handling on sharded extents (`pr#13728 <https://github.com/ceph/ceph/pull/13728>`_, Igor Fedotov) -* bluestore: os/bluestore: fix Allocator::allocate() int truncation (`issue#18595 <http://tracker.ceph.com/issues/18595>`_, `pr#13010 <https://github.com/ceph/ceph/pull/13010>`_, Sage Weil) -* bluestore: os/bluestore: fix a typo about bleustore (`pr#15357 <https://github.com/ceph/ceph/pull/15357>`_, Dongsheng Yang) -* bluestore: os/bluestore: fix BitMapAllocator assert on out-of-bound hint value (`pr#15289 <https://github.com/ceph/ceph/pull/15289>`_, Igor Fedotov) -* bluestore: os/bluestore: fix buffers pinned by indefinitely deferred writes (`pr#15398 <https://github.com/ceph/ceph/pull/15398>`_, Sage Weil) -* bluestore: os/bluestore: fix bug for calc extent_avg in reshard function (`pr#13931 <https://github.com/ceph/ceph/pull/13931>`_, wangzhengyong) -* bluestore: os/bluestore: fix bug in aio_read() (`pr#13511 <https://github.com/ceph/ceph/pull/13511>`_, tangwenjun) -* bluestore: os/bluestore: fix bug in _open_alloc() (`pr#13577 <https://github.com/ceph/ceph/pull/13577>`_, yonghengdexin735) -* bluestore: os/bluestore: fix bug in _open_super_meta() (`pr#13559 <https://github.com/ceph/ceph/pull/13559>`_, Taeksang Kim) -* bluestore: os/bluestore: fix bugs in bluefs and bdev flush (`issue#19250 <http://tracker.ceph.com/issues/19250>`_, `issue#19251 <http://tracker.ceph.com/issues/19251>`_, `pr#13911 <https://github.com/ceph/ceph/pull/13911>`_, Sage Weil) -* bluestore: os/bluestore: fix coredump in register_ctrlr() (`pr#13556 <https://github.com/ceph/ceph/pull/13556>`_, tangwenjun) -* bluestore: os/bluestore: fix deferred_aio deadlock (`pr#16051 <https://github.com/ceph/ceph/pull/16051>`_, Sage Weil) -* bluestore: os/bluestore: fix deferred write race (`issue#19880 <http://tracker.ceph.com/issues/19880>`_, `pr#15004 <https://github.com/ceph/ceph/pull/15004>`_, Sage Weil) -* bluestore: os/bluestore: fix deferred writes vs collection split race (`issue#19379 <http://tracker.ceph.com/issues/19379>`_, `pr#14157 <https://github.com/ceph/ceph/pull/14157>`_, Sage Weil) -* bluestore: os/bluestore: fix dirty_range on _do_clone_range (`issue#20810 <http://tracker.ceph.com/issues/20810>`_, `pr#16738 <https://github.com/ceph/ceph/pull/16738>`_, Sage Weil) -* bluestore: os/bluestore: fix false assert in IOContext::aio_wake (`pr#15268 <https://github.com/ceph/ceph/pull/15268>`_, Igor Fedotov) -* bluestore: os/bluestore: fix false asserts in Cache::trim_all() (`pr#15470 <https://github.com/ceph/ceph/pull/15470>`_, xie xingguo) -* bluestore: os/bluestore: fix fsck deferred_replay (`pr#15295 <https://github.com/ceph/ceph/pull/15295>`_, Sage Weil) -* bluestore: os/bluestore: fix min_alloc_size at mkfs time (`pr#13192 <https://github.com/ceph/ceph/pull/13192>`_, Sage Weil) -* bluestore: os/bluestore: fix narrow osr->flush() race (`pr#14489 <https://github.com/ceph/ceph/pull/14489>`_, Sage Weil) -* bluestore: os/bluestore: fix NVMEDevice::open failure if serial number ends with a … (`pr#12956 <https://github.com/ceph/ceph/pull/12956>`_, Hongtong Liu) -* bluestore: os/bluestore: fix OnodeSizeTracking testing (`issue#20498 <http://tracker.ceph.com/issues/20498>`_, `pr#12684 <https://github.com/ceph/ceph/pull/12684>`_, xie xingguo) -* bluestore: os/bluestore: fix perf counters (`pr#13965 <https://github.com/ceph/ceph/pull/13965>`_, Sage Weil) -* bluestore: os/bluestore: fix possible out of order shard(offset == 0); add sanity check (`pr#15658 <https://github.com/ceph/ceph/pull/15658>`_, xie xingguo) -* bluestore: os/bluestore: fix potential access violation (`pr#15657 <https://github.com/ceph/ceph/pull/15657>`_, xie xingguo) -* bluestore: os/bluestore: fix potential assert in cache _trim method (`pr#13234 <https://github.com/ceph/ceph/pull/13234>`_, Igor Fedotov) -* bluestore: os/bluestore: fix reclaim_blocks and clean up Allocator interface (`issue#18573 <http://tracker.ceph.com/issues/18573>`_, `pr#12963 <https://github.com/ceph/ceph/pull/12963>`_, Sage Weil) -* bluestore: os/bluestore: fix typo(s/trasnaction/transaction/) (`pr#14890 <https://github.com/ceph/ceph/pull/14890>`_, xie xingguo) -* bluestore: os/bluestore: fix unsharing blob dirty_range args (`issue#20227 <http://tracker.ceph.com/issues/20227>`_, `pr#15766 <https://github.com/ceph/ceph/pull/15766>`_, Sage Weil) -* bluestore: os/bluestore: fix use after free race with aio_wait (`pr#14956 <https://github.com/ceph/ceph/pull/14956>`_, Sage Weil) -* bluestore: os/bluestore: fix wal-queue bytes-counter to keep pace with others (`pr#13382 <https://github.com/ceph/ceph/pull/13382>`_, xie xingguo) -* bluestore: os/bluestore: fsck: verify blob.unused field (`pr#14316 <https://github.com/ceph/ceph/pull/14316>`_, Sage Weil) -* bluestore: os/bluestore: handle rounding error in cache ratios (`pr#15672 <https://github.com/ceph/ceph/pull/15672>`_, Sage Weil) -* bluestore: os/bluestore: implement collect_metadata (`pr#14115 <https://github.com/ceph/ceph/pull/14115>`_, Sage Weil) -* bluestore: os/bluestore: include logical object offset in crc error (`pr#13074 <https://github.com/ceph/ceph/pull/13074>`_, Sage Weil) -* bluestore: os/bluestore: initialize finishers properly (`pr#15666 <https://github.com/ceph/ceph/pull/15666>`_, xie xingguo) -* bluestore: os/bluestore/KernelDevice: fix comments (`pr#15264 <https://github.com/ceph/ceph/pull/15264>`_, xie xingguo) -* bluestore: os/bluestore/KernelDevice: fix debug message (`pr#13135 <https://github.com/ceph/ceph/pull/13135>`_, Sage Weil) -* bluestore: os/bluestore/KernelDevice: helpful warning when aio limit exhausted (`pr#15116 <https://github.com/ceph/ceph/pull/15116>`_, Sage Weil) -* bluestore: os/bluestore/KernelDevice: kill zeros (`pr#12856 <https://github.com/ceph/ceph/pull/12856>`_, xie xingguo) -* bluestore: os/bluestore: kill BufferSpace.empty() (`pr#12871 <https://github.com/ceph/ceph/pull/12871>`_, xie xingguo) -* bluestore: os/bluestore: kill orphan declaration of do_write_check_depth() (`pr#12853 <https://github.com/ceph/ceph/pull/12853>`_, xie xingguo) -* bluestore: os/bluestore: leverage the type knowledge in BitMapAreaLeaf (`pr#13736 <https://github.com/ceph/ceph/pull/13736>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: Make BitmapFreelistManager kv itereator short lived (`pr#16243 <https://github.com/ceph/ceph/pull/16243>`_, Mark Nelson) -* bluestore: os/bluestore: make live changes for BlueStore throttle config work like initial config (`pr#14225 <https://github.com/ceph/ceph/pull/14225>`_, J. Eric Ivancich) -* bluestore: os/bluestore: miscellaneous fixes to BitAllocator (`pr#12696 <https://github.com/ceph/ceph/pull/12696>`_, xie xingguo) -* bluestore: os/bluestore: misc fix and cleanups (`pr#16315 <https://github.com/ceph/ceph/pull/16315>`_, Jianpeng Ma) -* bluestore: os/bluestore: misc fixes (`pr#14333 <https://github.com/ceph/ceph/pull/14333>`_, Sage Weil) -* bluestore: os/bluestore: move aio.h/cc from fs dir to bluestore dir (`pr#16409 <https://github.com/ceph/ceph/pull/16409>`_, Pan Liu) -* bluestore: os/bluestore: move object exist in assign nid (`pr#16117 <https://github.com/ceph/ceph/pull/16117>`_, Jianpeng Ma) -* bluestore: os/bluestore: move sharedblob to new collection in same shard (`issue#20358 <http://tracker.ceph.com/issues/20358>`_, `pr#15783 <https://github.com/ceph/ceph/pull/15783>`_, Sage Weil) -* bluestore: os/bluestore: narrow cache lock range; make sure min_alloc_size p2 aligned (`pr#15911 <https://github.com/ceph/ceph/pull/15911>`_, xie xingguo) -* bluestore: os/bluestore: "noid" is not always necessary in clone op (`pr#13769 <https://github.com/ceph/ceph/pull/13769>`_, wangzhengyong) -* bluestore: os/bluestore: nullptr in OmapIteratorImpl::valid (`pr#12900 <https://github.com/ceph/ceph/pull/12900>`_, Xinze Chi) -* bluestore: os/bluestore/NVMEDevice: Add multiple thread support for SPDK I/O thread (`pr#14420 <https://github.com/ceph/ceph/pull/14420>`_, Ziye Yang) -* bluestore: os/bluestore/NVMEDevice.cc: fix the random read issue (`pr#13055 <https://github.com/ceph/ceph/pull/13055>`_, optimistyzy) -* bluestore: os/bluestore/NVMEDevice: fix the compilation issue for collect_metadata (`pr#14455 <https://github.com/ceph/ceph/pull/14455>`_, optimistyzy) -* bluestore: os/bluestore/NVMEdevice: fix the unrelease segs issue (`pr#12862 <https://github.com/ceph/ceph/pull/12862>`_, optimistyzy) -* bluestore: os/bluestore: only submit deferred if there is any (`pr#16269 <https://github.com/ceph/ceph/pull/16269>`_, Sage Weil) -* bluestore: os/bluestore: preallocate object[extent_shard] key to avoid reallocate (`pr#12644 <https://github.com/ceph/ceph/pull/12644>`_, xie xingguo) -* bluestore: os/bluestore: pre-calculate number of ghost buffers to evict (`pr#15029 <https://github.com/ceph/ceph/pull/15029>`_, xie xingguo) -* bluestore: os/bluestore: put strings in mempool (`pr#12651 <https://github.com/ceph/ceph/pull/12651>`_, Allen Samuels, Sage Weil) -* bluestore: os/bluestore: Record l_bluestore_state_kv_queued_lat for sync_submit (`pr#14448 <https://github.com/ceph/ceph/pull/14448>`_, Jianpeng Ma) -* bluestore: os/bluestore: reduce some overhead for _do_clone_range() and _do_remove() (`pr#15944 <https://github.com/ceph/ceph/pull/15944>`_, xie xingguo) -* bluestore: os/bluestore: refactor BlueStore::_do_write; kill dead ExtentMap::find_lextent() method (`pr#15750 <https://github.com/ceph/ceph/pull/15750>`_, xie xingguo) -* bluestore: os/bluestore: refactor ExtentMap::update to avoid preceeding db updat… (`pr#12394 <https://github.com/ceph/ceph/pull/12394>`_, Igor Fedotov) -* bluestore: os/bluestore: remove a never read value (`pr#12618 <https://github.com/ceph/ceph/pull/12618>`_, liuchang0812) -* bluestore: os/bluestore: Remove ExtentFreeListManager (`pr#14772 <https://github.com/ceph/ceph/pull/14772>`_, Jianpeng Ma) -* bluestore: os/bluestore: remove intermediate key var to avoid string copy (`pr#12643 <https://github.com/ceph/ceph/pull/12643>`_, xie xingguo) -* bluestore: os/bluestore: remove no use parameter in bluestore_blob_t::map_bl (`pr#13013 <https://github.com/ceph/ceph/pull/13013>`_, wangzhengyong) -* bluestore: os/bluestore: remove unneeded indirection in BitMapZone (`pr#13743 <https://github.com/ceph/ceph/pull/13743>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: remove unused condition variable (`pr#14973 <https://github.com/ceph/ceph/pull/14973>`_, Igor Fedotov) -* bluestore: os/bluestore: remove unused local variable "pos" (`pr#13715 <https://github.com/ceph/ceph/pull/13715>`_, wangzhengyong) -* bluestore: os/bluestore: remove unused variables (`pr#15718 <https://github.com/ceph/ceph/pull/15718>`_, zhanglei) -* bluestore: os/bluestore: rename/fix throttle options (`pr#14717 <https://github.com/ceph/ceph/pull/14717>`_, Sage Weil) -* bluestore: os/bluestore: roundoff bluefs allocs to bluefs_alloc_size (`pr#14876 <https://github.com/ceph/ceph/pull/14876>`_, Ramesh Chander) -* bluestore: os/bluestore: shrink buffer_map key into uint32_t (`pr#12850 <https://github.com/ceph/ceph/pull/12850>`_, xie xingguo) -* bluestore: os/bluestore: slightly refactor Blob::try_reuse_blob (`pr#15836 <https://github.com/ceph/ceph/pull/15836>`_, xie xingguo) -* bluestore: os/bluestore: some cleanup (`pr#13390 <https://github.com/ceph/ceph/pull/13390>`_, liuchang0812) -* bluestore: os/bluestore: space between func and contents (`pr#16804 <https://github.com/ceph/ceph/pull/16804>`_, xie xingguo) -* bluestore: os/bluestore: stop calculating bound if we must reshard; narrow shard combination condition (`pr#15631 <https://github.com/ceph/ceph/pull/15631>`_, xie xingguo) -* bluestore: os/bluestore/StupidAllocator: rounded down len to an align boundary (`issue#20660 <http://tracker.ceph.com/issues/20660>`_, `pr#16593 <https://github.com/ceph/ceph/pull/16593>`_, Zhu Shangzhong) -* bluestore: os/bluestore: target_bytes should scale with meta/data ratios (`pr#15708 <https://github.com/ceph/ceph/pull/15708>`_, Mark Nelson) -* bluestore: os/bluestore: _txc_release_alloc when do wal cleaning (`pr#12692 <https://github.com/ceph/ceph/pull/12692>`_, Xinze Chi) -* bluestore: os/bluestore: use bufferlist functions whenever possible (`pr#16158 <https://github.com/ceph/ceph/pull/16158>`_, Jianpeng Ma) -* bluestore: os/bluestore: use correct bound encode size for unused (`pr#14731 <https://github.com/ceph/ceph/pull/14731>`_, Haomai Wang) -* bluestore: os/bluestore: use reference to avoid string copy (`pr#16364 <https://github.com/ceph/ceph/pull/16364>`_, Pan Liu) -* bluestore: os: extend ObjectStore interface to dump store's performance counters (`pr#13203 <https://github.com/ceph/ceph/pull/13203>`_, Igor Fedotov) -* bluestore,performance: common/config_opts.h: compaction readahead for bluestore/rocksdb (`pr#14932 <https://github.com/ceph/ceph/pull/14932>`_, Mark Nelson) -* bluestore,performance: kv/RocksDBStore: implement rm_range_keys operator interface and test (`pr#13855 <https://github.com/ceph/ceph/pull/13855>`_, Haomai Wang) -* bluestore,performance: os/aio: remove the redundant memset(struct iocb) (`pr#13662 <https://github.com/ceph/ceph/pull/13662>`_, Jianpeng Ma) -* bluestore,performance: os/bluestore: add bluestore_prefer_wal_size option (`pr#13217 <https://github.com/ceph/ceph/pull/13217>`_, Sage Weil) -* bluestore,performance: os/bluestore: avoid overloading extents during reshard; atomic deferred_batch_ops (`pr#15502 <https://github.com/ceph/ceph/pull/15502>`_, xie xingguo) -* bluestore,performance: os/bluestore: avoid the VTABLE-related burden in BitMapAllocator's hotspot (`pr#14348 <https://github.com/ceph/ceph/pull/14348>`_, Radoslaw Zarzynski) -* bluestore,performance: os/bluestore: batch throttle (`pr#15284 <https://github.com/ceph/ceph/pull/15284>`_, Jianpeng Ma) -* bluestore,performance: os/bluestore/BlueFS: add bluefs_sync_write option (`pr#14510 <https://github.com/ceph/ceph/pull/14510>`_, Sage Weil) -* bluestore,performance: os/bluestore/BlueFS: optimize get_allocated (`pr#14121 <https://github.com/ceph/ceph/pull/14121>`_, Jianpeng Ma) -* bluestore,performance: os/bluestore/BlueFS: tune flushing of writes (`pr#13032 <https://github.com/ceph/ceph/pull/13032>`_, Sage Weil) -* bluestore,performance: os/bluestore/bluestore_types: drop std::bitset for blob unused (`pr#12569 <https://github.com/ceph/ceph/pull/12569>`_, Sage Weil) -* bluestore,performance: os/bluestore: cap rocksdb cache size (`pr#15786 <https://github.com/ceph/ceph/pull/15786>`_, Mark Nelson) -* bluestore,performance: os/bluestore: default 16KB min_alloc_size on ssd (`pr#14076 <https://github.com/ceph/ceph/pull/14076>`_, Sage Weil) -* bluestore,performance: os/bluestore: default cache size of 3gb (`pr#15976 <https://github.com/ceph/ceph/pull/15976>`_, Sage Weil) -* bluestore,performance: os/bluestore: differ default cache size for hdd/ssd backends (`pr#16157 <https://github.com/ceph/ceph/pull/16157>`_, xie xingguo) -* bluestore,performance: os/bluestore: do not balance bluefs on every kv_sync_thread iteration (`pr#14557 <https://github.com/ceph/ceph/pull/14557>`_, Sage Weil) -* bluestore,performance: os/bluestore: do not cache shard keys (`pr#12634 <https://github.com/ceph/ceph/pull/12634>`_, Sage Weil) -* bluestore,performance: os/bluestore: eliminate some excessive stuff (`pr#14675 <https://github.com/ceph/ceph/pull/14675>`_, Igor Fedotov) -* bluestore,performance: os/bluestore: fix deferred writes; improve flush (`pr#13888 <https://github.com/ceph/ceph/pull/13888>`_, Sage Weil) -* bluestore,performance: os/bluestore: generate same onode extent-shard keys in a more efficient way (`pr#12681 <https://github.com/ceph/ceph/pull/12681>`_, xie xingguo) -* bluestore,performance: os/bluestore: get rid off excessive lock at BitMapAllocator (`pr#14749 <https://github.com/ceph/ceph/pull/14749>`_, Igor Fedotov) -* bluestore,performance: os/blueStore: In osd_tp_thread, call _txc_finalize_kv (`pr#14709 <https://github.com/ceph/ceph/pull/14709>`_, Jianpeng Ma) -* bluestore,performance: os/bluestore: keep statfs replica in RAM to avoid expensive KV retrieval (`pr#15309 <https://github.com/ceph/ceph/pull/15309>`_, Igor Fedotov) -* bluestore,performance: os/bluestore/KernelDevice: batch aio submit (`pr#16032 <https://github.com/ceph/ceph/pull/16032>`_, Haodong Tang) -* bluestore,performance: os/bluestore/KernelDevice: fix sync write vs flush (`pr#15034 <https://github.com/ceph/ceph/pull/15034>`_, Sage Weil) -* bluestore,performance: os/bluestore: kvdb histogram (`pr#12620 <https://github.com/ceph/ceph/pull/12620>`_, Varada Kari) -* bluestore,performance: os/bluestore: make bluestore_max_blob_size parameter hdd/ssd case dependant (`pr#14434 <https://github.com/ceph/ceph/pull/14434>`_, Igor Fedotov) -* bluestore,performance: os/bluestore: memory and dereference clean-up in the BitAllocator (`pr#13811 <https://github.com/ceph/ceph/pull/13811>`_, Radoslaw Zarzynski) -* bluestore,performance: os/bluestore: move cache_trim into MempoolThread (`pr#15380 <https://github.com/ceph/ceph/pull/15380>`_, xie xingguo) -* bluestore,performance: os/bluestore: optimize blob usage when doing appends/overwrites (`pr#13337 <https://github.com/ceph/ceph/pull/13337>`_, Igor Fedotov) -* bluestore,performance: os/bluestore: optimized (encode|decode)_escaped (`pr#15759 <https://github.com/ceph/ceph/pull/15759>`_, Piotr Dałek) -* bluestore,performance: os/bluestore: partial reshard support (`pr#13162 <https://github.com/ceph/ceph/pull/13162>`_, Sage Weil) -* bluestore,performance: os/bluestore: prevent lock for almost "flush" calls (`pr#12524 <https://github.com/ceph/ceph/pull/12524>`_, Haomai Wang) -* bluestore,performance: os/bluestore: put bluefs in the middle of the shared device (`pr#14873 <https://github.com/ceph/ceph/pull/14873>`_, Sage Weil) -* bluestore,performance: os/bluestore: refactor small write handling to reuse blob more effect… (`pr#14399 <https://github.com/ceph/ceph/pull/14399>`_, Igor Fedotov) -* bluestore,performance: os/bluestore: remove CephContext\* from BmapEntry (`pr#13651 <https://github.com/ceph/ceph/pull/13651>`_, Radoslaw Zarzynski) -* bluestore,performance: os/bluestore: replace Blob ref_map with reference counting (`pr#12904 <https://github.com/ceph/ceph/pull/12904>`_, Igor Fedotov) -* bluestore,performance: os/bluestore: rewrite deferred write handling (`issue#16644 <http://tracker.ceph.com/issues/16644>`_, `pr#14491 <https://github.com/ceph/ceph/pull/14491>`_, Sage Weil) -* bluestore,performance: os/bluestore: separate kv_sync_thread into two parts (`pr#14035 <https://github.com/ceph/ceph/pull/14035>`_, Jianpeng Ma, Igor Fedotov, Sage Weil) -* bluestore,performance: os/bluestore: set cache meta ratio to .9 (`pr#12635 <https://github.com/ceph/ceph/pull/12635>`_, Sage Weil) -* bluestore,performance: os/bluestore: the exhausted check in BitMapZone can be lock-less (`pr#13653 <https://github.com/ceph/ceph/pull/13653>`_, Radoslaw Zarzynski) -* bluestore,performance: os/bluestore: try to unshare blobs for EC overwrite workload (`pr#14239 <https://github.com/ceph/ceph/pull/14239>`_, Sage Weil) -* bluestore,performance: os/bluestore: tune deferred_batch_ops separately for hdd and ssd (`pr#14435 <https://github.com/ceph/ceph/pull/14435>`_, Sage Weil) -* bluestore,performance: os/bluestore: unify throttling model (`issue#19542 <http://tracker.ceph.com/issues/19542>`_, `pr#14306 <https://github.com/ceph/ceph/pull/14306>`_, Sage Weil) -* bluestore,performance: os/bluestore: use aio for reads (`issue#19030 <http://tracker.ceph.com/issues/19030>`_, `pr#13066 <https://github.com/ceph/ceph/pull/13066>`_, Sage Weil) -* bluestore,performance: os/bluestore: use Best-Effort policy when evicting onode from cache (`pr#12876 <https://github.com/ceph/ceph/pull/12876>`_, xie xingguo) -* bluestore,performance: os/bluestore: use denc for varint encoding (`pr#14911 <https://github.com/ceph/ceph/pull/14911>`_, Piotr Dałek) -* bluestore,performance: os/bluestore: various onode changes to reduce its in-memory footprint (`pr#12700 <https://github.com/ceph/ceph/pull/12700>`_, Igor Fedotov) -* bluestore,performance: os/fs/aio: use small_vector for aio_t; clean up header location (`pr#14853 <https://github.com/ceph/ceph/pull/14853>`_, Sage Weil) -* bluestore: rocksdb: add option: writable_file_max_buffer_size = 0 (`pr#12562 <https://github.com/ceph/ceph/pull/12562>`_, Jianpeng Ma) -* bluestore,tests: ceph-dencoder: enable bluestore types (`pr#13595 <https://github.com/ceph/ceph/pull/13595>`_, Willem Jan Withagen, Kefu Chai) -* bluestore,tests: ceph_test_objectstore: match clone_range src and dst offset (`pr#13211 <https://github.com/ceph/ceph/pull/13211>`_, Sage Weil) -* bluestore,tests: qa/objectstore/bluestore\*: fsck on mount (`pr#15785 <https://github.com/ceph/ceph/pull/15785>`_, Sage Weil) -* bluestore,tests: test/ceph-test-objectstore: Don't always include BlueStore code (`pr#13516 <https://github.com/ceph/ceph/pull/13516>`_, Willem Jan Withagen) -* bluestore,tests: test/objectstore/store_test_fixture.cc: Exclude bluestore code if required (`pr#14085 <https://github.com/ceph/ceph/pull/14085>`_, Willem Jan Withagen) -* bluestore,tests: test/store_test: add deferred test case setup to support explicit min… (`issue#18857 <http://tracker.ceph.com/issues/18857>`_, `pr#13415 <https://github.com/ceph/ceph/pull/13415>`_, Igor Fedotov) -* bluestore,tests: test/store_test: fix bluestore test cases disablement (`pr#14228 <https://github.com/ceph/ceph/pull/14228>`_, Igor Fedotov) -* bluestore,tests: test/unittest_bluefs: check whether add_block_device success (`pr#14013 <https://github.com/ceph/ceph/pull/14013>`_, shiqi) -* bluestore,tests: test/unittest_bluefs: When fsync ret is less than 0, fsync can not be… (`pr#15365 <https://github.com/ceph/ceph/pull/15365>`_, shiqi) -* bluestore,tests: unittest_alloc: add test_alloc_big (`issue#16662 <http://tracker.ceph.com/issues/16662>`_, `pr#14844 <https://github.com/ceph/ceph/pull/14844>`_, Sage Weil) -* bluestore,tools: ceph-bluestore-tool: rename from bluefs-tool; improve usage (`pr#14258 <https://github.com/ceph/ceph/pull/14258>`_, Sage Weil) -* bluestore,tools: ceph-kvstore-tool: allow 'bluestore-kv' as kvdb type; add escaping, compaction (`pr#14718 <https://github.com/ceph/ceph/pull/14718>`_, Sage Weil) -* bluestore: wrap blob id when it reaches maximum value of int16_t (`issue#19555 <http://tracker.ceph.com/issues/19555>`_, `pr#15654 <https://github.com/ceph/ceph/pull/15654>`_, Xiaoyan Li) -* build/ops: 12.0.3 (`pr#15600 <https://github.com/ceph/ceph/pull/15600>`_, Jenkins Build Slave User) -* build/ops: add 12.0.1 release tag in master (`pr#14690 <https://github.com/ceph/ceph/pull/14690>`_, Jenkins Build Slave User) -* build/ops: add psmisc dependency to ceph-base (deb and rpm) (`issue#19129 <http://tracker.ceph.com/issues/19129>`_, `pr#13744 <https://github.com/ceph/ceph/pull/13744>`_, Nathan Cutler) -* build/ops: add sanity checks to run-make-check.sh (`pr#12683 <https://github.com/ceph/ceph/pull/12683>`_, Nathan Cutler) -* build/ops: alpine: add alpine linux dev support (`pr#9853 <https://github.com/ceph/ceph/pull/9853>`_, John Coyle) -* build/ops: arch: fix build on PowerPC with FreeBSD (`pr#14378 <https://github.com/ceph/ceph/pull/14378>`_, Andrew Solomon) -* build/ops: arch: fix cmake's ARM CRC intrinsics test to handle duplicitous gcc 4.8.5 (`issue#19386 <http://tracker.ceph.com/issues/19386>`_, `pr#14132 <https://github.com/ceph/ceph/pull/14132>`_, Dan Mick) -* build/ops: arch: use __get_cpuid instead of do_cpuid (`issue#7869 <http://tracker.ceph.com/issues/7869>`_, `pr#14857 <https://github.com/ceph/ceph/pull/14857>`_, Jos Collin) -* build/ops: auth: Let's not use the deprecated cephx option (`pr#12721 <https://github.com/ceph/ceph/pull/12721>`_, Dave Chen) -* build/ops: build: Add Virtuozzo Linux support (`pr#14301 <https://github.com/ceph/ceph/pull/14301>`_, Andrey Parfenov) -* build/ops: build: build erasure-code isa lib without versions (`pr#16205 <https://github.com/ceph/ceph/pull/16205>`_, James Page) -* build/ops: build/cmake: provide asan, tsan, ubsan builds (`pr#12615 <https://github.com/ceph/ceph/pull/12615>`_, Matt Benjamin) -* build/ops: build: execute dh_systemd_{enable,start} after dh_install (`issue#19585 <http://tracker.ceph.com/issues/19585>`_, `pr#16218 <https://github.com/ceph/ceph/pull/16218>`_, James Page) -* build/ops: build: move bash_completion.d/ceph to ceph-common (`pr#15148 <https://github.com/ceph/ceph/pull/15148>`_, Leo Zhang) -* build/ops: build: remove ceph-disk-udev entirely (`pr#15259 <https://github.com/ceph/ceph/pull/15259>`_, Leo Zhang) -* build/ops: build: remove ceph-qa-suite directory (`pr#13880 <https://github.com/ceph/ceph/pull/13880>`_, Casey Bodley) -* build/ops: build: revert -Wvla from #15342 (`pr#15469 <https://github.com/ceph/ceph/pull/15469>`_, Willem Jan Withagen) -* build/ops: builds with dpdk v16.07 (`pr#12707 <https://github.com/ceph/ceph/pull/12707>`_, Kefu Chai) -* build/ops: build: Use .S suffix for ppc64le assembly files (`issue#20106 <http://tracker.ceph.com/issues/20106>`_, `pr#15373 <https://github.com/ceph/ceph/pull/15373>`_, Andrew Solomon) -* build/ops: ceph-disk: ability to use a different cluster name with dmcrypt (`issue#17821 <http://tracker.ceph.com/issues/17821>`_, `pr#11786 <https://github.com/ceph/ceph/pull/11786>`_, Sébastien Han, Erwan Velu) -* build/ops: ceph-disk: don't activate suppressed journal devices (`issue#19489 <http://tracker.ceph.com/issues/19489>`_, `pr#16123 <https://github.com/ceph/ceph/pull/16123>`_, David Disseldorp) -* build/ops: ceph.in: allow developer mode from outside build tree (`issue#20472 <http://tracker.ceph.com/issues/20472>`_, `pr#16055 <https://github.com/ceph/ceph/pull/16055>`_, Dan Mick) -* build/ops: ceph_release: we are in the 'rc' phase (12.1.z) (`pr#15957 <https://github.com/ceph/ceph/pull/15957>`_, Sage Weil) -* build/ops: ceph.spec.in, debian/control: Add bc to build dependencies (`issue#18876 <http://tracker.ceph.com/issues/18876>`_, `pr#13338 <https://github.com/ceph/ceph/pull/13338>`_, Kyr Shatskyy) -* build/ops: Clean up make check for persistent test nodes (like arm64) (`pr#16773 <https://github.com/ceph/ceph/pull/16773>`_, Dan Mick) -* build/ops: cmake,crc32c: conditionalize crc32c on different archs (`pr#14289 <https://github.com/ceph/ceph/pull/14289>`_, Kefu Chai) -* build/ops: CMakeLists.txt: boost_python.so requires libpython.\*.so on FreeBSD (`pr#12763 <https://github.com/ceph/ceph/pull/12763>`_, Willem Jan Withagen) -* build/ops: CMakeLists.txt: don't do crypto/isa-l if not Intel (`pr#14721 <https://github.com/ceph/ceph/pull/14721>`_, Dan Mick) -* build/ops: CMakeLists.txt: suppress unneeded warning about jemalloc (`pr#13377 <https://github.com/ceph/ceph/pull/13377>`_, Willem Jan Withagen) -* build/ops,common: build: Adds C++ warning flag for C Variable-Length Arrays (`pr#15342 <https://github.com/ceph/ceph/pull/15342>`_, Jesse Williamson) -* build/ops,common: common/blkdev.cc: propagate get_device_by_fd to different OSes (`pr#15547 <https://github.com/ceph/ceph/pull/15547>`_, Willem Jan Withagen) -* build/ops: common/module.c: do not use strerror_r the GNU way (`pr#12363 <https://github.com/ceph/ceph/pull/12363>`_, Willem Jan Withagen) -* build/ops: compressor/zstd: add zstd to embedded ceph (`pr#13159 <https://github.com/ceph/ceph/pull/13159>`_, Bassam Tabbara) -* build/ops: conditionalize rgw Beast frontend so it isn't built on s390x architecture (`issue#20048 <http://tracker.ceph.com/issues/20048>`_, `pr#15225 <https://github.com/ceph/ceph/pull/15225>`_, Willem Jan Withagen, Nathan Cutler, Kefu Chai, Tim Serong, Casey Bodley) -* build/ops,core: build: let FreeBSD build ceph-fuse (`pr#14282 <https://github.com/ceph/ceph/pull/14282>`_, Willem Jan Withagen) -* build/ops,core: ceph-disk: use correct user in check_journal_req (`issue#18538 <http://tracker.ceph.com/issues/18538>`_, `pr#12947 <https://github.com/ceph/ceph/pull/12947>`_, Samuel Matzek) -* build/ops,core: common/freebsd_errno.cc: fix missing (`pr#15741 <https://github.com/ceph/ceph/pull/15741>`_, Willem Jan Withagen) -* build/ops,core: erasure-code: update ec_isa version + add missing AVX512 ISA-L sources (`pr#15636 <https://github.com/ceph/ceph/pull/15636>`_, Ganesh Mahalingam, Tushar Gohad) -* build/ops,core: os: allow offline conversion of filestore -> bluestore (or anything else) (`pr#14210 <https://github.com/ceph/ceph/pull/14210>`_, Sage Weil) -* build/ops,core: osd/OSD: auto class on osd start up (`pr#16014 <https://github.com/ceph/ceph/pull/16014>`_, xie xingguo) -* build/ops,core: osd/Pool: Disallow enabling 'hashpspool' option to a pool without '--yes-i-really-mean-it' (`issue#18468 <http://tracker.ceph.com/issues/18468>`_, `pr#13406 <https://github.com/ceph/ceph/pull/13406>`_, Vikhyat Umrao) -* build/ops,core,tests: osd/dmclock/testing: reorganize testing, building now optional (`issue#19987 <http://tracker.ceph.com/issues/19987>`_, `pr#15375 <https://github.com/ceph/ceph/pull/15375>`_, J. Eric Ivancich) -* build/ops: debian: Add missing tp files in deb packaging (`pr#13526 <https://github.com/ceph/ceph/pull/13526>`_, Ganesh Mahalingam) -* build/ops: debian: ceph-mgr: fix package description (`pr#15513 <https://github.com/ceph/ceph/pull/15513>`_, Fabian Grünbichler) -* build/ops: debian/control: add ceph-base-dbg (`pr#13796 <https://github.com/ceph/ceph/pull/13796>`_, Sage Weil) -* build/ops: debian: drop boost build dependencies (`pr#13524 <https://github.com/ceph/ceph/pull/13524>`_, Kefu Chai) -* build/ops: debian: package ceph.logroate properly (`issue#19390 <http://tracker.ceph.com/issues/19390>`_, `pr#14600 <https://github.com/ceph/ceph/pull/14600>`_, Kefu Chai) -* build/ops: debian: package crypto plugin only on amd64 (`pr#14820 <https://github.com/ceph/ceph/pull/14820>`_, Kefu Chai) -* build/ops: debian/rpm: move radosgw-admin to ceph-common (`issue#19577 <http://tracker.ceph.com/issues/19577>`_, `pr#14940 <https://github.com/ceph/ceph/pull/14940>`_, Ali Maredia) -* build/ops: debian/rules, ceph.spec.in: invoke cmake with -DBOOST_J (`pr#14114 <https://github.com/ceph/ceph/pull/14114>`_, Dan Mick) -* build/ops: debian: sync logrotate packaging with downstream (`issue#19938 <http://tracker.ceph.com/issues/19938>`_, `pr#15567 <https://github.com/ceph/ceph/pull/15567>`_, Fabian Grünbichler) -* build/ops: debian: workaround the bug in dpkg-maintscript-helper (`issue#20453 <http://tracker.ceph.com/issues/20453>`_, `pr#16072 <https://github.com/ceph/ceph/pull/16072>`_, Kefu Chai) -* build/ops: debian: wrap-and-sort all files (`pr#16110 <https://github.com/ceph/ceph/pull/16110>`_, James Page) -* build/ops: dmclock: error: ‘function’ in namespace ‘std’ does not name a template type (`pr#14909 <https://github.com/ceph/ceph/pull/14909>`_, Jos Collin) -* build/ops: dmclock: include missing <functional> header (`pr#14923 <https://github.com/ceph/ceph/pull/14923>`_, Jos Collin) -* build/ops: dmclock: initial commit of dmclock QoS library (`pr#14330 <https://github.com/ceph/ceph/pull/14330>`_, J. Eric Ivancich) -* build/ops: do_cmake.sh: enable ccache if installed (`pr#15274 <https://github.com/ceph/ceph/pull/15274>`_, Sage Weil) -* build/ops: do_cmake.sh: fix syntax for /bin/sh (doesn't have +=) (`pr#16433 <https://github.com/ceph/ceph/pull/16433>`_, Dan Mick) -* build/ops: do_freebsd.sh: Remove ENODATA requirement (`pr#13626 <https://github.com/ceph/ceph/pull/13626>`_, Willem Jan Withagen) -* build/ops: drop libfcgi build dependency (`pr#15285 <https://github.com/ceph/ceph/pull/15285>`_, Nathan Cutler) -* build/ops: gitignore: Ignore rejects by patch (`pr#14405 <https://github.com/ceph/ceph/pull/14405>`_, Willem Jan Withagen) -* build/ops: include/assert: test c++ before using static_cast<> (`pr#16424 <https://github.com/ceph/ceph/pull/16424>`_, Kefu Chai) -* build/ops: init-ceph: add ceph libraries path to environment (`pr#14693 <https://github.com/ceph/ceph/pull/14693>`_, Mohamad Gebai) -* build/ops: init-ceph: fix ceph user args (`pr#13467 <https://github.com/ceph/ceph/pull/13467>`_, Sage Weil) -* build/ops: init-ceph: Make init-ceph work under FreeBSD for init-system (`pr#13209 <https://github.com/ceph/ceph/pull/13209>`_, Willem Jan Withagen) -* build/ops: install-deps.sh: add missing dependencies for FreeBSD (`pr#16545 <https://github.com/ceph/ceph/pull/16545>`_, Alan Somers) -* build/ops: install-deps.sh: workaround setuptools' dependency on six (`pr#15406 <https://github.com/ceph/ceph/pull/15406>`_, Kefu Chai) -* build/ops: mailmap: Update OVH contributors (`pr#13063 <https://github.com/ceph/ceph/pull/13063>`_, Bartłomiej Święcki) -* build/ops: make package groups comply with openSUSE guidelines (`issue#19184 <http://tracker.ceph.com/issues/19184>`_, `pr#13781 <https://github.com/ceph/ceph/pull/13781>`_, Nathan Cutler) -* build/ops: make-srpm: Pass first parameter to make-dist for building SRPM (`pr#13480 <https://github.com/ceph/ceph/pull/13480>`_, Wido den Hollander) -* build/ops: merge v12.0.2 release tag (`pr#15091 <https://github.com/ceph/ceph/pull/15091>`_, Jenkins Build Slave User) -* build/ops,mgr: debian/ceph-base.dirs: create bootstrap-mgr dirs (`pr#14838 <https://github.com/ceph/ceph/pull/14838>`_, Sage Weil) -* build/ops: miscellaneous cleanups and fixes (run-make-check.sh, ceph.spec.in) (`issue#20091 <http://tracker.ceph.com/issues/20091>`_, `issue#20127 <http://tracker.ceph.com/issues/20127>`_, `pr#15399 <https://github.com/ceph/ceph/pull/15399>`_, Nathan Cutler) -* build/ops,mon: mon/ConfigKeyService: add 'config-key dump' to show keys and vals (`pr#14858 <https://github.com/ceph/ceph/pull/14858>`_, Dan Mick) -* build/ops,mon: systemd: Restart Mon after 10s in case of failure (`issue#18635 <http://tracker.ceph.com/issues/18635>`_, `pr#13057 <https://github.com/ceph/ceph/pull/13057>`_, Wido den Hollander) -* build/ops: msg/async/rdma: compile with rdma as default (`pr#13901 <https://github.com/ceph/ceph/pull/13901>`_, DanielBar-On) -* build/ops: os/bluestore: fix build errors when spdk is on (`pr#16118 <https://github.com/ceph/ceph/pull/16118>`_, Ilsoo Byun) -* build/ops: packaging: install libceph-common.so\* not libceph-common.so.\* (`issue#18692 <http://tracker.ceph.com/issues/18692>`_, `pr#13148 <https://github.com/ceph/ceph/pull/13148>`_, Kefu Chai) -* build/ops,performance: crc32c: Add crc32c function optimized for ppc architecture (`pr#13909 <https://github.com/ceph/ceph/pull/13909>`_, Andrew Solomon) -* build/ops,performance,rbd: byteorder: use gcc intrinsics for byteswap (`pr#15012 <https://github.com/ceph/ceph/pull/15012>`_, Kefu Chai) -* build/ops,rbd,rgw: CMakeLists: trim rbd/rgw forced dependencies (`pr#16574 <https://github.com/ceph/ceph/pull/16574>`_, Patrick Donnelly) -* build/ops,rbd,tests: test/librbd: decouple ceph_test_librbd_api from libceph-common (`issue#20175 <http://tracker.ceph.com/issues/20175>`_, `pr#15611 <https://github.com/ceph/ceph/pull/15611>`_, Kefu Chai) -* build/ops,rbd,tests: test/librbd: re-enable internal tests in ceph_test_librbd (`pr#16255 <https://github.com/ceph/ceph/pull/16255>`_, Mykola Golub) -* build/ops,rbd,tests: test: Need to exclude the fsx executable also on FreeBSD (`pr#13686 <https://github.com/ceph/ceph/pull/13686>`_, Willem Jan Withagen) -* build/ops: Revert "msg/async: increase worker reference with local listen table enabled backend" (`issue#20603 <http://tracker.ceph.com/issues/20603>`_, `pr#16323 <https://github.com/ceph/ceph/pull/16323>`_, Haomai Wang) -* build/ops: Revert "msg/async/rdma: Debug prints for ibv (`pr#14245 <https://github.com/ceph/ceph/pull/14245>`_, Kefu Chai) -* build/ops,rgw: rgw_file: radosgw-admin can be built under FreeBSD (`pr#12191 <https://github.com/ceph/ceph/pull/12191>`_, Willem Jan Withagen) -* build/ops,rgw,tests,tools: vstart: allow to start multiple radosgw when RGW=x (`pr#15632 <https://github.com/ceph/ceph/pull/15632>`_, Adam Kupczyk) -* build/ops,rgw,tools: vstart: add --rgw_compression to set rgw compression plugin (`pr#15929 <https://github.com/ceph/ceph/pull/15929>`_, Casey Bodley) -* build/ops: rocksdb: build with ppc64 (`pr#12908 <https://github.com/ceph/ceph/pull/12908>`_, Kefu Chai) -* build/ops: rocksdb: sync with upstream (`pr#14456 <https://github.com/ceph/ceph/pull/14456>`_, Kefu Chai) -* build/ops: rocksdb: sync with upstream (`pr#14818 <https://github.com/ceph/ceph/pull/14818>`_, Nathan Cutler, Kefu Chai) -* build/ops: rpm: apply epoch only if %epoch macro is defined (`pr#15286 <https://github.com/ceph/ceph/pull/15286>`_, Nathan Cutler) -* build/ops: rpm: build ceph-resource-agents by default (`issue#17613 <http://tracker.ceph.com/issues/17613>`_, `pr#13515 <https://github.com/ceph/ceph/pull/13515>`_, Nathan Cutler) -* build/ops: rpm: bump epoch ahead of RHEL base (`issue#20508 <http://tracker.ceph.com/issues/20508>`_, `pr#16126 <https://github.com/ceph/ceph/pull/16126>`_, Ken Dreyer) -* build/ops: rpm,deb: fix ceph-volume (`issue#20915 <http://tracker.ceph.com/issues/20915>`_, `pr#16832 <https://github.com/ceph/ceph/pull/16832>`_, Sage Weil) -* build/ops: rpm: disable dwz to speed up valgrind (`issue#19099 <http://tracker.ceph.com/issues/19099>`_, `pr#13748 <https://github.com/ceph/ceph/pull/13748>`_, Kefu Chai) -* build/ops: rpm: drop boost build dependencies (`pr#13519 <https://github.com/ceph/ceph/pull/13519>`_, Nathan Cutler) -* build/ops: rpm: Drop legacy libxio support (`pr#16449 <https://github.com/ceph/ceph/pull/16449>`_, Nathan Cutler) -* build/ops: rpm: fix python-Sphinx package name for SUSE (`pr#15015 <https://github.com/ceph/ceph/pull/15015>`_, Nathan Cutler, Jan Matejek) -* build/ops: rpm: fix typo WTIH_BABELTRACE (`pr#16366 <https://github.com/ceph/ceph/pull/16366>`_, Nathan Cutler) -* build/ops: rpm: Fix undefined FIRST_ARG (`issue#20077 <http://tracker.ceph.com/issues/20077>`_, `pr#16208 <https://github.com/ceph/ceph/pull/16208>`_, Boris Ranto) -* build/ops: rpm: gperftools-devel >= 2.4 (`issue#13522 <http://tracker.ceph.com/issues/13522>`_, `pr#14870 <https://github.com/ceph/ceph/pull/14870>`_, Nathan Cutler) -* build/ops: rpm: make librbd1 %post scriptlet depend on coreutils (`issue#20052 <http://tracker.ceph.com/issues/20052>`_, `pr#15231 <https://github.com/ceph/ceph/pull/15231>`_, Giacomo Comes, Nathan Cutler) -* build/ops: rpm: move _epoch_prefix below Epoch definition (`pr#15417 <https://github.com/ceph/ceph/pull/15417>`_, Nathan Cutler) -* build/ops: rpm: move RDMA and python-prettytables build dependencies to distro-conditional section (`pr#15200 <https://github.com/ceph/ceph/pull/15200>`_, Nathan Cutler) -* build/ops: rpm: obsolete libcephfs1 (`pr#16074 <https://github.com/ceph/ceph/pull/16074>`_, Nathan Cutler) -* build/ops: rpm: package COPYING, move sample ceph.conf to ceph-common (`pr#15596 <https://github.com/ceph/ceph/pull/15596>`_, Nathan Cutler) -* build/ops: rpm: package crypto on x86_64 only (`pr#14779 <https://github.com/ceph/ceph/pull/14779>`_, Nathan Cutler) -* build/ops: rpm: put mgr python build dependencies in make_check bcond (`issue#20425 <http://tracker.ceph.com/issues/20425>`_, `pr#15940 <https://github.com/ceph/ceph/pull/15940>`_, Nathan Cutler, Tim Serong) -* build/ops: rpm: sane packaging of %{_docdir}/ceph directory (`pr#15900 <https://github.com/ceph/ceph/pull/15900>`_, Nathan Cutler) -* build/ops: script: adding contributor credits script (`pr#13251 <https://github.com/ceph/ceph/pull/13251>`_, Patrick McGarry) -* build/ops: script: drop the -x arg for credits script (`pr#14296 <https://github.com/ceph/ceph/pull/14296>`_, Abhishek Lekshmanan) -* build/ops: script/sepia_bt.sh: download packages from shaman not gitbuilder (`pr#12799 <https://github.com/ceph/ceph/pull/12799>`_, Kefu Chai) -* build/ops: script/sepia_bt.sh: get sha1,release from t.log if it's not in core (`pr#13620 <https://github.com/ceph/ceph/pull/13620>`_, Kefu Chai) -* build/ops: script/sepia_bt.sh: support xenial (`pr#13292 <https://github.com/ceph/ceph/pull/13292>`_, Kefu Chai) -* build/ops: selinux: Allow ceph daemons to read net stats (`issue#19254 <http://tracker.ceph.com/issues/19254>`_, `pr#13945 <https://github.com/ceph/ceph/pull/13945>`_, Boris Ranto) -* build/ops: selinux: Allow read on var_run_t (`issue#16674 <http://tracker.ceph.com/issues/16674>`_, `pr#15523 <https://github.com/ceph/ceph/pull/15523>`_, Boris Ranto) -* build/ops: selinux: Do parallel relabel on package install (`issue#20077 <http://tracker.ceph.com/issues/20077>`_, `pr#14871 <https://github.com/ceph/ceph/pull/14871>`_, Boris Ranto) -* build/ops: selinux: Install ceph-base before ceph-selinux (`issue#20184 <http://tracker.ceph.com/issues/20184>`_, `pr#15490 <https://github.com/ceph/ceph/pull/15490>`_, Boris Ranto) -* build/ops: Set subman cron attributes in spec file (`issue#20074 <http://tracker.ceph.com/issues/20074>`_, `pr#15270 <https://github.com/ceph/ceph/pull/15270>`_, Thomas Serlin) -* build/ops: spdk: upgrade spdk to v16.12 (`pr#12734 <https://github.com/ceph/ceph/pull/12734>`_, Pan Liu) -* build/ops: src/CMakeLists.txt: disable -Werror on rocksdb (`pr#12560 <https://github.com/ceph/ceph/pull/12560>`_, Willem Jan Withagen) -* build/ops: src/CMakeLists.txt: Move parse_secret_objs setting within definition block (`pr#12785 <https://github.com/ceph/ceph/pull/12785>`_, Willem Jan Withagen) -* build/ops: src/init-ceph.in: allow one((re)?start|stop) as commands (`pr#14560 <https://github.com/ceph/ceph/pull/14560>`_, Willem Jan Withagen) -* build/ops: sync luminous tag back to master (`pr#16758 <https://github.com/ceph/ceph/pull/16758>`_, Jenkins Build Slave User) -* build/ops: systemd: Add explicit Before=ceph.target (`pr#15835 <https://github.com/ceph/ceph/pull/15835>`_, Tim Serong) -* build/ops: systemd/ceph-disk: make it possible to customize timeout (`issue#18740 <http://tracker.ceph.com/issues/18740>`_, `pr#13197 <https://github.com/ceph/ceph/pull/13197>`_, Alexey Sheplyakov) -* build/ops: systemd/ceph-mgr: remove automagic mgr creation hack (`issue#19994 <http://tracker.ceph.com/issues/19994>`_, `pr#16023 <https://github.com/ceph/ceph/pull/16023>`_, Sage Weil) -* build/ops: systemd: remove ceph-create-keys from presets (`pr#14226 <https://github.com/ceph/ceph/pull/14226>`_, Sébastien Han) -* build/ops: systemd: Start OSDs after MONs (`issue#18516 <http://tracker.ceph.com/issues/18516>`_, `pr#13097 <https://github.com/ceph/ceph/pull/13097>`_, Boris Ranto) -* build/ops: test/fio_ceph_objectstore: fix fio plugin build failure caused by rec… (`pr#12655 <https://github.com/ceph/ceph/pull/12655>`_, Igor Fedotov) -* build/ops,tests: qa: make run-standalone work on FreeBSD (`pr#16595 <https://github.com/ceph/ceph/pull/16595>`_, Willem Jan Withagen) -* build/ops,tests: test/osd/CMakeLists.txt: osd-dup.sh require BlueStore/AIO (`pr#14387 <https://github.com/ceph/ceph/pull/14387>`_, Willem Jan Withagen) -* build/ops,tests: test/osd/osd-dup.sh: warn on low open file limit (`pr#14637 <https://github.com/ceph/ceph/pull/14637>`_, Piotr Dałek) -* build/ops,tests,tools: vstart.sh: Work around mgr restfull not available (`pr#15877 <https://github.com/ceph/ceph/pull/15877>`_, Willem Jan Withagen) -* build/ops: The Clangtastic Mr. Clocks (`pr#15186 <https://github.com/ceph/ceph/pull/15186>`_, Adam C. Emerson) -* build/ops: tool: add some ceph relate processes to ps-ceph.pl (`pr#12406 <https://github.com/ceph/ceph/pull/12406>`_, songbaisen) -* build/ops: tools/scripts:"FreeBSD getopt is not compatible, use the one from packages" (`pr#13260 <https://github.com/ceph/ceph/pull/13260>`_, Willem Jan Withagen) -* build/ops: tracing: Fix error in including all files in osd_tp (`pr#12501 <https://github.com/ceph/ceph/pull/12501>`_, Ganesh Mahalingam) -* build/ops: upstart: start radosgw-all according to runlevel (`issue#18313 <http://tracker.ceph.com/issues/18313>`_, `pr#12586 <https://github.com/ceph/ceph/pull/12586>`_, Ken Dreyer) -* build/ops: vstart: clean up usage a bit (`pr#13138 <https://github.com/ceph/ceph/pull/13138>`_, Sage Weil) -* build/ops: vstart: do not start mgr if not start_all (`pr#13974 <https://github.com/ceph/ceph/pull/13974>`_, Kefu Chai) -* build/ops: yasm-wrapper: filter -pthread (`pr#15249 <https://github.com/ceph/ceph/pull/15249>`_, Alessandro Barbieri) -* build/ops: yasm-wrapper: strip -E (stops ccache trashing source files) (`pr#14633 <https://github.com/ceph/ceph/pull/14633>`_, Tim Serong) -* cephfs: #11950: Persistent purge queue (`issue#11950 <http://tracker.ceph.com/issues/11950>`_, `pr#12786 <https://github.com/ceph/ceph/pull/12786>`_, John Spray) -* cephfs: #17980: MDS client blacklisting and blacklist on eviction (`issue#17980 <http://tracker.ceph.com/issues/17980>`_, `issue#9754 <http://tracker.ceph.com/issues/9754>`_, `pr#14610 <https://github.com/ceph/ceph/pull/14610>`_, John Spray) -* cephfs: #18600: Clear out tasks that don't make sense from multimds suite (`issue#18600 <http://tracker.ceph.com/issues/18600>`_, `pr#13089 <https://github.com/ceph/ceph/pull/13089>`_, John Spray) -* cephfs: ceph_fuse: fix daemonization when pid file is non-empty (`pr#13532 <https://github.com/ceph/ceph/pull/13532>`_, "Yan, Zheng") -* cephfs: ceph_fuse: pid_file default to empty (`issue#18309 <http://tracker.ceph.com/issues/18309>`_, `pr#12628 <https://github.com/ceph/ceph/pull/12628>`_, Nathan Cutler) -* cephfs: ceph-fuse: use user space permission check by default (`issue#19820 <http://tracker.ceph.com/issues/19820>`_, `pr#14907 <https://github.com/ceph/ceph/pull/14907>`_, "Yan, Zheng") -* cephfs: ceph: simplify CInode::maybe_export_pin() (`pr#15106 <https://github.com/ceph/ceph/pull/15106>`_, "Yan, Zheng") -* cephfs: client: avoid returning negative space available (`issue#20178 <http://tracker.ceph.com/issues/20178>`_, `pr#15481 <https://github.com/ceph/ceph/pull/15481>`_, John Spray) -* cephfs: client: call the lru_remove() twice,when trim cache (`pr#15662 <https://github.com/ceph/ceph/pull/15662>`_, huanwen ren) -* cephfs: client: check for luminous MDS before sending FLUSH_MDLOG (`pr#15805 <https://github.com/ceph/ceph/pull/15805>`_, John Spray) -* cephfs: client/Client.cc: after reset session from MDS - reconnect (`issue#18757 <http://tracker.ceph.com/issues/18757>`_, `pr#13522 <https://github.com/ceph/ceph/pull/13522>`_, Henrik Korkuc) -* cephfs: client/Client.cc: prevent segfaulting (`issue#9935 <http://tracker.ceph.com/issues/9935>`_, `pr#12550 <https://github.com/ceph/ceph/pull/12550>`_, Michal Jarzabek) -* cephfs: client: client_quota no longer optional (`pr#14978 <https://github.com/ceph/ceph/pull/14978>`_, Dan van der Ster) -* cephfs: client: don't request lookup parent if ino is root (`pr#12478 <https://github.com/ceph/ceph/pull/12478>`_, huanwen ren) -* cephfs: client: drop cap snaps when auth mds session gets closed (`issue#19022 <http://tracker.ceph.com/issues/19022>`_, `pr#13579 <https://github.com/ceph/ceph/pull/13579>`_, "Yan, Zheng") -* cephfs: client: fix clang warn of "argument is an uninitialized value" (`pr#12580 <https://github.com/ceph/ceph/pull/12580>`_, liuchang0812) -* cephfs: client: fix Client::handle_cap_flushsnap_ack() crash (`issue#18460 <http://tracker.ceph.com/issues/18460>`_, `pr#12859 <https://github.com/ceph/ceph/pull/12859>`_, Yan, Zheng) -* cephfs: client: fix Dentry::dump (`pr#15779 <https://github.com/ceph/ceph/pull/15779>`_, huanwen ren) -* cephfs: client: fix display ino in the ldout (`pr#15314 <https://github.com/ceph/ceph/pull/15314>`_, huanwen ren) -* cephfs: client: fix potential buffer overflow (`pr#12515 <https://github.com/ceph/ceph/pull/12515>`_, Yunchuan Wen) -* cephfs: client: fix the cross-quota rename boundary check conditions (`pr#12489 <https://github.com/ceph/ceph/pull/12489>`_, Greg Farnum) -* cephfs: client: fix UserPerm::gid_in_group() (`issue#19903 <http://tracker.ceph.com/issues/19903>`_, `pr#15039 <https://github.com/ceph/ceph/pull/15039>`_, "Yan, Zheng") -* cephfs: client: getattr before returning quota/layout xattrs (`issue#17939 <http://tracker.ceph.com/issues/17939>`_, `pr#14018 <https://github.com/ceph/ceph/pull/14018>`_, John Spray) -* cephfs: client/inode: fix the dump type of Inode::dump() (`pr#15198 <https://github.com/ceph/ceph/pull/15198>`_, huanwen ren) -* cephfs: client: populate metadata during mount (`issue#18361 <http://tracker.ceph.com/issues/18361>`_, `pr#12915 <https://github.com/ceph/ceph/pull/12915>`_, John Spray) -* cephfs: client: priority to verify the correctness of the "flag" (`pr#12897 <https://github.com/ceph/ceph/pull/12897>`_, huanwen ren) -* cephfs: client: refine fsync/close writeback error handling (`pr#14589 <https://github.com/ceph/ceph/pull/14589>`_, John Spray) -* cephfs: client: remove dead log code (`pr#13093 <https://github.com/ceph/ceph/pull/13093>`_, Patrick Donnelly) -* cephfs: client: remove request from session->requests when handling forward (`issue#18675 <http://tracker.ceph.com/issues/18675>`_, `pr#13124 <https://github.com/ceph/ceph/pull/13124>`_, "Yan, Zheng") -* cephfs: client: simplify remove_cap interface (`pr#12161 <https://github.com/ceph/ceph/pull/12161>`_, John Spray) -* cephfs: client: specify inode in get_caps log message (`pr#13966 <https://github.com/ceph/ceph/pull/13966>`_, John Spray) -* cephfs: client: wait for lastest osdmap when handling set file/dir layout (`issue#18914 <http://tracker.ceph.com/issues/18914>`_, `pr#13580 <https://github.com/ceph/ceph/pull/13580>`_, "Yan, Zheng") -* cephfs,common: common/MemoryModel: Bump int to long and drop mallinfo (`pr#13453 <https://github.com/ceph/ceph/pull/13453>`_, Xiaoxi Chen) -* cephfs,common,core: librados,osdc: kill ack vs commit distinction (`pr#12607 <https://github.com/ceph/ceph/pull/12607>`_, Sage Weil) -* cephfs,common: include/fs_types: fix unsigned integer overflow (`pr#12440 <https://github.com/ceph/ceph/pull/12440>`_, runsisi) -* cephfs,common,rbd: blkin: librbd trace hooks (`pr#15053 <https://github.com/ceph/ceph/pull/15053>`_, Victor Araujo, Jason Dillaman) -* cephfs,common,rbd: osdc: cache should ignore error bhs during trim (`issue#18436 <http://tracker.ceph.com/issues/18436>`_, `pr#12966 <https://github.com/ceph/ceph/pull/12966>`_, Jason Dillaman) -* cephfs,core: Add test for is_hacky_ecoverwrites in cephfs pool checks (`pr#13466 <https://github.com/ceph/ceph/pull/13466>`_, John Spray) -* cephfs,core: cleanup: use std::make_shared to replace new (`pr#12276 <https://github.com/ceph/ceph/pull/12276>`_, Yunchuan Wen) -* cephfs,core,mon: mon/MDSMonitor: fix segv when multiple MDSs raise same alert (`pr#16302 <https://github.com/ceph/ceph/pull/16302>`_, Sage Weil) -* cephfs: fix mount point break off problem after mds switch occured (`issue#19437 <http://tracker.ceph.com/issues/19437>`_, `pr#14267 <https://github.com/ceph/ceph/pull/14267>`_, Guan yunfei) -* cephfs: fix write_buf's _len overflow problem (`issue#19033 <http://tracker.ceph.com/issues/19033>`_, `pr#13587 <https://github.com/ceph/ceph/pull/13587>`_, Yang Honggang) -* cephfs: fs/ceph-fuse: normalize file open flags on the wire (`pr#14822 <https://github.com/ceph/ceph/pull/14822>`_, Jan Fajerski) -* cephfs: libcephfs.cc: fix memory leak (`pr#12557 <https://github.com/ceph/ceph/pull/12557>`_, Michal Jarzabek) -* cephfs: libcephfs: cleanups (`pr#12830 <https://github.com/ceph/ceph/pull/12830>`_, huanwen ren) -* cephfs: libcephfs: fix cct refcount constructing from rados (`pr#12831 <https://github.com/ceph/ceph/pull/12831>`_, John Spray) -* cephfs: mds/MDBalancer: remove useless check_targets and hit_targets logic from MDS balancer (`issue#20131 <http://tracker.ceph.com/issues/20131>`_, `pr#15407 <https://github.com/ceph/ceph/pull/15407>`_, Zhi Zhang) -* cephfs: mds/MDLog.cc Fix perf counter type for jlat (`pr#13449 <https://github.com/ceph/ceph/pull/13449>`_, Xiaoxi Chen) -* cephfs: mds/Server.cc: Don't evict a slow client if (`issue#17855 <http://tracker.ceph.com/issues/17855>`_, `pr#12935 <https://github.com/ceph/ceph/pull/12935>`_, Michal Jarzabek) -* cephfs: mds/StrayManager: avoid reusing deleted inode in StrayManager::_purge_stray_logged (`issue#18877 <http://tracker.ceph.com/issues/18877>`_, `pr#13347 <https://github.com/ceph/ceph/pull/13347>`_, Zhi Zhang) -* cephfs,mgr: pybind/mgr/fsstatus: use mds_mem.dn as dentry counter (`pr#15255 <https://github.com/ceph/ceph/pull/15255>`_, Zhi Zhang) -* cephfs: Mitigation for #16842, validate sessions after load (`issue#16842 <http://tracker.ceph.com/issues/16842>`_, `pr#14164 <https://github.com/ceph/ceph/pull/14164>`_, John Spray) -* cephfs: mon/FSCommand: fix indentation (`pr#15423 <https://github.com/ceph/ceph/pull/15423>`_, Sage Weil) -* cephfs: mon/MDSMonitor.cc:refuse fs new on pools with obj (`issue#11124 <http://tracker.ceph.com/issues/11124>`_, `pr#12825 <https://github.com/ceph/ceph/pull/12825>`_, Michal Jarzabek) -* cephfs: mon/MDSMonitor: respect mds_standby_for_rank config (`pr#15129 <https://github.com/ceph/ceph/pull/15129>`_, "Yan, Zheng") -* cephfs: mount: do not print "unknown" option to kclient (`issue#18159 <http://tracker.ceph.com/issues/18159>`_, `pr#12465 <https://github.com/ceph/ceph/pull/12465>`_, John Spray) -* cephfs: osdc/Filer: truncate large file party by party (`issue#19755 <http://tracker.ceph.com/issues/19755>`_, `pr#14769 <https://github.com/ceph/ceph/pull/14769>`_, "Yan, Zheng") -* cephfs: osdc/Journaler: avoid executing on_safe contexts prematurely (`issue#20055 <http://tracker.ceph.com/issues/20055>`_, `pr#15240 <https://github.com/ceph/ceph/pull/15240>`_, "Yan, Zheng") -* cephfs: osdc/Journaler: fix memory leak in Journaler::_issue_read() (`issue#20338 <http://tracker.ceph.com/issues/20338>`_, `pr#15776 <https://github.com/ceph/ceph/pull/15776>`_, "Yan, Zheng") -* cephfs: osdc/Objecter: fix inflight_ops update (`pr#15768 <https://github.com/ceph/ceph/pull/15768>`_, "Yan, Zheng") -* cephfs: osdc: remove journaler_allow_split_entries option (`issue#19691 <http://tracker.ceph.com/issues/19691>`_, `pr#14636 <https://github.com/ceph/ceph/pull/14636>`_, John Spray) -* cephfs,performance: client: make seeky readdir more efficiency (`issue#19306 <http://tracker.ceph.com/issues/19306>`_, `pr#14317 <https://github.com/ceph/ceph/pull/14317>`_, "Yan, Zheng") -* cephfs,performance: mds/server: skip unwanted dn in handle_client_readdir (`pr#12870 <https://github.com/ceph/ceph/pull/12870>`_, Xiaoxi Chen) -* cephfs: Permit recovering metadata into a new RADOS pool (`issue#15069 <http://tracker.ceph.com/issues/15069>`_, `issue#15068 <http://tracker.ceph.com/issues/15068>`_, `pr#10636 <https://github.com/ceph/ceph/pull/10636>`_, Douglas Fuller) -* cephfs: qa/cephfs: disable mds_bal_frag for TestStrays.test_purge_queue_op_rate (`issue#19892 <http://tracker.ceph.com/issues/19892>`_, `pr#15105 <https://github.com/ceph/ceph/pull/15105>`_, "Yan, Zheng") -* cephfs: qa/cephfs: Fix for test_data_scan (`issue#19893 <http://tracker.ceph.com/issues/19893>`_, `pr#15094 <https://github.com/ceph/ceph/pull/15094>`_, Douglas Fuller) -* cephfs: qa: fix race in Mount.open_background (`issue#18661 <http://tracker.ceph.com/issues/18661>`_, `pr#13137 <https://github.com/ceph/ceph/pull/13137>`_, John Spray) -* cephfs: qa/suites/fs: reserve more space for mds in full tests (`issue#19891 <http://tracker.ceph.com/issues/19891>`_, `pr#15026 <https://github.com/ceph/ceph/pull/15026>`_, "Yan, Zheng") -* cephfs: qa/tasks/cephfs: use getattr to guarantee inode is in client cache (`issue#19912 <http://tracker.ceph.com/issues/19912>`_, `pr#15062 <https://github.com/ceph/ceph/pull/15062>`_, "Yan, Zheng") -* cephfs: qa: unpin knfs from ubuntu (`issue#16397 <http://tracker.ceph.com/issues/16397>`_, `pr#13088 <https://github.com/ceph/ceph/pull/13088>`_, John Spray) -* cephfs: qa: update log whitelists for kcephfs suite (`pr#14922 <https://github.com/ceph/ceph/pull/14922>`_, "Yan, Zheng") -* cephfs: qa: update remaining ceph.com to download.ceph.com (`issue#18574 <http://tracker.ceph.com/issues/18574>`_, `pr#12964 <https://github.com/ceph/ceph/pull/12964>`_, John Spray) -* cephfs: qa: whitelist new fullness messages in fs tests (`issue#19253 <http://tracker.ceph.com/issues/19253>`_, `pr#13915 <https://github.com/ceph/ceph/pull/13915>`_, John Spray) -* cephfs: Remove "experimental" warnings from multimds (`pr#15154 <https://github.com/ceph/ceph/pull/15154>`_, John Spray, "Yan, Zheng") -* cephfs: Rewrite mount.fuse.ceph (to python) and move ceph-fuse options to fs_mntops (`pr#11448 <https://github.com/ceph/ceph/pull/11448>`_, Edgaras Lukosevicius) -* cephfs: tasks/cephfs: fix kernel force umount (`issue#18396 <http://tracker.ceph.com/issues/18396>`_, `pr#12833 <https://github.com/ceph/ceph/pull/12833>`_, Yan, Zheng) -* cephfs: test/libcephfs: avoid buffer overflow when testing ceph_getdents() (`issue#18941 <http://tracker.ceph.com/issues/18941>`_, `pr#13429 <https://github.com/ceph/ceph/pull/13429>`_, "Yan, Zheng") -* cephfs,tests: Add multimds:thrash sub-suite and fix bugs in thrasher for multimds (`issue#18690 <http://tracker.ceph.com/issues/18690>`_, `issue#10792 <http://tracker.ceph.com/issues/10792>`_, `pr#13262 <https://github.com/ceph/ceph/pull/13262>`_, Patrick Donnelly) -* cephfs,tests: ceph-object-corpus: mark MMDSSlaveRequest incompat change (`pr#15730 <https://github.com/ceph/ceph/pull/15730>`_, Sage Weil) -* cephfs,tests: Improve vstart_runner to (optionally) create its own cluster (`pr#12800 <https://github.com/ceph/ceph/pull/12800>`_, John Spray) -* cephfs,tests: qa: fix float parse error in test_fragment (`pr#15122 <https://github.com/ceph/ceph/pull/15122>`_, Patrick Donnelly) -* cephfs,tests: qa: fix test_standby_for_invalid_fscid with vstart_runner (`pr#14272 <https://github.com/ceph/ceph/pull/14272>`_, John Spray) -* cephfs,tests: qa: handle SSHException in logrotate (`pr#13359 <https://github.com/ceph/ceph/pull/13359>`_, John Spray) -* cephfs,tests: qa, mds: add checks for fragmentation, and enable it by default (`issue#16523 <http://tracker.ceph.com/issues/16523>`_, `pr#13862 <https://github.com/ceph/ceph/pull/13862>`_, john Spray, John Spray) -* cephfs,tests: qa: misc cephfs test improvements (`issue#20131 <http://tracker.ceph.com/issues/20131>`_, `pr#15411 <https://github.com/ceph/ceph/pull/15411>`_, John Spray) -* cephfs,tests: qa: re-enable ENOSPC tests for kclient (`issue#19550 <http://tracker.ceph.com/issues/19550>`_, `pr#14396 <https://github.com/ceph/ceph/pull/14396>`_, John Spray) -* cephfs,tests: qa: silence spurious insufficient standby health warnings (`pr#15035 <https://github.com/ceph/ceph/pull/15035>`_, Patrick Donnelly) -* cephfs,tests: qa: silence upgrade test failure (`issue#19934 <http://tracker.ceph.com/issues/19934>`_, `pr#15126 <https://github.com/ceph/ceph/pull/15126>`_, Patrick Donnelly) -* cephfs,tests: qa: simplify TestJournalRepair (`pr#15096 <https://github.com/ceph/ceph/pull/15096>`_, John Spray) -* cephfs,tests: qa/tasks: force umount during kclient teardown (`issue#18663 <http://tracker.ceph.com/issues/18663>`_, `pr#13099 <https://github.com/ceph/ceph/pull/13099>`_, John Spray) -* cephfs,tests: qa: Tidy up fs/ suite (`pr#14575 <https://github.com/ceph/ceph/pull/14575>`_, John Spray) -* cephfs,tests: qa/vstart_runner: amend ps invocation (`pr#14254 <https://github.com/ceph/ceph/pull/14254>`_, Ilya Dryomov) -* cephfs,tests: qa: whitelist another fullness log message (`issue#19253 <http://tracker.ceph.com/issues/19253>`_, `pr#14221 <https://github.com/ceph/ceph/pull/14221>`_, John Spray) -* cephfs,tests: tasks/cephfs: tear down on mount() failure (`pr#13282 <https://github.com/ceph/ceph/pull/13282>`_, John Spray) -* cephfs: tools/cephfs: remove `apply` mode of cephfs-journal-tool (`pr#15715 <https://github.com/ceph/ceph/pull/15715>`_, John Spray) -* cephfs: tools/cephfs: set dir_layout when injecting inodes (`issue#19406 <http://tracker.ceph.com/issues/19406>`_, `pr#14234 <https://github.com/ceph/ceph/pull/14234>`_, John Spray) -* ceph-volume: use unique logical volumes (`pr#17208 <https://github.com/ceph/ceph/pull/17208>`_, Alfredo Deza) -* cleanup: .gitignore: exclude rpm files (`pr#15745 <https://github.com/ceph/ceph/pull/15745>`_, Leo Zhang) -* cleanup: Move code from .h into .cc (`pr#12737 <https://github.com/ceph/ceph/pull/12737>`_, Amir Vadai) -* cleanup: resolve compiler warnings (`pr#13236 <https://github.com/ceph/ceph/pull/13236>`_, Adam C. Emerson) -* cleanup: src: put-to operator function - const input cleanup (`issue#3977 <http://tracker.ceph.com/issues/3977>`_, `pr#15364 <https://github.com/ceph/ceph/pull/15364>`_, Jos Collin) -* cmake: add "container" to required boost components (`pr#14850 <https://github.com/ceph/ceph/pull/14850>`_, Kefu Chai) -* cmake: Add -finstrument-functions flag to OSD code (`pr#15055 <https://github.com/ceph/ceph/pull/15055>`_, Mohamad Gebai) -* cmake: add RGW and MDS to libcephd (`pr#12345 <https://github.com/ceph/ceph/pull/12345>`_, Bassam Tabbara) -* cmake: Add simple recursive ctags target for Ceph source only (`pr#14334 <https://github.com/ceph/ceph/pull/14334>`_, Kefu Chai, Dan Mick) -* cmake: align cmake names of library packages (`issue#19853 <http://tracker.ceph.com/issues/19853>`_, `pr#14951 <https://github.com/ceph/ceph/pull/14951>`_, Nathan Cutler) -* cmake: Allow tests to build without NSS (`pr#13315 <https://github.com/ceph/ceph/pull/13315>`_, Daniel Gryniewicz) -* cmake: build boost as an external project (`pr#15376 <https://github.com/ceph/ceph/pull/15376>`_, Kefu Chai) -* cmake: build tracepoint libraries for vstart target (`pr#14354 <https://github.com/ceph/ceph/pull/14354>`_, Mohamad Gebai) -* cmake: check the existence of gperf before using it (`pr#15164 <https://github.com/ceph/ceph/pull/15164>`_, Kefu Chai) -* cmake: cleanup the use of udev and blkid in target_link_lib() (`pr#12811 <https://github.com/ceph/ceph/pull/12811>`_, Willem Jan Withagen) -* cmake: disable -fvar-tracking-assignments for config.cc (`pr#16695 <https://github.com/ceph/ceph/pull/16695>`_, Kefu Chai) -* cmake: disable mallinfo for jemalloc (`pr#12469 <https://github.com/ceph/ceph/pull/12469>`_, Bassam Tabbara) -* cmake: do not add dependencies to INTERFACE library on cmake < 3.3 (`pr#15813 <https://github.com/ceph/ceph/pull/15813>`_, Kefu Chai) -* cmake: do not compile crush twice (`pr#14725 <https://github.com/ceph/ceph/pull/14725>`_, Kefu Chai) -* cmake: do not link libcommon against some libs (`pr#15340 <https://github.com/ceph/ceph/pull/15340>`_, Willem Jan Withagen) -* cmake: do not try to add submodule to exclude list if .git is not around (`pr#14495 <https://github.com/ceph/ceph/pull/14495>`_, Kefu Chai) -* cmake: enable cross-compilation of boost (`issue#18938 <http://tracker.ceph.com/issues/18938>`_, `pr#14881 <https://github.com/ceph/ceph/pull/14881>`_, Kefu Chai) -* cmake: exclude \*.css while generating ctags (`pr#15663 <https://github.com/ceph/ceph/pull/15663>`_, Leo Zhang) -* cmake: explictly call find_package(PythonInterp) first to fix build err (`pr#12385 <https://github.com/ceph/ceph/pull/12385>`_, Yixun Lan) -* cmake: fix boost components for WITH_SYSTEM_BOOST (`pr#15160 <https://github.com/ceph/ceph/pull/15160>`_, Bassam Tabbara) -* cmake: Fix broken async/rdma compilation since move to libceph-common (`pr#13122 <https://github.com/ceph/ceph/pull/13122>`_, Oren Duer) -* cmake: fix broken RDMA compilation after merge PR #12878 (`pr#13186 <https://github.com/ceph/ceph/pull/13186>`_, Oren Duer) -* cmake: fix hard coded boost python lib (`pr#12480 <https://github.com/ceph/ceph/pull/12480>`_, John Coyle) -* cmake: fix rpath on shared libraries and binaries targets (`pr#12927 <https://github.com/ceph/ceph/pull/12927>`_, Ricardo Dias) -* cmake: fix the build with -DWITH_ZFS=ON (`pr#15907 <https://github.com/ceph/ceph/pull/15907>`_, Kefu Chai) -* cmake: fix the linked lib reference of unittest_rgw_crypto (`pr#14869 <https://github.com/ceph/ceph/pull/14869>`_, Willem Jan Withagen) -* cmake: improved build speed by 5x when using ccache (`pr#15147 <https://github.com/ceph/ceph/pull/15147>`_, Bassam Tabbara) -* cmake: kill duplicated cmake commands (`pr#14948 <https://github.com/ceph/ceph/pull/14948>`_, liuchang0812) -* cmake: link against fcgi only if enabled (`pr#15425 <https://github.com/ceph/ceph/pull/15425>`_, Yao Zongyou) -* cmake: link ceph-{mgr,mon,mds,osd} against libcommon statically (`pr#12878 <https://github.com/ceph/ceph/pull/12878>`_, Kefu Chai) -* cmake: link consumers of libclient with libcommon (`issue#18838 <http://tracker.ceph.com/issues/18838>`_, `pr#13394 <https://github.com/ceph/ceph/pull/13394>`_, Kefu Chai) -* cmake: misc fixes for build on i386 (`pr#15516 <https://github.com/ceph/ceph/pull/15516>`_, James Page) -* cmake: pass -d0 to b2 if not CMAKE_VERBOSE_MAKEFILE (`pr#14651 <https://github.com/ceph/ceph/pull/14651>`_, Kefu Chai) -* cmake: remove Findpciaccess.cmake (`pr#12776 <https://github.com/ceph/ceph/pull/12776>`_, optimistyzy) -* cmake: Rewrite HAVE_BABELTRACE option to WITH (`pr#15305 <https://github.com/ceph/ceph/pull/15305>`_, Willem Jan Withagen) -* cmake: rgw: do not link against boost in a wholesale (`pr#15347 <https://github.com/ceph/ceph/pull/15347>`_, Nathan Cutler, Kefu Chai) -* cmake: search for Keyutils in default paths (`pr#12769 <https://github.com/ceph/ceph/pull/12769>`_, Pascal Bach) -* cmake: search for nspr include files for both suffixes: nspr4 and nspr (`issue#18535 <http://tracker.ceph.com/issues/18535>`_, `pr#12939 <https://github.com/ceph/ceph/pull/12939>`_, John Lin) -* cmake: should not compile crc32c_ppc.c on intel arch (`pr#14423 <https://github.com/ceph/ceph/pull/14423>`_, Kefu Chai) -* cmake: simplify find_package jemalloc (`pr#12468 <https://github.com/ceph/ceph/pull/12468>`_, Bassam Tabbara) -* cmake: support for external rocksdb (`pr#12467 <https://github.com/ceph/ceph/pull/12467>`_, Bassam Tabbara) -* cmake: support optional argument for overriding default ctag excludes (`pr#14379 <https://github.com/ceph/ceph/pull/14379>`_, Kefu Chai) -* cmake: turn libcommon into a shared library (`pr#12840 <https://github.com/ceph/ceph/pull/12840>`_, Kefu Chai) -* cmake: use CMAKE_INSTALL_INCLUDEDIR (`pr#16483 <https://github.com/ceph/ceph/pull/16483>`_, David Disseldorp) -* cmake: workaound ccache issue with .S assembly files (`pr#15142 <https://github.com/ceph/ceph/pull/15142>`_, Bassam Tabbara) -* common: add ceph::size() (`pr#15181 <https://github.com/ceph/ceph/pull/15181>`_, Kefu Chai) -* common: add override in common and misc (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13443 <https://github.com/ceph/ceph/pull/13443>`_, liuchang0812) -* common: add override in header file (`pr#13774 <https://github.com/ceph/ceph/pull/13774>`_, liuchang0812) -* common: add override in msg subsystem (`pr#13771 <https://github.com/ceph/ceph/pull/13771>`_, liuchang0812) -* common: auth: Enhancement for the supported auth methods (`pr#12937 <https://github.com/ceph/ceph/pull/12937>`_, Dave Chen) -* common: auth/RotatingKeyRing: use std::move() to set secrets (`pr#15866 <https://github.com/ceph/ceph/pull/15866>`_, Kefu Chai) -* common: avoid statically allocating configuration options (`issue#20869 <http://tracker.ceph.com/issues/20869>`_, `pr#16735 <https://github.com/ceph/ceph/pull/16735>`_, Jason Dillaman) -* common: Better handling for missing/inaccessible ceph.conf files (`issue#19658 <http://tracker.ceph.com/issues/19658>`_, `pr#14757 <https://github.com/ceph/ceph/pull/14757>`_, Dan Mick) -* common: bufferlist: cleanup semantical wrong for bufferlist::append (`pr#12247 <https://github.com/ceph/ceph/pull/12247>`_, Yankun Li) -* common: buffer: silence unused var warning on FreeBSD (`pr#16452 <https://github.com/ceph/ceph/pull/16452>`_, Willem Jan Withagen) -* common: ceph_osd: remove client message cap limit (`pr#14944 <https://github.com/ceph/ceph/pull/14944>`_, Haomai Wang) -* common: ceph: wait for maps before doing 'ceph tell ... help' (`issue#20113 <http://tracker.ceph.com/issues/20113>`_, `pr#16756 <https://github.com/ceph/ceph/pull/16756>`_, Sage Weil) -* common: cls/log/cls_log.cc: reduce logging noise (`issue#19835 <http://tracker.ceph.com/issues/19835>`_, `pr#14879 <https://github.com/ceph/ceph/pull/14879>`_, Willem Jan Withagen) -* common: cls: optimize header file dependency (`pr#15165 <https://github.com/ceph/ceph/pull/15165>`_, Brad Hubbard, Xiaowei Chen) -* common: cmdparse: more constness (`pr#15023 <https://github.com/ceph/ceph/pull/15023>`_, Kefu Chai) -* common: common/admin_socket: add config for admin socket permission bits (`pr#11684 <https://github.com/ceph/ceph/pull/11684>`_, runsisi) -* common: common/admin-socket: fix potential buffer overflow (`pr#12518 <https://github.com/ceph/ceph/pull/12518>`_, Yunchuan Wen) -* common: common/auth: add override in headers (`pr#13692 <https://github.com/ceph/ceph/pull/13692>`_, liuchang0812) -* common: common/BackTrace: add operator<< (`pr#9028 <https://github.com/ceph/ceph/pull/9028>`_, Kefu Chai) -* common: common/BackTrace: demangle on FreeBSD also (`pr#12992 <https://github.com/ceph/ceph/pull/12992>`_, Kefu Chai) -* common: common/buffer: close pipe fd if set nonblocking fails (`pr#12828 <https://github.com/ceph/ceph/pull/12828>`_, donglinpeng) -* common: common/buffer: off-by-one error in max iov length blocking (`issue#20907 <http://tracker.ceph.com/issues/20907>`_, `pr#16803 <https://github.com/ceph/ceph/pull/16803>`_, Dan Mick) -* common: common/ceph_context.cc: Use CEPH_DEV to reduce logfile noise (`pr#10384 <https://github.com/ceph/ceph/pull/10384>`_, Willem Jan Withagen) -* common: common/ceph_context: 'config diff get' option added (`pr#10736 <https://github.com/ceph/ceph/pull/10736>`_, Daniel Oliveira) -* common: common/ceph_context: fewer warnings about experimental features (`pr#14170 <https://github.com/ceph/ceph/pull/14170>`_, Sage Weil) -* common: common/ceph_context: fix leak of registered commands on exit (`pr#15302 <https://github.com/ceph/ceph/pull/15302>`_, xie xingguo) -* common: common/ceph_context: Show clear message if all features are enabled (`pr#12676 <https://github.com/ceph/ceph/pull/12676>`_, Dave Chen) -* common: common/cmdparse.cc: remove unused variable 'argnum' in dump_cmd_to_json() (`pr#16862 <https://github.com/ceph/ceph/pull/16862>`_, Luo Kexue) -* common: common/common_init: disable default dout logging for UTILITY_NODOUT too (`issue#20771 <http://tracker.ceph.com/issues/20771>`_, `pr#16578 <https://github.com/ceph/ceph/pull/16578>`_, Sage Weil) -* common: common/config: Add /usr/local/etc/ceph to default paths (`pr#14797 <https://github.com/ceph/ceph/pull/14797>`_, Willem Jan Withagen) -* common: common/config: eliminate config_t::set_val unsafe option (`issue#19106 <http://tracker.ceph.com/issues/19106>`_, `pr#13687 <https://github.com/ceph/ceph/pull/13687>`_, liuchang0812) -* common: common/config: fix return type of string::find and use string::npos (`pr#9924 <https://github.com/ceph/ceph/pull/9924>`_, Yan Jun) -* common: common,config: OPT_FLOAT and OPT_DOUBLE output format in config show (`issue#20104 <http://tracker.ceph.com/issues/20104>`_, `pr#15647 <https://github.com/ceph/ceph/pull/15647>`_, Yanhu Cao) -* common: common/config_opt: remove unused config (`pr#15874 <https://github.com/ceph/ceph/pull/15874>`_, alex.wu) -* common: common/config_opts: drop unused opt (`pr#15876 <https://github.com/ceph/ceph/pull/15876>`_, Yanhu Cao) -* common: common/config_opts.h: FreeBSD timing changed due to no SO_REUSEADDR (`pr#12594 <https://github.com/ceph/ceph/pull/12594>`_, Willem Jan Withagen) -* common: common/config_opts.h: Remove deprecated osd_compact_leveldb_on_mount option (`issue#19318 <http://tracker.ceph.com/issues/19318>`_, `pr#14059 <https://github.com/ceph/ceph/pull/14059>`_, Vikhyat Umrao) -* common: common/config_opts.h: remove obsolete configuration option (`pr#12659 <https://github.com/ceph/ceph/pull/12659>`_, Li Wang) -* common: common/config_opts: Set the HDD throttle cost to 1.5M (`pr#14808 <https://github.com/ceph/ceph/pull/14808>`_, Mark Nelson) -* common: common/EventTrace: fix compiler warning (`pr#13659 <https://github.com/ceph/ceph/pull/13659>`_, Jianpeng Ma) -* common: common/Finisher: fix uninitialized variable warning (`pr#14958 <https://github.com/ceph/ceph/pull/14958>`_, Piotr Dałek) -* common: common/freebsd_errno.cc: fixed again a stupid typo (`pr#15742 <https://github.com/ceph/ceph/pull/15742>`_, Willem Jan Withagen) -* common: common/interval_set: return int64_t for size() (`pr#12898 <https://github.com/ceph/ceph/pull/12898>`_, Xinze Chi) -* common: common/iso_8601.cc: Make return expression Clang compatible (`pr#15336 <https://github.com/ceph/ceph/pull/15336>`_, Willem Jan Withagen) -* common: common/LogEntry: include EntityName in log entries (`pr#15395 <https://github.com/ceph/ceph/pull/15395>`_, Sage Weil) -* common: common/Mutex.cc: fixed the error in comment (`pr#16214 <https://github.com/ceph/ceph/pull/16214>`_, Pan Liu) -* common: common/options: refactors to set the properties in a more structured way (`pr#16482 <https://github.com/ceph/ceph/pull/16482>`_, Kefu Chai) -* common: common,osdc: remove atomic_t completely (`pr#15562 <https://github.com/ceph/ceph/pull/15562>`_, Kefu Chai) -* common: common/perf_counters: add average time for PERFCOUNTER_TIME (`pr#15478 <https://github.com/ceph/ceph/pull/15478>`_, xie xingguo) -* common: common/perf_counters: fix race condition with atomic variables (`pr#14227 <https://github.com/ceph/ceph/pull/14227>`_, J. Eric Ivancich) -* common: common/perf_counters: make schema more friendly and update docs (`pr#14933 <https://github.com/ceph/ceph/pull/14933>`_, Sage Weil) -* common: common/perf_counters.: Remove unnecessary judgment (`pr#10407 <https://github.com/ceph/ceph/pull/10407>`_, zhang.zezhu) -* common: common/simple_spin: use __ppc_yield() on all powerpc archs (`pr#14310 <https://github.com/ceph/ceph/pull/14310>`_, Kefu Chai) -* common: common,test: migrate atomic_t to std::atomic (`pr#14866 <https://github.com/ceph/ceph/pull/14866>`_, Jesse Williamson) -* common: common/Timer: do not add event if already shutdown (`issue#20432 <http://tracker.ceph.com/issues/20432>`_, `pr#16201 <https://github.com/ceph/ceph/pull/16201>`_, Kefu Chai) -* common: common/WorkQueue: use threadpoolname + threadaddr for heartbeat_han… (`pr#16563 <https://github.com/ceph/ceph/pull/16563>`_, huangjun) -* common: common/xmlformatter: turn on underscored and add unittest (`pr#12916 <https://github.com/ceph/ceph/pull/12916>`_, liuchang0812) -* common: compressor/zlib: remove g_ceph_context/g_conf from compressor plugin (`pr#16245 <https://github.com/ceph/ceph/pull/16245>`_, Casey Bodley) -* common: compressor/zstd: add zstd compression plugin (`pr#13075 <https://github.com/ceph/ceph/pull/13075>`_, Kefu Chai, Sage Weil) -* common: config: Improve warning for unobserved value (`issue#18424 <http://tracker.ceph.com/issues/18424>`_, `pr#12855 <https://github.com/ceph/ceph/pull/12855>`_, Brad Hubbard) -* common: config_opt: use bool instead of int for the default value of filestore_debug_omap_check (`pr#15651 <https://github.com/ceph/ceph/pull/15651>`_, Leo Zhang) -* common,core: ceph_test_rados_api_misc: fix LibRadosMiscConnectFailure.ConnectFailure retry (`issue#19901 <http://tracker.ceph.com/issues/19901>`_, `pr#15522 <https://github.com/ceph/ceph/pull/15522>`_, Sage Weil) -* common: core/common: Fix ENODATA for FreeBSD with compat.h (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15685 <https://github.com/ceph/ceph/pull/15685>`_, Willem Jan Withagen) -* common,core: common, osd, tools: Add histograms to performance counters (`pr#12829 <https://github.com/ceph/ceph/pull/12829>`_, Bartłomiej Święcki) -* common,core: common/pick_address.cc: Copy public_netw to cluster_netw if cluster empty (`pr#12929 <https://github.com/ceph/ceph/pull/12929>`_, Willem Jan Withagen) -* common,core: common/TracepointProvider: add assert if dlopen error (`pr#13430 <https://github.com/ceph/ceph/pull/13430>`_, Jianpeng Ma) -* common,core: common/TrackedOp: make TrackedOp::reset_desc() safe (`issue#19110 <http://tracker.ceph.com/issues/19110>`_, `pr#13702 <https://github.com/ceph/ceph/pull/13702>`_, Sage Weil) -* common,core: mempool: put bloom_filter in mempool (`pr#13009 <https://github.com/ceph/ceph/pull/13009>`_, Sage Weil) -* common,core: osd,mds,mgr: do not dereference null rotating_keys (`issue#20667 <http://tracker.ceph.com/issues/20667>`_, `pr#16455 <https://github.com/ceph/ceph/pull/16455>`_, Sage Weil) -* common,core: osd,osdc: pg and osd-based backoff (`pr#12342 <https://github.com/ceph/ceph/pull/12342>`_, Sage Weil) -* common,core: osd/OSDMap: make osd_state 32 bits wide (`pr#15390 <https://github.com/ceph/ceph/pull/15390>`_, Sage Weil) -* common,core: osd/OSDMap: replace require_osds flags with a single require_osd_release field (`pr#15068 <https://github.com/ceph/ceph/pull/15068>`_, Sage Weil) -* common,core: osd/OSDMap: replace string-based min_compat_client with a CEPH_RELEASE uint8_t (`pr#15351 <https://github.com/ceph/ceph/pull/15351>`_, Sage Weil) -* common,core: osd/osd_types: add flag name (IGNORE_REDIRECT) (`pr#15795 <https://github.com/ceph/ceph/pull/15795>`_, Myoungwon Oh) -* common,core: rados: we need to get the latest osdmap when pool does not exists (`pr#13289 <https://github.com/ceph/ceph/pull/13289>`_, song baisen) -* common,core,tests: Wip cppcheck errors (`pr#14446 <https://github.com/ceph/ceph/pull/14446>`_, Brad Hubbard) -* common: crc32c: include acconfig.h to fix ceph_crc32c_aarch64() (`pr#15515 <https://github.com/ceph/ceph/pull/15515>`_, Kefu Chai) -* common: crush/CrushWrapper: fix has_incompat_choose_args (`pr#15218 <https://github.com/ceph/ceph/pull/15218>`_, Sage Weil) -* common: crush/CrushWrapper: fix has_incompat_choose_args() (`pr#15244 <https://github.com/ceph/ceph/pull/15244>`_, Sage Weil) -* common: crypto: cleanup NSPR in main thread (`pr#14801 <https://github.com/ceph/ceph/pull/14801>`_, Kefu Chai) -* common: delete unused conf "filestore_debug_disable_sharded_check" (`pr#13051 <https://github.com/ceph/ceph/pull/13051>`_, Chuanhong Wang) -* common: denc: add encode/decode for basic_sstring (`pr#15135 <https://github.com/ceph/ceph/pull/15135>`_, Kefu Chai, Casey Bodley) -* common: do not print error when asok is closed (`pr#14022 <https://github.com/ceph/ceph/pull/14022>`_, Patrick Donnelly) -* common: fix building against libcryptopp (`pr#14949 <https://github.com/ceph/ceph/pull/14949>`_, Shengjing Zhu) -* common: Fix clang compilation (`pr#13335 <https://github.com/ceph/ceph/pull/13335>`_, Bartłomiej Święcki) -* common: Fix heap buffer overflow in do_request (`issue#19393 <http://tracker.ceph.com/issues/19393>`_, `pr#14173 <https://github.com/ceph/ceph/pull/14173>`_, Brad Hubbard) -* common: fix lockdep vs recursive mutexes (`pr#9940 <https://github.com/ceph/ceph/pull/9940>`_, Adam Kupczyk) -* common: fix log warnings (`pr#16056 <https://github.com/ceph/ceph/pull/16056>`_, xie xingguo) -* common: fix Option set_long_description (`pr#16668 <https://github.com/ceph/ceph/pull/16668>`_, Yan Jun) -* common: fix segfault in public IPv6 addr picking (`issue#19371 <http://tracker.ceph.com/issues/19371>`_, `pr#14124 <https://github.com/ceph/ceph/pull/14124>`_, Fabian Grünbichler) -* common: fix that $host always expands to localhost instead of actual hostname (`issue#11081 <http://tracker.ceph.com/issues/11081>`_, `pr#12998 <https://github.com/ceph/ceph/pull/12998>`_, liuchang0812) -* common: fix typo in option of rados_mon_op_timeout's comment (`pr#15681 <https://github.com/ceph/ceph/pull/15681>`_, Leo Zhang) -* common: Fix unused variable references warnings (`pr#14790 <https://github.com/ceph/ceph/pull/14790>`_, Willem Jan Withagen) -* common: follow up to new options infrastructure (`pr#16527 <https://github.com/ceph/ceph/pull/16527>`_, John Spray) - common: Forward-declare container I/O overloads -* common: get_process_name: use getprogname on bsd systems (`pr#15338 <https://github.com/ceph/ceph/pull/15338>`_, Mykola Golub) -* common: get rid of "warning: ignoring return value of ‘strerror_r’" (`pr#12775 <https://github.com/ceph/ceph/pull/12775>`_, xie xingguo) -* common: global: we need to handle the init_on_startup return value when global_init (`pr#13018 <https://github.com/ceph/ceph/pull/13018>`_, song baisen) -* common: Implements simple_spin_t in terms of std::atomic_flag (`pr#14370 <https://github.com/ceph/ceph/pull/14370>`_, Jesse Williamson) -* common: Improved CRC calculation for zero buffers (`pr#11966 <https://github.com/ceph/ceph/pull/11966>`_, Adam Kupczyk) -* common: include/ceph_features.h uses uint64_t, which is in sys/types.h (`pr#13339 <https://github.com/ceph/ceph/pull/13339>`_, Willem Jan Withagen) -* common: include/denc: improvements (`pr#12626 <https://github.com/ceph/ceph/pull/12626>`_, Adam C. Emerson) -* common: include/denc, kv: silence gcc warnings (`pr#13458 <https://github.com/ceph/ceph/pull/13458>`_, Kefu Chai) -* common: include/denc: remove nullptr runtime magic boundedness check (`pr#13889 <https://github.com/ceph/ceph/pull/13889>`_, Sage Weil) -* common: include/lru.h: add const to member functions (`pr#15408 <https://github.com/ceph/ceph/pull/15408>`_, yonghengdexin735) -* common: include/mempool: fix typo in comments (`pr#12772 <https://github.com/ceph/ceph/pull/12772>`_, huangjun) -* common: include/rados: Fix typo in rados_ioctx_cct() doc (`pr#15220 <https://github.com/ceph/ceph/pull/15220>`_, Jos Collin) -* common: include: Redo some includes for FreeBSD (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15337 <https://github.com/ceph/ceph/pull/15337>`_, Willem Jan Withagen) -* common: initialize array in struct BackTrace (`pr#15864 <https://github.com/ceph/ceph/pull/15864>`_, Jos Collin) -* common: initialize _hash in LogEntryKey() (`pr#15615 <https://github.com/ceph/ceph/pull/15615>`_, Jos Collin) -* common: int_types.h: remove hacks to workaround old systems (`pr#15069 <https://github.com/ceph/ceph/pull/15069>`_, Kefu Chai) -* common: kv: resolve a crash issue in ~LevelDBStore() (`pr#16553 <https://github.com/ceph/ceph/pull/16553>`_, wumingqiao) -* common: librados,libradosstriper,test: migrate atomic_t to std::atomic (baragon) (`pr#14658 <https://github.com/ceph/ceph/pull/14658>`_, Jesse Williamson) -* common: librados, osd: clang fixes (`pr#13768 <https://github.com/ceph/ceph/pull/13768>`_, Kefu Chai) -* common: libradosstriper: Add example code (`pr#15350 <https://github.com/ceph/ceph/pull/15350>`_, Logan Blyth) -* common: libradosstriper: fix format injection vulnerability (`issue#20240 <http://tracker.ceph.com/issues/20240>`_, `pr#15674 <https://github.com/ceph/ceph/pull/15674>`_, Stan K) -* common: libradosstriper: fix MultiAioCompletion leaks on failure (`pr#15471 <https://github.com/ceph/ceph/pull/15471>`_, Kefu Chai) -* common: make attempts of auth rotating configurable (`pr#12563 <https://github.com/ceph/ceph/pull/12563>`_, xie xingguo) -* common: Make spinlock delay more conventional (`pr#14248 <https://github.com/ceph/ceph/pull/14248>`_, Brad Hubbard) -* common: mempool: improve dump; fix buffer accounting bugs (`pr#15403 <https://github.com/ceph/ceph/pull/15403>`_, Sage Weil) -* common: messages: fix return type name of MOSDMap (`pr#14382 <https://github.com/ceph/ceph/pull/14382>`_, Leo Zhang) -* common: mgr/PyFormatter: implement dump_format_va (`pr#15634 <https://github.com/ceph/ceph/pull/15634>`_, Sage Weil) -* common: misc cleanups in common, global, os, osd submodules (`pr#16321 <https://github.com/ceph/ceph/pull/16321>`_, Yan Jun) -* common: misc fixes detected by crypto shutdown assert (`pr#12925 <https://github.com/ceph/ceph/pull/12925>`_, Sage Weil) -* common,mon: crush,mon: add weight-set introspection and manipulation commands (`pr#16326 <https://github.com/ceph/ceph/pull/16326>`_, Sage Weil) -* common,mon: messenger,client,compressor: migrate atomic_t to std::atomic (`pr#14657 <https://github.com/ceph/ceph/pull/14657>`_, Jesse Williamson) -* common: mon/MonClient: scale backoff interval down when we have a healthy mon session (`issue#20371 <http://tracker.ceph.com/issues/20371>`_, `pr#16576 <https://github.com/ceph/ceph/pull/16576>`_, Kefu Chai, Sage Weil) -* common,mon: mon,crush: add 'osd crush swap-bucket' command (`pr#15072 <https://github.com/ceph/ceph/pull/15072>`_, Sage Weil) -* common: msg/async: add assert of ms_async_op_threads > 0 (`pr#15629 <https://github.com/ceph/ceph/pull/15629>`_, linbing) -* common: msg/async: assert if compiled code doesn't support the configured ms (`pr#12559 <https://github.com/ceph/ceph/pull/12559>`_, Avner BenHanoch) -* common: msg/async: fix crash that writing char to nonblock-fd gets EAGAIN in EventCenter::wakeup (`pr#13822 <https://github.com/ceph/ceph/pull/13822>`_, liuchang0812) -* common: msg/async: make recv_stamp more precise (`pr#15810 <https://github.com/ceph/ceph/pull/15810>`_, Pan Liu) -* common: msg/async/rdma: Add fork safe on RDMA (`pr#13740 <https://github.com/ceph/ceph/pull/13740>`_, Sarit Zubakov) -* common: msg/async/rdma: clean line endings (`pr#12688 <https://github.com/ceph/ceph/pull/12688>`_, Adir Lev) -* common: msg/async/rdma: Remove compilation warning (`pr#13142 <https://github.com/ceph/ceph/pull/13142>`_, Sarit Zubakov) -* common: msg/async/rdma: rename chunk_size to buffer_size (`pr#13666 <https://github.com/ceph/ceph/pull/13666>`_, Adir Lev) -* common: msg/async/rdma: Support for RoCE v2 and SL (`pr#12556 <https://github.com/ceph/ceph/pull/12556>`_, Oren Duer) -* common: msg/async/rdma: Update fix broken compilation (`pr#13940 <https://github.com/ceph/ceph/pull/13940>`_, Sarit Zubakov) -* common: msg/async: return right away in NetHandler::set_priority() if not supported (`pr#14795 <https://github.com/ceph/ceph/pull/14795>`_, Kefu Chai) -* common: msg/simple: call clear_pipe in wait() shutdown path (`issue#15784 <http://tracker.ceph.com/issues/15784>`_, `pr#12633 <https://github.com/ceph/ceph/pull/12633>`_, Sage Weil) -* common: msg/SimpleMessenger: error out misplace in set_socket_options (`pr#13961 <https://github.com/ceph/ceph/pull/13961>`_, wangzhengyong) -* common: msg/simple/Pipe: support IPv6 QoS (`issue#18887 <http://tracker.ceph.com/issues/18887>`_, `pr#13370 <https://github.com/ceph/ceph/pull/13370>`_, Robin H. Johnson) -* common: .organizationmap: Updated authors (`pr#14360 <https://github.com/ceph/ceph/pull/14360>`_, Jos Collin) -* common: osdc: fix osdc_osd_seesion perf counter (`pr#13478 <https://github.com/ceph/ceph/pull/13478>`_, Xiaoxi Chen) -* common: osdc/Objecter: fix bugs in explicit naming of op spg_t (`pr#13534 <https://github.com/ceph/ceph/pull/13534>`_, Sage Weil) -* common: osdc/Objecter: fix pool dne corner case (`issue#19552 <http://tracker.ceph.com/issues/19552>`_, `pr#14901 <https://github.com/ceph/ceph/pull/14901>`_, Sage Weil) -* common: osdc/Objecter: handle command target that goes down (`issue#19452 <http://tracker.ceph.com/issues/19452>`_, `pr#14302 <https://github.com/ceph/ceph/pull/14302>`_, Sage Weil) -* common: osdc/Objecter: release message if it's not handled (`issue#19741 <http://tracker.ceph.com/issues/19741>`_, `pr#15890 <https://github.com/ceph/ceph/pull/15890>`_, Kefu Chai) -* common: osdc/Objecter: resend RWORDERED ops on full (`issue#19133 <http://tracker.ceph.com/issues/19133>`_, `pr#13759 <https://github.com/ceph/ceph/pull/13759>`_, Sage Weil) -* common: osd/OSDMap: fix feature commit comment (`pr#15056 <https://github.com/ceph/ceph/pull/15056>`_, Sage Weil) -* common: osd/OSDMap: get_previous_up_osd_before() may run into endless loop (`pr#12976 <https://github.com/ceph/ceph/pull/12976>`_, Mingxin Liu) -* common: osd/OSDMap: print require_osd_release (`pr#15974 <https://github.com/ceph/ceph/pull/15974>`_, Sage Weil) -* common: osd/osd_types: clean up OSDOp printers (`pr#12980 <https://github.com/ceph/ceph/pull/12980>`_, Sage Weil) -* common: Passing null pointer option_name to operator << in md_config_t::parse_option() (`pr#15881 <https://github.com/ceph/ceph/pull/15881>`_, Jos Collin) -* common,performance: buffer: allow buffers to be accounted in arbitrary mempools (`pr#15352 <https://github.com/ceph/ceph/pull/15352>`_, Sage Weil) -* common,performance: common/Finisher: batch handle perfcounter && only send signal when waiter existed (`pr#14363 <https://github.com/ceph/ceph/pull/14363>`_, Jianpeng Ma) -* common,performance: crc32c: Add ppc64le fast zero optimized assembly (`pr#15100 <https://github.com/ceph/ceph/pull/15100>`_, Andrew Solomon) -* common,performance: inline_memory: optimized mem_is_zero for non-x64 (`pr#15307 <https://github.com/ceph/ceph/pull/15307>`_, Piotr Dałek) -* common,performance: kv/rocksdb: supports SliceParts interface (`pr#15058 <https://github.com/ceph/ceph/pull/15058>`_, Haomai Wang) -* common,performance: osd/OSDMap: make pg_temp more efficient (`pr#15291 <https://github.com/ceph/ceph/pull/15291>`_, Sage Weil) -* common: possible lockdep false alarm for ThreadPool lock (`issue#18819 <http://tracker.ceph.com/issues/18819>`_, `pr#13258 <https://github.com/ceph/ceph/pull/13258>`_, Mykola Golub) -* common: prevent unset_dumpable from generating warnings (`pr#16462 <https://github.com/ceph/ceph/pull/16462>`_, Willem Jan Withagen) -* common: rados: allow "rados purge" to delete objects when osd is full (`pr#13814 <https://github.com/ceph/ceph/pull/13814>`_, Pan Liu) -* common: rados: more info added to pool deletion error (`issue#19400 <http://tracker.ceph.com/issues/19400>`_, `pr#14235 <https://github.com/ceph/ceph/pull/14235>`_, Vedant Nanda) -* common,rbd: osdc/Objecter: unify disparate EAGAIN handling paths into one (`pr#16627 <https://github.com/ceph/ceph/pull/16627>`_, Sage Weil) -* common,rbd,rgw: common/escape: do not escape / in json (`pr#14130 <https://github.com/ceph/ceph/pull/14130>`_, Sage Weil) -* common,rbd,rgw: common/rgw/rbd: remove some unused variables (`pr#16690 <https://github.com/ceph/ceph/pull/16690>`_, Luo Kexue) -* common,rdma: msg/async/rdma: automatically set RDMAV_HUGEPAGES_SAFE according to conf (`pr#15755 <https://github.com/ceph/ceph/pull/15755>`_, DanielBar-On) -* common,rdma: msg/async/rdma: check ulimit (`pr#13655 <https://github.com/ceph/ceph/pull/13655>`_, Sarit Zubakov, Adir Lev) -* common,rdma: msg/async/rdma: Introduce Device.{cc,h} (`pr#14001 <https://github.com/ceph/ceph/pull/14001>`_, Amir Vadai) -* common,rdma: msg/async/rdma: Introduce RDMAConnMgr + Debug prints (`pr#14201 <https://github.com/ceph/ceph/pull/14201>`_, Amir Vadai) -* common,rdma: msg/async/rdma: Move resource handling to Device (`pr#14088 <https://github.com/ceph/ceph/pull/14088>`_, Sarit Zubakov, Amir Vadai) -* common,rdma: msg/async/rdma: RDMA-CM Initialize device on first connect (`pr#14179 <https://github.com/ceph/ceph/pull/14179>`_, Amir Vadai) -* common,rdma: msg/async/rdma: reduce number of rdma rx/tx buffers (`pr#13190 <https://github.com/ceph/ceph/pull/13190>`_, Adir Lev) -* common,rdma: msg/async/rdma: use lists properly (`pr#15908 <https://github.com/ceph/ceph/pull/15908>`_, Adir lev, Adir Lev) -* common: remove config opt conversion utility (`pr#16480 <https://github.com/ceph/ceph/pull/16480>`_, John Spray) -* common: remove \n on clog messages (`pr#13794 <https://github.com/ceph/ceph/pull/13794>`_, Sage Weil) -* common: Remove redundant includes - 2 (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15169 <https://github.com/ceph/ceph/pull/15169>`_, Jos Collin) -* common: Remove redundant includes - 3 (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15204 <https://github.com/ceph/ceph/pull/15204>`_, Jos Collin) -* common: Remove redundant includes - 4 (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15251 <https://github.com/ceph/ceph/pull/15251>`_, Jos Collin) -* common: Remove redundant includes - 5 (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15267 <https://github.com/ceph/ceph/pull/15267>`_, Jos Collin) -* common: Remove redundant includes - 6 (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15299 <https://github.com/ceph/ceph/pull/15299>`_, Jos Collin) -* common: Remove redundant includes (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15003 <https://github.com/ceph/ceph/pull/15003>`_, Brad Hubbard) -* common: Remove redundant includes (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15019 <https://github.com/ceph/ceph/pull/15019>`_, Brad Hubbard) -* common: Remove redundant includes (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15042 <https://github.com/ceph/ceph/pull/15042>`_, Brad Hubbard) -* common: Remove redundant includes (`issue#19883 <http://tracker.ceph.com/issues/19883>`_, `pr#15086 <https://github.com/ceph/ceph/pull/15086>`_, Jos Collin) -* common: remove useless parameter (`pr#14096 <https://github.com/ceph/ceph/pull/14096>`_, baiyanchun) -* common: Revamp config option definitions (`issue#20627 <http://tracker.ceph.com/issues/20627>`_, `pr#16211 <https://github.com/ceph/ceph/pull/16211>`_, John Spray, Kefu Chai, Sage Weil) -* common,rgw: cls/refcount: store and use list of retired tags (`issue#20107 <http://tracker.ceph.com/issues/20107>`_, `pr#15673 <https://github.com/ceph/ceph/pull/15673>`_, Yehuda Sadeh) -* common: src/common/ceph_string: stringify new osd states (`pr#15751 <https://github.com/ceph/ceph/pull/15751>`_, xie xingguo) -* common: src/common: change last_work_queue to next_work_queue (`pr#14738 <https://github.com/ceph/ceph/pull/14738>`_, Pan Liu) -* common: support s390 and unknown architectures in spin-wait loop (`issue#19492 <http://tracker.ceph.com/issues/19492>`_, `pr#14337 <https://github.com/ceph/ceph/pull/14337>`_, Nathan Cutler) -* common,tests: ceph_test_rados_api_c_read_operations: do not assert per-op rval is correct (`issue#19518 <http://tracker.ceph.com/issues/19518>`_, `pr#16196 <https://github.com/ceph/ceph/pull/16196>`_, Sage Weil) -* common,tests: ceph_test_rados_api_list: more fix LibRadosListNP.ListObjectsError (`issue#19963 <http://tracker.ceph.com/issues/19963>`_, `pr#15138 <https://github.com/ceph/ceph/pull/15138>`_, Sage Weil) -* common,tests: test: Make screencandy optional for FreeBSD (`pr#15444 <https://github.com/ceph/ceph/pull/15444>`_, Willem Jan Withagen) -* common: the latency dumped by "ceph osd perf" is not real (`issue#20749 <http://tracker.ceph.com/issues/20749>`_, `pr#16512 <https://github.com/ceph/ceph/pull/16512>`_, Pan Liu) -* common,tools: osdmaptool: show all the pg map to osds info (`pr#9419 <https://github.com/ceph/ceph/pull/9419>`_, song baisen) -* common: tracing: Fix handle leak in TracepointProvider (`pr#12652 <https://github.com/ceph/ceph/pull/12652>`_, Brad Hubbard) -* common: tracing: fix segv (`issue#18576 <http://tracker.ceph.com/issues/18576>`_, `pr#14304 <https://github.com/ceph/ceph/pull/14304>`_, Anjaneya Chagam) -* common: Update the error string when res_nsearch() or res_search() fails (`pr#15878 <https://github.com/ceph/ceph/pull/15878>`_, huanwen ren) -* common: use ref to avoid unnecessary memory copy (`issue#19107 <http://tracker.ceph.com/issues/19107>`_, `pr#13689 <https://github.com/ceph/ceph/pull/13689>`_, liuchang0812) -* common: use std::move() for better performance (`pr#16620 <https://github.com/ceph/ceph/pull/16620>`_, Xinying Song) -* common: xio: migrate atomic_t to std::atomic<> (`pr#15230 <https://github.com/ceph/ceph/pull/15230>`_, Jesse Williamson) -* compressor: conditionalize on HAVE_LZ4 (`pr#17174 <https://github.com/ceph/ceph/pull/17174>`_, Kefu Chai) -* compressor: fix Mutex::Locker used is not correct (`pr#13935 <https://github.com/ceph/ceph/pull/13935>`_, hechuang) -* compressor: zlib: fix plugin for non-Intel arches (`pr#14947 <https://github.com/ceph/ceph/pull/14947>`_, Dan Mick) -* core: auth: 'ceph auth import -i' overwrites caps, if caps are not specified (`issue#18932 <http://tracker.ceph.com/issues/18932>`_, `pr#13468 <https://github.com/ceph/ceph/pull/13468>`_, Vikhyat Umrao) -* core: auth: Remove unused function in AuthSessionHandler (`pr#16666 <https://github.com/ceph/ceph/pull/16666>`_, Luo Kexue) -* core: ceph: allow '-' with -i and -o for stdin/stdout (`pr#16359 <https://github.com/ceph/ceph/pull/16359>`_, Sage Weil) -* core: ceph-create-keys: Add connection timeouts (`pr#11995 <https://github.com/ceph/ceph/pull/11995>`_, Owen Synge) -* core: ceph-dencoder: Silence coverity CID 1412579 (`pr#15744 <https://github.com/ceph/ceph/pull/15744>`_, Brad Hubbard) -* core: ceph-detect-init: Add docker detection (`pr#13218 <https://github.com/ceph/ceph/pull/13218>`_, Guillaume Abrioux) -* core: ceph-disk: Adding retry loop in get_partition_dev() (`pr#14275 <https://github.com/ceph/ceph/pull/14275>`_, Erwan Velu) -* core: ceph-disk/ceph_disk/main.py: fix calling of the bsdrc init scripts (`pr#14476 <https://github.com/ceph/ceph/pull/14476>`_, Willem Jan Withagen) -* core: ceph-disk/ceph_disk/main.py: Replace ST_ISBLK() test by is_diskdevice() (`pr#15587 <https://github.com/ceph/ceph/pull/15587>`_, Willem Jan Withagen) -* core: ceph-disk: ceph-disk on FreeBSD should not use mpath-code (`pr#14837 <https://github.com/ceph/ceph/pull/14837>`_, Willem Jan Withagen) -* core: ceph-disk: dmcrypt activate must use the same cluster as prepare (`issue#17821 <http://tracker.ceph.com/issues/17821>`_, `pr#13573 <https://github.com/ceph/ceph/pull/13573>`_, Loic Dachary) -* core: ceph-disk: dmcrypt cluster must default to ceph (`issue#20893 <http://tracker.ceph.com/issues/20893>`_, `pr#16776 <https://github.com/ceph/ceph/pull/16776>`_, Loic Dachary) -* core: ceph-disk: do not setup_statedir on trigger (`issue#19941 <http://tracker.ceph.com/issues/19941>`_, `pr#15410 <https://github.com/ceph/ceph/pull/15410>`_, Loic Dachary) -* core: ceph-disk: enable directory backed OSD at boot time (`issue#19628 <http://tracker.ceph.com/issues/19628>`_, `pr#14546 <https://github.com/ceph/ceph/pull/14546>`_, Loic Dachary) -* core: ceph-disk: Fix getting wrong group name when --setgroup in bluestore (`issue#18955 <http://tracker.ceph.com/issues/18955>`_, `pr#13457 <https://github.com/ceph/ceph/pull/13457>`_, craigchi) -* core: ceph-disk: FreeBSD changes to get it working and passing tests (`pr#12086 <https://github.com/ceph/ceph/pull/12086>`_, Willem Jan Withagen) -* core: ceph-disk: implement prepare --no-locking (`pr#14728 <https://github.com/ceph/ceph/pull/14728>`_, Dan van der Ster, Loic Dachary) -* core: ceph_disk/main.py: Allow FreeBSD zap a OSD disk (`pr#15642 <https://github.com/ceph/ceph/pull/15642>`_, Willem Jan Withagen) -* core: ceph-disk,osd: add support for crush device classes (`issue#19513 <http://tracker.ceph.com/issues/19513>`_, `pr#14436 <https://github.com/ceph/ceph/pull/14436>`_, Loic Dachary) -* core: ceph-disk: Populate mount options when running "list" (`issue#17331 <http://tracker.ceph.com/issues/17331>`_, `pr#14293 <https://github.com/ceph/ceph/pull/14293>`_, Brad Hubbard) -* core: ceph-disk: Reporting /sys directory in get_partition_dev() (`pr#14080 <https://github.com/ceph/ceph/pull/14080>`_, Erwan Velu) -* core: ceph-disk: Revert "Revert "change get_dmcrypt_key test to support different cluster name"" (`pr#13600 <https://github.com/ceph/ceph/pull/13600>`_, Loic Dachary) -* core: ceph-disk: separate ceph-osd --check-needs-\* logs (`issue#19888 <http://tracker.ceph.com/issues/19888>`_, `pr#15016 <https://github.com/ceph/ceph/pull/15016>`_, Loic Dachary) -* core: ceph-disk: set the default systemd unit timeout to 3h (`issue#20229 <http://tracker.ceph.com/issues/20229>`_, `pr#15585 <https://github.com/ceph/ceph/pull/15585>`_, Loic Dachary) -* core: ceph-disk: support osd new (`pr#15432 <https://github.com/ceph/ceph/pull/15432>`_, Loic Dachary, Sage Weil) -* core: ceph-disk: Write 10M to all partitions before zapping (`issue#18962 <http://tracker.ceph.com/issues/18962>`_, `pr#13766 <https://github.com/ceph/ceph/pull/13766>`_, Wido den Hollander) -* core: ceph: do not throw TypeError on connection failure (`pr#13268 <https://github.com/ceph/ceph/pull/13268>`_, Kefu Chai) -* core: ceph.in: Fix couple of minor issues on the messages (`pr#12797 <https://github.com/ceph/ceph/pull/12797>`_, Dave Chen) -* core: ceph-objectstore-tool: do not populate snapmapper with missing clones (`issue#19943 <http://tracker.ceph.com/issues/19943>`_, `pr#15787 <https://github.com/ceph/ceph/pull/15787>`_, Sage Weil) -* core: ceph-osd: fix auto detect which objectstore is currently running (`issue#20865 <http://tracker.ceph.com/issues/20865>`_, `pr#16717 <https://github.com/ceph/ceph/pull/16717>`_, Yanhu Cao) -* core: ceph-osd: --flush-journal: sporadic segfaults on exit (`issue#18820 <http://tracker.ceph.com/issues/18820>`_, `pr#13311 <https://github.com/ceph/ceph/pull/13311>`_, Alexey Sheplyakov) -* core: client/SyntheticClient.cc: Fix warning in random_walk (`issue#19445 <http://tracker.ceph.com/issues/19445>`_, `pr#14308 <https://github.com/ceph/ceph/pull/14308>`_, Brad Hubbard) -* core: cls/timeindex: clean up cls_timeindex_client.h|cc (`pr#13987 <https://github.com/ceph/ceph/pull/13987>`_, Shinobu Kinjo) -* core: common/options: remove mon_warn_osd_usage_min_max_delta from options.cc too (`pr#16488 <https://github.com/ceph/ceph/pull/16488>`_, Sage Weil) -* core: common/TrackedOp: allow dumping historic ops sorted by duration (`pr#14050 <https://github.com/ceph/ceph/pull/14050>`_, Piotr Dałek) -* core: compressor: add LZ4 support (`pr#15434 <https://github.com/ceph/ceph/pull/15434>`_, Haomai Wang) -* core: compressor: optimize header file dependency (`pr#15187 <https://github.com/ceph/ceph/pull/15187>`_, Brad Hubbard, Xiaowei Chen) -* core: Context: C_ContextsBase: delete enclosed contexts in dtor (`issue#20432 <http://tracker.ceph.com/issues/20432>`_, `pr#16159 <https://github.com/ceph/ceph/pull/16159>`_, Kefu Chai) -* core: crush/CrushWrapper: chooseargs encoding fix (`pr#15984 <https://github.com/ceph/ceph/pull/15984>`_, Ilya Dryomov) -* core: crush/CrushWrapper: make get_immediate_parent[_id] ignore per-class shadow hierarchy (`issue#20546 <http://tracker.ceph.com/issues/20546>`_, `pr#16221 <https://github.com/ceph/ceph/pull/16221>`_, Sage Weil) -* core: crush, mon: make jewel the lower bound for client/crush compat for new clusters (`pr#15370 <https://github.com/ceph/ceph/pull/15370>`_, Sage Weil) -* core: erasure-code: optimize header file dependency (`pr#15172 <https://github.com/ceph/ceph/pull/15172>`_, Brad Hubbard, Xiaowei Chen) -* core: erasure-code: Remove duplicate of isa-l files (`pr#15372 <https://github.com/ceph/ceph/pull/15372>`_, Ganesh Mahalingam) -* core: erasure-code: sync jerasure/gf-complete submodules (`pr#14424 <https://github.com/ceph/ceph/pull/14424>`_, Loic Dachary) -* core: filestore: migrate atomic_t to std::atomic<> (`pr#15228 <https://github.com/ceph/ceph/pull/15228>`_, Jesse Williamson) -* core: Give requested scrub work a higher priority (`issue#15789 <http://tracker.ceph.com/issues/15789>`_, `pr#14488 <https://github.com/ceph/ceph/pull/14488>`_, David Zafman) -* core: global: start removing g_ceph_context (`pr#12149 <https://github.com/ceph/ceph/pull/12149>`_, Adam C. Emerson) -* core: HashIndex.cc: add compat.h for ENODATA (`pr#16697 <https://github.com/ceph/ceph/pull/16697>`_, Willem Jan Withagen) -* core: include/denc: add {encode,decode}_nohead for denc_traits<basic_string> (`issue#18938 <http://tracker.ceph.com/issues/18938>`_, `pr#14099 <https://github.com/ceph/ceph/pull/14099>`_, Kefu Chai) -* core: include/mempool.h: fix Clangs complaint about types (`pr#13523 <https://github.com/ceph/ceph/pull/13523>`_, Willem Jan Withagen) -* core: include/types.h, introduce host_to_ceph_errno (`pr#15496 <https://github.com/ceph/ceph/pull/15496>`_, Willem Jan Withagen) -* core: Install Pecan for FreeBSD (`pr#15610 <https://github.com/ceph/ceph/pull/15610>`_, Willem Jan Withagen) -* core: introduce (and fix) code to pass errno to other OSes (`pr#15495 <https://github.com/ceph/ceph/pull/15495>`_, Willem Jan Withagen) -* core: introduce DirectMessenger (`pr#14755 <https://github.com/ceph/ceph/pull/14755>`_, Casey Bodley, Matt Benjamin) -* core: kv/RocksDBStore: abort if rocksdb EIO, don't return incorrect result (`pr#15862 <https://github.com/ceph/ceph/pull/15862>`_, Haomai Wang) -* core: kv/RocksDBStore: use vector instead of VLA for holding slices (`pr#16615 <https://github.com/ceph/ceph/pull/16615>`_, Kefu Chai) -* core: libradosstriper: Initialize member variable m_writeRc in WriteCompletionData (`pr#16780 <https://github.com/ceph/ceph/pull/16780>`_, amitkuma) -* core: luminous: Improve size scrub error handling and ignore system attrs in xattr checking (`issue#21051 <http://tracker.ceph.com/issues/21051>`_, `issue#18836 <http://tracker.ceph.com/issues/18836>`_, `issue#20243 <http://tracker.ceph.com/issues/20243>`_, `pr#17196 <https://github.com/ceph/ceph/pull/17196>`_, David Zafman) -* core: luminous: Include front/back interface names in OSD metadata (`issue#21048 <http://tracker.ceph.com/issues/21048>`_, `issue#20956 <http://tracker.ceph.com/issues/20956>`_, `pr#17193 <https://github.com/ceph/ceph/pull/17193>`_, John Spray) -* core: luminous: mon: bug in functon reweight_by_utilization (`issue#21079 <http://tracker.ceph.com/issues/21079>`_, `issue#20970 <http://tracker.ceph.com/issues/20970>`_, `pr#17198 <https://github.com/ceph/ceph/pull/17198>`_, xie xingguo) -* core: luminous: mon: "ceph osd crush rule rename" support (`pr#17260 <https://github.com/ceph/ceph/pull/17260>`_, xie xingguo) -* core: luminous: multisite: FAILED assert(prev_iter != pos_to_prev.end()) in RGWMetaSyncShardCR::collect_children() (`issue#21097 <http://tracker.ceph.com/issues/21097>`_, `issue#20906 <http://tracker.ceph.com/issues/20906>`_, `pr#17234 <https://github.com/ceph/ceph/pull/17234>`_, Casey Bodley) -* core: luminous: osd: osd_scrub_during_recovery only considers primary, not replicas (`issue#18206 <http://tracker.ceph.com/issues/18206>`_, `issue#21077 <http://tracker.ceph.com/issues/21077>`_, `pr#17195 <https://github.com/ceph/ceph/pull/17195>`_, David Zafman) -* core: luminous: src/common/LogClient.cc: 310: FAILED assert(num_unsent <= log_queue.size()) (`issue#20965 <http://tracker.ceph.com/issues/20965>`_, `issue#18209 <http://tracker.ceph.com/issues/18209>`_, `pr#17197 <https://github.com/ceph/ceph/pull/17197>`_, Sage Weil) -* core: make the conversion from wire error to host OS work (`pr#15780 <https://github.com/ceph/ceph/pull/15780>`_, Willem Jan Withagen) -* core: Merge pull request #16755 from ivancich/wip-pull-new-dmclock (`pr#16922 <https://github.com/ceph/ceph/pull/16922>`_, Gregory Farnum) -* core: messages: default-initialize MOSDPGRecoveryDelete[Reply] members (`pr#16584 <https://github.com/ceph/ceph/pull/16584>`_, Greg Farnum) -* core: messages: Initialize members in MMDSTableRequest (`pr#16810 <https://github.com/ceph/ceph/pull/16810>`_, amitkuma) -* core: messages: Initialize member variables (`pr#16819 <https://github.com/ceph/ceph/pull/16819>`_, amitkuma) -* core: messages: Initialize member variables (`pr#16839 <https://github.com/ceph/ceph/pull/16839>`_, amitkuma) -* core: messages: Initializing member variable in MMDSCacheRejoin (`pr#16791 <https://github.com/ceph/ceph/pull/16791>`_, amitkuma) -* core: messages/MOSDOp: fix pg_t decoding for version <7 decoding (`issue#19005 <http://tracker.ceph.com/issues/19005>`_, `pr#13537 <https://github.com/ceph/ceph/pull/13537>`_, Sage Weil) -* core: messages/MOSDPGTrim: add the missed HEAD_VERSION AND COMPAT_VERSION (`issue#18266 <http://tracker.ceph.com/issues/18266>`_, `pr#12517 <https://github.com/ceph/ceph/pull/12517>`_, huangjun) -* core: messages/MOSDPing.h: drop unused fields (`pr#15843 <https://github.com/ceph/ceph/pull/15843>`_, Piotr Dałek) -* core: messages/MOSDPing: initialize MOSDPing padding (`issue#20323 <http://tracker.ceph.com/issues/20323>`_, `pr#15714 <https://github.com/ceph/ceph/pull/15714>`_, Sage Weil) -* core: messages/MOSDSubOp: Make encode_payload can be reentrant (`pr#12654 <https://github.com/ceph/ceph/pull/12654>`_, Haomai Wang) -* core: messages: remove compat cruft (`pr#14475 <https://github.com/ceph/ceph/pull/14475>`_, Sage Weil) -* core: mgr/MgrClient: do not attempt to access a global variable for config (`pr#16544 <https://github.com/ceph/ceph/pull/16544>`_, Jason Dillaman) -* core: mgr/MgrClient: use unique_ptr for MgrClient::session (`issue#19097 <http://tracker.ceph.com/issues/19097>`_, `pr#13685 <https://github.com/ceph/ceph/pull/13685>`_, Kefu Chai) -* core,mgr: mgr/DaemonServer: stop spamming log with pg stats (`pr#15487 <https://github.com/ceph/ceph/pull/15487>`_, Sage Weil) -* core,mgr: mgr,librados: service map (`pr#15858 <https://github.com/ceph/ceph/pull/15858>`_, Yehuda Sadeh, John Spray, Sage Weil) -* core,mgr,mon: mgr,mon: enable/disable mgr modules via 'ceph mgr module ...' commands (`pr#15958 <https://github.com/ceph/ceph/pull/15958>`_, Sage Weil) -* core,mgr,mon: mon,mgr: tag some commands for ceph-mgr (`pr#13617 <https://github.com/ceph/ceph/pull/13617>`_, Sage Weil) -* core,mgr,mon: mon/PGMap: fix osd_epoch update when removing osd_stat (`issue#20208 <http://tracker.ceph.com/issues/20208>`_, `pr#15573 <https://github.com/ceph/ceph/pull/15573>`_, Sage Weil) -* core,mgr: mon/PGMap: slightly better debugging around pgmap updates (`pr#15820 <https://github.com/ceph/ceph/pull/15820>`_, Sage Weil) -* core,mgr,tests: qa: flush out monc's dropped msgs on msgr failure injection (`issue#20371 <http://tracker.ceph.com/issues/20371>`_, `pr#16484 <https://github.com/ceph/ceph/pull/16484>`_, Joao Eduardo Luis) -* core,mgr,tests: qa/suites/rados/rest: test restful mgr module (`pr#15604 <https://github.com/ceph/ceph/pull/15604>`_, Sage Weil) -* core: misc: SCA fixes (`pr#14426 <https://github.com/ceph/ceph/pull/14426>`_, Danny Al-Gaaf) -* core,mon: crush, mon: simplify device class manipulation commands (`pr#16388 <https://github.com/ceph/ceph/pull/16388>`_, xie xingguo) -* core: mon,mgr: fix "ceph osd df", add some tools to find untested commands (`issue#20256 <http://tracker.ceph.com/issues/20256>`_, `pr#15675 <https://github.com/ceph/ceph/pull/15675>`_, Greg Farnum) -* core: mon/MonClient: discard stray messages from non-acitve conns (`issue#19015 <http://tracker.ceph.com/issues/19015>`_, `pr#13656 <https://github.com/ceph/ceph/pull/13656>`_, Kefu Chai) -* core: mon/MonClient: don't return zero global_id (`issue#19134 <http://tracker.ceph.com/issues/19134>`_, `pr#13853 <https://github.com/ceph/ceph/pull/13853>`_, "Yan, Zheng", Kefu Chai) -* core: mon/MonClient: hunt monitors in parallel (`issue#16091 <http://tracker.ceph.com/issues/16091>`_, `pr#11128 <https://github.com/ceph/ceph/pull/11128>`_, Steven Dieffenbach, Kefu Chai) -* core: mon/MonClient: persist global_id across re-connecting (`issue#18968 <http://tracker.ceph.com/issues/18968>`_, `pr#13550 <https://github.com/ceph/ceph/pull/13550>`_, Kefu Chai) -* core: mon/MonClient: respect the priority in SRV RR (`issue#5249 <http://tracker.ceph.com/issues/5249>`_, `pr#15964 <https://github.com/ceph/ceph/pull/15964>`_, Kefu Chai) -* core,mon: mon/LogMonitor: 'log last' command (`pr#15497 <https://github.com/ceph/ceph/pull/15497>`_, Sage Weil) -* core: mon/MonmapMonitor: use `__func__` instead of hard code function name (`pr#16037 <https://github.com/ceph/ceph/pull/16037>`_, Yanhu Cao) -* core,mon: mon/MgrStatMonitor: avoid dup health warnings during luminous upgrade (`issue#20435 <http://tracker.ceph.com/issues/20435>`_, `pr#15986 <https://github.com/ceph/ceph/pull/15986>`_, Sage Weil) -* core,mon: mon/MgrStatMonitor: keep mgrstat version ahead of pgmon (`issue#20219 <http://tracker.ceph.com/issues/20219>`_, `pr#15584 <https://github.com/ceph/ceph/pull/15584>`_, Sage Weil) -* core,mon: mon,osd: add crush_version to OSDMap, and allow crush map updates to gate on crush_version (`pr#15533 <https://github.com/ceph/ceph/pull/15533>`_, Sage Weil) -* core,mon: mon,osd: decouple creating pgs from pgmap (`pr#13999 <https://github.com/ceph/ceph/pull/13999>`_, Kefu Chai) -* core,mon: mon, osd: misc fixes (`pr#16078 <https://github.com/ceph/ceph/pull/16078>`_, xie xingguo) -* core,mon: mon/OSDMonitor: cancel mapping job from update_from_paxos (`issue#20067 <http://tracker.ceph.com/issues/20067>`_, `pr#15320 <https://github.com/ceph/ceph/pull/15320>`_, Sage Weil) -* core,mon: mon/OSDMonitor: make 'osd crush move ...' work on osds (`issue#18587 <http://tracker.ceph.com/issues/18587>`_, `pr#12981 <https://github.com/ceph/ceph/pull/12981>`_, Sage Weil) -* core,mon: mon/OSDMonitor: make snaps on tier pool should not be allowed (`pr#9348 <https://github.com/ceph/ceph/pull/9348>`_, Mingxin Liu) -* core,mon: mon/OSDMonitor: use up set instead of acting set in reweight_by_utilization (`pr#13802 <https://github.com/ceph/ceph/pull/13802>`_, Mingxin Liu) -* core,mon: mon,osd: new mechanism for managing full and nearfull OSDs for luminous (`pr#13615 <https://github.com/ceph/ceph/pull/13615>`_, Sage Weil) -* core,mon: mon/PGMap: call blocked requests ERR not WARN (`pr#15501 <https://github.com/ceph/ceph/pull/15501>`_, Sage Weil) -* core: mon,osd: add require_min_compat_client setting to enforce and clarify client compatibility (`pr#14959 <https://github.com/ceph/ceph/pull/14959>`_, Sage Weil) -* core: mon,osd: luminous feature bits, require flags, upgrade gates (`pr#13278 <https://github.com/ceph/ceph/pull/13278>`_, Sage Weil) -* core: mon, osd: misc fixes and cleanups (`pr#16160 <https://github.com/ceph/ceph/pull/16160>`_, xie xingguo) -* core: mon, osd: misc fixes (`pr#16283 <https://github.com/ceph/ceph/pull/16283>`_, xie xingguo) -* core: mon/OSDMonitor: _apply_remap -> _apply_upmap; less code redundancy (`pr#15846 <https://github.com/ceph/ceph/pull/15846>`_, xie xingguo) -* core: mon/OSDMonitor: batch noup/noin osds support (`pr#15725 <https://github.com/ceph/ceph/pull/15725>`_, xie xingguo) -* core: mon/OSDMonitor: batch OSDs nodown/noout support (`pr#15381 <https://github.com/ceph/ceph/pull/15381>`_, xie xingguo) -* core: mon/OSDMonitor: change info in 'osd failed' messages (`pr#15321 <https://github.com/ceph/ceph/pull/15321>`_, Sage Weil) -* core: mon/OSDMonitor: do not allow crush device classes until luminous (`pr#16188 <https://github.com/ceph/ceph/pull/16188>`_, Sage Weil) -* core: mon/OSDMonitor: fixup sortbitwise flag warning (`pr#12682 <https://github.com/ceph/ceph/pull/12682>`_, huanwen ren) -* core: mon/OSDMonitor: make mapping job behave if mon_osd_prime_pg_temp = false (`issue#19020 <http://tracker.ceph.com/issues/19020>`_, `pr#13574 <https://github.com/ceph/ceph/pull/13574>`_, Sage Weil) -* core: mon/OSDMonitor: osd crush set-device-class (`issue#19307 <http://tracker.ceph.com/issues/19307>`_, `pr#14039 <https://github.com/ceph/ceph/pull/14039>`_, Loic Dachary) -* core: mon/OSDMonitor: set last_force_op_resend on overlay pool too (`issue#18366 <http://tracker.ceph.com/issues/18366>`_, `pr#12712 <https://github.com/ceph/ceph/pull/12712>`_, Sage Weil) -* core: mon/OSDMonitor: should propose osdmap update when cluster addr changed (`pr#11065 <https://github.com/ceph/ceph/pull/11065>`_, Mingxin Liu) -* core: mon/OSDMonitor: skip prime_pg_temp if mapping is prior to osdmap (`pr#14826 <https://github.com/ceph/ceph/pull/14826>`_, Kefu Chai) -* core: mon,osd/OSDMap: a couple pg-upmap fixes (`pr#15319 <https://github.com/ceph/ceph/pull/15319>`_, Sage Weil) -* core: mon/PGMap: factor mon_osd_full_ratio into MAX AVAIL calc (`issue#18522 <http://tracker.ceph.com/issues/18522>`_, `pr#12923 <https://github.com/ceph/ceph/pull/12923>`_, Sage Weil) -* core: mon/PGMonitor: fix wrongly report "pg stuck in inactive" (`pr#14391 <https://github.com/ceph/ceph/pull/14391>`_, Mingxin Liu) -* core,mon,rbd: mon,osd: new rbd-based cephx cap profiles (`pr#15991 <https://github.com/ceph/ceph/pull/15991>`_, Jason Dillaman) -* core: msg/async/AsyncConnection: keepalive objecter ping connection to avoid timeout (`pr#14009 <https://github.com/ceph/ceph/pull/14009>`_, Haomai Wang) -* core: msg/async/AsyncConnection: socket's fd can be zero, avoid false assert (`pr#13080 <https://github.com/ceph/ceph/pull/13080>`_, Haomai Wang) -* core: msg/async: avoid requeue racing with handle_write (`issue#20093 <http://tracker.ceph.com/issues/20093>`_, `pr#15324 <https://github.com/ceph/ceph/pull/15324>`_, Haomai Wang) -* core: msg/async/dpdk: fix compile errors (`pr#12698 <https://github.com/ceph/ceph/pull/12698>`_, Haomai Wang) -* core: msg/async: fix deleted_conn is out of sync with conns (`issue#20230 <http://tracker.ceph.com/issues/20230>`_, `pr#15645 <https://github.com/ceph/ceph/pull/15645>`_, Haomai Wang) -* core: msg/async: fix the bug of inaccurate calculation of l_msgr_send_bytes (`pr#16526 <https://github.com/ceph/ceph/pull/16526>`_, Jin Cai) -* core: msg/async/rdma: add log to show correct destruct queuepair (`pr#13412 <https://github.com/ceph/ceph/pull/13412>`_, Haomai Wang) -* core: msg/async/rdma: add perf counters to RDMA backend (`pr#13484 <https://github.com/ceph/ceph/pull/13484>`_, Haomai Wang) -* core: msg/async/rdma: destroy QueuePair if needed (`pr#13810 <https://github.com/ceph/ceph/pull/13810>`_, Haomai Wang) -* core: msg/async/rdma: don't need to delete event when tcp connection isn't … (`pr#13528 <https://github.com/ceph/ceph/pull/13528>`_, Haomai Wang) -* core: msg/async/rdma: fix ceph_clock_now calls (`pr#12711 <https://github.com/ceph/ceph/pull/12711>`_, Haomai Wang) -* core: msg/async/rdma: fix potential racing connection usage (`pr#13738 <https://github.com/ceph/ceph/pull/13738>`_, Haomai Wang) -* core: msg/async/rdma: make Infiniband can be forkable (`pr#13525 <https://github.com/ceph/ceph/pull/13525>`_, Haomai Wang) -* core: msg/async/rdm: fix leak when existing failure in ip network (`pr#13435 <https://github.com/ceph/ceph/pull/13435>`_, Haomai Wang) -* core: msg/async: set thread name for msgr worker (`pr#13699 <https://github.com/ceph/ceph/pull/13699>`_, Haomai Wang) -* core: msg/async/Stack.cc: use of pthread_setname_np() needs compat.h (`pr#13825 <https://github.com/ceph/ceph/pull/13825>`_, Willem Jan Withagen) -* core: msg/async: support IPv6 QoS (`issue#18887 <http://tracker.ceph.com/issues/18887>`_, `issue#18928 <http://tracker.ceph.com/issues/18928>`_, `pr#13418 <https://github.com/ceph/ceph/pull/13418>`_, Robin H. Johnson) -* core: msg/simple: fix missing unlock when already bind (`pr#13267 <https://github.com/ceph/ceph/pull/13267>`_, Haomai Wang) -* core: msg/simple/Pipe:the returned value for do_recv unequal to zero (`pr#10272 <https://github.com/ceph/ceph/pull/10272>`_, zhang.zezhu) -* core: objclass: modify omap_get_{keys,vals} api (`pr#16667 <https://github.com/ceph/ceph/pull/16667>`_, Yehuda Sadeh, Casey Bodley) -* core: objclass-sdk: use namespace ceph for bufferlist (`pr#15581 <https://github.com/ceph/ceph/pull/15581>`_, Neha Ojha) -* core: os/bluestore: do not use nullptr to calc the size of bluestore_pextent_t (`pr#14030 <https://github.com/ceph/ceph/pull/14030>`_, Kefu Chai) -* core: os/bluestore rm unused variable in aio_read() (`pr#13530 <https://github.com/ceph/ceph/pull/13530>`_, tangwenjun) -* core: os/bluestore: silence gcc warning (`pr#14028 <https://github.com/ceph/ceph/pull/14028>`_, Kefu Chai) -* core: osdc: clean up osd_command/start_mon_command interfaces (`pr#13727 <https://github.com/ceph/ceph/pull/13727>`_, John Spray) -* core: osdc/Objecter: fix possible OSDSession leak on wrong connection (`pr#13365 <https://github.com/ceph/ceph/pull/13365>`_, xie xingguo) -* core: osdc/Objecter: resend pg commands on interval change (`issue#18358 <http://tracker.ceph.com/issues/18358>`_, `pr#12869 <https://github.com/ceph/ceph/pull/12869>`_, Samuel Just) -* core: osdc/Objecter: respect epoch barrier in _op_submit() (`issue#19396 <http://tracker.ceph.com/issues/19396>`_, `pr#14190 <https://github.com/ceph/ceph/pull/14190>`_, Ilya Dryomov) -* core: osd/: don't leak context for Blessed\*Context or RecoveryQueueAsync (`issue#18809 <http://tracker.ceph.com/issues/18809>`_, `pr#13342 <https://github.com/ceph/ceph/pull/13342>`_, Samuel Just) -* core: OSD: drop parameter t from merge_log() (`pr#13923 <https://github.com/ceph/ceph/pull/13923>`_, xie xingguo) -* core: osd/ECBackend: cleanup for unnecessary copy with pg_stat_t (`pr#12564 <https://github.com/ceph/ceph/pull/12564>`_, Yunchuan Wen) -* core: osd/ECBackend: drop duplicated pending_commit field from << operator (`pr#13665 <https://github.com/ceph/ceph/pull/13665>`_, xie xingguo) -* core: osd/ECBackend: only need check missing_loc when doing recovery (`pr#12526 <https://github.com/ceph/ceph/pull/12526>`_, huangjun) -* core: osd/ECBackend: remove unused variable "ReadCB" (`pr#12543 <https://github.com/ceph/ceph/pull/12543>`_, huangjun) -* core: osd/ECTransaction: cleanup the redundant check which works in overwrite IO context (`pr#15765 <https://github.com/ceph/ceph/pull/15765>`_, tang.jin) -* core: osd/ECTransaction: only read partial stripes when below \*original\* object size (`issue#19882 <http://tracker.ceph.com/issues/19882>`_, `pr#15712 <https://github.com/ceph/ceph/pull/15712>`_, Sage Weil) -* core: osd/filestore: Revert "os/filestore: move ondisk in front (`issue#20524 <http://tracker.ceph.com/issues/20524>`_, `pr#16156 <https://github.com/ceph/ceph/pull/16156>`_, Kefu Chai) -* core: osd,librados: add manifest, redirect (`pr#15325 <https://github.com/ceph/ceph/pull/15325>`_, Sage Weil) -* core: osd,librados: cmpext support (`pr#14715 <https://github.com/ceph/ceph/pull/14715>`_, Zhengyong Wang, David Disseldorp, Mike Christie) -* core: osd,librados: remove clone_range and associated multi-object cruft (`pr#13008 <https://github.com/ceph/ceph/pull/13008>`_, Samuel Just) -* core: osd, messages/MOSDPing: bunch of fixes related to ping inflation (`pr#15727 <https://github.com/ceph/ceph/pull/15727>`_, Piotr Dałek) -* core: osd/mon/mds: fix `config set` tell command (`issue#20803 <http://tracker.ceph.com/issues/20803>`_, `pr#16700 <https://github.com/ceph/ceph/pull/16700>`_, John Spray) -* core: osd,mon: misc full fixes and cleanups (`pr#13968 <https://github.com/ceph/ceph/pull/13968>`_, David Zafman) -* core: osd/OpRequest: dump both name and addr for the client op (`pr#12691 <https://github.com/ceph/ceph/pull/12691>`_, runsisi) -* core: osd/OSD: bump up current version; conditionally encoding manifest into oi (`pr#15687 <https://github.com/ceph/ceph/pull/15687>`_, xie xingguo) -* core: osd/osd_internal_types: wake snaptrimmer on put_read lock, too (`issue#19131 <http://tracker.ceph.com/issues/19131>`_, `pr#13755 <https://github.com/ceph/ceph/pull/13755>`_, Sage Weil) -* core: osd/OSDMap: bump encoding version for require_min_compat_client (`pr#15046 <https://github.com/ceph/ceph/pull/15046>`_, "Yan, Zheng") -* core: osd/OSDMap: Change \*pg_to_\* to return void (`pr#15684 <https://github.com/ceph/ceph/pull/15684>`_, Brad Hubbard) -* core: osd/OSDMap: don't set weight to IN when OSD is destroyed (`issue#19119 <http://tracker.ceph.com/issues/19119>`_, `pr#13730 <https://github.com/ceph/ceph/pull/13730>`_, Ilya Dryomov) -* core: osd/OSDMap: hide require_osd and sortbitwise flags (`pr#14440 <https://github.com/ceph/ceph/pull/14440>`_, Sage Weil) -* core: osd/OSDMap: improve upmap calculation (`issue#19818 <http://tracker.ceph.com/issues/19818>`_, `pr#14902 <https://github.com/ceph/ceph/pull/14902>`_, Sage Weil) -* core: osd/OSDMap: Uncomment code to enable private default constructors (`pr#12597 <https://github.com/ceph/ceph/pull/12597>`_, Brad Hubbard) -* core: osd/OSD: tolerate any 'set-device-class' error on OSD startup (`pr#16812 <https://github.com/ceph/ceph/pull/16812>`_, xie xingguo) -* core: osd/osd_type: Fix logging output (`pr#12778 <https://github.com/ceph/ceph/pull/12778>`_, Brad Hubbard) -* core: osd/osd_types: Move comment to more relevant position (`pr#12779 <https://github.com/ceph/ceph/pull/12779>`_, Brad Hubbard) -* core: osd/osd_types: print notify-ack op properly (`pr#12585 <https://github.com/ceph/ceph/pull/12585>`_, Sage Weil) -* core: osd/PG: add new have_unfound() function in MissingLoc (`pr#12668 <https://github.com/ceph/ceph/pull/12668>`_, huangjun) -* core: osd/PG: Add two new mClock implementations of the PG sharded operator queue (`pr#14997 <https://github.com/ceph/ceph/pull/14997>`_, J. Eric Ivancich) -* core: osd/PG.cc: Optimistic estimation on PG.last_active (`pr#14799 <https://github.com/ceph/ceph/pull/14799>`_, Xiaoxi Chen) -* core: osd/PG.cc: unify the call of checking whether lock is held (`pr#15013 <https://github.com/ceph/ceph/pull/15013>`_, Jin Cai) -* core: osd/PG: check the connection first in fulfill_log (`pr#12579 <https://github.com/ceph/ceph/pull/12579>`_, huangjun) -* core: osd/PG: conditionally retry on receiving pg-notify when Primary is Incomplete (`pr#13942 <https://github.com/ceph/ceph/pull/13942>`_, xie xingguo) -* core: osd/PG: drop pre-firefly compat_mode for choose_acting (`pr#15057 <https://github.com/ceph/ceph/pull/15057>`_, Sage Weil) -* core: osd/PG: fix lost unfound + delete when there are no missing objects (`issue#20904 <http://tracker.ceph.com/issues/20904>`_, `pr#16809 <https://github.com/ceph/ceph/pull/16809>`_, Josh Durgin) -* core: osd/PG: fix possible overflow on unfound objects (`pr#12669 <https://github.com/ceph/ceph/pull/12669>`_, huangjun) -* core: osd/PG: fix warning so we discard_event() on a no-op state change (`pr#16655 <https://github.com/ceph/ceph/pull/16655>`_, Sage Weil) -* core: osd/PG: ignore CancelRecovery in NotRecovering (`issue#20804 <http://tracker.ceph.com/issues/20804>`_, `pr#16638 <https://github.com/ceph/ceph/pull/16638>`_, Sage Weil) -* core: osd/PGLog: avoid infinite loop if missing version is corrupted (`pr#16798 <https://github.com/ceph/ceph/pull/16798>`_, Josh Durgin) -* core: osd/PGLog: fix inaccurate missing assert (`issue#20753 <http://tracker.ceph.com/issues/20753>`_, `pr#16539 <https://github.com/ceph/ceph/pull/16539>`_, Josh Durgin) -* core: osd/PGLog: fix index for parent and child log on split (`issue#18975 <http://tracker.ceph.com/issues/18975>`_, `pr#13493 <https://github.com/ceph/ceph/pull/13493>`_, Sage Weil) -* core: osd/pglog: remove loop through empty collection (`pr#15121 <https://github.com/ceph/ceph/pull/15121>`_, J. Eric Ivancich) -* core: osd/PGLog: skip ERROR entires in _merge_object_divergent_entries (`issue#20843 <http://tracker.ceph.com/issues/20843>`_, `pr#16675 <https://github.com/ceph/ceph/pull/16675>`_, Jeegn Chen) -* core: osd/PG: make non-empty PastIntervals non-fatal (`issue#20167 <http://tracker.ceph.com/issues/20167>`_, `pr#15639 <https://github.com/ceph/ceph/pull/15639>`_, Sage Weil) -* core: osd/PG: only correct filestore collection bits on load (`issue#19541 <http://tracker.ceph.com/issues/19541>`_, `pr#14397 <https://github.com/ceph/ceph/pull/14397>`_, Sage Weil) -* core: osd/PG: publish PG stats when backfill-related states change (`issue#18369 <http://tracker.ceph.com/issues/18369>`_, `pr#12727 <https://github.com/ceph/ceph/pull/12727>`_, Sage Weil) -* core: osd/PG: reset the missing set when restarting backfill (`issue#19191 <http://tracker.ceph.com/issues/19191>`_, `pr#14053 <https://github.com/ceph/ceph/pull/14053>`_, Josh Durgin) -* core: osd/PG: restrict want_acting to up+acting on recovery completion (`issue#18929 <http://tracker.ceph.com/issues/18929>`_, `pr#13420 <https://github.com/ceph/ceph/pull/13420>`_, Sage Weil) -* core: osd/PG: set clean when last_epoch_clean is updated (`issue#19023 <http://tracker.ceph.com/issues/19023>`_, `pr#15555 <https://github.com/ceph/ceph/pull/15555>`_, Samuel Just) -* core: osd/PG: simplify the logic of backfill_targets checking (`pr#12519 <https://github.com/ceph/ceph/pull/12519>`_, huangjun) -* core: osd/PG: some minor cleanups (`pr#14133 <https://github.com/ceph/ceph/pull/14133>`_, runsisi) -* core: osd/PrimaryLogPG: clear oi from trim_object() (`issue#19947 <http://tracker.ceph.com/issues/19947>`_, `pr#15519 <https://github.com/ceph/ceph/pull/15519>`_, Sage Weil) -* core: osd/PrimaryLogPG: do not call on_shutdown() if (pg.deleting) (`issue#19902 <http://tracker.ceph.com/issues/19902>`_, `pr#15040 <https://github.com/ceph/ceph/pull/15040>`_, Kefu Chai) -* core: osd/PrimaryLogPG: do not expect FULL_TRY ops to get resent (`issue#19430 <http://tracker.ceph.com/issues/19430>`_, `pr#14255 <https://github.com/ceph/ceph/pull/14255>`_, Sage Weil) -* core: osd/PrimaryLogPG::failed_push: update missing as well (`issue#18165 <http://tracker.ceph.com/issues/18165>`_, `pr#12888 <https://github.com/ceph/ceph/pull/12888>`_, Samuel Just) -* core: osd/PrimaryLogPG: fix oi reset during trim_object (`issue#19947 <http://tracker.ceph.com/issues/19947>`_, `pr#15696 <https://github.com/ceph/ceph/pull/15696>`_, Sage Weil) -* core: osd/PrimaryLogPG: fix recovering hang when have unfound objects (`pr#16558 <https://github.com/ceph/ceph/pull/16558>`_, huangjun) -* core: osd/PrimaryLogPG: optimal pick_newest_available (`pr#12695 <https://github.com/ceph/ceph/pull/12695>`_, huangjun) -* core: osd/PrimaryLogPG: record prior_version for DELETE events (`issue#20274 <http://tracker.ceph.com/issues/20274>`_, `pr#15649 <https://github.com/ceph/ceph/pull/15649>`_, Sage Weil) -* core: osd/PrimaryLogPG: remove duplicated code (`pr#13894 <https://github.com/ceph/ceph/pull/13894>`_, Jianpeng Ma) -* core: osd/PrimaryLogPG: set return value if sparse read failed (`pr#14093 <https://github.com/ceph/ceph/pull/14093>`_, huangjun) -* core: osd/PrimaryLogPG: skip deleted missing objects in pg[n]ls (`issue#20739 <http://tracker.ceph.com/issues/20739>`_, `pr#16490 <https://github.com/ceph/ceph/pull/16490>`_, Josh Durgin) -* core: osd/PrimaryLogPG solve cache tier osd high memory consumption (`issue#20464 <http://tracker.ceph.com/issues/20464>`_, `pr#16011 <https://github.com/ceph/ceph/pull/16011>`_, Peng Xie) -* core: osd/PrimaryLogPG::try_lock_for_read: give up if missing (`issue#18583 <http://tracker.ceph.com/issues/18583>`_, `pr#13087 <https://github.com/ceph/ceph/pull/13087>`_, Samuel Just) -* core: osd/PrimaryLogPG: unify the access to primary pg (`pr#12527 <https://github.com/ceph/ceph/pull/12527>`_, huangjun) -* core: osd/PrimayLogPG: update modified range to include the whole object size for write_full op (`pr#15021 <https://github.com/ceph/ceph/pull/15021>`_, runsisi) -* core: osd/ReplicatedBackend: clear pull source once we are done with it (`issue#19076 <http://tracker.ceph.com/issues/19076>`_, `pr#13879 <https://github.com/ceph/ceph/pull/13879>`_, Samuel Just) -* core: osd/ReplicatedBackend: remove MOSDSubOp cruft from repop_applied (`pr#14358 <https://github.com/ceph/ceph/pull/14358>`_, Jianpeng Ma) -* core: osd/ReplicatedBackend: reset thread heartbeat after every omap entry … (`issue#20375 <http://tracker.ceph.com/issues/20375>`_, `pr#15823 <https://github.com/ceph/ceph/pull/15823>`_, Josh Durgin) -* core: osd/ReplicatedBackend: take read locks for clone sources during recovery (`issue#17831 <http://tracker.ceph.com/issues/17831>`_, `pr#12844 <https://github.com/ceph/ceph/pull/12844>`_, Samuel Just) -* core: os/filestore: call committed_thru when no journal entries are replayed (`pr#15781 <https://github.com/ceph/ceph/pull/15781>`_, Kuan-Kai Chiu) -* core: os/filestore: debug which omap keys are set (`issue#19067 <http://tracker.ceph.com/issues/19067>`_, `pr#13671 <https://github.com/ceph/ceph/pull/13671>`_, Sage Weil) -* core: os/filestore: do not free event if not added (`pr#16235 <https://github.com/ceph/ceph/pull/16235>`_, Kefu Chai) -* core: os/filestore/FileJournal: bufferlist rebuild (`pr#13980 <https://github.com/ceph/ceph/pull/13980>`_, Jianpeng Ma) -* core: os/filestore/FileJournal: FileJournal::open() close journal file before return error (`issue#20504 <http://tracker.ceph.com/issues/20504>`_, `pr#16120 <https://github.com/ceph/ceph/pull/16120>`_, Yang Honggang) -* core: os/filestore/FileStore.cc: remove a redundant judgement when get max latency (`pr#15961 <https://github.com/ceph/ceph/pull/15961>`_, Jianpeng Ma) -* core: os/filestore/FileStore.cc: remove unneeded loop (`pr#12177 <https://github.com/ceph/ceph/pull/12177>`_, Li Wang) -* core: os/filestore: fix clang static check warn "use-after-free“ (`pr#12581 <https://github.com/ceph/ceph/pull/12581>`_, liuchang0812) -* core: os/filestore: fix infinit loops in fiemap() (`pr#14367 <https://github.com/ceph/ceph/pull/14367>`_, Ning Yao) -* core: os/filestore: handle error returned from write_fd() (`pr#10146 <https://github.com/ceph/ceph/pull/10146>`_, yonghengdexin735) -* core: os/filestore/HashIndex: be loud about splits (`issue#18235 <http://tracker.ceph.com/issues/18235>`_, `pr#12421 <https://github.com/ceph/ceph/pull/12421>`_, Dan van der Ster) -* core: os/filestore/JournalingObjectStore cleanup (`pr#12528 <https://github.com/ceph/ceph/pull/12528>`_, Li Wang) -* core: os/filestore: require experimental flag for btrfs (`pr#16086 <https://github.com/ceph/ceph/pull/16086>`_, Sage Weil) -* core: os/filestore: version will be uninitialized varible if store_version doesn't exist (`pr#12582 <https://github.com/ceph/ceph/pull/12582>`_, liuchang0812) -* core: os/fs/FS.cc: remove the redundant code (`pr#14362 <https://github.com/ceph/ceph/pull/14362>`_, Jianpeng Ma) -* core: os/FuseStore: include <functional> header in src/os/FuseStore.h for gcc 7.x (`pr#13454 <https://github.com/ceph/ceph/pull/13454>`_, Jos Collin) -* core,performance: common/config_opts: improve rdma buffer size to 128k (`pr#13510 <https://github.com/ceph/ceph/pull/13510>`_, Haomai Wang) -* core,performance: common/TrackedOp: various cleanups and optimizations (`pr#12537 <https://github.com/ceph/ceph/pull/12537>`_, Sage Weil) -* core,performance: kv/RocksDBStore: Table options for indexing and filtering (`pr#16450 <https://github.com/ceph/ceph/pull/16450>`_, Mark Nelson) -* core,performance: mon,osd: explicitly remap some pgs (`pr#13984 <https://github.com/ceph/ceph/pull/13984>`_, Sage Weil) -* core,performance: msg/async: avoid lossy connection sending ack message (`pr#13700 <https://github.com/ceph/ceph/pull/13700>`_, Haomai Wang) -* core,performance: msg/async/rdma: cleanup (`pr#13509 <https://github.com/ceph/ceph/pull/13509>`_, Haomai Wang) -* core,performance: msg/async/rdma: refactor tx handle flow to get rid of locks (`pr#13680 <https://github.com/ceph/ceph/pull/13680>`_, Haomai Wang) -* core,performance: msg/async: reduce write_lock contention (`pr#15092 <https://github.com/ceph/ceph/pull/15092>`_, Haomai Wang) -* core,performance: osd/ECBackend: Send write message to peers first, then do local write (`pr#12522 <https://github.com/ceph/ceph/pull/12522>`_, huangjun) -* core,performance: osd/OSD.h: requeue the scrub job with higher priority to shorten the blocking time of related requests (`pr#15552 <https://github.com/ceph/ceph/pull/15552>`_, Jin Cai) -* core,performance: osd, os: reduce fiemap burden (`pr#14640 <https://github.com/ceph/ceph/pull/14640>`_, Piotr Dałek) -* core,performance: osd/pg: bound the portion of the log we request in GetLog::GetLog() (`pr#12233 <https://github.com/ceph/ceph/pull/12233>`_, Jie Wang) -* core,performance: osd/PG: make prioritized recovery possible (`pr#13723 <https://github.com/ceph/ceph/pull/13723>`_, Piotr Dałek) -* core,performance: os/filestore: avoid unnecessary copy in filestore::_do_transaction (`pr#12578 <https://github.com/ceph/ceph/pull/12578>`_, Yunchuan Wen) -* core,performance: os/filestore/HashIndex: randomize split threshold by a configurable amount (`issue#15835 <http://tracker.ceph.com/issues/15835>`_, `pr#15689 <https://github.com/ceph/ceph/pull/15689>`_, Josh Durgin) -* core,performance: os/filestore: queue ondisk completion before apply work (`pr#13918 <https://github.com/ceph/ceph/pull/13918>`_, Pan Liu) -* core,performance: os/filestore: use new sleep strategy when io_submit gets EAGAIN (`pr#14860 <https://github.com/ceph/ceph/pull/14860>`_, Pan Liu) -* core,performance: os/kstore: Added rocksdb bloom filter settings (`pr#13053 <https://github.com/ceph/ceph/pull/13053>`_, Ted-Chang) -* core,performance: src/OSD: add more useful perf counters for performance tuning (`pr#15915 <https://github.com/ceph/ceph/pull/15915>`_, Pan Liu) -* core: PGLog: store extra duplicate ops beyond the normal log entries (`pr#16172 <https://github.com/ceph/ceph/pull/16172>`_, Josh Durgin, J. Eric Ivancich) -* core: Prefix /proc/ with FreeBSD emulation (`pr#14290 <https://github.com/ceph/ceph/pull/14290>`_, Willem Jan Withagen) -* core: PrimaryLogPG: don't update digests for objects with mismatched names (`issue#18409 <http://tracker.ceph.com/issues/18409>`_, `pr#12788 <https://github.com/ceph/ceph/pull/12788>`_, Samuel Just) -* core: print more information when run ceph-osd cmd with 'check options' (`pr#16678 <https://github.com/ceph/ceph/pull/16678>`_, mychoxin) -* core: qa: do not restrict valgrind runs to centos (`issue#18126 <http://tracker.ceph.com/issues/18126>`_, `pr#15389 <https://github.com/ceph/ceph/pull/15389>`_, Greg Farnum) -* core,rbd: mon,osd: do not create rbd pool by default (`pr#15894 <https://github.com/ceph/ceph/pull/15894>`_, Greg Farnum, Sage Weil, David Zafman) -* core: ReplicatedBackend: don't queue Context outside of ObjectStore with obc (`issue#18927 <http://tracker.ceph.com/issues/18927>`_, `pr#13569 <https://github.com/ceph/ceph/pull/13569>`_, Samuel Just) -* core: Revert "PrimaryLogPG::failed_push: update missing as well" (`issue#18624 <http://tracker.ceph.com/issues/18624>`_, `pr#13090 <https://github.com/ceph/ceph/pull/13090>`_, David Zafman) -* core,rgw: misc: SCA and Coverity Fixes (`pr#13208 <https://github.com/ceph/ceph/pull/13208>`_, Danny Al-Gaaf) -* core,rgw: qa: Removed all 'default_idle_timeout' due to chnage in rwg task (`pr#15420 <https://github.com/ceph/ceph/pull/15420>`_, Yuri Weinstein) -* core,rgw,tests: qa/rgw_snaps: move default_idle_timeout config under the client (`issue#20128 <http://tracker.ceph.com/issues/20128>`_, `pr#15400 <https://github.com/ceph/ceph/pull/15400>`_, Yehuda Sadeh) -* core,rgw,tests: qa/suits/rados/basic/tasks/rgw_snaps: wait for pools to be created (`pr#16509 <https://github.com/ceph/ceph/pull/16509>`_, Sage Weil) -* core: rocksdb: sync with upstream (`issue#18464 <http://tracker.ceph.com/issues/18464>`_, `pr#13306 <https://github.com/ceph/ceph/pull/13306>`_, Kefu Chai) -* core: src/ceph.in: Use env(CEPH_DEV) to suppress noise from ceph (`pr#14746 <https://github.com/ceph/ceph/pull/14746>`_, Willem Jan Withagen) -* core: src/vstart.sh: kill dead upmap option (`pr#15848 <https://github.com/ceph/ceph/pull/15848>`_, xie xingguo) -* core:" Stringify needs access to << before reference" src/include/stringify.h (`pr#16334 <https://github.com/ceph/ceph/pull/16334>`_, Willem Jan Withagen) -* core: test, osd: fix some coverity issues (`pr#13293 <https://github.com/ceph/ceph/pull/13293>`_, liuchang0812) -* core: test/pybind/test_rados.py: tolerate TimedOut in test_ping_monitor (`issue#18529 <http://tracker.ceph.com/issues/18529>`_, `pr#12934 <https://github.com/ceph/ceph/pull/12934>`_, Samuel Just) -* core,tests: ceph-disk: sensible default for block.db (`pr#15576 <https://github.com/ceph/ceph/pull/15576>`_, Loic Dachary) -* core,tests: ceph-disk/tests: Certain partition types do not work on FreeBSD (`pr#13560 <https://github.com/ceph/ceph/pull/13560>`_, Willem Jan Withagen) -* core,tests: ceph-disk/tests/test_main.py: FreeBSD does not do multipath (`pr#13847 <https://github.com/ceph/ceph/pull/13847>`_, Willem Jan Withagen) -* core,tests: ceph_test_librados_api_misc: fix stupid LibRadosMiscConnectFailure.ConnectFailure test (`issue#15368 <http://tracker.ceph.com/issues/15368>`_, `pr#14261 <https://github.com/ceph/ceph/pull/14261>`_, Sage Weil) -* core,tests: ceph_test_rados_api_misc: avoid livelock from PoolCreationRace (`pr#13565 <https://github.com/ceph/ceph/pull/13565>`_, Sage Weil) -* core,tests: ceph_test_rados_api_misc: Fix trivial memory leak (`pr#12680 <https://github.com/ceph/ceph/pull/12680>`_, Brad Hubbard) -* core,tests: ceph_test_rados_api: wait for snap trim on ENOENT during cleanup (`issue#19948 <http://tracker.ceph.com/issues/19948>`_, `pr#15638 <https://github.com/ceph/ceph/pull/15638>`_, Sage Weil) -* core,tests: ceph_test_rados_api_watch_notify: flush after unwatch (`issue#20105 <http://tracker.ceph.com/issues/20105>`_, `pr#16402 <https://github.com/ceph/ceph/pull/16402>`_, Sage Weil) -* core,tests: ceph_test_rados_api_watch_notify: make LibRadosWatchNotify.Watch3Timeout tolerate thrashing (`issue#19433 <http://tracker.ceph.com/issues/19433>`_, `pr#14899 <https://github.com/ceph/ceph/pull/14899>`_, Sage Weil) -* core,tests: ceph_test_rados: max_stride_size must be more than min_stride_size (`issue#20775 <http://tracker.ceph.com/issues/20775>`_, `pr#16590 <https://github.com/ceph/ceph/pull/16590>`_, Lianne Wang) -* core,tests: c_write_operations.cc: Fix trivial memory leak (`pr#12663 <https://github.com/ceph/ceph/pull/12663>`_, Brad Hubbard) -* core,tests: do all valgrind runs on centos (`issue#20360 <http://tracker.ceph.com/issues/20360>`_, `issue#18126 <http://tracker.ceph.com/issues/18126>`_, `pr#16046 <https://github.com/ceph/ceph/pull/16046>`_, Sage Weil) -* core,tests: os: allow 'osd objectstore = random' to pick either filestore or bluestore (`pr#13754 <https://github.com/ceph/ceph/pull/13754>`_, Sage Weil) -* core,tests: qa: avoid map-gap tests for k=2 m=1 (`issue#20844 <http://tracker.ceph.com/issues/20844>`_, `pr#16789 <https://github.com/ceph/ceph/pull/16789>`_, Sage Weil) -* core,tests: qa: move ceph-helpers-based make check tests to qa/standalone; run via teuthology (`pr#16513 <https://github.com/ceph/ceph/pull/16513>`_, Sage Weil) -* core,tests: qa/objectstore/filestore-btrfs: test btrfs on trusty only (`issue#20169 <http://tracker.ceph.com/issues/20169>`_, `pr#15814 <https://github.com/ceph/ceph/pull/15814>`_, Sage Weil) -* core,tests: qa/objectstore: test bluestore with aggressive compression (`pr#14623 <https://github.com/ceph/ceph/pull/14623>`_, Sage Weil) -* core,tests: qa/rados/upgrade/jewel-x-singleton: run luminous.yaml at the end (`pr#13378 <https://github.com/ceph/ceph/pull/13378>`_, Sage Weil) -* core,tests: qa: stop testing btrfs (`issue#20169 <http://tracker.ceph.com/issues/20169>`_, `pr#16044 <https://github.com/ceph/ceph/pull/16044>`_, Sage Weil) -* core,tests: qa/suites/powercycle/osd/tasks/radosbench: consume less space (`issue#20302 <http://tracker.ceph.com/issues/20302>`_, `pr#15821 <https://github.com/ceph/ceph/pull/15821>`_, Sage Weil) -* core,tests: qa/suites/rados: at-end: ignore PG_{AVAILABILITY,DEGRADED} (`issue#20693 <http://tracker.ceph.com/issues/20693>`_, `pr#16575 <https://github.com/ceph/ceph/pull/16575>`_, Sage Weil) -* core,tests: qa/suites/rados/\*/at-end: wait for healthy before scrubbing (`pr#15245 <https://github.com/ceph/ceph/pull/15245>`_, Sage Weil) -* core,tests: qa/suites/rados/basic: set low omap limit for rgw workload (`pr#13071 <https://github.com/ceph/ceph/pull/13071>`_, Sage Weil) -* core,tests: qa/suites/rados/basic/tasks/rados_python: POOL_APP_NOT_ENABLED (`pr#16827 <https://github.com/ceph/ceph/pull/16827>`_, Sage Weil) -* core,tests: qa/suites/rados/mgr/tasks/failover: whitelist (`pr#16795 <https://github.com/ceph/ceph/pull/16795>`_, Sage Weil) -* core,tests: qa/suites/rados/singleton/all/reg11184: whitelist health warnings (`pr#16306 <https://github.com/ceph/ceph/pull/16306>`_, Sage Weil) -* core,tests: qa/suites/rados/singleton-nomsg/health-warnings: behave on ext4 (`issue#20043 <http://tracker.ceph.com/issues/20043>`_, `pr#15207 <https://github.com/ceph/ceph/pull/15207>`_, Sage Weil) -* core,tests: qa/suites/rados: temporarily remove scrub_test from basic/ until post-luminous (`issue#19935 <http://tracker.ceph.com/issues/19935>`_, `pr#15202 <https://github.com/ceph/ceph/pull/15202>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash/workload/\*: enable rados.py cache tiering ops (`issue#11793 <http://tracker.ceph.com/issues/11793>`_, `pr#16244 <https://github.com/ceph/ceph/pull/16244>`_, Sage Weil) -* core,tests: qa/suites/upgrade/kraken-x: enable experimental for bluestore (`pr#15359 <https://github.com/ceph/ceph/pull/15359>`_, Sage Weil) -* core,tests: qa/tasks/ceph: enable rbd on rbd pool (`pr#16794 <https://github.com/ceph/ceph/pull/16794>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: get osds all in after thrashing (`pr#15784 <https://github.com/ceph/ceph/pull/15784>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: wait for osd to start after objectstore-tool sequence (`issue#20705 <http://tracker.ceph.com/issues/20705>`_, `pr#16454 <https://github.com/ceph/ceph/pull/16454>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: wait longer for pg stats to flush (`pr#16322 <https://github.com/ceph/ceph/pull/16322>`_, Sage Weil) -* core,tests: qa/tasks/ceph: osd_scrub_pgs: reissue scrub requests in loop (`issue#20326 <http://tracker.ceph.com/issues/20326>`_, `pr#15747 <https://github.com/ceph/ceph/pull/15747>`_, Sage Weil) -* core,tests: qa/tasks/ceph.py: no osd id to 'osd create' command (`issue#20548 <http://tracker.ceph.com/issues/20548>`_, `pr#16233 <https://github.com/ceph/ceph/pull/16233>`_, Sage Weil) -* core,tests: qa/tasks/ceph.py: tolerate active+clean+something (`pr#15717 <https://github.com/ceph/ceph/pull/15717>`_, Sage Weil) -* core,tests: qa/tasks/ceph: simplify ceph deployment slightly (`pr#15853 <https://github.com/ceph/ceph/pull/15853>`_, Sage Weil) -* core,tests: qa/tasks/ceph: wait for mgr to activate and pg stats to flush in health() (`issue#20744 <http://tracker.ceph.com/issues/20744>`_, `pr#16514 <https://github.com/ceph/ceph/pull/16514>`_, Sage Weil) -* core,tests: qa/tasks/dump_stuck: fix dump_stuck test bug (`pr#16559 <https://github.com/ceph/ceph/pull/16559>`_, huangjun) -* core,tests: qa/tasks/dump_stuck: fix for active+clean+remapped (`issue#20431 <http://tracker.ceph.com/issues/20431>`_, `pr#15955 <https://github.com/ceph/ceph/pull/15955>`_, Sage Weil) -* core,tests: qa/tasks/radosbench: longer timeout (`pr#16213 <https://github.com/ceph/ceph/pull/16213>`_, Sage Weil) -* core,tests: qa/workunits/cephtool/test.sh: add sudo for daemon compact (`pr#16500 <https://github.com/ceph/ceph/pull/16500>`_, Sage Weil) -* core,tests: qa/workunits/cephtool/test.sh: fix osd full health detail grep (`issue#20187 <http://tracker.ceph.com/issues/20187>`_, `pr#15494 <https://github.com/ceph/ceph/pull/15494>`_, Sage Weil) -* core,tests: qa/workunits/rados/test_health_warning: misc fixes (`issue#19990 <http://tracker.ceph.com/issues/19990>`_, `pr#15201 <https://github.com/ceph/ceph/pull/15201>`_, Sage Weil) -* core,tests: qa/workunits/rest: use unique pool names for cephfs test (`pr#13188 <https://github.com/ceph/ceph/pull/13188>`_, Sage Weil) -* core,tests: Revert "qa: do not restrict valgrind runs to centos" (`issue#20360 <http://tracker.ceph.com/issues/20360>`_, `pr#15791 <https://github.com/ceph/ceph/pull/15791>`_, Sage Weil) -* core,tests: test: add separate ceph-helpers-based smoke test (`pr#16572 <https://github.com/ceph/ceph/pull/16572>`_, Sage Weil) -* core,tests: test/librados/cmd.cc: Fix trivial memory leaks (`pr#12671 <https://github.com/ceph/ceph/pull/12671>`_, Brad Hubbard) -* core,tests: test/librados/c_read_operations.cc: Fix trivial memory leak (`pr#12656 <https://github.com/ceph/ceph/pull/12656>`_, Brad Hubbard) -* core,tests: test/librados/c_read_operations.cc: Fix valgrind errors (`issue#18354 <http://tracker.ceph.com/issues/18354>`_, `pr#12657 <https://github.com/ceph/ceph/pull/12657>`_, Brad Hubbard) -* core,tests: test/librados: Silence Coverity memory leak warnings (`pr#12442 <https://github.com/ceph/ceph/pull/12442>`_, Brad Hubbard, Samuel Just) -* core,tests: test/librados/snapshots.cc: Fix memory leak (`pr#12690 <https://github.com/ceph/ceph/pull/12690>`_, Brad Hubbard) -* core,tests: test/librados/tier.cc: Fix valgrind errors (`issue#18360 <http://tracker.ceph.com/issues/18360>`_, `pr#12705 <https://github.com/ceph/ceph/pull/12705>`_, Brad Hubbard) -* core,tests: test/osd/TestRados.cc: run set-redirect test after finishing setup (`issue#20114 <http://tracker.ceph.com/issues/20114>`_, `pr#15385 <https://github.com/ceph/ceph/pull/15385>`_, Myoungwon Oh) -* core,tests: test_rados_watch_notify: Fix trivial memory leaks (`pr#12713 <https://github.com/ceph/ceph/pull/12713>`_, Brad Hubbard) -* core,tests,tools: Fixes: http://tracker.ceph.com/issues/18533 (`pr#13423 <https://github.com/ceph/ceph/pull/13423>`_, Samuel Just, David Zafman) -* core,tests: upgrade/jewel-x: a few fixes (`pr#16830 <https://github.com/ceph/ceph/pull/16830>`_, Sage Weil) -* core: throttle: Minimal destructor fix for Luminous (`pr#16661 <https://github.com/ceph/ceph/pull/16661>`_, Adam C. Emerson) -* core,tools: ceph: perfcounter priorities and daemonperf updates to use them (`pr#14793 <https://github.com/ceph/ceph/pull/14793>`_, Sage Weil, Dan Mick) -* core,tools: kv: move 'bluestore-kv' hackery out of KeyValueDB into ceph-kvstore-tool (`issue#19778 <http://tracker.ceph.com/issues/19778>`_, `pr#14895 <https://github.com/ceph/ceph/pull/14895>`_, Sage Weil) -* core,tools: osdmaptool: require --upmap-save before modifying input osdmap (`pr#15247 <https://github.com/ceph/ceph/pull/15247>`_, Sage Weil) -* core: vstart.sh: start mgr after mon, before osds (`pr#16613 <https://github.com/ceph/ceph/pull/16613>`_, Sage Weil) -* core: Wip 20985 divergent handling luminous (`issue#20985 <http://tracker.ceph.com/issues/20985>`_, `pr#17001 <https://github.com/ceph/ceph/pull/17001>`_, Greg Farnum) -* create the ceph-volume and ceph-volume-systemd man pages (`pr#17158 <https://github.com/ceph/ceph/pull/17158>`_, Alfredo Deza) -* crush: a couple of weight-set fixes (`pr#16623 <https://github.com/ceph/ceph/pull/16623>`_, xie xingguo) -* crush: add devices class that rules can use as a filter (`issue#18943 <http://tracker.ceph.com/issues/18943>`_, `pr#13444 <https://github.com/ceph/ceph/pull/13444>`_, Loic Dachary) -* crush: add --dump to crushtool (`pr#13726 <https://github.com/ceph/ceph/pull/13726>`_, Loic Dachary) -* crush: add missing tunable in tests (`pr#15412 <https://github.com/ceph/ceph/pull/15412>`_, Loic Dachary) -* crush: allow uniform buckets with no items (`pr#13521 <https://github.com/ceph/ceph/pull/13521>`_, Loic Dachary) -* crush: API documentation (`pr#13205 <https://github.com/ceph/ceph/pull/13205>`_, Loic Dachary) -* crush: bucket: crush_add_uniform_bucket_item should check for uniformity (`pr#14208 <https://github.com/ceph/ceph/pull/14208>`_, Sahid Orentino Ferdjaoui) -* crush: builder: clean the arguments of crush_reweight\* methods (`pr#14110 <https://github.com/ceph/ceph/pull/14110>`_, Sahid Orentino Ferdjaoui) -* crush: builder: creating crush map with optimal configurations (`pr#14209 <https://github.com/ceph/ceph/pull/14209>`_, Sahid Orentino Ferdjaoui) -* crush: builder: legacy has chooseleaf_stable = 0 (`pr#14695 <https://github.com/ceph/ceph/pull/14695>`_, Loic Dachary) -* crush: crush_init_workspace starts with struct crush_work (`pr#14696 <https://github.com/ceph/ceph/pull/14696>`_, Loic Dachary) -* crush: detect and (usually) fix ruleset != rule id (`pr#13683 <https://github.com/ceph/ceph/pull/13683>`_, Sage Weil) -* crush: document tunables and rule step set (`pr#13722 <https://github.com/ceph/ceph/pull/13722>`_, Loic Dachary) -* crush: do is_out test only if we do not collide (`pr#13326 <https://github.com/ceph/ceph/pull/13326>`_, xie xingguo) -* crush: encode can override weights with weight set (`issue#19836 <http://tracker.ceph.com/issues/19836>`_, `pr#15002 <https://github.com/ceph/ceph/pull/15002>`_, Loic Dachary) -* crush: enforce buckets-before-rules rule (`pr#16453 <https://github.com/ceph/ceph/pull/16453>`_, Sage Weil) -* crush: fix CrushCompiler won't compile maps with empty shadow tree (`pr#17228 <https://github.com/ceph/ceph/pull/17228>`_, xie xingguo) -* crush: fix dprintk compilation (`pr#13424 <https://github.com/ceph/ceph/pull/13424>`_, Loic Dachary) -* crush: force rebuilding shadow hierarchy after swapping buckets (`pr#17229 <https://github.com/ceph/ceph/pull/17229>`_, xie xingguo) -* crush: misc changes/fixes for device classes (`issue#20845 <http://tracker.ceph.com/issues/20845>`_, `pr#16805 <https://github.com/ceph/ceph/pull/16805>`_, Kefu Chai, xie xingguo, Sage Weil) -* crush: more class fixes (`pr#16837 <https://github.com/ceph/ceph/pull/16837>`_, xie xingguo) -* crush: only encode class info if SERVER_LUMINOUS (`issue#19361 <http://tracker.ceph.com/issues/19361>`_, `pr#14131 <https://github.com/ceph/ceph/pull/14131>`_, Sage Weil) -* crush: optimize header file dependency (`pr#9307 <https://github.com/ceph/ceph/pull/9307>`_, Xiaowei Chen) -* crush: silence warning from -Woverflow (`pr#16329 <https://github.com/ceph/ceph/pull/16329>`_, Jos Collin) -* crush: s/ruleset/id/ in decompiled output; prevent compilation when ruleset != id (`pr#16400 <https://github.com/ceph/ceph/pull/16400>`_, Sage Weil) -* crush: update choose_args when items are added/removed (`pr#15311 <https://github.com/ceph/ceph/pull/15311>`_, Loic Dachary) -* crush: update documentation for negative choose step (`pr#14970 <https://github.com/ceph/ceph/pull/14970>`_, Loic Dachary) -* crush: various weight-set fixes (`pr#17214 <https://github.com/ceph/ceph/pull/17214>`_, xie xingguo) -* crush: verify weights is influenced by the number of replicas (`issue#15653 <http://tracker.ceph.com/issues/15653>`_, `pr#13083 <https://github.com/ceph/ceph/pull/13083>`_, Adam C. Emerson, Loic Dachary) -* crush: weight_set and id remapping (`issue#15653 <http://tracker.ceph.com/issues/15653>`_, `pr#14486 <https://github.com/ceph/ceph/pull/14486>`_, Loic Dachary) -* crush: when osd_location_hook does not exist, we should exit error (`pr#12961 <https://github.com/ceph/ceph/pull/12961>`_, song baisen) -* doc: 12.1.0/release notes 2 (`pr#15627 <https://github.com/ceph/ceph/pull/15627>`_, Abhishek Lekshmanan) -* doc: 12.1.1 & 12.1.2 release notes (`pr#16377 <https://github.com/ceph/ceph/pull/16377>`_, Abhishek Lekshmanan) -* doc: add 0.94.10 and hammer EOL to releases.rst (`pr#13069 <https://github.com/ceph/ceph/pull/13069>`_, Nathan Cutler) -* doc: add 12.0.1 release notes (`pr#14106 <https://github.com/ceph/ceph/pull/14106>`_, Abhishek Lekshmanan) -* doc: Add amitkumar50 affiliation to .organizationmap (`pr#16475 <https://github.com/ceph/ceph/pull/16475>`_, Amit Kumar) -* doc add ceph-volume and ceph-volume-systemd man pages to CMakeLists file (`pr#17170 <https://github.com/ceph/ceph/pull/17170>`_, Alfredo Deza) -* doc: add changelog for v0.94.10 (`pr#13572 <https://github.com/ceph/ceph/pull/13572>`_, Abhishek Lekshmanan) -* doc: add changelog for v10.2.6 Jewel release (`pr#13839 <https://github.com/ceph/ceph/pull/13839>`_, Abhishek Lekshmanan) -* doc: add changelog for v10.2.7 (`pr#14441 <https://github.com/ceph/ceph/pull/14441>`_, Abhishek Lekshmanan) -* doc: add descriptions for mon/mgr options (`pr#15032 <https://github.com/ceph/ceph/pull/15032>`_, Kefu Chai) -* doc: add doc requirements on PR submitters (`pr#16394 <https://github.com/ceph/ceph/pull/16394>`_, John Spray) -* doc: added mgr caps to manual deployment documentation (`pr#16660 <https://github.com/ceph/ceph/pull/16660>`_, Nick Erdmann) -* doc: add FreeBSD manual install (`pr#14941 <https://github.com/ceph/ceph/pull/14941>`_, Willem Jan Withagen) -* doc: add instructions for replacing an OSD (`pr#16314 <https://github.com/ceph/ceph/pull/16314>`_, Kefu Chai) -* doc: add new cn ceph mirror to doc and mirroring (`pr#15089 <https://github.com/ceph/ceph/pull/15089>`_, Shengjing Zhu) -* doc: add optional argument for build-doc (`pr#14058 <https://github.com/ceph/ceph/pull/14058>`_, Kefu Chai) -* doc: add rados xattr commands to manpage (`pr#15362 <https://github.com/ceph/ceph/pull/15362>`_, Andreas Gerstmayr) -* doc: add rbd new trash cli and cleanups in release-notes.rst (`issue#20702 <http://tracker.ceph.com/issues/20702>`_, `pr#16498 <https://github.com/ceph/ceph/pull/16498>`_, songweibin) -* doc: add README to dmclock subdir to inform developers it's a git subtree (`pr#15386 <https://github.com/ceph/ceph/pull/15386>`_, J. Eric Ivancich) -* doc: add RGW ldap auth documentation (`pr#14339 <https://github.com/ceph/ceph/pull/14339>`_, Harald Klein) -* doc: add some undocumented options to rbd-nbd (`pr#14134 <https://github.com/ceph/ceph/pull/14134>`_, wangzhengyong) -* doc: add verbiage to rbdmap manpage (`issue#18262 <http://tracker.ceph.com/issues/18262>`_, `pr#12509 <https://github.com/ceph/ceph/pull/12509>`_, Nathan Cutler) -* doc: Add Zabbix ceph-mgr plugin to PendingReleaseNotes (`pr#16412 <https://github.com/ceph/ceph/pull/16412>`_, Wido den Hollander) -* doc: AUTHORS: update CephFS PTL (`pr#16399 <https://github.com/ceph/ceph/pull/16399>`_, Patrick Donnelly) -* doc: AUTHORS: update tech leads (`pr#14350 <https://github.com/ceph/ceph/pull/14350>`_, Patrick Donnelly) -* doc: AUTHORS: update with release manager, backport team (`pr#15391 <https://github.com/ceph/ceph/pull/15391>`_, Sage Weil) -* doc: build/install-deps.sh: Add sphinx package for building docs on FreeBSD (`pr#13223 <https://github.com/ceph/ceph/pull/13223>`_, Willem Jan Withagen) -* doc: ceph-disk: use '-' for feeding ceph cli with stdin (`pr#16362 <https://github.com/ceph/ceph/pull/16362>`_, Kefu Chai) -* doc: change osd_op_thread_timeout default value to 15 (`pr#14199 <https://github.com/ceph/ceph/pull/14199>`_, Andreas Gerstmayr) -* doc: Change the default values of some OSD options (`issue#20199 <http://tracker.ceph.com/issues/20199>`_, `pr#15566 <https://github.com/ceph/ceph/pull/15566>`_, Bara Ancincova) -* doc: clarify "ceph quorum" syntax (`issue#17802 <http://tracker.ceph.com/issues/17802>`_, `pr#11787 <https://github.com/ceph/ceph/pull/11787>`_, Nathan Cutler) -* doc: clarify SubmittingPatches.rst (`pr#12988 <https://github.com/ceph/ceph/pull/12988>`_, Nathan Cutler) -* doc: clarify that "ms bind ipv6" disables IPv4 (`pr#13317 <https://github.com/ceph/ceph/pull/13317>`_, Ken Dreyer) -* doc: clarify the path restriction mds cap example (`pr#12993 <https://github.com/ceph/ceph/pull/12993>`_, John Spray) -* doc: common/options.cc: document bluestore config options (`pr#16489 <https://github.com/ceph/ceph/pull/16489>`_, Sage Weil) -* doc: correct and improve add user capability section (`pr#14055 <https://github.com/ceph/ceph/pull/14055>`_, Chu, Hua-Rong) -* doc: correct arguments for ceph tell osd.N bench (`pr#14462 <https://github.com/ceph/ceph/pull/14462>`_, Patrick Dinnen) -* doc: Correcting the remove bucket example and adding bucket link/unlink examples (`pr#12460 <https://github.com/ceph/ceph/pull/12460>`_, Uday Mullangi) -* doc: correct S3 lifecycle support explain (`issue#18459 <http://tracker.ceph.com/issues/18459>`_, `pr#12827 <https://github.com/ceph/ceph/pull/12827>`_, liuchang0812) -* doc: correct the quota section (`issue#19397 <http://tracker.ceph.com/issues/19397>`_, `pr#14122 <https://github.com/ceph/ceph/pull/14122>`_, Chu, Hua-Rong) -* doc: crush: API documentation fixes (`pr#13589 <https://github.com/ceph/ceph/pull/13589>`_, Loic Dachary) -* doc: crush typo in algorithm description (`pr#13661 <https://github.com/ceph/ceph/pull/13661>`_, Loic Dachary) -* doc: deletes duplicated word and clarifies an example (`pr#13746 <https://github.com/ceph/ceph/pull/13746>`_, Tahia Khan) -* doc: describe CephFS max_file_size (`pr#15287 <https://github.com/ceph/ceph/pull/15287>`_, Ken Dreyer) -* doc: describe mark_events logging available via the OSD's OpTracker (`pr#15095 <https://github.com/ceph/ceph/pull/15095>`_, Greg Farnum) -* doc: Describe mClock's use within Ceph in great detail (`pr#16707 <https://github.com/ceph/ceph/pull/16707>`_, J. Eric Ivancich) -* doc: dev add a note about ccache (`pr#14478 <https://github.com/ceph/ceph/pull/14478>`_, Abhishek Lekshmanan) -* doc: dev: add notes on PR make check validation test (`pr#16079 <https://github.com/ceph/ceph/pull/16079>`_, Nathan Cutler) -* doc: dev guide: how to run s3-tests locally against vstart (`pr#14508 <https://github.com/ceph/ceph/pull/14508>`_, Nathan Cutler, Abhishek Lekshmanan) -* doc: dev improve the s3tests doc to reflect current scripts (`pr#15180 <https://github.com/ceph/ceph/pull/15180>`_, Abhishek Lekshmanan) -* doc: doc/cephfs: mention RADOS object size limit (`pr#15550 <https://github.com/ceph/ceph/pull/15550>`_, John Spray) -* doc: doc/dev: update log_based_pg.rst, fix some display problem (`pr#12730 <https://github.com/ceph/ceph/pull/12730>`_, liuchang0812) -* doc: Doc:Fixes Python Swift client commands (`issue#17746 <http://tracker.ceph.com/issues/17746>`_, `pr#12887 <https://github.com/ceph/ceph/pull/12887>`_, Ronak Jain) -* doc: doc/install/manual-deployment: update osd creation steps (`pr#16573 <https://github.com/ceph/ceph/pull/16573>`_, Sage Weil) -* doc: doc/mgr/dashboard: update dashboard docs to reflect new defaults (`pr#16241 <https://github.com/ceph/ceph/pull/16241>`_, Sage Weil) -* doc: doc/mon: fix ceph-authtool command in rebuild mon's sample (`pr#16503 <https://github.com/ceph/ceph/pull/16503>`_, huanwen ren) -* doc: doc/qa: cover `config help` command (`pr#16727 <https://github.com/ceph/ceph/pull/16727>`_, John Spray) -* doc: doc/rados.8: add offset option for put command (`pr#16155 <https://github.com/ceph/ceph/pull/16155>`_, Jianpeng Ma) -* doc: doc/rados: add page for health checks and update monitoring.rst (`pr#16566 <https://github.com/ceph/ceph/pull/16566>`_, John Spray) -* doc: doc/rados/configuration: document bluestore (`pr#16765 <https://github.com/ceph/ceph/pull/16765>`_, Sage Weil) -* doc: doc/radosgw/s3/cpp.rst: update usage of libs3 APIs to make the examples work (`pr#10851 <https://github.com/ceph/ceph/pull/10851>`_, Weibing Zhang) -* doc: doc/rados/operations/health-checks: osd section (`pr#16611 <https://github.com/ceph/ceph/pull/16611>`_, Sage Weil) -* doc: doc/release-notes: add Images creation timestamp note (`pr#15963 <https://github.com/ceph/ceph/pull/15963>`_, clove) -* doc: doc/release-notes: avoid 'production-ready' in describing kraken (`pr#13675 <https://github.com/ceph/ceph/pull/13675>`_, Sage Weil) -* doc: doc/release-notes: final kraken notes (`pr#12968 <https://github.com/ceph/ceph/pull/12968>`_, Sage Weil) -* doc: doc/release-notes: fix bluestore links (`pr#16787 <https://github.com/ceph/ceph/pull/16787>`_, Sage Weil) -* doc: doc/release-notes: fix links, formatting; add crush device class docs (`pr#16741 <https://github.com/ceph/ceph/pull/16741>`_, Sage Weil) -* doc: doc/release-notes: fix upmap and osd replacement links; add fixme (`pr#16730 <https://github.com/ceph/ceph/pull/16730>`_, Sage Weil) -* doc: doc/release-notes: Luminous release notes typo fixes "ceph config-key ls"->"ceph config-key list" (`pr#16330 <https://github.com/ceph/ceph/pull/16330>`_, scienceluo) -* doc: doc/release-notes: Luminous release notes typo fixes (`pr#16338 <https://github.com/ceph/ceph/pull/16338>`_, Luo Kexue) -* doc: doc/release-notes: sort release note changes into the right section (`pr#16764 <https://github.com/ceph/ceph/pull/16764>`_, Sage Weil) -* doc: doc/release-notes: update device class cli (`pr#16851 <https://github.com/ceph/ceph/pull/16851>`_, xie xingguo) -* doc: doc/release-notes: update luminous notes (`pr#15851 <https://github.com/ceph/ceph/pull/15851>`_, Sage Weil) -* doc: doc/release-notes: update which jewel version does sortbitwise warning (`pr#15209 <https://github.com/ceph/ceph/pull/15209>`_, Sage Weil) -* doc: doc/releases: Update releases from Feb 2017 to July 2017 (`pr#16303 <https://github.com/ceph/ceph/pull/16303>`_, Bryan Stillwell) -* doc: doc/rgw: instructions for changing multisite master zone (`pr#14089 <https://github.com/ceph/ceph/pull/14089>`_, Casey Bodley) -* doc: doc/rgw: remove fastcgi page and sample configs (`pr#15133 <https://github.com/ceph/ceph/pull/15133>`_, Casey Bodley) -* doc: doc/rgw: remove Federated Configuration, clean up multisite (`issue#19504 <http://tracker.ceph.com/issues/19504>`_, `issue#18082 <http://tracker.ceph.com/issues/18082>`_, `pr#15132 <https://github.com/ceph/ceph/pull/15132>`_, Casey Bodley) -* doc: docs: Clarify the relationship of min_size to EC pool recovery (`pr#14419 <https://github.com/ceph/ceph/pull/14419>`_, Brad Hubbard) -* doc: docs: Fix problems with example code (`pr#14007 <https://github.com/ceph/ceph/pull/14007>`_, Brad Hubbard) -* doc: docs: mgr dashboard (`pr#15920 <https://github.com/ceph/ceph/pull/15920>`_, Wido den Hollander) -* doc: [docs/quick-start]: update quick start to add a note for mgr create command for luminous+ builds (`pr#16350 <https://github.com/ceph/ceph/pull/16350>`_, Vasu Kulkarni) -* doc: Documentation Fixes for http://tracker.ceph.com/issues/19879 (`issue#20057 <http://tracker.ceph.com/issues/20057>`_, `issue#19879 <http://tracker.ceph.com/issues/19879>`_, `pr#15606 <https://github.com/ceph/ceph/pull/15606>`_, Sameer Tiwari) -* doc: Documentation updates for July 2017 releases (`pr#16401 <https://github.com/ceph/ceph/pull/16401>`_, Bryan Stillwell) -* doc: document bluestore compression settings (`pr#16747 <https://github.com/ceph/ceph/pull/16747>`_, Kefu Chai) -* doc: document mClock related options (`pr#16552 <https://github.com/ceph/ceph/pull/16552>`_, Kefu Chai) -* doc: document `osd-agent-{max,low}-ops` options (`pr#13648 <https://github.com/ceph/ceph/pull/13648>`_, Kefu Chai) -* doc: document perf historgrams (`pr#15150 <https://github.com/ceph/ceph/pull/15150>`_, Piotr Dałek) -* doc: document "rados cleanup" in rados manpage (`issue#20894 <http://tracker.ceph.com/issues/20894>`_, `pr#16777 <https://github.com/ceph/ceph/pull/16777>`_, Nathan Cutler) -* doc: document repair/scrub features (`issue#15786 <http://tracker.ceph.com/issues/15786>`_, `pr#9032 <https://github.com/ceph/ceph/pull/9032>`_, Kefu Chai, David Zafman) -* doc: Document RGW quota cache options (`issue#18747 <http://tracker.ceph.com/issues/18747>`_, `pr#13395 <https://github.com/ceph/ceph/pull/13395>`_, Daniel Gryniewicz) -* doc: Document that osd_heartbeat_grace applies to MON and OSD (`pr#13098 <https://github.com/ceph/ceph/pull/13098>`_, Wido den Hollander) -* doc: document the setup of restful and dashboard plugins (`issue#20239 <http://tracker.ceph.com/issues/20239>`_, `pr#15707 <https://github.com/ceph/ceph/pull/15707>`_, Kefu Chai) -* doc: explain about logging levels (`pr#12920 <https://github.com/ceph/ceph/pull/12920>`_, liuchang0812) -* doc: fio: update README.md so only the fio ceph engine is built (`pr#15081 <https://github.com/ceph/ceph/pull/15081>`_, Kefu Chai) -* doc: fix a typo (`pr#13930 <https://github.com/ceph/ceph/pull/13930>`_, Drunkard Zhang) -* doc: fix broken link in erasure-code.rst (`issue#19972 <http://tracker.ceph.com/issues/19972>`_, `pr#15143 <https://github.com/ceph/ceph/pull/15143>`_, MinSheng Lin) -* doc: fix document about rados mon (`pr#12662 <https://github.com/ceph/ceph/pull/12662>`_, liuchang0812) -* doc: Fixed a typo in yum repo filename script (`pr#16431 <https://github.com/ceph/ceph/pull/16431>`_, Jeff Green) -* doc: fixes a broken hyperlink to RADOS paper in architecture (`pr#13682 <https://github.com/ceph/ceph/pull/13682>`_, Tahia Khan) -* doc: Fixes a typo (`pr#13985 <https://github.com/ceph/ceph/pull/13985>`_, Edwin F. Boza) -* doc: Fixes parameter name in rbd configuration on openstack havana/icehouse (`issue#17978 <http://tracker.ceph.com/issues/17978>`_, `pr#13403 <https://github.com/ceph/ceph/pull/13403>`_, Michael Eischer) -* doc: Fixes radosgw-admin ex: in swift auth section (`issue#16687 <http://tracker.ceph.com/issues/16687>`_, `pr#12646 <https://github.com/ceph/ceph/pull/12646>`_, SirishaGuduru) -* doc: fixes to silence sphinx-build (`pr#13997 <https://github.com/ceph/ceph/pull/13997>`_, Kefu Chai) -* doc: fix factual inaccuracy in doc/architecture.rst (`pr#15235 <https://github.com/ceph/ceph/pull/15235>`_, Nathan Cutler, Sage Weil) -* doc: fixing an error in 12.0.3 release notes (`pr#15195 <https://github.com/ceph/ceph/pull/15195>`_, Abhishek Lekshmanan) -* doc: fix link for ceph-mgr cephx authorization (`pr#16246 <https://github.com/ceph/ceph/pull/16246>`_, Greg Farnum) -* doc: fix link that pointed to a nonexistent file (`pr#14740 <https://github.com/ceph/ceph/pull/14740>`_, Peter Maloney) -* doc: fix syntax on code snippets in cephfs/multimds (`pr#15499 <https://github.com/ceph/ceph/pull/15499>`_, John Spray) -* doc: fix the librados c api can not compile problem (`pr#9396 <https://github.com/ceph/ceph/pull/9396>`_, song baisen) -* doc: fix the links to http://ceph.com/docs (`issue#19090 <http://tracker.ceph.com/issues/19090>`_, `pr#13976 <https://github.com/ceph/ceph/pull/13976>`_, Kefu Chai) -* doc: Fix typo and grammar in RGW config reference (`pr#13356 <https://github.com/ceph/ceph/pull/13356>`_, Ruben Kerkhof) -* doc: fix typo in config.rst (`pr#16721 <https://github.com/ceph/ceph/pull/16721>`_, Jos Collin) -* doc: fix typos in config.rst (`pr#16681 <https://github.com/ceph/ceph/pull/16681>`_, Song Shun) -* doc: fix typos in radosgw-admin usage (`pr#13936 <https://github.com/ceph/ceph/pull/13936>`_, Enming Zhang) -* doc: freshen mgr docs (`pr#15690 <https://github.com/ceph/ceph/pull/15690>`_, John Spray) -* doc: hammer 0.94.10 release notes (`pr#13152 <https://github.com/ceph/ceph/pull/13152>`_, Nathan Cutler) -* doc: Have install put manpages in the FreeBSD correct location (`pr#13301 <https://github.com/ceph/ceph/pull/13301>`_, Willem Jan Withagen) -* doc: how to specify filesystem for cephfs clients (`pr#14087 <https://github.com/ceph/ceph/pull/14087>`_, John Spray) -* doc: improve firewalld instructions (`pr#13360 <https://github.com/ceph/ceph/pull/13360>`_, Ken Dreyer) -* doc: Indicate how to add multiple admin capbabilies (`pr#13956 <https://github.com/ceph/ceph/pull/13956>`_, Chu, Hua-Rong) -* doc: instructions and guidance for multimds (`issue#19135 <http://tracker.ceph.com/issues/19135>`_, `pr#13830 <https://github.com/ceph/ceph/pull/13830>`_, John Spray) -* doc: instructions for provisioning OpenStack VMs ad hoc (`pr#13368 <https://github.com/ceph/ceph/pull/13368>`_, Nathan Cutler) -* doc: Jewel 10.2.6 release notes (`pr#13835 <https://github.com/ceph/ceph/pull/13835>`_, Abhishek Lekshmanan) -* doc: Jewel v10.2.8 release notes (`pr#16274 <https://github.com/ceph/ceph/pull/16274>`_, Nathan Cutler) -* doc: Jewel v10.2.9 release notes (`pr#16318 <https://github.com/ceph/ceph/pull/16318>`_, Nathan Cutler) -* doc: kernel client os-recommendations update (`pr#13369 <https://github.com/ceph/ceph/pull/13369>`_, John Spray, Ilya Dryomov) -* doc: kill some broken links (`pr#15203 <https://github.com/ceph/ceph/pull/15203>`_, liuchang0812) -* doc: kill sphinx warnings (`pr#16198 <https://github.com/ceph/ceph/pull/16198>`_, Kefu Chai) -* doc: luminous: doc: update rbd-mirroring documentation (`issue#20701 <http://tracker.ceph.com/issues/20701>`_, `pr#16912 <https://github.com/ceph/ceph/pull/16912>`_, Jason Dillaman) -* doc: Luminous release notes typo fixes (`pr#15899 <https://github.com/ceph/ceph/pull/15899>`_, Abhishek Lekshmanan) -* doc: mailmap: add affiliation for Zhu Shangzhong (`pr#16537 <https://github.com/ceph/ceph/pull/16537>`_, Zhu Shangzhong) -* doc: mailmap: add Alibaba into organization map (`pr#14900 <https://github.com/ceph/ceph/pull/14900>`_, James Liu) -* doc: mailmap: add Myoungwon Oh's mailmap and affiliation (`pr#15934 <https://github.com/ceph/ceph/pull/15934>`_, Myoungwon Oh) -* doc: mailmap for v12.0.2 (`pr#14753 <https://github.com/ceph/ceph/pull/14753>`_, Abhishek Lekshmanan) -* doc: mailmap: Michal Koutny affiliation (`pr#13036 <https://github.com/ceph/ceph/pull/13036>`_, Nathan Cutler) -* doc: mailmap, organizationmap: add affiliation for Tushar Gohad (`pr#16081 <https://github.com/ceph/ceph/pull/16081>`_, Tushar Gohad) -* doc: .mailmap, .organizationmap: Update Fan Yang information and affiliation (`pr#16067 <https://github.com/ceph/ceph/pull/16067>`_, Fan Yang) -* doc: .mailmap, .organizationmap: Update Song Weibin information and affiliation (`pr#16311 <https://github.com/ceph/ceph/pull/16311>`_, songweibin) -* doc: .mailmap, .organizationmap: Update ztczll affiliation (`pr#16038 <https://github.com/ceph/ceph/pull/16038>`_, zhanglei) -* doc: mailmap updates for v11.1.0 (`pr#12335 <https://github.com/ceph/ceph/pull/12335>`_, Abhishek Lekshmanan) -* doc: mailmap updates (`pr#13309 <https://github.com/ceph/ceph/pull/13309>`_, Loic Dachary) -* doc: mailmap: V12.0.1 credits (`pr#14479 <https://github.com/ceph/ceph/pull/14479>`_, M Ranga Swami Reddy) -* doc: mailmap: Willem Jan Withagen affiliation (`pr#13034 <https://github.com/ceph/ceph/pull/13034>`_, Willem Jan Withagen) -* doc: mailmap: ztczll affiliation (`pr#15079 <https://github.com/ceph/ceph/pull/15079>`_, zhanglei) -* doc: man/8/ceph-disk: fix formatting (`pr#13969 <https://github.com/ceph/ceph/pull/13969>`_, Kefu Chai) -* doc: mention certain conf vars should be in global (`pr#15119 <https://github.com/ceph/ceph/pull/15119>`_, Ali Maredia) -* doc: mention ENXIO change in the 10.2.6 release notes (`pr#13878 <https://github.com/ceph/ceph/pull/13878>`_, Nathan Cutler) -* doc: mention --show-mappings in crushtool manpage (`issue#19649 <http://tracker.ceph.com/issues/19649>`_, `pr#14599 <https://github.com/ceph/ceph/pull/14599>`_, Nathan Cutler, Loic Dachary) -* doc: mention teuthology-worker security group (`pr#14748 <https://github.com/ceph/ceph/pull/14748>`_, Nathan Cutler) -* doc: Merge pull request from stiwari/wip-19879 (`issue#19879 <http://tracker.ceph.com/issues/19879>`_, `pr#15609 <https://github.com/ceph/ceph/pull/15609>`_, Sameer Tiwari) -* doc: mgr/restful: bind to :: and update docs (`pr#16267 <https://github.com/ceph/ceph/pull/16267>`_, Sage Weil) -* doc: minor changes in fuse client config reference (`pr#13065 <https://github.com/ceph/ceph/pull/13065>`_, Barbora Ančincová) -* doc: minor change to a cloud testing paragraph (`pr#13277 <https://github.com/ceph/ceph/pull/13277>`_, Jan Fajerski) -* doc: minor fixes in radosgw/ (`pr#15103 <https://github.com/ceph/ceph/pull/15103>`_, Drunkard Zhang) -* doc: min_size advice is not helpful (`pr#12936 <https://github.com/ceph/ceph/pull/12936>`_, Brad Hubbard) -* doc: misc minor fixes (`pr#13713 <https://github.com/ceph/ceph/pull/13713>`_, Drunkard Zhang) -* doc: Modify Configuring Cinder section (`issue#18840 <http://tracker.ceph.com/issues/18840>`_, `pr#13400 <https://github.com/ceph/ceph/pull/13400>`_, Shinobu Kinjo) -* doc: op queue and mclock related options (`pr#16662 <https://github.com/ceph/ceph/pull/16662>`_, J. Eric Ivancich) -* doc: organizationmap: add Xianxia Xiao to Kylin Cloud team (`pr#12718 <https://github.com/ceph/ceph/pull/12718>`_, Yunchuan Wen) -* doc: PendingReleaseNotes: "ceph -w" behavior has changed drastically (`pr#16425 <https://github.com/ceph/ceph/pull/16425>`_, Joao Eduardo Luis, Nathan Cutler) -* doc: PendingReleaseNotes: notes on whiteouts vs pgnls (`pr#15575 <https://github.com/ceph/ceph/pull/15575>`_, Sage Weil) -* doc: PendingReleaseNotes: note the fuse fstab format change (`pr#13259 <https://github.com/ceph/ceph/pull/13259>`_, John Spray) -* doc: PendingReleaseNotes: recent cephfs changes (`pr#14196 <https://github.com/ceph/ceph/pull/14196>`_, John Spray) -* doc: PendingReleaseNotes: warning about 'osd rm ...' and #19119 (`issue#19119 <http://tracker.ceph.com/issues/19119>`_, `pr#13731 <https://github.com/ceph/ceph/pull/13731>`_, Sage Weil) -* doc: peoplemap: add pdonnell alias (`pr#14352 <https://github.com/ceph/ceph/pull/14352>`_, Patrick Donnelly) -* doc: radosgw-admin: new 'global quota' commands update period config (`issue#19409 <http://tracker.ceph.com/issues/19409>`_, `pr#14252 <https://github.com/ceph/ceph/pull/14252>`_, Casey Bodley) -* doc: README.FreeBSD: update current status (`pr#12096 <https://github.com/ceph/ceph/pull/12096>`_, Willem Jan Withagen) -* doc: README.FreeBSD: Update the status (`pr#14406 <https://github.com/ceph/ceph/pull/14406>`_, Willem Jan Withagen) -* doc: README.md: fix build instructions inconsistent (`pr#14555 <https://github.com/ceph/ceph/pull/14555>`_, Yao Zongyou) -* doc: README.md: use github heading syntax to mark the headings (`pr#14591 <https://github.com/ceph/ceph/pull/14591>`_, Kefu Chai) -* doc: release-notes clarify about rgw encryption (`pr#14800 <https://github.com/ceph/ceph/pull/14800>`_, Abhishek Lekshmanan) -* doc: release notes for v10.2.7 Jewel (`pr#14295 <https://github.com/ceph/ceph/pull/14295>`_, Abhishek Lekshmanan) -* doc: release notes for v11.1.1 (`pr#12642 <https://github.com/ceph/ceph/pull/12642>`_, Abhishek Lekshmanan) -* doc: release notes for v12.0.3 (dev) (`pr#15090 <https://github.com/ceph/ceph/pull/15090>`_, Abhishek Lekshmanan) -* doc: releases update the luminous, hammer, jewel release dates (`pr#13584 <https://github.com/ceph/ceph/pull/13584>`_, Abhishek Lekshmanan) -* doc: remove deprecated subcommand in man/8/ceph.rst (`pr#14928 <https://github.com/ceph/ceph/pull/14928>`_, Drunkard Zhang) -* doc: remove docs on non-existant command (`pr#16616 <https://github.com/ceph/ceph/pull/16616>`_, Luo Kexue, Kefu Chai) -* doc: remove duplicated references (`pr#13396 <https://github.com/ceph/ceph/pull/13396>`_, Kefu Chai) -* doc: remove mentions about mon_osd_min_down_reports (`issue#19016 <http://tracker.ceph.com/issues/19016>`_, `pr#13558 <https://github.com/ceph/ceph/pull/13558>`_, Barbora Ančincová) -* doc: remove some non-existent and fix the default value according to … (`pr#15664 <https://github.com/ceph/ceph/pull/15664>`_, Leo Zhang) -* doc: Remove "splitting" state (`pr#12636 <https://github.com/ceph/ceph/pull/12636>`_, Brad Hubbard) -* doc: reword mds deactivate docs; add optional fs_name argument (`issue#20607 <http://tracker.ceph.com/issues/20607>`_, `pr#16471 <https://github.com/ceph/ceph/pull/16471>`_, Jan Fajerski) -* doc: Re-word the warnings about using git subtrees (`pr#14999 <https://github.com/ceph/ceph/pull/14999>`_, J. Eric Ivancich) -* doc: rgw clarify limitations when creating tenant names (`pr#16418 <https://github.com/ceph/ceph/pull/16418>`_, Abhishek Lekshmanan) -* doc: rgw: Clean up create subuser parameters (`pr#14335 <https://github.com/ceph/ceph/pull/14335>`_, hrchu) -* doc: rgw: correct get usage parameter default value (`pr#14372 <https://github.com/ceph/ceph/pull/14372>`_, hrchu) -* doc: rgw: Get user usage needs to specify user (`pr#14804 <https://github.com/ceph/ceph/pull/14804>`_, hrchu) -* doc: rgw: make a note abt system users vs normal users (`issue#18889 <http://tracker.ceph.com/issues/18889>`_, `pr#13461 <https://github.com/ceph/ceph/pull/13461>`_, Abhishek Lekshmanan) -* doc: rgw: note rgw_enable_usage_log option in adminops guide (`pr#14803 <https://github.com/ceph/ceph/pull/14803>`_, hrchu) -* doc: rgw: remove mention of megabytes for quotas (`pr#14413 <https://github.com/ceph/ceph/pull/14413>`_, Hans van den Bogert) -* doc: rgw: Rewrite Java swift examples (`pr#14268 <https://github.com/ceph/ceph/pull/14268>`_, Chu, Hua-Rong) -* doc: rgw: Rewrite the key management (`pr#14384 <https://github.com/ceph/ceph/pull/14384>`_, hrchu) -* doc: rgw server-side encryption and barbican (`pr#13483 <https://github.com/ceph/ceph/pull/13483>`_, Adam Kupczyk, Casey Bodley) -* doc: script: build-doc/serve-doc fixes (`pr#14438 <https://github.com/ceph/ceph/pull/14438>`_, Abhishek Lekshmanan) -* doc: script: ceph-release-notes: use https instead of http (`pr#14103 <https://github.com/ceph/ceph/pull/14103>`_, Kefu Chai) -* docs: doc/cephfs/troubleshooting: fix broken bullet list (`pr#12894 <https://github.com/ceph/ceph/pull/12894>`_, Dan Mick) -* docs: doc/dev: add some info about FreeBSD (`pr#14503 <https://github.com/ceph/ceph/pull/14503>`_, Willem Jan Withagen) -* docs: doc/release-notes: fix ceph-deploy command (`pr#15987 <https://github.com/ceph/ceph/pull/15987>`_, Sage Weil) -* docs: doc/release-note: update release-note (`pr#15748 <https://github.com/ceph/ceph/pull/15748>`_, liuchang0812) -* docs: document "osd recovery max single start" setting (`issue#17396 <http://tracker.ceph.com/issues/17396>`_, `pr#15275 <https://github.com/ceph/ceph/pull/15275>`_, Ken Dreyer) -* docs: mailmap: fix Zhao Chao affiliation (`pr#13413 <https://github.com/ceph/ceph/pull/13413>`_, Zhao Chao) -* docs: mailmap: Leo Zhang infomation and affiliation (`pr#15145 <https://github.com/ceph/ceph/pull/15145>`_, Leo Zhang) -* docs: mailmap: Liu Yang affiliation (`pr#13427 <https://github.com/ceph/ceph/pull/13427>`_, LiuYang) -* docs: mailmap: shiqi affiliation (`pr#14361 <https://github.com/ceph/ceph/pull/14361>`_, shiqi) -* docs: mailmap: update organization info (`pr#14747 <https://github.com/ceph/ceph/pull/14747>`_, liuchang0812) -* docs: mailmap: Weibing Zhang mailmap affiliation (`pr#15076 <https://github.com/ceph/ceph/pull/15076>`_, Weibing Zhang) -* docs: PendingReleaseNotes: mention forced recovery (`pr#16775 <https://github.com/ceph/ceph/pull/16775>`_, Piotr Dałek) -* docs: Remove contractions from the documentation (`pr#16629 <https://github.com/ceph/ceph/pull/16629>`_, John Wilkins) -* doc: style fix for doc/cephfs/client-config-ref.rst (`pr#14840 <https://github.com/ceph/ceph/pull/14840>`_, Drunkard Zhang) -* doc: tools/cephfs: fix cephfs-journal-tool --help (`pr#15614 <https://github.com/ceph/ceph/pull/15614>`_, John Spray) -* doc: two minor fixes (`pr#14494 <https://github.com/ceph/ceph/pull/14494>`_, Drunkard Zhang) -* doc: typo fixes on hyperlink/words (`pr#15144 <https://github.com/ceph/ceph/pull/15144>`_, Drunkard Zhang) -* doc: typo fix in s3_compliance (`pr#12598 <https://github.com/ceph/ceph/pull/12598>`_, LiuYang) -* doc: typo in hit_set_search_last_n (`pr#14108 <https://github.com/ceph/ceph/pull/14108>`_, Sven Seeberg) -* doc: Update adminops.rst (`pr#13893 <https://github.com/ceph/ceph/pull/13893>`_, Chu, Hua-Rong) -* doc: update ceph(8) man page with new sub-commands (`pr#16437 <https://github.com/ceph/ceph/pull/16437>`_, Kefu Chai) -* doc: Update CephFS disaster recovery documentation (`pr#12370 <https://github.com/ceph/ceph/pull/12370>`_, Wido den Hollander) -* doc: Update disk thread section to reflect that scrubbing is no longe… (`pr#12621 <https://github.com/ceph/ceph/pull/12621>`_, Nick Fisk) -* doc: update intro, quick start docs (`pr#16224 <https://github.com/ceph/ceph/pull/16224>`_, Sage Weil) -* doc: Update keystone.rst (`pr#12717 <https://github.com/ceph/ceph/pull/12717>`_, Chu, Hua-Rong) -* doc: update links to point to ceph/qa instead of ceph-qa-suite (`pr#13397 <https://github.com/ceph/ceph/pull/13397>`_, Jan Fajerski, Nathan Cutler) -* doc: Update .organizationmap (`pr#16507 <https://github.com/ceph/ceph/pull/16507>`_, luokexue) -* doc: update packages mentioned by build-doc and related doc (`pr#14649 <https://github.com/ceph/ceph/pull/14649>`_, Yu Shengzuo) -* doc: Update sample.ceph.conf (`pr#13751 <https://github.com/ceph/ceph/pull/13751>`_, Saumay Agrawal) -* doc: update sample explaning "%" operator in test suites (`pr#15511 <https://github.com/ceph/ceph/pull/15511>`_, Kefu Chai) -* doc: Update some RGW documentation (`pr#15175 <https://github.com/ceph/ceph/pull/15175>`_, Jens Rosenboom) -* doc: update the pool names created by vstart.sh by default (`pr#16652 <https://github.com/ceph/ceph/pull/16652>`_, Zhu Shangzhong) -* doc: update the rados namespace docs (`pr#15838 <https://github.com/ceph/ceph/pull/15838>`_, Abhishek Lekshmanan) -* doc: update the support status of swift static website (`pr#13824 <https://github.com/ceph/ceph/pull/13824>`_, Jing Wenjun) -* doc: update the usage of 'ceph-deploy purge' (`pr#15080 <https://github.com/ceph/ceph/pull/15080>`_, Yu Shengzuo) -* doc: update to new ceph fs commands (`pr#13346 <https://github.com/ceph/ceph/pull/13346>`_, Patrick Donnelly) -* doc: upmap docs; various missing links for release notes (`pr#16637 <https://github.com/ceph/ceph/pull/16637>`_, Sage Weil) -* doc: use do_cmake.sh instead of `cmake ..` (`pr#15110 <https://github.com/ceph/ceph/pull/15110>`_, Kefu Chai) -* doc: v12.0.0 release notes (`pr#13281 <https://github.com/ceph/ceph/pull/13281>`_, Abhishek Lekshmanan) -* doc: v12.0.2 (dev) release notes (`pr#14625 <https://github.com/ceph/ceph/pull/14625>`_, Abhishek Lekshmanan) -* doc: v12.1.0 release notes notable changes addition again (`pr#15857 <https://github.com/ceph/ceph/pull/15857>`_, Abhishek Lekshmanan) -* doc: various fixes (`pr#16723 <https://github.com/ceph/ceph/pull/16723>`_, Kefu Chai) -* doc: vstart: add --help documentation for rgw_num (`pr#13817 <https://github.com/ceph/ceph/pull/13817>`_, Ali Maredia) -* doc: wip-doc-multisite ports downstream multisite document upstream (`pr#14259 <https://github.com/ceph/ceph/pull/14259>`_, John Wilkins) -* doc: Wip osd discussion docs (`pr#13344 <https://github.com/ceph/ceph/pull/13344>`_, Greg Farnum) -* filestore: os/filestore: Exclude BTRFS on FreeBSD (`pr#16171 <https://github.com/ceph/ceph/pull/16171>`_, Willem Jan Withagen) -* filestore: os/filestore/FileJournal: Fix typo in the comment (`pr#14493 <https://github.com/ceph/ceph/pull/14493>`_, Zhou Zhengping) -* filestore: os/filestore: use existing variable for same func (`pr#13742 <https://github.com/ceph/ceph/pull/13742>`_, Pan Liu) -* filestore: os/filestore: when print log, use `__func__` instead of hard code function name (`pr#15261 <https://github.com/ceph/ceph/pull/15261>`_, mychoxin) -* filestore: os/filestore: zfs add get_name() (`pr#15650 <https://github.com/ceph/ceph/pull/15650>`_, Yanhu Cao) - Fix full testing in cephtool/test.sh when used by rados suite - @Jing-Scott updated, addressing @rzarzynski's change request -* librados: add log channel to rados_monitor_log2 callback (`pr#15926 <https://github.com/ceph/ceph/pull/15926>`_, Sage Weil) -* librados: add missing implementations for C service daemon API methods (`pr#16543 <https://github.com/ceph/ceph/pull/16543>`_, Jason Dillaman) -* librados: add override for librados (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13442 <https://github.com/ceph/ceph/pull/13442>`_, liuchang0812) -* librados: add override in headers (`pr#13775 <https://github.com/ceph/ceph/pull/13775>`_, liuchang0812) -* librados: asynchronous selfmanaged_snap_create/selfmanaged_snap_remove APIs (`issue#16180 <http://tracker.ceph.com/issues/16180>`_, `pr#12050 <https://github.com/ceph/ceph/pull/12050>`_, Jason Dillaman) -* librados: do not expose non-public symbols (`pr#13265 <https://github.com/ceph/ceph/pull/13265>`_, Kefu Chai) -* librados: fix compile errors from simplified aio completions (`pr#12849 <https://github.com/ceph/ceph/pull/12849>`_, xie xingguo) -* librados: fix rados_pool_list when buf is null (`pr#14859 <https://github.com/ceph/ceph/pull/14859>`_, Sage Weil) -* librados: redirect balanced reads to acting primary when targeting object isn't recovered (`issue#17968 <http://tracker.ceph.com/issues/17968>`_, `pr#15489 <https://github.com/ceph/ceph/pull/15489>`_, Xuehan Xu) -* librados: remove legacy object listing API, clean up newer api (`pr#13149 <https://github.com/ceph/ceph/pull/13149>`_, Sage Weil) -* librados: replace the var name from onack to complete (`pr#13857 <https://github.com/ceph/ceph/pull/13857>`_, Pan Liu) -* librados: set the flag CEPH_OSD_FLAG_FULL_TRY of Op in the right place (`pr#14193 <https://github.com/ceph/ceph/pull/14193>`_, Pan Liu) -* librados: use cursor for nobjects listing (`pr#13323 <https://github.com/ceph/ceph/pull/13323>`_, Yehuda Sadeh, Sage Weil) -* librbd: add compare and write API (`pr#14868 <https://github.com/ceph/ceph/pull/14868>`_, Zhengyong Wang, Jason Dillaman) -* librbd: add create timestamp metadata for image (`pr#15757 <https://github.com/ceph/ceph/pull/15757>`_, runsisi) -* librbd: added rbd_flatten_with_progress to API (`issue#15824 <http://tracker.ceph.com/issues/15824>`_, `pr#12905 <https://github.com/ceph/ceph/pull/12905>`_, Ricardo Dias) -* librbd: add LIBRBD_SUPPORTS_WRITESAME support (`pr#16583 <https://github.com/ceph/ceph/pull/16583>`_, Xiubo Li) -* librbd: add override keyword in header files (`issue#19012 <http://tracker.ceph.com/issues/19012>`_, `pr#13536 <https://github.com/ceph/ceph/pull/13536>`_, liuchang0812) -* librbd: add SnapshotNamespace to ImageCtx (`pr#12970 <https://github.com/ceph/ceph/pull/12970>`_, Victor Denisov) -* librbd: add writesame API (`pr#12645 <https://github.com/ceph/ceph/pull/12645>`_, Mingxin Liu, Gui Hecheng) -* librbd: allow to open an image without opening the parent image (`issue#18325 <http://tracker.ceph.com/issues/18325>`_, `pr#12885 <https://github.com/ceph/ceph/pull/12885>`_, Ricardo Dias) -* librbd: asynchronous clone state machine (`pr#12041 <https://github.com/ceph/ceph/pull/12041>`_, Dongsheng Yang) -* librbd: asynchronous image removal state machine (`pr#12102 <https://github.com/ceph/ceph/pull/12102>`_, Dongsheng Yang, Venky Shankar) -* librbd: avoid possible recursive lock when racing acquire lock (`issue#17447 <http://tracker.ceph.com/issues/17447>`_, `pr#12991 <https://github.com/ceph/ceph/pull/12991>`_, Jason Dillaman) -* librbd: changed the return type of ImageRequestWQ::discard() (`issue#18511 <http://tracker.ceph.com/issues/18511>`_, `pr#14032 <https://github.com/ceph/ceph/pull/14032>`_, Jos Collin) -* librbd: cleanup logging code under librbd/io (`pr#14975 <https://github.com/ceph/ceph/pull/14975>`_, runsisi) -* librbd: corrected resize RPC message backwards compatibility (`issue#19636 <http://tracker.ceph.com/issues/19636>`_, `pr#14615 <https://github.com/ceph/ceph/pull/14615>`_, Jason Dillaman) -* librbd: create fewer empty objects during copyup (`issue#15028 <http://tracker.ceph.com/issues/15028>`_, `pr#12326 <https://github.com/ceph/ceph/pull/12326>`_, Douglas Fuller, Venky Shankar) -* librbd: deferred image deletion (`issue#18481 <http://tracker.ceph.com/issues/18481>`_, `pr#13105 <https://github.com/ceph/ceph/pull/13105>`_, Ricardo Dias) -* librbd: delay mirror registration when creating clones (`issue#17993 <http://tracker.ceph.com/issues/17993>`_, `pr#12839 <https://github.com/ceph/ceph/pull/12839>`_, Jason Dillaman) -* librbd: discard related IO should skip op if object non-existent (`issue#19962 <http://tracker.ceph.com/issues/19962>`_, `pr#15239 <https://github.com/ceph/ceph/pull/15239>`_, Mykola Golub) -* librbd: do not instantiate templates while building tests (`issue#18938 <http://tracker.ceph.com/issues/18938>`_, `pr#14891 <https://github.com/ceph/ceph/pull/14891>`_, Kefu Chai) -* librbd: do not raise an error if trash list returns -ENOENT (`pr#15085 <https://github.com/ceph/ceph/pull/15085>`_, runsisi) -* librbd: don't continue to remove an image w/ incompatible features (`issue#18315 <http://tracker.ceph.com/issues/18315>`_, `pr#12638 <https://github.com/ceph/ceph/pull/12638>`_, Dongsheng Yang) -* librbd: eliminate compiler warnings (`pr#13729 <https://github.com/ceph/ceph/pull/13729>`_, Jason Dillaman) -* librbd: fail IO request when exclusive lock cannot be obtained (`pr#15860 <https://github.com/ceph/ceph/pull/15860>`_, Jason Dillaman) -* librbd: filter expected error codes from is_exclusive_lock_owner (`issue#20182 <http://tracker.ceph.com/issues/20182>`_, `pr#15483 <https://github.com/ceph/ceph/pull/15483>`_, Jason Dillaman) -* librbd: fix clang compilation error (`issue#19260 <http://tracker.ceph.com/issues/19260>`_, `pr#13926 <https://github.com/ceph/ceph/pull/13926>`_, Mykola Golub) -* librbd: fixed initializer list ordering (`pr#13042 <https://github.com/ceph/ceph/pull/13042>`_, Jason Dillaman) -* librbd: fix issues with image removal state machine (`pr#15734 <https://github.com/ceph/ceph/pull/15734>`_, Jason Dillaman) -* librbd: fix rbd_metadata_list and rbd_metadata_get (`issue#19588 <http://tracker.ceph.com/issues/19588>`_, `pr#14471 <https://github.com/ceph/ceph/pull/14471>`_, Mykola Golub) -* librbd: fix segfault on EOPNOTSUPP returned while fetching snapshot timestamp (`issue#18839 <http://tracker.ceph.com/issues/18839>`_, `pr#13287 <https://github.com/ceph/ceph/pull/13287>`_, Gui Hecheng) -* librbd: fix valgrind errors and ensure tests detect future leaks (`pr#15415 <https://github.com/ceph/ceph/pull/15415>`_, Jason Dillaman) -* librbd: fix valid coverity warnings (`pr#14023 <https://github.com/ceph/ceph/pull/14023>`_, Jason Dillaman) -* librbd: image create validates that pool supports overwrites (`issue#19081 <http://tracker.ceph.com/issues/19081>`_, `pr#13986 <https://github.com/ceph/ceph/pull/13986>`_, Jason Dillaman) -* librbd: image-extent cache needs to clip out-of-bounds read buffers (`pr#13679 <https://github.com/ceph/ceph/pull/13679>`_, Jason Dillaman) -* librbd: Include WorkQueue.h since we use it (`issue#18862 <http://tracker.ceph.com/issues/18862>`_, `pr#13322 <https://github.com/ceph/ceph/pull/13322>`_, Boris Ranto) -* librbd: initialize diff parent overlap to zero (`pr#13077 <https://github.com/ceph/ceph/pull/13077>`_, Gu Zhongyan) -* librbd: introduce new constants for tracking max block name prefix (`issue#18653 <http://tracker.ceph.com/issues/18653>`_, `pr#13141 <https://github.com/ceph/ceph/pull/13141>`_, Jason Dillaman) -* librbd: is_exclusive_lock_owner API should ping OSD (`issue#19287 <http://tracker.ceph.com/issues/19287>`_, `pr#14003 <https://github.com/ceph/ceph/pull/14003>`_, Jason Dillaman) -* librbd: managed lock refactoring (`pr#12922 <https://github.com/ceph/ceph/pull/12922>`_, Mykola Golub) -* librbd: metadata_set API operation should not change global config setting (`issue#18465 <http://tracker.ceph.com/issues/18465>`_, `pr#12843 <https://github.com/ceph/ceph/pull/12843>`_, Mykola Golub) -* librbd: minor fixes for image trash move (`pr#14834 <https://github.com/ceph/ceph/pull/14834>`_, runsisi) -* librbd: new API method to force break a peer's exclusive lock (`issue#18429 <http://tracker.ceph.com/issues/18429>`_, `issue#16988 <http://tracker.ceph.com/issues/16988>`_, `issue#18327 <http://tracker.ceph.com/issues/18327>`_, `pr#12639 <https://github.com/ceph/ceph/pull/12639>`_, Jason Dillaman) -* librbd: Notifier::notify API improvement (`pr#14072 <https://github.com/ceph/ceph/pull/14072>`_, Mykola Golub) -* librbd: optimize copy-up to add hints only once to object op (`issue#19875 <http://tracker.ceph.com/issues/19875>`_, `pr#15037 <https://github.com/ceph/ceph/pull/15037>`_, Mykola Golub) -* librbd: pass an uint64_t to clip_io() as the third param (`issue#18938 <http://tracker.ceph.com/issues/18938>`_, `pr#14159 <https://github.com/ceph/ceph/pull/14159>`_, Kefu Chai) -* librbd: permit removal of image being bootstrapped by rbd-mirror (`issue#16555 <http://tracker.ceph.com/issues/16555>`_, `pr#12549 <https://github.com/ceph/ceph/pull/12549>`_, Mykola Golub) -* librbd: possible deadlock with flush if refresh in-progress (`issue#18419 <http://tracker.ceph.com/issues/18419>`_, `pr#12838 <https://github.com/ceph/ceph/pull/12838>`_, Jason Dillaman) -* librbd: potential read IO hang when image is flattened (`issue#19832 <http://tracker.ceph.com/issues/19832>`_, `pr#15234 <https://github.com/ceph/ceph/pull/15234>`_, Jason Dillaman) -* librbd: potential use of uninitialised value in ImageWatcher (`pr#14091 <https://github.com/ceph/ceph/pull/14091>`_, Mykola Golub) -* librbd: prevent self-blacklisting during break lock (`issue#18666 <http://tracker.ceph.com/issues/18666>`_, `pr#13110 <https://github.com/ceph/ceph/pull/13110>`_, Jason Dillaman) -* librbd: race initializing exclusive lock and configuring IO path (`pr#13086 <https://github.com/ceph/ceph/pull/13086>`_, Jason Dillaman) -* librbd: random unit test failures due to shut down race (`issue#19389 <http://tracker.ceph.com/issues/19389>`_, `pr#14166 <https://github.com/ceph/ceph/pull/14166>`_, Jason Dillaman) -* librbd: rbd ack cleanup (`pr#13791 <https://github.com/ceph/ceph/pull/13791>`_, runsisi) -* librbd: reacquire lock should update lock owner client id (`issue#19929 <http://tracker.ceph.com/issues/19929>`_, `pr#15093 <https://github.com/ceph/ceph/pull/15093>`_, Jason Dillaman) -* librbd: reduce potential of erroneous blacklisting on image close (`issue#19970 <http://tracker.ceph.com/issues/19970>`_, `pr#15162 <https://github.com/ceph/ceph/pull/15162>`_, Jason Dillaman) -* librbd: refactor exclusive lock support into generic managed lock (`issue#17016 <http://tracker.ceph.com/issues/17016>`_, `pr#12846 <https://github.com/ceph/ceph/pull/12846>`_, Ricardo Dias, Jason Dillaman) -* librbd: relax "is parent mirrored" check when enabling mirroring for pool (`issue#19130 <http://tracker.ceph.com/issues/19130>`_, `pr#13752 <https://github.com/ceph/ceph/pull/13752>`_, Mykola Golub) -* librbd: remove redundant check for image id emptiness (`pr#14830 <https://github.com/ceph/ceph/pull/14830>`_, runsisi) -* librbd: remove unnecessary dependencies of ManagedLock (`pr#12982 <https://github.com/ceph/ceph/pull/12982>`_, Jason Dillaman) -* librbd: remove unused rbd_image_options_t ostream operator (`pr#15443 <https://github.com/ceph/ceph/pull/15443>`_, Mykola Golub) -* librbd: resolve static analyser warnings (`pr#12863 <https://github.com/ceph/ceph/pull/12863>`_, Jason Dillaman) -* librbd: scatter/gather support for the C API (`issue#13025 <http://tracker.ceph.com/issues/13025>`_, `pr#13447 <https://github.com/ceph/ceph/pull/13447>`_, Jason Dillaman) -* librbd: silence -Wunused-variable warning (`pr#14953 <https://github.com/ceph/ceph/pull/14953>`_, Kefu Chai) -* librbd: simplify image open/close semantics (`pr#13701 <https://github.com/ceph/ceph/pull/13701>`_, Jason Dillaman) -* librbd: support for shared locking in ManagedLock (`pr#12886 <https://github.com/ceph/ceph/pull/12886>`_, Ricardo Dias) -* librbd: support to list snapshot timestamp (`issue#808 <http://tracker.ceph.com/issues/808>`_, `pr#12817 <https://github.com/ceph/ceph/pull/12817>`_, Pan Liu) -* librbd: Uninitialized variable used handle_refresh() (`pr#16724 <https://github.com/ceph/ceph/pull/16724>`_, amitkuma) -* librbd: use 'override' keyword instead of 'virtual' (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13437 <https://github.com/ceph/ceph/pull/13437>`_, liuchang0812) -* librbd: warning message for mirroring pool option (`issue#18125 <http://tracker.ceph.com/issues/18125>`_, `pr#12319 <https://github.com/ceph/ceph/pull/12319>`_, Gaurav Kumar Garg) -* log: use one write system call per message (`pr#11955 <https://github.com/ceph/ceph/pull/11955>`_, Patrick Donnelly) -* mds: add authority check for delay dirfrag split (`issue#18487 <http://tracker.ceph.com/issues/18487>`_, `pr#12994 <https://github.com/ceph/ceph/pull/12994>`_, "Yan, Zheng") -* mds: add override in headers (`pr#13691 <https://github.com/ceph/ceph/pull/13691>`_, liuchang0812) -* mds: add override in mds subsystem (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13438 <https://github.com/ceph/ceph/pull/13438>`_, liuchang0812) -* mds: add perf counters for file system operations (`pr#14938 <https://github.com/ceph/ceph/pull/14938>`_, Michael Sevilla) -* mds: automate MDS object count tracking (`pr#13591 <https://github.com/ceph/ceph/pull/13591>`_, Patrick Donnelly) -* mds: bump client_reply debug to match client_req (`pr#14036 <https://github.com/ceph/ceph/pull/14036>`_, Patrick Donnelly) -* mds: change_attr++ and set ctime for set_vxattr (`issue#19583 <http://tracker.ceph.com/issues/19583>`_, `pr#14726 <https://github.com/ceph/ceph/pull/14726>`_, Patrick Donnelly) -* mds: change the type of data_pools (`pr#15278 <https://github.com/ceph/ceph/pull/15278>`_, Vicente Cheng) -* mds: check export pin during replay (`issue#20039 <http://tracker.ceph.com/issues/20039>`_, `pr#15205 <https://github.com/ceph/ceph/pull/15205>`_, Patrick Donnelly) -* mds: check for errors decoding backtraces (`issue#18311 <http://tracker.ceph.com/issues/18311>`_, `pr#12588 <https://github.com/ceph/ceph/pull/12588>`_, John Spray) -* mds: Client syncfs is slow (waits for next MDS tick) (`issue#20129 <http://tracker.ceph.com/issues/20129>`_, `pr#15544 <https://github.com/ceph/ceph/pull/15544>`_, dongdong tao) -* mds: don't assert on read errors in RecoveryQueue (`issue#19282 <http://tracker.ceph.com/issues/19282>`_, `pr#14017 <https://github.com/ceph/ceph/pull/14017>`_, John Spray) -* mds: don't modify inode that is not projected (`issue#16768 <http://tracker.ceph.com/issues/16768>`_, `pr#13052 <https://github.com/ceph/ceph/pull/13052>`_, "Yan, Zheng") -* mds: drop partial entry and adjust write_pos when opening PurgeQueue (`issue#19450 <http://tracker.ceph.com/issues/19450>`_, `pr#14447 <https://github.com/ceph/ceph/pull/14447>`_, "Yan, Zheng") -* mds: explicitly output error msg for dump cache asok command (`pr#15592 <https://github.com/ceph/ceph/pull/15592>`_, Zhi Zhang) -* mds: extend 'p' auth cap to cover all vxattr stuff (`issue#19075 <http://tracker.ceph.com/issues/19075>`_, `pr#13628 <https://github.com/ceph/ceph/pull/13628>`_, John Spray) -* mds: finish clientreplay requests before requesting active state (`issue#18461 <http://tracker.ceph.com/issues/18461>`_, `pr#12852 <https://github.com/ceph/ceph/pull/12852>`_, Yan, Zheng) -* mds: fix bad iterator dereference reported by coverity (`issue#18830 <http://tracker.ceph.com/issues/18830>`_, `pr#13272 <https://github.com/ceph/ceph/pull/13272>`_, John Spray) -* mds: fix CDir::merge() for mds_debug_auth_pins (`issue#19946 <http://tracker.ceph.com/issues/19946>`_, `pr#15130 <https://github.com/ceph/ceph/pull/15130>`_, "Yan, Zheng") -* mds: fix client ID truncation (`pr#15258 <https://github.com/ceph/ceph/pull/15258>`_, Henry Chang) -* mds: fix handling very fast delete ops (`issue#19245 <http://tracker.ceph.com/issues/19245>`_, `pr#13899 <https://github.com/ceph/ceph/pull/13899>`_, John Spray) -* mds: fix hangs involving re-entrant calls to journaler (`issue#20165 <http://tracker.ceph.com/issues/20165>`_, `pr#15430 <https://github.com/ceph/ceph/pull/15430>`_, John Spray) -* mds: fix incorrect assertion in Server::_dir_is_nonempty() (`issue#18578 <http://tracker.ceph.com/issues/18578>`_, `pr#12973 <https://github.com/ceph/ceph/pull/12973>`_, Yan, Zheng) -* mds: fix IO error handling in SessionMap (`pr#13464 <https://github.com/ceph/ceph/pull/13464>`_, John Spray) -* mds: fix mantle script to not fail for last rank (`issue#19589 <http://tracker.ceph.com/issues/19589>`_, `pr#14704 <https://github.com/ceph/ceph/pull/14704>`_, Patrick Donnelly) -* mds: fix mgrc shutdown (`issue#19566 <http://tracker.ceph.com/issues/19566>`_, `pr#14505 <https://github.com/ceph/ceph/pull/14505>`_, John Spray) -* mds: fix null pointer dereference in Locker::handle_client_caps (`issue#18306 <http://tracker.ceph.com/issues/18306>`_, `pr#12808 <https://github.com/ceph/ceph/pull/12808>`_, Yan, Zheng) -* mds: fix stray creation/removal notification (`issue#19630 <http://tracker.ceph.com/issues/19630>`_, `pr#14554 <https://github.com/ceph/ceph/pull/14554>`_, "Yan, Zheng") -* mds: fix use-after-free in Locker::file_update_finish() (`issue#19828 <http://tracker.ceph.com/issues/19828>`_, `pr#14991 <https://github.com/ceph/ceph/pull/14991>`_, "Yan, Zheng") -* mds: ignore ENOENT on writing backtrace (`issue#19401 <http://tracker.ceph.com/issues/19401>`_, `pr#14207 <https://github.com/ceph/ceph/pull/14207>`_, John Spray) -* mds: ignore fs full check for CEPH_MDS_OP_SETFILELOCK (`issue#18953 <http://tracker.ceph.com/issues/18953>`_, `pr#13455 <https://github.com/ceph/ceph/pull/13455>`_, "Yan, Zheng") -* mds: improvements for stray reintegration (`pr#15548 <https://github.com/ceph/ceph/pull/15548>`_, "Yan, Zheng") -* mds: include advisory `path` field in damage (`issue#18509 <http://tracker.ceph.com/issues/18509>`_, `pr#14104 <https://github.com/ceph/ceph/pull/14104>`_, John Spray) -* mds: issue new caps when sending reply to client (`issue#19635 <http://tracker.ceph.com/issues/19635>`_, `pr#14743 <https://github.com/ceph/ceph/pull/14743>`_, "Yan, Zheng") -* mds: limit client writable range increment (`issue#19955 <http://tracker.ceph.com/issues/19955>`_, `pr#15131 <https://github.com/ceph/ceph/pull/15131>`_, "Yan, Zheng") -* mds: make C_MDSInternalNoop::complete() delete 'this' (`issue#19501 <http://tracker.ceph.com/issues/19501>`_, `pr#14347 <https://github.com/ceph/ceph/pull/14347>`_, "Yan, Zheng") -* mds: mds perf item 'l_mdl_expos' always behind journaler (`pr#15621 <https://github.com/ceph/ceph/pull/15621>`_, redickwang) -* mds: miscellaneous fixes (`issue#18646 <http://tracker.ceph.com/issues/18646>`_, `pr#12974 <https://github.com/ceph/ceph/pull/12974>`_, Yan, Zheng, "Yan, Zheng") -* mds: miscellaneous multimds fixes (`issue#19022 <http://tracker.ceph.com/issues/19022>`_, `pr#13698 <https://github.com/ceph/ceph/pull/13698>`_, "Yan, Zheng") -* mds: miscellaneous multimds fixes part2 (`pr#15125 <https://github.com/ceph/ceph/pull/15125>`_, "Yan, Zheng") -* mds: miscellaneous multimds fixes (`pr#14550 <https://github.com/ceph/ceph/pull/14550>`_, "Yan, Zheng") -* mds: misc multimds fixes (`issue#18717 <http://tracker.ceph.com/issues/18717>`_, `issue#18754 <http://tracker.ceph.com/issues/18754>`_, `pr#13227 <https://github.com/ceph/ceph/pull/13227>`_, "Yan, Zheng") -* mds: misc multimds fixes part2 (`pr#12794 <https://github.com/ceph/ceph/pull/12794>`_, Yan, Zheng) -* mds: misc multimds fixes (`pr#12274 <https://github.com/ceph/ceph/pull/12274>`_, Yan, Zheng) -* mds,mon: Clean issues detected by cppcheck (`pr#13199 <https://github.com/ceph/ceph/pull/13199>`_, Ilya Shipitsin) -* mds: multimds flock fixes (`pr#15440 <https://github.com/ceph/ceph/pull/15440>`_, "Yan, Zheng") -* mds: Pass empty string to clear mantle balancer (`issue#20076 <http://tracker.ceph.com/issues/20076>`_, `pr#15282 <https://github.com/ceph/ceph/pull/15282>`_, Zhi Zhang) -* mds: pretty json from `tell` commands (`pr#14105 <https://github.com/ceph/ceph/pull/14105>`_, John Spray) -* mds: print rank as int (`issue#19201 <http://tracker.ceph.com/issues/19201>`_, `pr#13816 <https://github.com/ceph/ceph/pull/13816>`_, Patrick Donnelly) -* mds: propagate error encountered during opening inode by number (`issue#18179 <http://tracker.ceph.com/issues/18179>`_, `pr#12749 <https://github.com/ceph/ceph/pull/12749>`_, Yan, Zheng) -* mds: properly create aux subtrees for pinned directory (`issue#20083 <http://tracker.ceph.com/issues/20083>`_, `pr#15300 <https://github.com/ceph/ceph/pull/15300>`_, "Yan, Zheng") -* mds: relocate PTRWAITER put near get (`pr#14921 <https://github.com/ceph/ceph/pull/14921>`_, Patrick Donnelly) -* mds: remove boost::pool usage and use tcmalloc directly (`issue#18425 <http://tracker.ceph.com/issues/18425>`_, `pr#12792 <https://github.com/ceph/ceph/pull/12792>`_, Zhi Zhang) -* mds: remove legacy "mds tell" command (`issue#19288 <http://tracker.ceph.com/issues/19288>`_, `pr#14015 <https://github.com/ceph/ceph/pull/14015>`_, John Spray) -* mds: remove "mds log" config option (`issue#18816 <http://tracker.ceph.com/issues/18816>`_, `pr#14652 <https://github.com/ceph/ceph/pull/14652>`_, John Spray) -* mds: remove some redundant object counters (`pr#13704 <https://github.com/ceph/ceph/pull/13704>`_, Patrick Donnelly) -* mds: replace C_VoidFn in MDSDaemon with lambdas (`pr#13465 <https://github.com/ceph/ceph/pull/13465>`_, John Spray) -* mds: Return error message instead of asserting (`pr#14469 <https://github.com/ceph/ceph/pull/14469>`_, Brad Hubbard) -* mds: save projected path into inode_t::stray_prior_path (`issue#20340 <http://tracker.ceph.com/issues/20340>`_, `pr#15800 <https://github.com/ceph/ceph/pull/15800>`_, "Yan, Zheng") -* mds: set ceph-mds name uncond for external tools (`issue#19291 <http://tracker.ceph.com/issues/19291>`_, `pr#14021 <https://github.com/ceph/ceph/pull/14021>`_, Patrick Donnelly) -* mds: shut down finisher before objecter (`issue#19204 <http://tracker.ceph.com/issues/19204>`_, `pr#13859 <https://github.com/ceph/ceph/pull/13859>`_, John Spray) -* mds: skip fragment space check for replayed request (`issue#18660 <http://tracker.ceph.com/issues/18660>`_, `pr#13095 <https://github.com/ceph/ceph/pull/13095>`_, "Yan, Zheng") -* mds: support export pinning on directories (`issue#17834 <http://tracker.ceph.com/issues/17834>`_, `pr#14598 <https://github.com/ceph/ceph/pull/14598>`_, "Yan, Zheng", Patrick Donnelly) -* mds: try to avoid false positive heartbeat timeouts (`issue#19118 <http://tracker.ceph.com/issues/19118>`_, `pr#13807 <https://github.com/ceph/ceph/pull/13807>`_, John Spray) -* mds: use debug_mds for most subsys (`issue#19734 <http://tracker.ceph.com/issues/19734>`_, `pr#15052 <https://github.com/ceph/ceph/pull/15052>`_, Patrick Donnelly) -* mds: use same inode count in health check as in trim (`issue#19395 <http://tracker.ceph.com/issues/19395>`_, `pr#14197 <https://github.com/ceph/ceph/pull/14197>`_, John Spray) -* mds: warn if insufficient standbys exist (`issue#17604 <http://tracker.ceph.com/issues/17604>`_, `pr#12074 <https://github.com/ceph/ceph/pull/12074>`_, Patrick Donnelly) -* mgr: add a get_version to the python interface (`pr#13669 <https://github.com/ceph/ceph/pull/13669>`_, John Spray) -* mgr: add machinery for python modules to send MCommands to daemons (`pr#14920 <https://github.com/ceph/ceph/pull/14920>`_, John Spray) -* mgr: add mgr allow \* to client.admin (`pr#14864 <https://github.com/ceph/ceph/pull/14864>`_, huanwen ren) -* mgr: add override in headers (`pr#13772 <https://github.com/ceph/ceph/pull/13772>`_, liuchang0812) -* mgr: add override in mgr subsystem (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13436 <https://github.com/ceph/ceph/pull/13436>`_, liuchang0812) -* mgr: add per-DaemonState lock (`pr#16432 <https://github.com/ceph/ceph/pull/16432>`_, Sage Weil) -* mgr: always free allocated MgrPyModule (`issue#19590 <http://tracker.ceph.com/issues/19590>`_, `pr#14507 <https://github.com/ceph/ceph/pull/14507>`_, Kefu Chai) -* mgr: ceph-create-keys: update client.admin if it already exists (`issue#19940 <http://tracker.ceph.com/issues/19940>`_, `pr#15112 <https://github.com/ceph/ceph/pull/15112>`_, John Spray) -* mgr: ceph: introduce "tell x help" subcommand (`issue#19885 <http://tracker.ceph.com/issues/19885>`_, `pr#15111 <https://github.com/ceph/ceph/pull/15111>`_, liuchang0812) -* mgr: ceph-mgr: Implement new pecan-based rest api (`pr#14457 <https://github.com/ceph/ceph/pull/14457>`_, Boris Ranto) -* mgr: ceph-mgr: rotate logs on sighup (`issue#19568 <http://tracker.ceph.com/issues/19568>`_, `pr#14437 <https://github.com/ceph/ceph/pull/14437>`_, Dan van der Ster) -* mgr: clean up daemon start process (`issue#20383 <http://tracker.ceph.com/issues/20383>`_, `pr#16020 <https://github.com/ceph/ceph/pull/16020>`_, John Spray) -* mgr: clean up fsstatus module (`pr#15925 <https://github.com/ceph/ceph/pull/15925>`_, John Spray) -* mgr: cleanup, stop clients sending in perf counters (`pr#15578 <https://github.com/ceph/ceph/pull/15578>`_, John Spray) -* mgr: cluster log message on plugin load error (`pr#15927 <https://github.com/ceph/ceph/pull/15927>`_, John Spray) -* mgr: dashboard code cleanup (`pr#15577 <https://github.com/ceph/ceph/pull/15577>`_, John Spray) -* mgr: dashboard GUI module (`pr#14946 <https://github.com/ceph/ceph/pull/14946>`_, John Spray, Dan Mick) -* mgr: dashboard improvements (`pr#16043 <https://github.com/ceph/ceph/pull/16043>`_, John Spray) -* mgr: do shutdown using finisher so we can do it in the right order (`issue#19743 <http://tracker.ceph.com/issues/19743>`_, `pr#14835 <https://github.com/ceph/ceph/pull/14835>`_, Kefu Chai) -* mgr: do the shutdown in the right order (`issue#19813 <http://tracker.ceph.com/issues/19813>`_, `pr#14952 <https://github.com/ceph/ceph/pull/14952>`_, Kefu Chai) -* mgr: drop repeated log info. and unnecessary write permission (`pr#15896 <https://github.com/ceph/ceph/pull/15896>`_, Yan Jun) -* mgr: enable ceph_send_command() to send pg command (`pr#15865 <https://github.com/ceph/ceph/pull/15865>`_, Kefu Chai) -* mgr: fix bugs in init, beacons (`issue#19516 <http://tracker.ceph.com/issues/19516>`_, `issue#19502 <http://tracker.ceph.com/issues/19502>`_, `pr#14374 <https://github.com/ceph/ceph/pull/14374>`_, Sage Weil) -* mgr: fix crash on missing 'ceph_version' in daemon metadata (fixes #18764) (`issue#18764 <http://tracker.ceph.com/issues/18764>`_, `pr#14129 <https://github.com/ceph/ceph/pull/14129>`_, Tim Serong) -* mgr: fix crash on set_config from python module with insufficient caps (`issue#19629 <http://tracker.ceph.com/issues/19629>`_, `pr#14706 <https://github.com/ceph/ceph/pull/14706>`_, Tim Serong) -* mgr: fix lock cycle (`pr#16508 <https://github.com/ceph/ceph/pull/16508>`_, Sage Weil) -* mgr: fix metadata handling from old MDS daemons (`pr#14161 <https://github.com/ceph/ceph/pull/14161>`_, John Spray) -* mgr: fix MgrStandby eating messages (`pr#15716 <https://github.com/ceph/ceph/pull/15716>`_, John Spray) -* mgr: fix python module teardown & add tests (`issue#19407 <http://tracker.ceph.com/issues/19407>`_, `issue#19412 <http://tracker.ceph.com/issues/19412>`_, `issue#19258 <http://tracker.ceph.com/issues/19258>`_, `pr#14232 <https://github.com/ceph/ceph/pull/14232>`_, John Spray) -* mgr: fix session leak (`issue#19591 <http://tracker.ceph.com/issues/19591>`_, `pr#14720 <https://github.com/ceph/ceph/pull/14720>`_, Sage Weil) -* mgr: fix several init/re-init bugs (`issue#19491 <http://tracker.ceph.com/issues/19491>`_, `pr#14328 <https://github.com/ceph/ceph/pull/14328>`_, Sage Weil) -* mgr: handle "module.set_config(.., None)" correctly (`pr#16749 <https://github.com/ceph/ceph/pull/16749>`_, Kefu Chai) -* mgr: increase debug level for ticks 0 -> 10 (`pr#16301 <https://github.com/ceph/ceph/pull/16301>`_, Dan Mick) -* mgr: load modules in separate python sub-interpreters (`pr#14971 <https://github.com/ceph/ceph/pull/14971>`_, Tim Serong) -* mgr: luminous: mgr: add missing call to pick_addresses (`issue#20955 <http://tracker.ceph.com/issues/20955>`_, `issue#21049 <http://tracker.ceph.com/issues/21049>`_, `pr#17173 <https://github.com/ceph/ceph/pull/17173>`_, John Spray) -* mgr: Make stats period configurable (`issue#17449 <http://tracker.ceph.com/issues/17449>`_, `pr#12732 <https://github.com/ceph/ceph/pull/12732>`_, liuchang0812) -* mgr: Mark session connections down on shutdown (`issue#19900 <http://tracker.ceph.com/issues/19900>`_, `pr#15192 <https://github.com/ceph/ceph/pull/15192>`_, Brad Hubbard) -* mgr: mgr/ClusterState: do not mangle PGMap outside of Incremental (`issue#20208 <http://tracker.ceph.com/issues/20208>`_, `pr#16262 <https://github.com/ceph/ceph/pull/16262>`_, Sage Weil) -* mgr: mgr/DaemonServer.cc: log daemon type string as well as id (`pr#15560 <https://github.com/ceph/ceph/pull/15560>`_, Dan Mick) -* mgr: mgr/dashboard: add OSD list view (`pr#16373 <https://github.com/ceph/ceph/pull/16373>`_, John Spray) -* mgr: mgr/dashboard: fix type error in get_rate function (`issue#20276 <http://tracker.ceph.com/issues/20276>`_, `pr#15668 <https://github.com/ceph/ceph/pull/15668>`_, liuchang0812) -* mgr: mgr/dashboard: load log lines on startup, split out audit log (`pr#15709 <https://github.com/ceph/ceph/pull/15709>`_, John Spray) -* mgr: mgr/MgrClient: fix reconnect event leak (`issue#19580 <http://tracker.ceph.com/issues/19580>`_, `pr#14431 <https://github.com/ceph/ceph/pull/14431>`_, Sage Weil) -* mgr: mgr/MgrStandby: prevent use-after-free on just-shut-down Mgr (`issue#19595 <http://tracker.ceph.com/issues/19595>`_, `pr#15297 <https://github.com/ceph/ceph/pull/15297>`_, Sage Weil) -* mgr: mgr/MgrStandby: respawn when deactivated (`issue#19595 <http://tracker.ceph.com/issues/19595>`_, `issue#19549 <http://tracker.ceph.com/issues/19549>`_, `pr#15557 <https://github.com/ceph/ceph/pull/15557>`_, Sage Weil) -* mgr: mgr_module interface to report health alerts (`pr#16487 <https://github.com/ceph/ceph/pull/16487>`_, Sage Weil) -* mgr: mgr,osd: ceph-mgr --help, unify usage text of other daemons (`pr#15176 <https://github.com/ceph/ceph/pull/15176>`_, Tim Serong) -* mgr: mgr/PyState: shut up about get_config on nonexistent keys (`pr#16641 <https://github.com/ceph/ceph/pull/16641>`_, Sage Weil) -* mgr: mgr/status: row has incorrect number of values (`issue#20750 <http://tracker.ceph.com/issues/20750>`_, `pr#16529 <https://github.com/ceph/ceph/pull/16529>`_, liuchang0812) -* mgr: Misc. bug fixes (`issue#18994 <http://tracker.ceph.com/issues/18994>`_, `pr#14883 <https://github.com/ceph/ceph/pull/14883>`_, John Spray) -* mgr: mkdir bootstrap-mgr (`pr#14824 <https://github.com/ceph/ceph/pull/14824>`_, huanwen ren) -* mgr: mon/mgr: add detail error infomation (`pr#16048 <https://github.com/ceph/ceph/pull/16048>`_, Yan Jun) -* mgr,mon: mgr,mon: debug init and mgrdigest subscriptions (`issue#20633 <http://tracker.ceph.com/issues/20633>`_, `pr#16351 <https://github.com/ceph/ceph/pull/16351>`_, Sage Weil) -* mgr: mon/MgrMonitor: fix standby addition to mgrmap (`issue#20647 <http://tracker.ceph.com/issues/20647>`_, `pr#16397 <https://github.com/ceph/ceph/pull/16397>`_, Sage Weil) -* mgr,mon: mon/AuthMonitor: generate bootstrap-mgr key on upgrade (`issue#20666 <http://tracker.ceph.com/issues/20666>`_, `pr#16395 <https://github.com/ceph/ceph/pull/16395>`_, Joao Eduardo Luis) -* mgr,mon: mon,mgr: extricate PGmap from monitor (`issue#20067 <http://tracker.ceph.com/issues/20067>`_, `issue#20174 <http://tracker.ceph.com/issues/20174>`_, `issue#20050 <http://tracker.ceph.com/issues/20050>`_, `pr#15073 <https://github.com/ceph/ceph/pull/15073>`_, Kefu Chai, Sage Weil, Greg Farnum) -* mgr,mon: mon/MgrMonitor: add 'mgr dump [epoch]' command (`pr#15158 <https://github.com/ceph/ceph/pull/15158>`_, Sage Weil) -* mgr,mon: mon/MgrMonitor: only propose if we updated (`pr#14645 <https://github.com/ceph/ceph/pull/14645>`_, Sage Weil) -* mgr,mon: mon/MgrMonitor: reset mgrdigest timer with new subscription (`issue#20633 <http://tracker.ceph.com/issues/20633>`_, `pr#16582 <https://github.com/ceph/ceph/pull/16582>`_, Sage Weil) -* mgr,mon: mon,mgr: move reweight-by-\* to mgr (`pr#14404 <https://github.com/ceph/ceph/pull/14404>`_, Kefu Chai) -* mgr,mon: mon,mgr: print pgmap reports to debug (not cluster) log (`pr#15740 <https://github.com/ceph/ceph/pull/15740>`_, Sage Weil) -* mgr,mon: mon,mgr: trim osdmap without the help of pgmap (`pr#14504 <https://github.com/ceph/ceph/pull/14504>`_, Kefu Chai) -* mgr: move 'osd perf' and 'osd blocked-by' to mgr (`pr#14303 <https://github.com/ceph/ceph/pull/14303>`_, Sage Weil) -* mgr: move "osd pool stats" to mgr (`pr#14365 <https://github.com/ceph/ceph/pull/14365>`_, Kefu Chai) -* mgr: optimization some judgment and adjust the debug remove value in register_new_pgs (`pr#14046 <https://github.com/ceph/ceph/pull/14046>`_, song baisen) -* mgr: optimize DaemonStateIndex::cull() a little bit (`pr#14967 <https://github.com/ceph/ceph/pull/14967>`_, Kefu Chai) -* mgr: pass through cluster log to plugins (`pr#13690 <https://github.com/ceph/ceph/pull/13690>`_, John Spray) -* mgr: perf schema fns/change notification and Prometheus plugin (`pr#16406 <https://github.com/ceph/ceph/pull/16406>`_, Dan Mick) -* mgr: print a more helpful error message for when users lack mgr ceph caps (`issue#20296 <http://tracker.ceph.com/issues/20296>`_, `pr#15697 <https://github.com/ceph/ceph/pull/15697>`_, Greg Farnum) -* mgr,pybind: luminous: mgr/dashboard: fix duplicate images listed on iSCSI status page (`issue#21017 <http://tracker.ceph.com/issues/21017>`_, `pr#17282 <https://github.com/ceph/ceph/pull/17282>`_, Jason Dillaman) -* mgr: pybind/mgr/dashboard: bind to :: by default (`pr#16223 <https://github.com/ceph/ceph/pull/16223>`_, Sage Weil) -* mgr: pybind/mgr/dashboard: monkeypatch os.exit to stop cherrypy from taking down mgr (`issue#20216 <http://tracker.ceph.com/issues/20216>`_, `pr#15588 <https://github.com/ceph/ceph/pull/15588>`_, Sage Weil) -* mgr: pybind/mgr: Delete `rest` module (`pr#15429 <https://github.com/ceph/ceph/pull/15429>`_, John Spray) -* mgr: pybind/mgr/rest: completely terminate cherrypy in shutdown (`pr#14995 <https://github.com/ceph/ceph/pull/14995>`_, Tim Serong) -* mgr: pybind/mgr/rest: don't set timezone to Chicago (`pr#14184 <https://github.com/ceph/ceph/pull/14184>`_, Tim Serong) -* mgr: pybind/mgr/restful: improve cert handling; work with vstart (`pr#15405 <https://github.com/ceph/ceph/pull/15405>`_, Sage Weil) -* mgr: pybind/mgr/zabbix: fix health in non-compat mode (`issue#20767 <http://tracker.ceph.com/issues/20767>`_, `pr#16580 <https://github.com/ceph/ceph/pull/16580>`_, Sage Weil) -* mgr,pybind,rbd: mgr/dashboard: show rbd image features (`pr#16468 <https://github.com/ceph/ceph/pull/16468>`_, Yanhu Cao) -* mgr: raise python exception on failure in send_command() (`pr#15704 <https://github.com/ceph/ceph/pull/15704>`_, Kefu Chai) -* mgr,rbd: mgr/dashboard: RBD iSCSI daemon status page (`pr#16547 <https://github.com/ceph/ceph/pull/16547>`_, Jason Dillaman) -* mgr,rbd: mgr/dashboard: rbd mirroring status page (`pr#16360 <https://github.com/ceph/ceph/pull/16360>`_, Jason Dillaman) -* mgr,rbd: pybind/mgr/dashboard: initial block integration (`pr#15521 <https://github.com/ceph/ceph/pull/15521>`_, Jason Dillaman) -* mgr: redirect python stdout,stderr to ceph log (`pr#14189 <https://github.com/ceph/ceph/pull/14189>`_, Kefu Chai, Tim Serong, Dan Mick) -* mgr: release allocated PyString (`pr#14716 <https://github.com/ceph/ceph/pull/14716>`_, Kefu Chai) -* mgr: remove default cert; disable both restful and dashboard by default (`pr#15601 <https://github.com/ceph/ceph/pull/15601>`_, Boris Ranto, Sage Weil) -* mgr: remove non-existent MDS daemons from FSMap (`issue#17453 <http://tracker.ceph.com/issues/17453>`_, `pr#14937 <https://github.com/ceph/ceph/pull/14937>`_, Spandan Kumar Sahu) -* mgr: remove unused function declarations (`pr#14366 <https://github.com/ceph/ceph/pull/14366>`_, Wei Jin) -* mgr: rm nonused main function (`pr#14313 <https://github.com/ceph/ceph/pull/14313>`_, Wei Jin) -* mgr: shutdown py_modules in Mgr::shutdown() (`issue#19258 <http://tracker.ceph.com/issues/19258>`_, `pr#14078 <https://github.com/ceph/ceph/pull/14078>`_, Kefu Chai) -* mgr,tests: qa/suites: move mgr tests into rados suite (`pr#14687 <https://github.com/ceph/ceph/pull/14687>`_, John Spray) -* mgr,tests: qa/upgrade/jewel-x/point-to-point: add a mgr during final upgrade (`pr#15637 <https://github.com/ceph/ceph/pull/15637>`_, Sage Weil) -* mgr: use unique_ptr for MgrStandby::active_mgr (`pr#13667 <https://github.com/ceph/ceph/pull/13667>`_, John Spray) -* mgr: various cleanups (`pr#14802 <https://github.com/ceph/ceph/pull/14802>`_, Kefu Chai) -* mgr: vstart.sh: fix mgr vs restful command startup race (`pr#16564 <https://github.com/ceph/ceph/pull/16564>`_, Sage Weil) -* mgr: Zabbix monitoring module (`pr#16019 <https://github.com/ceph/ceph/pull/16019>`_, Wido den Hollander) -* misc: fix code typos in header files (`pr#12716 <https://github.com/ceph/ceph/pull/12716>`_, Xianxia Xiao) -* misc: kill clang warnings (`pr#14549 <https://github.com/ceph/ceph/pull/14549>`_, Kefu Chai) -* misc: Warning Elimination (`pr#14439 <https://github.com/ceph/ceph/pull/14439>`_, Adam C. Emerson) -* mon: add crush type down health warnings (`pr#14914 <https://github.com/ceph/ceph/pull/14914>`_, Neha Ojha) -* mon: added bootstrap-rbd auth profile (`pr#16633 <https://github.com/ceph/ceph/pull/16633>`_, Jason Dillaman) -* mon: add force-create-pg back (`issue#20605 <http://tracker.ceph.com/issues/20605>`_, `pr#16353 <https://github.com/ceph/ceph/pull/16353>`_, Kefu Chai) -* mon: add mgr metdata commands, and overall 'versions' command for all daemon versions (`pr#16460 <https://github.com/ceph/ceph/pull/16460>`_, Sage Weil) -* mon: add mon_debug_no_require_luminous (`pr#14490 <https://github.com/ceph/ceph/pull/14490>`_, Sage Weil) -* mon: Add override for FsNewHandler::handle() (`pr#15331 <https://github.com/ceph/ceph/pull/15331>`_, yonghengdexin735) -* mon: add override in headers (`pr#13693 <https://github.com/ceph/ceph/pull/13693>`_, liuchang0812) -* mon: add override in mon subsystem (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13440 <https://github.com/ceph/ceph/pull/13440>`_, liuchang0812) -* mon: add support public_bind_addr option (`pr#16189 <https://github.com/ceph/ceph/pull/16189>`_, Bassam Tabbara) -* mon: add warn info for osds were removed from osdmap but still kept in crushmap (`pr#12273 <https://github.com/ceph/ceph/pull/12273>`_, song baisen) -* mon: a few health fixes (`pr#16415 <https://github.com/ceph/ceph/pull/16415>`_, xie xingguo) -* mon: a few more upmap (and other) fixes (`pr#16239 <https://github.com/ceph/ceph/pull/16239>`_, xie xingguo) -* mon: avoid segfault in wait_auth_rotating (`issue#19566 <http://tracker.ceph.com/issues/19566>`_, `pr#14430 <https://github.com/ceph/ceph/pull/14430>`_, John Spray) -* mon: avoid start election twice when quorum enter (`pr#10150 <https://github.com/ceph/ceph/pull/10150>`_, song baisen) -* mon: check is_shutdown() in timer callbacks (`issue#19825 <http://tracker.ceph.com/issues/19825>`_, `pr#14919 <https://github.com/ceph/ceph/pull/14919>`_, Kefu Chai) -* mon: clean up in ceph_mon.cc (`pr#14102 <https://github.com/ceph/ceph/pull/14102>`_, huanwen ren) -* mon: clean up some osdmon/pgmon interactions (`pr#12403 <https://github.com/ceph/ceph/pull/12403>`_, Sage Weil) -* mon: cleanups (`pr#15272 <https://github.com/ceph/ceph/pull/15272>`_, Kefu Chai) -* mon: collect mon metdata as part of the election (`issue#20434 <http://tracker.ceph.com/issues/20434>`_, `pr#16148 <https://github.com/ceph/ceph/pull/16148>`_, Sage Weil) -* mon: common/config_opts.h: kill mon_pg_create_interval (`pr#13800 <https://github.com/ceph/ceph/pull/13800>`_, xie xingguo) -* mon: 'config-key put' -> 'config-key set' (`pr#16569 <https://github.com/ceph/ceph/pull/16569>`_, Sage Weil) -* mon: crush straw_calc_version value is 0 or 1 not 0 to 2 (`pr#13554 <https://github.com/ceph/ceph/pull/13554>`_, song baisen) -* mon: debug session feature tracking (`issue#20475 <http://tracker.ceph.com/issues/20475>`_, `pr#16128 <https://github.com/ceph/ceph/pull/16128>`_, Sage Weil) -* mon: delete unused config opts of mon_sync_fs_threshold (`pr#15676 <https://github.com/ceph/ceph/pull/15676>`_, linbing) -* mon: delete useless function definition (`pr#15188 <https://github.com/ceph/ceph/pull/15188>`_, shiqi) -* mon: detect existing fs and duplicate name earlier (`issue#18964 <http://tracker.ceph.com/issues/18964>`_, `pr#13471 <https://github.com/ceph/ceph/pull/13471>`_, Patrick Donnelly) -* mon: DIVIDE_BY_ZERO in PGMapDigest::dump_pool_stats_full() (`pr#15622 <https://github.com/ceph/ceph/pull/15622>`_, Jos Collin) -* mon: Division by zero in PGMapDigest::dump_pool_stats_full() (`pr#15901 <https://github.com/ceph/ceph/pull/15901>`_, Jos Collin) -* mon: do crushtool test with fork and timeout, but w/o exec of crushtool (`issue#19964 <http://tracker.ceph.com/issues/19964>`_, `pr#16025 <https://github.com/ceph/ceph/pull/16025>`_, Sage Weil) -* mon: do not dereference empty mgr_commands (`pr#16501 <https://github.com/ceph/ceph/pull/16501>`_, Sage Weil) -* mon: do not prime_pg_temp creating pgs; clean up pg create conditions (`issue#19826 <http://tracker.ceph.com/issues/19826>`_, `pr#14913 <https://github.com/ceph/ceph/pull/14913>`_, Sage Weil) -* mon: don't call propose_pending in prepare_update() (`issue#19738 <http://tracker.ceph.com/issues/19738>`_, `pr#14711 <https://github.com/ceph/ceph/pull/14711>`_, John Spray) -* mon: don't kill MDSs unless some beacons are getting through (`issue#19706 <http://tracker.ceph.com/issues/19706>`_, `pr#15308 <https://github.com/ceph/ceph/pull/15308>`_, John Spray) -* mon: don't prefix mgr summary with epoch number (`pr#15512 <https://github.com/ceph/ceph/pull/15512>`_, John Spray) -* mon: don't set last_osd_report when the pg stats msg is ignored (`pr#12975 <https://github.com/ceph/ceph/pull/12975>`_, Zhiqiang Wang) -* mon: drop useless assignment statements (`pr#13958 <https://github.com/ceph/ceph/pull/13958>`_, wangzhengyong) -* mon: emit cluster log messages on MDS health changes (`issue#19551 <http://tracker.ceph.com/issues/19551>`_, `pr#14398 <https://github.com/ceph/ceph/pull/14398>`_, John Spray) -* mon: enable luminous monmap feature on full quorum (`pr#13379 <https://github.com/ceph/ceph/pull/13379>`_, Joao Eduardo Luis) -* mon: extensible output format for health checks (`pr#16701 <https://github.com/ceph/ceph/pull/16701>`_, John Spray) -* mon: Filter `log last` output by severity and channel (`pr#15924 <https://github.com/ceph/ceph/pull/15924>`_, John Spray) -* mon: fix accesing pending_fsmap from peon (`issue#20040 <http://tracker.ceph.com/issues/20040>`_, `pr#15213 <https://github.com/ceph/ceph/pull/15213>`_, John Spray) -* mon: fix a few bugs with the osd health reporting (`pr#15179 <https://github.com/ceph/ceph/pull/15179>`_, Sage Weil) -* mon: fix a few nits (`pr#12670 <https://github.com/ceph/ceph/pull/12670>`_, Sage Weil) -* mon: Fix deep_age copy paste error (`pr#16434 <https://github.com/ceph/ceph/pull/16434>`_, Brad Hubbard) -* mon: Fixed typo in function comment blocks and in other comments (`pr#15304 <https://github.com/ceph/ceph/pull/15304>`_, linbing) -* mon: Fixed typo in @post of _active() (`pr#15191 <https://github.com/ceph/ceph/pull/15191>`_, Linbing) -* mon: fix force_pg_create pg stuck in creating bug (`issue#18298 <http://tracker.ceph.com/issues/18298>`_, `pr#12539 <https://github.com/ceph/ceph/pull/12539>`_, Sage Weil) -* mon: fix hang on deprecated/removed 'pg set_full_ratio' commands (`issue#20600 <http://tracker.ceph.com/issues/20600>`_, `pr#16300 <https://github.com/ceph/ceph/pull/16300>`_, Sage Weil) -* mon: fix hiding mdsmonitor informative strings (`issue#16709 <http://tracker.ceph.com/issues/16709>`_, `pr#13904 <https://github.com/ceph/ceph/pull/13904>`_, John Spray) -* mon: fix kvstore type in mon compact command (`pr#15954 <https://github.com/ceph/ceph/pull/15954>`_, liuchang0812) -* mon: fix legacy health checks in 'ceph status' during upgrade; fix jewel-x upgrade combo (`pr#17176 <https://github.com/ceph/ceph/pull/17176>`_, Sage Weil) -* mon: fix mon_keyvaluedb application (`pr#15059 <https://github.com/ceph/ceph/pull/15059>`_, Sage Weil) -* mon: Fix output text and doc (`pr#16367 <https://github.com/ceph/ceph/pull/16367>`_, Yan Jun) -* mon: fix prime_pg_temp overrun (`issue#19874 <http://tracker.ceph.com/issues/19874>`_, `pr#14979 <https://github.com/ceph/ceph/pull/14979>`_, Sage Weil) -* mon: Fix status output warning for mon_warn_osd_usage_min_max_delta (`issue#20544 <http://tracker.ceph.com/issues/20544>`_, `pr#16220 <https://github.com/ceph/ceph/pull/16220>`_, David Zafman) -* mon: fix synchronise pgmap with others (`pr#14418 <https://github.com/ceph/ceph/pull/14418>`_, song baisen, z09440) -* mon: fix wrongly delete routed pgstats op (`issue#18458 <http://tracker.ceph.com/issues/18458>`_, `pr#12784 <https://github.com/ceph/ceph/pull/12784>`_, Mingxin Liu) -* mon: fix wrong mon-num counting logic of 'ceph features' command (`pr#17172 <https://github.com/ceph/ceph/pull/17172>`_, xie xingguo) -* mon: handle cases where store->get() may return error (`issue#19601 <http://tracker.ceph.com/issues/19601>`_, `pr#14678 <https://github.com/ceph/ceph/pull/14678>`_, Jos Collin) -* mon: include device class in tree view; hide shadow hierarchy (`pr#16016 <https://github.com/ceph/ceph/pull/16016>`_, Sage Weil) -* mon: Incorrect expression in PGMap::get_health() (`pr#15648 <https://github.com/ceph/ceph/pull/15648>`_, Jos Collin) -* mon: in output of "ceph osd df tree", display "-", not "0", for pg amount of a bucket (`pr#13015 <https://github.com/ceph/ceph/pull/13015>`_, Chuanhong Hong) -* mon: it's no need to get pg action_primary osd twice in pg scrub (`pr#15313 <https://github.com/ceph/ceph/pull/15313>`_, linbing) -* mon: '\* list' -> '\* ls' (`pr#16423 <https://github.com/ceph/ceph/pull/16423>`_, Sage Weil) -* mon: load mgr commands at runtime (`pr#16028 <https://github.com/ceph/ceph/pull/16028>`_, John Spray, Sage Weil) -* mon: logclient: use the seq id of the 1st log entry when resetting session (`issue#19427 <http://tracker.ceph.com/issues/19427>`_, `pr#14927 <https://github.com/ceph/ceph/pull/14927>`_, Kefu Chai) -* mon: Log errors at startup (`issue#14088 <http://tracker.ceph.com/issues/14088>`_, `pr#15723 <https://github.com/ceph/ceph/pull/15723>`_, Brad Hubbard) -* mon: luminous: mon/MonCommands: fix copy-and-paste error (`pr#17274 <https://github.com/ceph/ceph/pull/17274>`_, xie xingguo) -* mon: maintain the "cluster" PerfCounters when using ceph-mgr (`issue#20562 <http://tracker.ceph.com/issues/20562>`_, `pr#16249 <https://github.com/ceph/ceph/pull/16249>`_, Greg Farnum) -* mon: mark `osd create` as deprecated (`pr#15641 <https://github.com/ceph/ceph/pull/15641>`_, Joao Eduardo Luis) -* mon: mon,crush: create crush rules using device classes for replicated and ec pools via cli (`pr#16027 <https://github.com/ceph/ceph/pull/16027>`_, Sage Weil) -* mon: mon/HealthMonitor: avoid sending unnecessary MMonHealthChecks to leader (`pr#16478 <https://github.com/ceph/ceph/pull/16478>`_, xie xingguo) -* mon: mon/HealthMonitor: trigger a proposal if stat updated (`pr#16477 <https://github.com/ceph/ceph/pull/16477>`_, Kefu Chai) -* mon: mon/LogMonitor: don't read list's end() for log last (`pr#16376 <https://github.com/ceph/ceph/pull/16376>`_, Joao Eduardo Luis) -* mon: mon/MDSMonitor: close object section of formatter (`pr#16516 <https://github.com/ceph/ceph/pull/16516>`_, Chang Liu) -* mon: mon/MDSMonitor: remove create_new_fs from header (`pr#14019 <https://github.com/ceph/ceph/pull/14019>`_, Henrik Korkuc) -* mon: mon/MgrMonitor: only induce mgr epoch shortly after mkfs (`pr#16356 <https://github.com/ceph/ceph/pull/16356>`_, Sage Weil) -* mon: mon/MgrMonitor: send digests only if is_active() (`pr#15109 <https://github.com/ceph/ceph/pull/15109>`_, Kefu Chai) -* mon: mon/MgrStatMonitor: do not crash on luminous dev version upgrades (`pr#16287 <https://github.com/ceph/ceph/pull/16287>`_, Sage Weil) -* mon: mon/MonClient: cancel pending commands on shutdown (`issue#20051 <http://tracker.ceph.com/issues/20051>`_, `pr#15227 <https://github.com/ceph/ceph/pull/15227>`_, Kefu Chai, Sage Weil) -* mon: mon/MonClient: make get_mon_log_message() atomic (`issue#19427 <http://tracker.ceph.com/issues/19427>`_, `pr#14422 <https://github.com/ceph/ceph/pull/14422>`_, Kefu Chai) -* mon: mon/MonClient: random all ranks then pick first_n (`pr#13479 <https://github.com/ceph/ceph/pull/13479>`_, Mingxin Liu) -* mon: mon/Monitor.h: add const to member function (`pr#10412 <https://github.com/ceph/ceph/pull/10412>`_, Michal Jarzabek) -* mon: mon/Monitor: recreate mon session if features changed (`issue#20433 <http://tracker.ceph.com/issues/20433>`_, `pr#16230 <https://github.com/ceph/ceph/pull/16230>`_, Joao Eduardo Luis) -* mon: {mon,osd,mds} {versions,count-metadata} (`pr#15436 <https://github.com/ceph/ceph/pull/15436>`_, Sage Weil) -* mon: mon/OSDMonitor: a couple of upmap and other fixes (`pr#15917 <https://github.com/ceph/ceph/pull/15917>`_, xie xingguo) -* mon: mon/OSDMonitor: check get()'s return value instead of bl's length (`pr#14805 <https://github.com/ceph/ceph/pull/14805>`_, Kefu Chai) -* mon: mon/OSDMonitor: check last_osd_report only when the whole cluster is lu… (`pr#14294 <https://github.com/ceph/ceph/pull/14294>`_, Kefu Chai) -* mon: mon/OSDMonitor: Clean up: delete extra S signature for plural (`pr#14174 <https://github.com/ceph/ceph/pull/14174>`_, Shinobu Kinjo) -* mon: mon/OSDMonitor: cleanup pending_created_pgs after done with it (`pr#14898 <https://github.com/ceph/ceph/pull/14898>`_, Kefu Chai) -* mon: mon/OSDMonitor: do not alter the "created" epoch of a pg (`issue#19787 <http://tracker.ceph.com/issues/19787>`_, `pr#14849 <https://github.com/ceph/ceph/pull/14849>`_, Kefu Chai) -* mon: mon/OSDMonitor: ensure UP is not set for newly-created OSDs (`issue#20751 <http://tracker.ceph.com/issues/20751>`_, `pr#16534 <https://github.com/ceph/ceph/pull/16534>`_, Sage Weil) -* mon: mon/OSDMonitor: fix dividing by zero in OSDUtilizationDumper (`pr#13531 <https://github.com/ceph/ceph/pull/13531>`_, Mingxin Liu) -* mon: mon/OSDMonitor: fix output func name in can_mark_out (`pr#14758 <https://github.com/ceph/ceph/pull/14758>`_, xie xingguo) -* mon: mon/OSDMonitor: fix process osd failure (`pr#12938 <https://github.com/ceph/ceph/pull/12938>`_, Mingxin Liu) -* mon: mon/OSDMonitor: guard 'osd crush set-device-class' (`pr#16217 <https://github.com/ceph/ceph/pull/16217>`_, Sage Weil) -* mon: mon/OSDMonitor: increase last_epoch_clean's lower bound if possible (`pr#14855 <https://github.com/ceph/ceph/pull/14855>`_, Kefu Chai) -* mon: mon/OSDMonitor: issue pool application related warning (`pr#16520 <https://github.com/ceph/ceph/pull/16520>`_, xie xingguo) -* mon: mon/OSDMonitor: "osd crush class rename" support (`pr#15875 <https://github.com/ceph/ceph/pull/15875>`_, xie xingguo) -* mon: mon/OSDMonitor: remove trivial PGMap dependency for 'osd primary-temp' command (`pr#13616 <https://github.com/ceph/ceph/pull/13616>`_, Sage Weil) -* mon: mon/OSDMonitor: remove zeroed new_state updates (`issue#20751 <http://tracker.ceph.com/issues/20751>`_, `pr#16518 <https://github.com/ceph/ceph/pull/16518>`_, Sage Weil) -* mon: mon/OSDMonitor: sanity check osd before performing 'osd purge' (`pr#16838 <https://github.com/ceph/ceph/pull/16838>`_, xie xingguo) -* mon: mon/OSDMonitor: some cleanup for reweight-by-pg (`pr#13462 <https://github.com/ceph/ceph/pull/13462>`_, Haodong Tang) -* mon: mon/OSDMonitor: spinlock -> std::mutex (`pr#14269 <https://github.com/ceph/ceph/pull/14269>`_, Sage Weil) -* mon: mon/OSDMonitor: tolerate upgrade from post-kraken dev cluster (`pr#14442 <https://github.com/ceph/ceph/pull/14442>`_, Sage Weil) -* mon: mon/OSDMonitor: transit creating_pgs from pgmap when upgrading (`issue#19584 <http://tracker.ceph.com/issues/19584>`_, `pr#14551 <https://github.com/ceph/ceph/pull/14551>`_, Kefu Chai) -* mon: mon/OSDMonitor: two pool opts related fix (`pr#15968 <https://github.com/ceph/ceph/pull/15968>`_, xie xingguo) -* mon: mon/OSDMonitor: update creating epoch if target osd changed (`issue#19515 <http://tracker.ceph.com/issues/19515>`_, `pr#14386 <https://github.com/ceph/ceph/pull/14386>`_, Kefu Chai) -* mon: mon/OSDMonitor: update creating_pgs using pending_creatings (`issue#19814 <http://tracker.ceph.com/issues/19814>`_, `pr#14897 <https://github.com/ceph/ceph/pull/14897>`_, Kefu Chai) -* mon: mon/OSDMonitor: update pg_creatings even the new acting set is empty (`issue#19744 <http://tracker.ceph.com/issues/19744>`_, `pr#14730 <https://github.com/ceph/ceph/pull/14730>`_, Kefu Chai) -* mon: mon/PaxosService: use `__func__` instead of hard code function name (`pr#15863 <https://github.com/ceph/ceph/pull/15863>`_, Yanhu Cao) -* mon: mon/PGMap: add up_primary pg number field for pg-dump cmd (`pr#13451 <https://github.com/ceph/ceph/pull/13451>`_, xie xingguo) -* mon: mon/PGMap.cc: fix "osd_epochs" section of dump_basic (`pr#14996 <https://github.com/ceph/ceph/pull/14996>`_, xie xingguo) -* mon: mon/PGMap: make si units more readable in PGMap summary (`pr#14185 <https://github.com/ceph/ceph/pull/14185>`_, liuhong) -* mon: mon/PGMap: remove skewed utilizatoin warning (`issue#20730 <http://tracker.ceph.com/issues/20730>`_, `pr#16461 <https://github.com/ceph/ceph/pull/16461>`_, Sage Weil) -* mon: mon/PGMap: show %used in formatted output (`issue#20123 <http://tracker.ceph.com/issues/20123>`_, `pr#15387 <https://github.com/ceph/ceph/pull/15387>`_, Joao Eduardo Luis) -* mon: mon/PGMonitor: clean up min/max span warning (`pr#14611 <https://github.com/ceph/ceph/pull/14611>`_, Sage Weil) -* mon: mon/PGMonitor: fix description for ceph pg ls (`pr#12807 <https://github.com/ceph/ceph/pull/12807>`_, runsisi) -* mon: mon/PGMonitor: rm nonused function (`pr#14033 <https://github.com/ceph/ceph/pull/14033>`_, Wei Jin) -* mon: move 'pg map' to OSDMonitor (`pr#14559 <https://github.com/ceph/ceph/pull/14559>`_, Sage Weil) -* mon: no delay for single message MSG_ALIVE and MSG_PGTEMP (`pr#12107 <https://github.com/ceph/ceph/pull/12107>`_, yaoning) -* mon: optracker's initiated_at timestamp should not be NULL (`pr#12826 <https://github.com/ceph/ceph/pull/12826>`_, Mingxin Liu) -* mon: osd crush set crushmap need sanity check (`issue#19302 <http://tracker.ceph.com/issues/19302>`_, `pr#14029 <https://github.com/ceph/ceph/pull/14029>`_, Loic Dachary) -* mon: OSDMonitor add check only concern our self cluster command (`pr#10309 <https://github.com/ceph/ceph/pull/10309>`_, song baisen) -* mon/OSDMonitor: add plain output for "crush class ls-osd" command (`pr#17230 <https://github.com/ceph/ceph/pull/17230>`_, xie xingguo) -* mon/OSDMonitor: check creating_pgs.last_scan_epoch instead when sending creates (`issue#20785 <http://tracker.ceph.com/issues/20785>`_, `pr#17257 <https://github.com/ceph/ceph/pull/17257>`_, Kefu Chai) -* mon: OSDMonitor: check mon_max_pool_pg_num when set pool pg_num (`pr#16511 <https://github.com/ceph/ceph/pull/16511>`_, chenhg) -* mon/OSDMonitor: do not send_pg_creates with stale info (`issue#20785 <http://tracker.ceph.com/issues/20785>`_, `pr#17191 <https://github.com/ceph/ceph/pull/17191>`_, Kefu Chai) -* mon/OSDMonitor: fix improper input/testing range of crush somke testing (`pr#17232 <https://github.com/ceph/ceph/pull/17232>`_, xie xingguo) -* mon: osd/PGMonitor: always update pgmap with latest osdmap (`issue#19398 <http://tracker.ceph.com/issues/19398>`_, `pr#14777 <https://github.com/ceph/ceph/pull/14777>`_, Kefu Chai) -* mon/pgmap: add objects prefix for unfound type (`issue#21127 <http://tracker.ceph.com/issues/21127>`_, `pr#17264 <https://github.com/ceph/ceph/pull/17264>`_, huanwen ren, Sage Weil) -* mon/PGMap: fix "0 stuck requests are blocked > 4096 sec" warn (`pr#17215 <https://github.com/ceph/ceph/pull/17215>`_, xie xingguo) -* mon: PGMonitor add check only concern our self cluster command (`pr#9976 <https://github.com/ceph/ceph/pull/9976>`_, song baisen) -* mon: post-jewel cleanups (`pr#13150 <https://github.com/ceph/ceph/pull/13150>`_, Kefu Chai) -* mon: prime pg_temp and a few health warning fixes (`pr#16530 <https://github.com/ceph/ceph/pull/16530>`_, xie xingguo) -* mon: refactor MDSMonitor command handling (`pr#13581 <https://github.com/ceph/ceph/pull/13581>`_, John Spray) -* mon: Removed unnecessary function declaration in MDSMonitor.h (`pr#15374 <https://github.com/ceph/ceph/pull/15374>`_, yonghengdexin735) -* mon: remove the redudant jugement in paxosservice is_writeable function (`pr#10240 <https://github.com/ceph/ceph/pull/10240>`_, song baisen) -* mon: remove unnecessary function declaration (`pr#13762 <https://github.com/ceph/ceph/pull/13762>`_, liuchang0812) -* mon: replace osds with `osd destroy` and `osd new` (`pr#14074 <https://github.com/ceph/ceph/pull/14074>`_, Joao Eduardo Luis, Sage Weil) -* mon: restructure prime_pg_temp around a full pg mapping calculated on multiple CPUs (`pr#13207 <https://github.com/ceph/ceph/pull/13207>`_, Sage Weil) -* mon: revamp health check/warning system (`pr#15643 <https://github.com/ceph/ceph/pull/15643>`_, John Spray, Sage Weil) -* mon: revise "ceph status" output (`pr#15396 <https://github.com/ceph/ceph/pull/15396>`_, John Spray) -* mon: show class in 'osd crush tree' output; sort output (`pr#16740 <https://github.com/ceph/ceph/pull/16740>`_, Sage Weil) -* mon: show destroyed status in tree view; do not auto-out destroyed osds (`pr#16446 <https://github.com/ceph/ceph/pull/16446>`_, xie xingguo) -* mon: show inactive % in ceph status (`pr#14810 <https://github.com/ceph/ceph/pull/14810>`_, Sage Weil) -* mon: show io status quickly if no update in a long period (`pr#14176 <https://github.com/ceph/ceph/pull/14176>`_, Mingxin Liu) -* mon: show the leader info on mon stat command (`pr#14178 <https://github.com/ceph/ceph/pull/14178>`_, song baisen) -* mon: skip crush smoke test when running under valgrind (`issue#20602 <http://tracker.ceph.com/issues/20602>`_, `pr#16346 <https://github.com/ceph/ceph/pull/16346>`_, Sage Weil) -* mon: smooth io/recovery stats over longer period (`pr#13249 <https://github.com/ceph/ceph/pull/13249>`_, Sage Weil) -* mon: stop issuing not-[deep]-scrubbed warnings if disabled (`pr#16465 <https://github.com/ceph/ceph/pull/16465>`_, xie xingguo) -* mon: support pool application metadata key/values (`pr#15763 <https://github.com/ceph/ceph/pull/15763>`_, Jason Dillaman) -* mon,tests: qa/suites: add test exercising workunits/mon/auth_caps.sh (`pr#15754 <https://github.com/ceph/ceph/pull/15754>`_, Kefu Chai) -* mon,tests: test: Initialize pointer msg in MonClientHelper (`pr#16784 <https://github.com/ceph/ceph/pull/16784>`_, amitkuma) -* mon: Tidy up removal of debug mon features (`pr#14467 <https://github.com/ceph/ceph/pull/14467>`_, Brad Hubbard) -* mon: track features from connect clients, and use it to gate set-require-min-compat-client (`pr#15371 <https://github.com/ceph/ceph/pull/15371>`_, Sage Weil) -* mon: trim the creating_pgs after updating it with pgmap (`issue#20067 <http://tracker.ceph.com/issues/20067>`_, `pr#15318 <https://github.com/ceph/ceph/pull/15318>`_, Kefu Chai) -* mon: update mgrmap when active goes offline (`issue#19407 <http://tracker.ceph.com/issues/19407>`_, `pr#14220 <https://github.com/ceph/ceph/pull/14220>`_, John Spray) -* mon: Update OSDMon.cc comments (`pr#13750 <https://github.com/ceph/ceph/pull/13750>`_, Saumay Agrawal) -* mon: warn about using osd new instead of osd create (`pr#17302 <https://github.com/ceph/ceph/pull/17302>`_, Neha Ojha) -* msg: allow different ms type for cluster network and public network (`pr#12023 <https://github.com/ceph/ceph/pull/12023>`_, Haomai Wang) -* msg: always set header.version in encode_payload() (`issue#19939 <http://tracker.ceph.com/issues/19939>`_, `pr#16421 <https://github.com/ceph/ceph/pull/16421>`_, Kefu Chai) -* msg: client bind (`pr#12901 <https://github.com/ceph/ceph/pull/12901>`_, Zengran Zhang, Haomai Wang) -* msg: do not enable client-side binding by default (`issue#20049 <http://tracker.ceph.com/issues/20049>`_, `pr#15392 <https://github.com/ceph/ceph/pull/15392>`_, Jason Dillaman) -* msg: don't set msgr addr when disabing client bind (`pr#15243 <https://github.com/ceph/ceph/pull/15243>`_, Haomai Wang) -* msg: end parameter in entity_addr_t::parse is optional (`pr#13650 <https://github.com/ceph/ceph/pull/13650>`_, Mykola Golub) -* msg: Fix calls to Messenger::create with new parameter (`pr#13329 <https://github.com/ceph/ceph/pull/13329>`_, Sarit Zubakov) -* msg: Increase loglevels on some messages (`pr#14707 <https://github.com/ceph/ceph/pull/14707>`_, Willem Jan Withagen) -* msg: Initialize member variables in Infiniband (`pr#16781 <https://github.com/ceph/ceph/pull/16781>`_, amitkuma) -* msg: Initializing uninitialized members MMonGetVersion (`pr#16811 <https://github.com/ceph/ceph/pull/16811>`_, amitkuma) -* msg: Initializing uninitialized members MMonGetVersionReply (`pr#16813 <https://github.com/ceph/ceph/pull/16813>`_, amitkuma) -* msg: Initializing uninitialized members MMonPaxos (`pr#16814 <https://github.com/ceph/ceph/pull/16814>`_, amitkuma) -* msg: Initializing uninitialized members MMonProbe (`pr#16815 <https://github.com/ceph/ceph/pull/16815>`_, amitkuma) -* msg: Initializing uninitialized members module messages (`pr#16817 <https://github.com/ceph/ceph/pull/16817>`_, amitkuma) -* msg: Initializing uninitialized members MOSDAlive (`pr#16816 <https://github.com/ceph/ceph/pull/16816>`_, amitkuma) -* msg: make listen backlog an option, increase from 128 to 512 (`issue#20330 <http://tracker.ceph.com/issues/20330>`_, `pr#15743 <https://github.com/ceph/ceph/pull/15743>`_, Haomai Wang) -* msg: messages: coverity fixes (`pr#13473 <https://github.com/ceph/ceph/pull/13473>`_, Kefu Chai) -* msg: msg/async: avoid atomic variable overhead (`pr#12809 <https://github.com/ceph/ceph/pull/12809>`_, Wei Jin) -* msg: msg/async: cleanup code (`pr#13304 <https://github.com/ceph/ceph/pull/13304>`_, Jianpeng Ma) -* msg: msg/async: cleanups (`pr#12832 <https://github.com/ceph/ceph/pull/12832>`_, Wei Jin) -* msg: msg/async: fix file description leak in NetHandler (`pr#13271 <https://github.com/ceph/ceph/pull/13271>`_, liuchang0812) -* msg: msg/async: increase worker reference with local listen table enabled backend (`issue#20390 <http://tracker.ceph.com/issues/20390>`_, `pr#15897 <https://github.com/ceph/ceph/pull/15897>`_, Haomai Wang) -* msg: msg/async: Lower down the AsyncMessenger's standby warning from debug (`pr#15242 <https://github.com/ceph/ceph/pull/15242>`_, Pan Liu) -* msg: msg/AsyncMessenger: remove unused method (`pr#10125 <https://github.com/ceph/ceph/pull/10125>`_, Michal Jarzabek) -* msg: msg/async/net_handler: errno should be stored before calling next function (`pr#14985 <https://github.com/ceph/ceph/pull/14985>`_, Zhou Zhengping) -* msg: msg/async/rdma: check if exp verbs avail (`pr#13391 <https://github.com/ceph/ceph/pull/13391>`_, Oren Duer, Adir Lev) -* msg: msg/async/rdma: check if fin message completed (`pr#15624 <https://github.com/ceph/ceph/pull/15624>`_, Alexander Mikheev, Adir Lev) -* msg: msg/async/rdma: Data path fixes (`pr#15903 <https://github.com/ceph/ceph/pull/15903>`_, Adir lev) -* msg: msg/async/rdma: Debug prints for ibv* (`pr#14249 <https://github.com/ceph/ceph/pull/14249>`_, Amir Vadai) -* msg: msg/async/rdma: Device::last_poll_dev must be positive (`pr#14250 <https://github.com/ceph/ceph/pull/14250>`_, Amir Vadai) -* msg: msg/async/rdma: Fix broken compilation (`pr#13603 <https://github.com/ceph/ceph/pull/13603>`_, Sarit Zubakov) -* msg: msg/async/rdma: Fix memory leak of OSD (`pr#13101 <https://github.com/ceph/ceph/pull/13101>`_, Sarit Zubakov) -* msg: msg/async/rdma: fix outstanding queuepair when destruct RDMAStack (`pr#13905 <https://github.com/ceph/ceph/pull/13905>`_, Haomai Wang) -* msg: msg/async/rdma: fix RoCE v2 deafult value (`pr#12648 <https://github.com/ceph/ceph/pull/12648>`_, Adir Lev, Oren Duer) -* msg: msg/async/rdma: Fix small memory leaks detected by valgrind (`pr#14288 <https://github.com/ceph/ceph/pull/14288>`_, Amir Vadai) -* msg: msg/async/rdma: handle buffers after close msg (`pr#15749 <https://github.com/ceph/ceph/pull/15749>`_, DanielBar-On, Alexander Mikheev, Adir Lev) -* msg: msg/async/rdma: move active_queue_pairs perf counter dec to polling (`pr#13716 <https://github.com/ceph/ceph/pull/13716>`_, DanielBar-On) -* msg: msg/async/rdma: Print error only on ENOMEM (`pr#13538 <https://github.com/ceph/ceph/pull/13538>`_, Sarit Zubakov) -* msg: msg/async/rdma: RDMA-CM, Pass specific ConnMgr info in constructor (`pr#14409 <https://github.com/ceph/ceph/pull/14409>`_, Amir Vadai) -* msg: msg/async/rdma: register buffer as continuous (`pr#15967 <https://github.com/ceph/ceph/pull/15967>`_, Adir Lev) -* msg: msg/async/rdma: remove assert from ibv_dealloc_pd in ProtectionDomain (`pr#15832 <https://github.com/ceph/ceph/pull/15832>`_, DanielBar-On) -* msg: msg/async/rdma: update destructor message (`pr#13539 <https://github.com/ceph/ceph/pull/13539>`_, Sarit Zubakov) -* msg: msg/async/rdma: zero wqe inline (`pr#13392 <https://github.com/ceph/ceph/pull/13392>`_, Adir Lev) -* msg: msg/async: remove false alert "assert" (`pr#15288 <https://github.com/ceph/ceph/pull/15288>`_, Haomai Wang) -* msg: msg/async: remove useless close function (`pr#13286 <https://github.com/ceph/ceph/pull/13286>`_, liuchang0812) -* msg: msg/async: rm nonused thread variable in posixworker (`pr#12777 <https://github.com/ceph/ceph/pull/12777>`_, Wei Jin) -* msg: msg/async: use auto iterator having more simple code and good performance (`pr#16524 <https://github.com/ceph/ceph/pull/16524>`_, dingdangzhang) -* msg: msg/Messenger.cc: add std::move (`pr#9760 <https://github.com/ceph/ceph/pull/9760>`_, Michal Jarzabek) -* msg: msg/MOSDOpReply: fix missing trace decode (`pr#15999 <https://github.com/ceph/ceph/pull/15999>`_, Yan Jun) -* msg: msg/RDMA: Fix broken compilation due to new argument in net.connect() (`pr#13096 <https://github.com/ceph/ceph/pull/13096>`_, Amir Vadai) -* msg: msg/simple: Remove dead code in pipe.cc (`issue#12684 <http://tracker.ceph.com/issues/12684>`_, `pr#12601 <https://github.com/ceph/ceph/pull/12601>`_, Rishabh Kumar) -* msg: msg/simple: use my addr when setting sock priority (`issue#19801 <http://tracker.ceph.com/issues/19801>`_, `pr#14878 <https://github.com/ceph/ceph/pull/14878>`_, Kefu Chai) -* msg: no need to pass supported features to Messenger::Policy ctor (`pr#13785 <https://github.com/ceph/ceph/pull/13785>`_, Sage Weil) -* msg: QueueStrategy::wait() joins all threads (`issue#20534 <http://tracker.ceph.com/issues/20534>`_, `pr#16194 <https://github.com/ceph/ceph/pull/16194>`_, Casey Bodley) -* msg: Remove unused variable perf_counter in RDMAStack (`pr#16783 <https://github.com/ceph/ceph/pull/16783>`_, amitkuma) -* msg: Revert the change from assert(0)-> ceph_abort() where is not applicable (`pr#12930 <https://github.com/ceph/ceph/pull/12930>`_, Dave Chen) -* msg: src/msg/async/AsyncConnect.cc: Use of sizeof() on a Pointer Type (`pr#14773 <https://github.com/ceph/ceph/pull/14773>`_, Svyatoslav) -* msg: src/msg/async: Update fix broken compilation for Posix (`pr#14336 <https://github.com/ceph/ceph/pull/14336>`_, Sarit Zubakov) -* msg: src/msg/simple/Pipe.cc: Fix the inclusion of '}' (`pr#14843 <https://github.com/ceph/ceph/pull/14843>`_, Willem Jan Withagen) -* os/bluestore: print leaked extents to debug output (`pr#17303 <https://github.com/ceph/ceph/pull/17303>`_, Sage Weil) -* osd: add asock command to dump the scrub queue (`issue#17861 <http://tracker.ceph.com/issues/17861>`_, `pr#12728 <https://github.com/ceph/ceph/pull/12728>`_, liuchang0812) -* osd: add default_device_class to metadata (`pr#16634 <https://github.com/ceph/ceph/pull/16634>`_, Neha Ojha) -* osd: add dump filter for tracked ops (`pr#16561 <https://github.com/ceph/ceph/pull/16561>`_, Yan Jun) -* osd: add "heap \*" admin command (`issue#15475 <http://tracker.ceph.com/issues/15475>`_, `pr#13073 <https://github.com/ceph/ceph/pull/13073>`_, Jesse Williamson) -* osd: adding PerfCounters for backoff throttle (`pr#13017 <https://github.com/ceph/ceph/pull/13017>`_, Chuanhong Wang) -* osd: add is_split check before _start_split (`pr#13307 <https://github.com/ceph/ceph/pull/13307>`_, song baisen) -* osd: add override in headers files (`pr#13962 <https://github.com/ceph/ceph/pull/13962>`_, liuchang0812) -* osd: add override in osd subsystem (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13439 <https://github.com/ceph/ceph/pull/13439>`_, liuchang0812) -* osd: Add recovery sleep configuration option for HDDs and SSDs (`pr#16328 <https://github.com/ceph/ceph/pull/16328>`_, Neha Ojha) -* osd: add snap trim reservation and re-implement osd_snap_trim_sleep (`pr#13594 <https://github.com/ceph/ceph/pull/13594>`_, Samuel Just) -* osd: adjust osd_min_pg_log_entries (`issue#21026 <http://tracker.ceph.com/issues/21026>`_, `pr#17202 <https://github.com/ceph/ceph/pull/17202>`_, J. Eric Ivancich) -* osd: allow client throttler to be adjusted on-fly, without restart (`issue#18791 <http://tracker.ceph.com/issues/18791>`_, `pr#13213 <https://github.com/ceph/ceph/pull/13213>`_, Piotr Dałek) -* osd: bail from _committed_osd_maps inside osd_lock (`issue#20273 <http://tracker.ceph.com/issues/20273>`_, `pr#15710 <https://github.com/ceph/ceph/pull/15710>`_, Sage Weil) -* osd: Calculate degraded and misplaced more accurately (`issue#18619 <http://tracker.ceph.com/issues/18619>`_, `pr#13031 <https://github.com/ceph/ceph/pull/13031>`_, David Zafman) -* osd: change a few messages at level 0 and 1; change default level to 1/5 (`pr#13407 <https://github.com/ceph/ceph/pull/13407>`_, Sage Weil) -* osd: Check for and automatically repair object info soid during scrub (`issue#20471 <http://tracker.ceph.com/issues/20471>`_, `pr#16052 <https://github.com/ceph/ceph/pull/16052>`_, David Zafman) -* osd: check fsid is normal before osd mkfs (`pr#13898 <https://github.com/ceph/ceph/pull/13898>`_, song baisen) -* osd: check queue_transaction return value (`pr#15873 <https://github.com/ceph/ceph/pull/15873>`_, zhanglei) -* osd: Check snapset for validity when selecting authoritative shard (`issue#20186 <http://tracker.ceph.com/issues/20186>`_, `issue#18409 <http://tracker.ceph.com/issues/18409>`_, `pr#15559 <https://github.com/ceph/ceph/pull/15559>`_, David Zafman) -* osd: Check whether journal is rotational or not (`pr#16614 <https://github.com/ceph/ceph/pull/16614>`_, Neha Ojha) -* osd: clarify REQUIRE_LUMINOUS error message (`pr#13363 <https://github.com/ceph/ceph/pull/13363>`_, Josh Durgin) -* osd: clean nonused work queue (`pr#14990 <https://github.com/ceph/ceph/pull/14990>`_, Wei Jin) -* osd: Cleanup-Updated OSDMap.cc with C++11 style range-for loops (`pr#14381 <https://github.com/ceph/ceph/pull/14381>`_, Jos Collin) -* osd: cleanup: use string & to avoid unnecessary copy (`pr#12336 <https://github.com/ceph/ceph/pull/12336>`_, Yunchuan Wen) -* osd: clear_queued_recovery() in on_shutdown() (`issue#20432 <http://tracker.ceph.com/issues/20432>`_, `pr#16093 <https://github.com/ceph/ceph/pull/16093>`_, Kefu Chai) -* osd: cmpext operator should ignore -ENOENT on read (`pr#16622 <https://github.com/ceph/ceph/pull/16622>`_, Jason Dillaman) -* osd: combine conditional statements (`pr#16391 <https://github.com/ceph/ceph/pull/16391>`_, Yan Jun) -* osd: combine unstable stats with info.stats when publish stats to osd (`pr#14060 <https://github.com/ceph/ceph/pull/14060>`_, Mingxin Liu) -* osd: compact osd feature (`issue#19592 <http://tracker.ceph.com/issues/19592>`_, `pr#16045 <https://github.com/ceph/ceph/pull/16045>`_, liuchang0812) -* osd: condition object_info_t encoding on required (not up) features (`issue#18644 <http://tracker.ceph.com/issues/18644>`_, `pr#13114 <https://github.com/ceph/ceph/pull/13114>`_, Sage Weil) -* osd: constify OpRequest::get_req(); fix a few cases of operator<< vs mutated message races (`pr#13545 <https://github.com/ceph/ceph/pull/13545>`_, Sage Weil) -* osd: correct comment of perfcounter cached_crc in code (`pr#13256 <https://github.com/ceph/ceph/pull/13256>`_, lvshuhua) -* osd: correct epoch setting of osd boot msg (`pr#12623 <https://github.com/ceph/ceph/pull/12623>`_, Mingxin Liu) -* osd: correct the func name in execute_ctx() log messages (`pr#13582 <https://github.com/ceph/ceph/pull/13582>`_, Gu Zhongyan) -* osd: Corrupt objects stop snaptrim and mark pg snaptrim_error (`issue#13837 <http://tracker.ceph.com/issues/13837>`_, `pr#15635 <https://github.com/ceph/ceph/pull/15635>`_, David Zafman) -* osd: debug con in ms_handle_connect (`pr#13540 <https://github.com/ceph/ceph/pull/13540>`_, Sage Weil) -* osd: do not send ENXIO on misdirected op by default (`issue#18751 <http://tracker.ceph.com/issues/18751>`_, `pr#13206 <https://github.com/ceph/ceph/pull/13206>`_, Sage Weil) -* osd: do not send pg_created unless luminous (`issue#20785 <http://tracker.ceph.com/issues/20785>`_, `pr#16677 <https://github.com/ceph/ceph/pull/16677>`_, Kefu Chai) -* osd: do not try to boot until we've seen the first osdmap (`pr#15732 <https://github.com/ceph/ceph/pull/15732>`_, Sage Weil) -* osd: do not try to set device class before luminous (`issue#20850 <http://tracker.ceph.com/issues/20850>`_, `pr#16706 <https://github.com/ceph/ceph/pull/16706>`_, Josh Durgin) -* osd: don't leak pgrefs or reservations in SnapTrimmer (`issue#19931 <http://tracker.ceph.com/issues/19931>`_, `pr#15214 <https://github.com/ceph/ceph/pull/15214>`_, Greg Farnum) -* osd: don't share osdmap with objecter when preboot (`issue#15025 <http://tracker.ceph.com/issues/15025>`_, `pr#13946 <https://github.com/ceph/ceph/pull/13946>`_, Mingxin Liu) -* osd: don't use ORDERSNAP for flush; always request/send ondisk ack (`issue#18961 <http://tracker.ceph.com/issues/18961>`_, `pr#13570 <https://github.com/ceph/ceph/pull/13570>`_, Samuel Just) -* osd: drop support for listing objects at a given snap (`pr#13398 <https://github.com/ceph/ceph/pull/13398>`_, Sage Weil) -* osd: dump the field name of object watchers and cleanups (`pr#15946 <https://github.com/ceph/ceph/pull/15946>`_, Yan Jun) -* osd: EC read handling: don't grab an objectstore error to use as the read error (`pr#16663 <https://github.com/ceph/ceph/pull/16663>`_, David Zafman) -* osd: eliminate snapdir objects and move clone snaps vector into SnapSet (`pr#13610 <https://github.com/ceph/ceph/pull/13610>`_, Sage Weil) -* osd: Execute crush_location_hook when configured in ceph.conf (`pr#15951 <https://github.com/ceph/ceph/pull/15951>`_, Wido den Hollander) -* osd: _exit() intead of exit() for failure injection (`issue#18372 <http://tracker.ceph.com/issues/18372>`_, `pr#12726 <https://github.com/ceph/ceph/pull/12726>`_, Sage Weil) -* osd: extend OMAP_GETKEYS and GETVALS to include a 'more' output field (`pr#12950 <https://github.com/ceph/ceph/pull/12950>`_, Sage Weil) -* osd: fall back to failsafe threshold if osdmap doesn't set [near]full (`pr#14004 <https://github.com/ceph/ceph/pull/14004>`_, Sage Weil) -* osd: faster dispatch (`pr#13343 <https://github.com/ceph/ceph/pull/13343>`_, Sage Weil) -* osd: fix a couple bugs with persisting the missing set when it contains deletes (`issue#20704 <http://tracker.ceph.com/issues/20704>`_, `pr#16459 <https://github.com/ceph/ceph/pull/16459>`_, Josh Durgin) -* osd: fix argument-dependent lookup of swap() (`pr#15124 <https://github.com/ceph/ceph/pull/15124>`_, Casey Bodley) -* osd: fix a signed/unsigned warning in PG (`pr#13922 <https://github.com/ceph/ceph/pull/13922>`_, Greg Farnum) -* osd: fix comments about pg refs and lock (`pr#14279 <https://github.com/ceph/ceph/pull/14279>`_, tang.jin) -* osd: fix coverity warning for uninitialized members (`pr#12724 <https://github.com/ceph/ceph/pull/12724>`_, Li Wang) -* osd: fix func name in log produced by handle_pg_peering_evt() (`pr#13801 <https://github.com/ceph/ceph/pull/13801>`_, xie xingguo) -* osd: fix occasional MOSDMap leak (`issue#18293 <http://tracker.ceph.com/issues/18293>`_, `pr#14558 <https://github.com/ceph/ceph/pull/14558>`_, Sage Weil) -* osd: fix OpRequest and tracked op dump information (`pr#16504 <https://github.com/ceph/ceph/pull/16504>`_, Yan Jun) -* osd: fix past_intervals base case by adding epoch_pool_created to pg_history_t (`issue#19877 <http://tracker.ceph.com/issues/19877>`_, `pr#14989 <https://github.com/ceph/ceph/pull/14989>`_, Sage Weil) -* osd: fix pg ref leaks when osd shutdown (`issue#20684 <http://tracker.ceph.com/issues/20684>`_, `pr#16408 <https://github.com/ceph/ceph/pull/16408>`_, Yang Honggang) -* osd: fix some osd beacon bugs (`pr#14274 <https://github.com/ceph/ceph/pull/14274>`_, Sage Weil) -* osd: fix stat sum update of recovery pushing (`pr#13328 <https://github.com/ceph/ceph/pull/13328>`_, Zhiqiang Wang) -* osd: fix the setting of soid in sub_op_push (`pr#13353 <https://github.com/ceph/ceph/pull/13353>`_, Zhiqiang Wang) -* osd: fix typo in comment (`pr#13061 <https://github.com/ceph/ceph/pull/13061>`_, Gu Zhongyan) -* osd: Fix useless MAX(0, unsigned) to prevent out of wack misplaced (`issue#18718 <http://tracker.ceph.com/issues/18718>`_, `pr#13164 <https://github.com/ceph/ceph/pull/13164>`_, David Zafman) -* osd: have clients resend ops on pg split (`pr#13235 <https://github.com/ceph/ceph/pull/13235>`_, Sage Weil) -* osd: hdd vs ssd defaults for osd op thread pool (`pr#15422 <https://github.com/ceph/ceph/pull/15422>`_, Sage Weil) -* osd: heartbeat with packets large enough to require working jumbo frames (`issue#20087 <http://tracker.ceph.com/issues/20087>`_, `pr#15535 <https://github.com/ceph/ceph/pull/15535>`_, Greg Farnum) -* osd: Implement asynchronous recovery sleep (`pr#15212 <https://github.com/ceph/ceph/pull/15212>`_, Neha Ojha) -* osd: Implement asynchronous scrub sleep (`issue#19497 <http://tracker.ceph.com/issues/19497>`_, `pr#14886 <https://github.com/ceph/ceph/pull/14886>`_, Brad Hubbard) -* osd: Implement peering state timing (`pr#14627 <https://github.com/ceph/ceph/pull/14627>`_, Brad Hubbard) -* osd: improve error message when FileStore op fails due to EPERM (`issue#18037 <http://tracker.ceph.com/issues/18037>`_, `pr#12181 <https://github.com/ceph/ceph/pull/12181>`_, Nathan Cutler) -* osd: initialize waiting_for_pg_osdmap on startup (`issue#20748 <http://tracker.ceph.com/issues/20748>`_, `pr#16535 <https://github.com/ceph/ceph/pull/16535>`_, Sage Weil) -* osd: kill all remaining MOSDSubOp users (`pr#13401 <https://github.com/ceph/ceph/pull/13401>`_, Sage Weil) -* osd: kill sortbitwise (`pr#13321 <https://github.com/ceph/ceph/pull/13321>`_, Sage Weil) -* osd: Log audit (`pr#16281 <https://github.com/ceph/ceph/pull/16281>`_, Brad Hubbard) -* osd: make ec overwrites ready to use (`pr#14496 <https://github.com/ceph/ceph/pull/14496>`_, Josh Durgin) -* osd: moved OpFinisher logic from OSDOp to OpContext (`issue#20783 <http://tracker.ceph.com/issues/20783>`_, `pr#16617 <https://github.com/ceph/ceph/pull/16617>`_, Jason Dillaman) -* osd: Move scrub sleep timer to osdservice (`issue#19986 <http://tracker.ceph.com/issues/19986>`_, `pr#15217 <https://github.com/ceph/ceph/pull/15217>`_, Brad Hubbard) -* osd: never send rados ack (only commit) (`pr#12451 <https://github.com/ceph/ceph/pull/12451>`_, Sage Weil) -* osd: new op for calculating an extent checksum (`pr#14256 <https://github.com/ceph/ceph/pull/14256>`_, Jason Dillaman) -* osd: objclass sdk (`pr#14723 <https://github.com/ceph/ceph/pull/14723>`_, Neha Ojha) -* osd: Object level shard errors are tracked and used if no auth available (`issue#20089 <http://tracker.ceph.com/issues/20089>`_, `pr#15397 <https://github.com/ceph/ceph/pull/15397>`_, David Zafman) -* osd: On EIO from read recover the primary replica from another copy (`issue#18165 <http://tracker.ceph.com/issues/18165>`_, `pr#14760 <https://github.com/ceph/ceph/pull/14760>`_, David Zafman) -* osd: osdc/ObjectCacher: use state instead of get_state() (`pr#12544 <https://github.com/ceph/ceph/pull/12544>`_, huangjun) -* osd: osdc/Objecter: more constness (`pr#14819 <https://github.com/ceph/ceph/pull/14819>`_, Kefu Chai) -* osd: osdc: silence warning from `-Wsign-compare` (`pr#14729 <https://github.com/ceph/ceph/pull/14729>`_, Jos Collin) -* osd: osd does not using MPing Messages,do not include unused include (`pr#15833 <https://github.com/ceph/ceph/pull/15833>`_, linbing) -* osd: osd/OSDMap.cc: check if osd is out in subtree_type_is_down (`issue#19989 <http://tracker.ceph.com/issues/19989>`_, `pr#15250 <https://github.com/ceph/ceph/pull/15250>`_, Neha Ojha) -* osd: osd/OSDMap: require OSD features only of OSDs (`issue#18831 <http://tracker.ceph.com/issues/18831>`_, `pr#13275 <https://github.com/ceph/ceph/pull/13275>`_, Ilya Dryomov) -* osd: osd/PrimaryLogPG: nullptr not NULL (`pr#13973 <https://github.com/ceph/ceph/pull/13973>`_, Shinobu Kinjo) -* osd: 'osd tree in|out|up|down' to filter tree results (`pr#15294 <https://github.com/ceph/ceph/pull/15294>`_, Sage Weil) -* osd: os/kstore: some error handling (`pr#13960 <https://github.com/ceph/ceph/pull/13960>`_, wangzhengyong) -* osd/PGBackend: delete reply if fails to complete delete request (`issue#20913 <http://tracker.ceph.com/issues/20913>`_, `pr#17233 <https://github.com/ceph/ceph/pull/17233>`_, Kefu Chai) -* osd: pg: be more careful with locking around forced pg recovery (`issue#20808 <http://tracker.ceph.com/issues/20808>`_, `pr#16712 <https://github.com/ceph/ceph/pull/16712>`_, Greg Farnum) -* osd: pglog trimming fixes (`pr#12882 <https://github.com/ceph/ceph/pull/12882>`_, Zhiqiang Wang) -* osd: pglog: with config, don't assert in the presence of stale diverg… (`issue#17916 <http://tracker.ceph.com/issues/17916>`_, `pr#14648 <https://github.com/ceph/ceph/pull/14648>`_, Greg Farnum) -* osd: pg-remap -> pg-upmap (`pr#14556 <https://github.com/ceph/ceph/pull/14556>`_, Sage Weil) -* osd: populate last_epoch_split during build_initial_pg_history (`issue#20754 <http://tracker.ceph.com/issues/20754>`_, `pr#16519 <https://github.com/ceph/ceph/pull/16519>`_, Sage Weil) -* osd: Preserve OSDOp information for historic ops (`pr#15265 <https://github.com/ceph/ceph/pull/15265>`_, Guo-Fu Tseng) -* osd: PrimaryLogPG, PGBackend: complete callback even if interval changes (`issue#20747 <http://tracker.ceph.com/issues/20747>`_, `pr#16536 <https://github.com/ceph/ceph/pull/16536>`_, Josh Durgin) -* osd: print pg_info_t::purged_snaps as array, not string (`issue#18584 <http://tracker.ceph.com/issues/18584>`_, `pr#14217 <https://github.com/ceph/ceph/pull/14217>`_, liuchang0812) -* osd: process deletes during recovery instead of peering (`issue#19971 <http://tracker.ceph.com/issues/19971>`_, `pr#15952 <https://github.com/ceph/ceph/pull/15952>`_, Josh Durgin) -* osd: put osdmap in mempool (`pr#14780 <https://github.com/ceph/ceph/pull/14780>`_, Sage Weil) -* osd: reduce buffer pinning from EC entries (`pr#15120 <https://github.com/ceph/ceph/pull/15120>`_, Sage Weil) -* osd: reduce map cache size (`pr#15292 <https://github.com/ceph/ceph/pull/15292>`_, Sage Weil) -* osd: reduce rados_max_object_size from 100 GB -> 128 MB (`pr#15520 <https://github.com/ceph/ceph/pull/15520>`_, Sage Weil) -* osd: remove copy-get-classic (`pr#13547 <https://github.com/ceph/ceph/pull/13547>`_, Sage Weil) -* osd: remove sortbitwise thrashing (`pr#13296 <https://github.com/ceph/ceph/pull/13296>`_, Sage Weil) -* osd: renamed the new vector name in OSDMap::build_simple_crush_map_from_conf (`pr#14583 <https://github.com/ceph/ceph/pull/14583>`_, Jos Collin) -* osd: rename osd -> osd_pglog; include pglog-related bufferlists (`pr#15531 <https://github.com/ceph/ceph/pull/15531>`_, Sage Weil) -* osd: rephrase "wrongly marked me down" clog message (`pr#16365 <https://github.com/ceph/ceph/pull/16365>`_, John Spray) -* osd: replace object_info_t::operator=() with decode() (`pr#13938 <https://github.com/ceph/ceph/pull/13938>`_, tang.jin) -* osd: ReplicatedBackend::prep_push() remove redundant variable assignments (`pr#14817 <https://github.com/ceph/ceph/pull/14817>`_, Jin Cai) -* osd: restart boot process if waiting for luminous mons (`issue#20631 <http://tracker.ceph.com/issues/20631>`_, `pr#16341 <https://github.com/ceph/ceph/pull/16341>`_, Sage Weil) -* osd: Return correct osd_objectstore in OSD metadata (`issue#18638 <http://tracker.ceph.com/issues/18638>`_, `pr#13072 <https://github.com/ceph/ceph/pull/13072>`_, Wido den Hollander) -* osd: Return early on shutdown (`issue#19900 <http://tracker.ceph.com/issues/19900>`_, `pr#15345 <https://github.com/ceph/ceph/pull/15345>`_, Brad Hubbard) -* osd: Reverse order of op_has_sufficient_caps and do_pg_op (`issue#19790 <http://tracker.ceph.com/issues/19790>`_, `pr#15354 <https://github.com/ceph/ceph/pull/15354>`_, Brad Hubbard) -* osd: sched_scrub() lock pg only if all scrubbing conditions are fulfilled (`pr#14968 <https://github.com/ceph/ceph/pull/14968>`_, Jin Cai) -* osd: scrub_to specifies clone ver, but transaction include head write… (`issue#20041 <http://tracker.ceph.com/issues/20041>`_, `pr#16404 <https://github.com/ceph/ceph/pull/16404>`_, David Zafman) -* osd: silence warning from -Wint-in-bool-context (`pr#16744 <https://github.com/ceph/ceph/pull/16744>`_, Jos Collin) -* osd: simplify past_intervals representation (`pr#14444 <https://github.com/ceph/ceph/pull/14444>`_, Samuel Just, Sage Weil) -* osd: small clear up and optimize on _recover_now and should_share_map function (`pr#13476 <https://github.com/ceph/ceph/pull/13476>`_, song baisen) -* osd: stop mgrc earlier in shutdown() (`issue#19638 <http://tracker.ceph.com/issues/19638>`_, `pr#14904 <https://github.com/ceph/ceph/pull/14904>`_, Kefu Chai) -* osd: stop MgrClient callbacks on shutdown (`issue#19638 <http://tracker.ceph.com/issues/19638>`_, `pr#14896 <https://github.com/ceph/ceph/pull/14896>`_, Sage Weil) -* osd: strip pglog op name (`pr#14764 <https://github.com/ceph/ceph/pull/14764>`_, liuchang0812) -* osd: support cmpext operation on EC-backed pools (`pr#15693 <https://github.com/ceph/ceph/pull/15693>`_, Zhengyong Wang, Jason Dillaman) -* osd: support dumping long ops (`pr#13019 <https://github.com/ceph/ceph/pull/13019>`_, Zhiqiang Wang) -* osd: switch filestore to default to rocksdb (`pr#14814 <https://github.com/ceph/ceph/pull/14814>`_, Neha Ojha) -* osd: tag fast dispatch messages with min_epoch (`pr#13681 <https://github.com/ceph/ceph/pull/13681>`_, Sage Weil) -* osd: take PGRef for recovery sleep wakeup event (`issue#20226 <http://tracker.ceph.com/issues/20226>`_, `pr#15582 <https://github.com/ceph/ceph/pull/15582>`_, Sage Weil) -* osd: the condition of last epoch <= superblock.newest_map epoch has been check twice (`pr#15590 <https://github.com/ceph/ceph/pull/15590>`_, linbing) -* osd: the osd should not share map with others when it is in stopping state (`pr#13668 <https://github.com/ceph/ceph/pull/13668>`_, song baisen) -* osd: unlock sdata_op_ordering_lock with sdata_lock hold to avoid miss… (`pr#15891 <https://github.com/ceph/ceph/pull/15891>`_, Ming Lin) -* osd: use append(bufferlist &) to avoid unnecessary copy (`pr#12272 <https://github.com/ceph/ceph/pull/12272>`_, Yunchuan Wen) -* osd: use separate waitlist for scrub (`pr#13136 <https://github.com/ceph/ceph/pull/13136>`_, Sage Weil) -* osd: various changes for preventing internal ENOSPC condition (`issue#16878 <http://tracker.ceph.com/issues/16878>`_, `pr#13425 <https://github.com/ceph/ceph/pull/13425>`_, David Zafman) -* osd: we know the definite epoch of marking down (`pr#13121 <https://github.com/ceph/ceph/pull/13121>`_, Mingxin Liu) -* osd: when osd in not in failure_pending, we don't need to get osd inst from osdmap (`pr#15558 <https://github.com/ceph/ceph/pull/15558>`_, linbing) -* osd: When scrub finds an attr error mark shard inconsistent (`issue#20089 <http://tracker.ceph.com/issues/20089>`_, `pr#15368 <https://github.com/ceph/ceph/pull/15368>`_, David Zafman) -* osd: zipkin tracing (`pr#14305 <https://github.com/ceph/ceph/pull/14305>`_, Sage Weil, Marios-Evaggelos Kogias, Victor Araujo, Casey Bodley, Andrew Shewmaker, Chendi.Xue) -* performance: buffer, osd: add missing crc cache miss perf counter (`pr#14957 <https://github.com/ceph/ceph/pull/14957>`_, Piotr Dałek) -* performance: common/config_opts.h: Lower HDD throttle cost (`pr#15485 <https://github.com/ceph/ceph/pull/15485>`_, Mark Nelson) -* performance: crc32c: optimize aarch64 crc32c implementation (`pr#12977 <https://github.com/ceph/ceph/pull/12977>`_, wei xiao) -* performance: denc: add need_contiguous to denc_traits (`pr#15224 <https://github.com/ceph/ceph/pull/15224>`_, Kefu Chai) -* performance: osd, messenger, librados: lttng oid tracing (`pr#12492 <https://github.com/ceph/ceph/pull/12492>`_, Anjaneya Chagam) -* performance: osd/PG.cc: loop invariant code motion (`pr#12720 <https://github.com/ceph/ceph/pull/12720>`_, Li Wang) -* performance: osd/ReplicatedBackend: do not set omap header if it is empty (`pr#12612 <https://github.com/ceph/ceph/pull/12612>`_, fang yuxiang) -* performance,rgw: rgw_file: permit dirent offset computation (`pr#16275 <https://github.com/ceph/ceph/pull/16275>`_, Matt Benjamin) -* pybind: better error msg (`pr#14497 <https://github.com/ceph/ceph/pull/14497>`_, Kefu Chai) -* pybind: cephfs should be built without librados / python-rados (`pr#13431 <https://github.com/ceph/ceph/pull/13431>`_, Kefu Chai) -* pybind: ceph.in: Check return value when connecting (`pr#16130 <https://github.com/ceph/ceph/pull/16130>`_, Douglas Fuller) -* pybind: ceph-rest-api: Various REST API fixes (`pr#15910 <https://github.com/ceph/ceph/pull/15910>`_, Wido den Hollander) -* pybind: conditional compile the linux specific constant (`pr#12198 <https://github.com/ceph/ceph/pull/12198>`_, Kefu Chai) -* pybind: fix docstring for librbd Python binding (`pr#13977 <https://github.com/ceph/ceph/pull/13977>`_, runsisi) -* pybind: fix open flags calculation (`issue#19890 <http://tracker.ceph.com/issues/19890>`_, `pr#15018 <https://github.com/ceph/ceph/pull/15018>`_, "Yan, Zheng") -* pybind: pybind/ceph_argparse: fix empty string check (`issue#20135 <http://tracker.ceph.com/issues/20135>`_, `pr#15500 <https://github.com/ceph/ceph/pull/15500>`_, Sage Weil) -* pybind: pybind/ceph_daemon.py: fix Termsize.update (`pr#15253 <https://github.com/ceph/ceph/pull/15253>`_, Kefu Chai) -* pybind: pybind/ceph_daemon: use small chunk for recv (`pr#13804 <https://github.com/ceph/ceph/pull/13804>`_, Xiaoxi Chen) -* pybind: pybind/mgr/dashboard: fix get kernel_version error (`pr#16094 <https://github.com/ceph/ceph/pull/16094>`_, Peng Zhang) -* pybind: pybind/mgr/restful: fix typo (`pr#16560 <https://github.com/ceph/ceph/pull/16560>`_, Nick Erdmann) -* pybind: pybind/mgr/restful: use list to pass hooks to create a `Pecan` instance (`issue#20258 <http://tracker.ceph.com/issues/20258>`_, `pr#15646 <https://github.com/ceph/ceph/pull/15646>`_, Kefu Chai) -* pybind: pybind/rados: avoid call free() on invalid pointer (`pr#15159 <https://github.com/ceph/ceph/pull/15159>`_, Mingxin Liu) -* pybind: pybind/rados: use new APIs instead of deprecated ones (`pr#16684 <https://github.com/ceph/ceph/pull/16684>`_, Kefu Chai) -* pybind,rbd: pybind/rbd: OSError should be picklable (`issue#20223 <http://tracker.ceph.com/issues/20223>`_, `pr#15574 <https://github.com/ceph/ceph/pull/15574>`_, Jason Dillaman) -* pybind: restore original API for backwards compatibility (`issue#20421 <http://tracker.ceph.com/issues/20421>`_, `pr#15932 <https://github.com/ceph/ceph/pull/15932>`_, Jason Dillaman) -* pybind: support mon target in pybind (`pr#15409 <https://github.com/ceph/ceph/pull/15409>`_, liuchang0812) -* qa: fix POOL_APP_NOT_ENABLED warning in krbd:unmap suite (`pr#17192 <https://github.com/ceph/ceph/pull/17192>`_, Ilya Dryomov) -* rbd: add default note info to size (create and resize) (`pr#15561 <https://github.com/ceph/ceph/pull/15561>`_, Zheng Yin) -* rbd: add error prompt when input command 'snap set limit' is incomplete (`pr#12945 <https://github.com/ceph/ceph/pull/12945>`_, Tang Jin) -* rbd: additional validation for 'bench' optional parameters (`pr#12697 <https://github.com/ceph/ceph/pull/12697>`_, Yunchuan Wen) -* rbd: bench-write should return error if io-size >= 4G (`issue#18422 <http://tracker.ceph.com/issues/18422>`_, `pr#12864 <https://github.com/ceph/ceph/pull/12864>`_, Gaurav Kumar Garg) -* rbd: cleanup: fix the typo in namespace comment (`pr#12858 <https://github.com/ceph/ceph/pull/12858>`_, Dongsheng Yang) -* rbd: cleanup: rbd: fix a typo in comment (`pr#14049 <https://github.com/ceph/ceph/pull/14049>`_, Dongsheng Yang) -* rbd: cls_rbd: default initialize snapshot namespace for legacy clients (`issue#19413 <http://tracker.ceph.com/issues/19413>`_, `pr#14903 <https://github.com/ceph/ceph/pull/14903>`_, Jason Dillaman) -* rbd: cls/rbd: silence warning from -Wunused-variable (`pr#16670 <https://github.com/ceph/ceph/pull/16670>`_, Yan Jun) -* rbd: cls/rbd: trash_list should be iterable (`issue#20643 <http://tracker.ceph.com/issues/20643>`_, `pr#16372 <https://github.com/ceph/ceph/pull/16372>`_, Jason Dillaman) -* rbd: common/bit_vector: utilize deep-copy during data decode (`issue#19863 <http://tracker.ceph.com/issues/19863>`_, `pr#15017 <https://github.com/ceph/ceph/pull/15017>`_, Jason Dillaman) -* rbd: correct coverity warnings (`pr#12954 <https://github.com/ceph/ceph/pull/12954>`_, Jason Dillaman) -* rbd: correct issues with image importing (`pr#14401 <https://github.com/ceph/ceph/pull/14401>`_, Jason Dillaman) -* rbd: demote/promote all mirrored images in a pool (`issue#18748 <http://tracker.ceph.com/issues/18748>`_, `pr#13758 <https://github.com/ceph/ceph/pull/13758>`_, Jason Dillaman) -* rbd: destination pool should be source pool if it is not specified (`issue#18326 <http://tracker.ceph.com/issues/18326>`_, `pr#13189 <https://github.com/ceph/ceph/pull/13189>`_, Gaurav Kumar Garg) -* rbd: do not attempt to load key if auth is disabled (`issue#19035 <http://tracker.ceph.com/issues/19035>`_, `pr#16024 <https://github.com/ceph/ceph/pull/16024>`_, Jason Dillaman) -* rbd: Drop unused member variable reopen in C_OpenComplete (`pr#16729 <https://github.com/ceph/ceph/pull/16729>`_, amitkuma) -* rbd: enable rbd on FreeBSD (without KRBD) (`pr#12798 <https://github.com/ceph/ceph/pull/12798>`_, Willem Jan Withagen) -* rbd: error out if import image format failed (`pr#13957 <https://github.com/ceph/ceph/pull/13957>`_, wangzhengyong) -* rbd: fixed coverity 'Argument cannot be negative' warning (`pr#16686 <https://github.com/ceph/ceph/pull/16686>`_, amitkuma) -* rbd: fix typo in Kernel.cc (`issue#19273 <http://tracker.ceph.com/issues/19273>`_, `pr#13983 <https://github.com/ceph/ceph/pull/13983>`_, Gaurav Kumar Garg) -* rbd: 'image-meta remove' for missing key does not return error (`issue#16990 <http://tracker.ceph.com/issues/16990>`_, `pr#16393 <https://github.com/ceph/ceph/pull/16393>`_, PCzhangPC) -* rbd: import-diff should discard any zeroed extents (`pr#14445 <https://github.com/ceph/ceph/pull/14445>`_, Jason Dillaman) -* rbd: import needs to sanity check auto-generated image name (`issue#19128 <http://tracker.ceph.com/issues/19128>`_, `pr#14754 <https://github.com/ceph/ceph/pull/14754>`_, Mykola Golub) -* rbd: import real thin-provision image (`issue#15648 <http://tracker.ceph.com/issues/15648>`_, `pr#12883 <https://github.com/ceph/ceph/pull/12883>`_, yaoning, Ning Yao) -* rbd: info command should indicate if parent is in trash (`pr#14875 <https://github.com/ceph/ceph/pull/14875>`_, Jason Dillaman) -* rbd: introduce v2 format for rbd export/import (`issue#13186 <http://tracker.ceph.com/issues/13186>`_, `pr#10487 <https://github.com/ceph/ceph/pull/10487>`_, Dongsheng Yang) -* rbd: journal: don't hold future lock during assignment (`issue#18618 <http://tracker.ceph.com/issues/18618>`_, `pr#13033 <https://github.com/ceph/ceph/pull/13033>`_, Jason Dillaman) -* rbd: journal: stop processing removal after error (`issue#18738 <http://tracker.ceph.com/issues/18738>`_, `pr#13193 <https://github.com/ceph/ceph/pull/13193>`_, Jason Dillaman) -* rbd: luminous: librbd: default localize parent reads to false (`issue#20941 <http://tracker.ceph.com/issues/20941>`_, `pr#16899 <https://github.com/ceph/ceph/pull/16899>`_, Jason Dillaman) -* rbd: luminous: librbd: remove consistency group rbd cli and API support (`pr#16875 <https://github.com/ceph/ceph/pull/16875>`_, Jason Dillaman) -* rbd: luminous: rbd-ggate: tool to map images on FreeBSD via GEOM Gate (`pr#16895 <https://github.com/ceph/ceph/pull/16895>`_, Mykola Golub) -* rbd: luminous: rbd-mirror: align use of uint64_t in service_daemon::AttributeType (`pr#16948 <https://github.com/ceph/ceph/pull/16948>`_, James Page) -* rbd: luminous: rbd-mirror: simplify notifications for image assignment (`issue#15764 <http://tracker.ceph.com/issues/15764>`_, `pr#16878 <https://github.com/ceph/ceph/pull/16878>`_, Jason Dillaman) -* rbd: luminous: rbd: parallelize rbd ls -l (`pr#16921 <https://github.com/ceph/ceph/pull/16921>`_, Piotr Dałek) -* rbd: make it more understandable when adding peer returns error (`pr#16313 <https://github.com/ceph/ceph/pull/16313>`_, songweibin) -* rbd-mirror: add support for active/passive daemon instances (`issue#17018 <http://tracker.ceph.com/issues/17018>`_, `issue#17019 <http://tracker.ceph.com/issues/17019>`_, `issue#17020 <http://tracker.ceph.com/issues/17020>`_, `pr#12948 <https://github.com/ceph/ceph/pull/12948>`_, Mykola Golub) -* rbd-mirror: assertion failure during pool replayer shut down (`issue#20644 <http://tracker.ceph.com/issues/20644>`_, `pr#16704 <https://github.com/ceph/ceph/pull/16704>`_, Jason Dillaman) -* rbd-mirror: avoid processing new events after stop requested (`issue#18441 <http://tracker.ceph.com/issues/18441>`_, `pr#12837 <https://github.com/ceph/ceph/pull/12837>`_, Jason Dillaman) -* rbd-mirror: check remote image mirroring state when bootstrapping (`issue#18447 <http://tracker.ceph.com/issues/18447>`_, `pr#12820 <https://github.com/ceph/ceph/pull/12820>`_, Mykola Golub) -* rbd-mirror: coordinate image syncs with leader (`issue#18789 <http://tracker.ceph.com/issues/18789>`_, `pr#14745 <https://github.com/ceph/ceph/pull/14745>`_, Mykola Golub) -* rbd-mirror: delayed replication support (`issue#15371 <http://tracker.ceph.com/issues/15371>`_, `pr#11879 <https://github.com/ceph/ceph/pull/11879>`_, Mykola Golub) -* rbd-mirror: deleting a snapshot during sync can result in read errors (`issue#18990 <http://tracker.ceph.com/issues/18990>`_, `pr#13568 <https://github.com/ceph/ceph/pull/13568>`_, Jason Dillaman) -* rbd-mirror: ensure missing images are re-synced when detected (`issue#19811 <http://tracker.ceph.com/issues/19811>`_, `pr#14945 <https://github.com/ceph/ceph/pull/14945>`_, Jason Dillaman) -* rbd-mirror: failover and failback of unmodified image results in split-brain (`issue#19858 <http://tracker.ceph.com/issues/19858>`_, `pr#14963 <https://github.com/ceph/ceph/pull/14963>`_, Jason Dillaman) -* rbd-mirror: guard the deletion of non-primary images (`pr#16398 <https://github.com/ceph/ceph/pull/16398>`_, Jason Dillaman) -* rbd-mirror: ignore permission errors on rbd_mirroring object (`issue#20571 <http://tracker.ceph.com/issues/20571>`_, `pr#16264 <https://github.com/ceph/ceph/pull/16264>`_, Jason Dillaman) -* rbd-mirror: image deletions should be handled by assigned instance (`pr#14832 <https://github.com/ceph/ceph/pull/14832>`_, Jason Dillaman) -* rbd-mirror: initialize timer context pointer to null (`pr#16603 <https://github.com/ceph/ceph/pull/16603>`_, Jason Dillaman) -* rbd-mirror: InstanceWatcher watch/notify stub for leader/follower RPC (`issue#18783 <http://tracker.ceph.com/issues/18783>`_, `pr#13312 <https://github.com/ceph/ceph/pull/13312>`_, Mykola Golub) -* rbd-mirror: lock loss during sync should wait for in-flight copies (`pr#15532 <https://github.com/ceph/ceph/pull/15532>`_, Jason Dillaman) -* rbd-mirror: permit release of local image exclusive lock after force promotion (`issue#18963 <http://tracker.ceph.com/issues/18963>`_, `pr#15140 <https://github.com/ceph/ceph/pull/15140>`_, Jason Dillaman) -* rbd-mirror: pool watcher should track mirror uuid (`pr#14240 <https://github.com/ceph/ceph/pull/14240>`_, Jason Dillaman) -* rbd-mirror: remove tracking of image names from pool watcher (`pr#14712 <https://github.com/ceph/ceph/pull/14712>`_, Jason Dillaman) -* rbd-mirror: replace remote pool polling with add/remove notifications (`issue#15029 <http://tracker.ceph.com/issues/15029>`_, `pr#12364 <https://github.com/ceph/ceph/pull/12364>`_, Jason Dillaman) -* rbd-mirror: resolve admin socket path names collision (`issue#19907 <http://tracker.ceph.com/issues/19907>`_, `pr#15048 <https://github.com/ceph/ceph/pull/15048>`_, Mykola Golub) -* rbd-mirror: separate ImageReplayer handling from Replayer (`issue#18785 <http://tracker.ceph.com/issues/18785>`_, `pr#13803 <https://github.com/ceph/ceph/pull/13803>`_, Mykola Golub) -* rbd-mirror: Set the data pool correctly when creating images (`issue#20567 <http://tracker.ceph.com/issues/20567>`_, `pr#17023 <https://github.com/ceph/ceph/pull/17023>`_, Adam Wolfe Gordon) -* rbd-mirror: track images via global image id (`pr#13416 <https://github.com/ceph/ceph/pull/13416>`_, Jason Dillaman) -* rbd: modified some commands' description into imperative sentence (`pr#16694 <https://github.com/ceph/ceph/pull/16694>`_, songweibin) -* rbd-nbd: check /sys/block/nbdX/size to ensure kernel mapped correctly (`issue#18335 <http://tracker.ceph.com/issues/18335>`_, `pr#13229 <https://github.com/ceph/ceph/pull/13229>`_, Mykola Golub) -* rbd-nbd: clean up the doc and help information (`pr#14146 <https://github.com/ceph/ceph/pull/14146>`_, Pan Liu) -* rbd-nbd: create admin socket only for map command (`issue#17951 <http://tracker.ceph.com/issues/17951>`_, `pr#12433 <https://github.com/ceph/ceph/pull/12433>`_, Pan Liu) -* rbd-nbd: display pool/image/snap information in list output (`pr#15317 <https://github.com/ceph/ceph/pull/15317>`_, Pan Liu) -* rbd-nbd: don't ignore --read-only option in BLKROSET ioctl (`pr#13944 <https://github.com/ceph/ceph/pull/13944>`_, Pan Liu) -* rbd-nbd: ensure unmap returns error code (`pr#15593 <https://github.com/ceph/ceph/pull/15593>`_, guojiannan, chenfangxian) -* rbd-nbd: fix a typo "moudle" (`pr#13652 <https://github.com/ceph/ceph/pull/13652>`_, Pan Liu) -* rbd-nbd: fix typo in comment (`pr#14034 <https://github.com/ceph/ceph/pull/14034>`_, Pan Liu) -* rbd-nbd: no need to check image format any more (`pr#13389 <https://github.com/ceph/ceph/pull/13389>`_, Mykola Golub) -* rbd-nbd: relax size check for newer kernel versions (`issue#19871 <http://tracker.ceph.com/issues/19871>`_, `pr#14976 <https://github.com/ceph/ceph/pull/14976>`_, Mykola Golub) -* rbd-nbd: remove debug messages from do_unmap (`pr#14253 <https://github.com/ceph/ceph/pull/14253>`_, Pan Liu) -* rbd-nbd: s/cpp_error/cpp_strerror/ to fix FTBFS (`pr#14223 <https://github.com/ceph/ceph/pull/14223>`_, Kefu Chai) -* rbd-nbd: support signal handle for SIGHUP, SIGINT and SIGTERM (`issue#19349 <http://tracker.ceph.com/issues/19349>`_, `pr#14079 <https://github.com/ceph/ceph/pull/14079>`_, Pan Liu) -* rbd-nbd: update size only when NBD_SET_SIZE successful (`pr#14005 <https://github.com/ceph/ceph/pull/14005>`_, Pan Liu) -* rbd-nbd: warn when kernel parameters are ignored (`issue#19108 <http://tracker.ceph.com/issues/19108>`_, `pr#13694 <https://github.com/ceph/ceph/pull/13694>`_, Pan Liu) -* rbd: prevent adding multiple mirror peers to a single pool (`issue#19256 <http://tracker.ceph.com/issues/19256>`_, `pr#13919 <https://github.com/ceph/ceph/pull/13919>`_, Jason Dillaman) -* rbd: properly decode features when using image name optional (`issue#20185 <http://tracker.ceph.com/issues/20185>`_, `pr#15492 <https://github.com/ceph/ceph/pull/15492>`_, Jason Dillaman) -* rbd: pybind/rbd: add image metadata methods (`issue#19451 <http://tracker.ceph.com/issues/19451>`_, `pr#14463 <https://github.com/ceph/ceph/pull/14463>`_, Mykola Golub) -* rbd: pybind/rbd: fix crash if more than 1024 images in trash bin (`pr#15134 <https://github.com/ceph/ceph/pull/15134>`_, runsisi) -* rbd: rbd/bench: add notes of default values, it's easy to use (`pr#14762 <https://github.com/ceph/ceph/pull/14762>`_, Zheng Yin) -* rbd: rbd/bench: fix write gaps when doing sequential writes with io-threads > 1 (`pr#15206 <https://github.com/ceph/ceph/pull/15206>`_, Igor Fedotov) -* rbd: rbd, librbd: migrate atomic_t to std::atomic (`pr#14656 <https://github.com/ceph/ceph/pull/14656>`_, Jesse Williamson) -* rbd: rbd-mirror A/A: leader should track up/down rbd-mirror instances (`issue#18784 <http://tracker.ceph.com/issues/18784>`_, `pr#13571 <https://github.com/ceph/ceph/pull/13571>`_, Mykola Golub) -* rbd: rbd-mirror A/A: proxy InstanceReplayer APIs via InstanceWatcher RPC (`issue#18787 <http://tracker.ceph.com/issues/18787>`_, `pr#13978 <https://github.com/ceph/ceph/pull/13978>`_, Mykola Golub) -* rbd: recognize exclusive option (`pr#14785 <https://github.com/ceph/ceph/pull/14785>`_, Ilya Dryomov) -* rbd: removed hardcoded default pool (`pr#15518 <https://github.com/ceph/ceph/pull/15518>`_, Jason Dillaman) -* rbd: remove direct linking to static boost libraries (`pr#12962 <https://github.com/ceph/ceph/pull/12962>`_, Jason Dillaman) -* rbd: removed spurious error message from mirror pool commands (`pr#14935 <https://github.com/ceph/ceph/pull/14935>`_, Jason Dillaman) -* rbd: remove unused condition within group action handler (`pr#12723 <https://github.com/ceph/ceph/pull/12723>`_, Gaurav Kumar Garg) -* rbd,rgw,tools: tools/rbd, rgw: Removed unreachable returns (`pr#16308 <https://github.com/ceph/ceph/pull/16308>`_, Jos Collin) -* rbd: spell out image features unsupported by the kernel (`issue#19095 <http://tracker.ceph.com/issues/19095>`_, `pr#13812 <https://github.com/ceph/ceph/pull/13812>`_, Ilya Dryomov) -* rbd: stop indefinite thread waiting in krbd udev handling (`issue#17195 <http://tracker.ceph.com/issues/17195>`_, `pr#14051 <https://github.com/ceph/ceph/pull/14051>`_, Spandan Kumar Sahu) -* rbd: test: fix rbd unit test cases w/ striping feature (`issue#18888 <http://tracker.ceph.com/issues/18888>`_, `pr#13196 <https://github.com/ceph/ceph/pull/13196>`_, Venky Shankar) -* rbd,tests: luminous: qa/workunits/rbd: use command line option to specify watcher asok (`issue#20954 <http://tracker.ceph.com/issues/20954>`_, `pr#16946 <https://github.com/ceph/ceph/pull/16946>`_, Mykola Golub) -* rbd,tests: luminous: test/librbd: fix race condition with OSD map refresh (`issue#20918 <http://tracker.ceph.com/issues/20918>`_, `pr#16903 <https://github.com/ceph/ceph/pull/16903>`_, Jason Dillaman) -* rbd,tests: qa: add workunit to test krbd data-pool support (`pr#13482 <https://github.com/ceph/ceph/pull/13482>`_, Ilya Dryomov) -* rbd,tests: qa: integrate OpenStack 'gate-tempest-dsvm-full-devstack-plugin-ceph' (`issue#18594 <http://tracker.ceph.com/issues/18594>`_, `pr#13158 <https://github.com/ceph/ceph/pull/13158>`_, Jason Dillaman) -* rbd,tests: qa: krbd_data_pool.sh: account for rbd_info metadata object (`pr#14631 <https://github.com/ceph/ceph/pull/14631>`_, Ilya Dryomov) -* rbd,tests: qa: krbd discard/zeroout tests (`pr#15388 <https://github.com/ceph/ceph/pull/15388>`_, Ilya Dryomov) -* rbd,tests: qa: krbd write-after-checksum tests (`pr#14836 <https://github.com/ceph/ceph/pull/14836>`_, Ilya Dryomov) -* rbd,tests: qa/suites/krbd: unmap subsuite needs straw buckets (`pr#15290 <https://github.com/ceph/ceph/pull/15290>`_, Ilya Dryomov) -* rbd,tests: qa/suites/rbd: restrict python memcheck validation to CentOS (`pr#15923 <https://github.com/ceph/ceph/pull/15923>`_, Jason Dillaman) -* rbd,tests: qa/tasks/qemu: update default image url after ceph.com redesign (`issue#18542 <http://tracker.ceph.com/issues/18542>`_, `pr#12953 <https://github.com/ceph/ceph/pull/12953>`_, Jason Dillaman) -* rbd,tests: qa/tasks/rbd_fio: bump default fio version to 2.21 (`pr#16656 <https://github.com/ceph/ceph/pull/16656>`_, Ilya Dryomov) -* rbd,tests: qa/tasks: rbd-mirror daemon not properly run in foreground mode (`issue#20630 <http://tracker.ceph.com/issues/20630>`_, `pr#16340 <https://github.com/ceph/ceph/pull/16340>`_, Jason Dillaman) -* rbd,tests: qa: thrash tests for backoff and upmap (`pr#16428 <https://github.com/ceph/ceph/pull/16428>`_, Ilya Dryomov) -* rbd,tests: qa: update krbd_data_pool.sh to match the new rados ls behavior (`pr#15594 <https://github.com/ceph/ceph/pull/15594>`_, Ilya Dryomov) -* rbd,tests: qa/workunits: adjust path to ceph-helpers.sh (`pr#16599 <https://github.com/ceph/ceph/pull/16599>`_, Sage Weil) -* rbd,tests: qa/workunits: corrected issues with RBD cli test (`pr#14460 <https://github.com/ceph/ceph/pull/14460>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: diff.sh failed removing nonexistent file (`pr#14482 <https://github.com/ceph/ceph/pull/14482>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: increased trash deferment period (`pr#14846 <https://github.com/ceph/ceph/pull/14846>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: resolve potential rbd-mirror race conditions (`issue#18935 <http://tracker.ceph.com/issues/18935>`_, `pr#13421 <https://github.com/ceph/ceph/pull/13421>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: test data pool is mirrored correctly (`pr#17077 <https://github.com/ceph/ceph/pull/17077>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: tweak rbd-mirror config to spead up testing (`pr#13228 <https://github.com/ceph/ceph/pull/13228>`_, Mykola Golub) -* rbd,tests: qa/workunits: switch to OpenStack Ocata release for RBD testing (`pr#14465 <https://github.com/ceph/ceph/pull/14465>`_, Jason Dillaman) -* rbd,tests: test: correct language mode in file headers (`pr#12924 <https://github.com/ceph/ceph/pull/12924>`_, Jason Dillaman) -* rbd,tests: test: fix compile warning in ceph_test_cls_rbd (`pr#15919 <https://github.com/ceph/ceph/pull/15919>`_, Jason Dillaman) -* rbd,tests: test: fix failing rbd devstack teuthology test (`pr#15956 <https://github.com/ceph/ceph/pull/15956>`_, Jason Dillaman) -* rbd,tests: test/librados_test_stub: fixed cls_cxx_map_get_keys/vals return value (`issue#19597 <http://tracker.ceph.com/issues/19597>`_, `pr#14484 <https://github.com/ceph/ceph/pull/14484>`_, Jason Dillaman) -* rbd,tests: test/librbd: add break_lock test (`pr#12842 <https://github.com/ceph/ceph/pull/12842>`_, Mykola Golub) -* rbd,tests: test/librbd/CMakeLists.txt: ceph_test_librbd_fsx requires linux includes/libs (`pr#13630 <https://github.com/ceph/ceph/pull/13630>`_, Willem Jan Withagen) -* rbd,tests: test/librbd/fsx: Add break in case OP_WRITESAME and OP_COMPARE_AND_WRITE (`pr#16742 <https://github.com/ceph/ceph/pull/16742>`_, Luo Kexue) -* rbd,tests: test/librbd: move tests using non-public api to internal (`pr#13806 <https://github.com/ceph/ceph/pull/13806>`_, Venky Shankar) -* rbd,tests: test/librbd/test_librbd.cc: set \*features even if RBD_FEATURES is unset (`issue#19865 <http://tracker.ceph.com/issues/19865>`_, `pr#14965 <https://github.com/ceph/ceph/pull/14965>`_, Dan Mick) -* rbd,tests: test/librbd/test_notify.py: don't disable feature in slave (`issue#19716 <http://tracker.ceph.com/issues/19716>`_, `pr#14751 <https://github.com/ceph/ceph/pull/14751>`_, Mykola Golub) -* rbd,tests: test/librbd: unit tests cleanup (`pr#15113 <https://github.com/ceph/ceph/pull/15113>`_, Mykola Golub) -* rbd,tests: test: rbd master/slave notify test should test active features (`issue#19692 <http://tracker.ceph.com/issues/19692>`_, `pr#14638 <https://github.com/ceph/ceph/pull/14638>`_, Jason Dillaman) -* rbd,tests: test/rbd_mirror: race in TestMockInstanceWatcher on destroy (`pr#14453 <https://github.com/ceph/ceph/pull/14453>`_, Mykola Golub) -* rbd,tests: test/rbd_mirror: race in TestMockLeaderWatcher.AcquireError (`issue#19405 <http://tracker.ceph.com/issues/19405>`_, `pr#14741 <https://github.com/ceph/ceph/pull/14741>`_, Mykola Golub) -* rbd,tests: test: remove hard-coded image name from RBD metadata test (`issue#19798 <http://tracker.ceph.com/issues/19798>`_, `pr#14848 <https://github.com/ceph/ceph/pull/14848>`_, Jason Dillaman) -* rbd,tests: test: support blacklisting within librados_test_stub (`pr#13737 <https://github.com/ceph/ceph/pull/13737>`_, Jason Dillaman) -* rbd,tests: test/unittest_librbd: remove unused variables (`pr#15720 <https://github.com/ceph/ceph/pull/15720>`_, shiqi) -* rbd,tests: test: use librados API to retrieve config params (`issue#18617 <http://tracker.ceph.com/issues/18617>`_, `pr#13076 <https://github.com/ceph/ceph/pull/13076>`_, Jason Dillaman) -* rbd,tools: rbdmap: consider /etc/ceph/rbdmap when unmapping images (`issue#18884 <http://tracker.ceph.com/issues/18884>`_, `pr#13361 <https://github.com/ceph/ceph/pull/13361>`_, David Disseldorp) -* rbd,tools: tools/rbd_mirror: initialize non-static class member m_do_resync in ImageReplayer (`pr#15889 <https://github.com/ceph/ceph/pull/15889>`_, Jos Collin) -* rbd,tools: tools/rbd_nbd: add --version show support (`pr#16254 <https://github.com/ceph/ceph/pull/16254>`_, Jin Cai) -* rbd: use concurrent writes for imports (`issue#19034 <http://tracker.ceph.com/issues/19034>`_, `pr#13782 <https://github.com/ceph/ceph/pull/13782>`_, Venky Shankar) -* rbd: use min<uint64_t>() explicitly (`issue#18938 <http://tracker.ceph.com/issues/18938>`_, `pr#14202 <https://github.com/ceph/ceph/pull/14202>`_, Kefu Chai) -* rbd: validate pool and snap name optionals (`issue#14535 <http://tracker.ceph.com/issues/14535>`_, `pr#13836 <https://github.com/ceph/ceph/pull/13836>`_, Gaurav Kumar Garg) -* rbd: warning, ‘devno’ may be used uninitialized in this function (`pr#14271 <https://github.com/ceph/ceph/pull/14271>`_, Jos Collin) -* rbd: When Ceph cluster becomes full, should allow user to remove rbd … (`pr#12627 <https://github.com/ceph/ceph/pull/12627>`_, Pan Liu) -* rdma: msg/async: Postpone bind if network stack is not ready (`pr#14414 <https://github.com/ceph/ceph/pull/14414>`_, Amir Vadai, Haomai Wang) -* rdma: msg/async/rdma: Add DSCP support (`pr#15484 <https://github.com/ceph/ceph/pull/15484>`_, Sarit Zubakov) -* rdma: msg/async/rdma: add inqueue rx chunks perf counter (`pr#14782 <https://github.com/ceph/ceph/pull/14782>`_, Haomai Wang) -* rdma: msg/async/rdma: fix log line spacing (`pr#13263 <https://github.com/ceph/ceph/pull/13263>`_, Adir Lev) -* rdma: msg/async/rdma: Make poll_blocking() poll for async events in additio… (`pr#14320 <https://github.com/ceph/ceph/pull/14320>`_, Amir Vadai) -* rdma: msg/async/rdma: Make port number an attribute of the Connection not o… (`pr#14297 <https://github.com/ceph/ceph/pull/14297>`_, Amir Vadai) -* rdma: msg/async/rdma: RDMA-CM, get_device() by ibv_context (`pr#14410 <https://github.com/ceph/ceph/pull/14410>`_, Amir Vadai) -* rdma: msg/async: Revert RDMA-CM (`pr#15262 <https://github.com/ceph/ceph/pull/15262>`_, Amir Vadai) - Replace using sleep with new wait_for_health() bash function -* rgw: abort early when s->length empty during putobj (`pr#15682 <https://github.com/ceph/ceph/pull/15682>`_, Jiaying Ren) -* rgw: AbortMultipart request returns NoSuchUpload error if the meta obj doesn't exist (`pr#12793 <https://github.com/ceph/ceph/pull/12793>`_, Zhang Shaowen) -* rgw: acl grants num limit (`pr#16291 <https://github.com/ceph/ceph/pull/16291>`_, Enming Zhang) -* rgw: add a new error code for non-existed subuser (`pr#16095 <https://github.com/ceph/ceph/pull/16095>`_, Zhao Chao) -* rgw: add a new error code for non-existed user (`issue#20468 <http://tracker.ceph.com/issues/20468>`_, `pr#16033 <https://github.com/ceph/ceph/pull/16033>`_, Zhao Chao) -* rgw: add apis to support ragweed (`pr#13645 <https://github.com/ceph/ceph/pull/13645>`_, Yehuda Sadeh) -* rgw: add a separate configuration for data notify interval (`pr#16551 <https://github.com/ceph/ceph/pull/16551>`_, fang yuxiang) -* rgw: add bucket size limit check to radosgw-admin (`issue#17925 <http://tracker.ceph.com/issues/17925>`_, `pr#11796 <https://github.com/ceph/ceph/pull/11796>`_, Matt Benjamin) -* rgw: Added a globbing method for AWS Policies (`pr#12445 <https://github.com/ceph/ceph/pull/12445>`_, Pritha Srivastava) -* rgw: Added code for REST APIs for AWS Roles (`pr#12104 <https://github.com/ceph/ceph/pull/12104>`_, Pritha Srivastava) -* rgw: Added code to correctly account for bytes sent/ received during a 'PUT' operation (`pr#14042 <https://github.com/ceph/ceph/pull/14042>`_, Pritha Srivastava) -* rgw: Adding code to create tenanted user for s3 bucket policy tests (`pr#15028 <https://github.com/ceph/ceph/pull/15028>`_, Pritha Srivastava) -* rgw: add lifecycle validation according to S3 (`issue#18394 <http://tracker.ceph.com/issues/18394>`_, `pr#12750 <https://github.com/ceph/ceph/pull/12750>`_, Zhang Shaowen) -* rgw: add missing RGWPeriod::reflect() based on new atomic update_latest_epoch() (`issue#19816 <http://tracker.ceph.com/issues/19816>`_, `issue#19817 <http://tracker.ceph.com/issues/19817>`_, `pr#14915 <https://github.com/ceph/ceph/pull/14915>`_, Casey Bodley) -* rgw: add --num-zonegroups option for multi test (`pr#14216 <https://github.com/ceph/ceph/pull/14216>`_, lvshuhua) -* rgw: add override in header files mostly (`pr#13586 <https://github.com/ceph/ceph/pull/13586>`_, liuchang0812) -* rgw: add override in rgw subsystem (`issue#18922 <http://tracker.ceph.com/issues/18922>`_, `pr#13441 <https://github.com/ceph/ceph/pull/13441>`_, liuchang0812) -* rgw: add pool namespace to cache's key so that system obj can have unique key (`issue#19372 <http://tracker.ceph.com/issues/19372>`_, `pr#14125 <https://github.com/ceph/ceph/pull/14125>`_, Zhang Shaowen) -* rgw: add radosclient finisher to perf counter (`issue#19011 <http://tracker.ceph.com/issues/19011>`_, `pr#13535 <https://github.com/ceph/ceph/pull/13535>`_, lvshuhua) -* rgw: add "rgw_verify_ssl" config (`pr#15301 <https://github.com/ceph/ceph/pull/15301>`_, Shasha Lu) -* rgw: add 'state==SyncState::IncrementalSync' condition when add item … (`pr#14552 <https://github.com/ceph/ceph/pull/14552>`_, Shasha Lu) -* rgw: add support container and object levels of swift bulkupload (`pr#14775 <https://github.com/ceph/ceph/pull/14775>`_, Jing Wenjun) -* rgw: add support for delete marker expiration in s3 lifecycle (`issue#19730 <http://tracker.ceph.com/issues/19730>`_, `pr#14703 <https://github.com/ceph/ceph/pull/14703>`_, Zhang Shaowen) -* rgw: add support for FormPost of Swift API (`issue#17273 <http://tracker.ceph.com/issues/17273>`_, `pr#11179 <https://github.com/ceph/ceph/pull/11179>`_, Radoslaw Zarzynski, Orit Wasserman) -* rgw: add support for multipart upload expiration (`issue#19088 <http://tracker.ceph.com/issues/19088>`_, `pr#13622 <https://github.com/ceph/ceph/pull/13622>`_, Zhang Shaowen) -* rgw: add support for noncurrentversion expiration in s3 lifecycle (`issue#18916 <http://tracker.ceph.com/issues/18916>`_, `pr#13385 <https://github.com/ceph/ceph/pull/13385>`_, Zhang Shaowen) -* rgw: add support for Swift's TempURLs with prefix-based scope (`issue#20398 <http://tracker.ceph.com/issues/20398>`_, `pr#16370 <https://github.com/ceph/ceph/pull/16370>`_, Radoslaw Zarzynski) -* rgw: add support for the BulkUpload of Swift API (`pr#12243 <https://github.com/ceph/ceph/pull/12243>`_, Radoslaw Zarzynski) -* rgw: add the remove-x-delete feature to cancel swift object expiration (`issue#19074 <http://tracker.ceph.com/issues/19074>`_, `pr#13621 <https://github.com/ceph/ceph/pull/13621>`_, Jing Wenjun) -* rgw: add the Vim's modeline into rgw_orphan.cc (`pr#15431 <https://github.com/ceph/ceph/pull/15431>`_, Radoslaw Zarzynski) -* rgw: add variadic string join for s3 signature generation (`pr#15678 <https://github.com/ceph/ceph/pull/15678>`_, Casey Bodley) -* rgw: Add --zonegroup-new-name in usage (`pr#12084 <https://github.com/ceph/ceph/pull/12084>`_, Hans van den Bogert) -* rgw: allow larger payload for period commit (`issue#19505 <http://tracker.ceph.com/issues/19505>`_, `pr#14355 <https://github.com/ceph/ceph/pull/14355>`_, Casey Bodley) -* rgw: allow system users to read SLO parts (`issue#19027 <http://tracker.ceph.com/issues/19027>`_, `pr#13561 <https://github.com/ceph/ceph/pull/13561>`_, Casey Bodley) -* rgw: auto reshard old buckets (`pr#15665 <https://github.com/ceph/ceph/pull/15665>`_, Orit Wasserman) -* rgw: avoid listing user buckets for rgw_delete_user (`pr#13991 <https://github.com/ceph/ceph/pull/13991>`_, liuchang0812) -* rgw: avoid using null pointer in rgw_file.cc (`pr#14474 <https://github.com/ceph/ceph/pull/14474>`_, lihongjie) -* rgw: be aware abount tenants on cls_user_bucket -> rgw_bucket conversion (`issue#18364 <http://tracker.ceph.com/issues/18364>`_, `issue#16355 <http://tracker.ceph.com/issues/16355>`_, `pr#13220 <https://github.com/ceph/ceph/pull/13220>`_, Radoslaw Zarzynski) -* rgw: bucket index check in radosgw-admin removes valid index (`issue#18470 <http://tracker.ceph.com/issues/18470>`_, `pr#12851 <https://github.com/ceph/ceph/pull/12851>`_, Zhang Shaowen) -* rgw: bucket stats display bucket index type (`pr#14466 <https://github.com/ceph/ceph/pull/14466>`_, fang yuxiang) -* rgw: change default chunk size to 4MB (`issue#18621 <http://tracker.ceph.com/issues/18621>`_, `issue#18622 <http://tracker.ceph.com/issues/18622>`_, `issue#18623 <http://tracker.ceph.com/issues/18623>`_, `pr#13035 <https://github.com/ceph/ceph/pull/13035>`_, Yehuda Sadeh) -* rgw: change loglevel to 20 for 'System already converted' message (`issue#18919 <http://tracker.ceph.com/issues/18919>`_, `pr#13399 <https://github.com/ceph/ceph/pull/13399>`_, Vikhyat Umrao) -* rgw: change loglevel to 5 in user's quota sync (`issue#18921 <http://tracker.ceph.com/issues/18921>`_, `pr#13408 <https://github.com/ceph/ceph/pull/13408>`_, Zhang Shaowen) -* rgw: Changes for s3test config file, to add user under a tenant (`pr#15753 <https://github.com/ceph/ceph/pull/15753>`_, Pritha Srivastava) -* rgw: check placement existence when create bucket (`pr#16385 <https://github.com/ceph/ceph/pull/16385>`_, Jiaying Ren) -* rgw: check placement target existence during bucket creation (`pr#16384 <https://github.com/ceph/ceph/pull/16384>`_, Jiaying Ren) -* rgw: civetweb don't go past the array index while calling mg_start (`issue#19749 <http://tracker.ceph.com/issues/19749>`_, `pr#14750 <https://github.com/ceph/ceph/pull/14750>`_, Abhishek Lekshmanan, Jesse Williamson) -* rgw: clean redundant code (`pr#13302 <https://github.com/ceph/ceph/pull/13302>`_, Yankun Li) -* rgw: clean unuse code in cls_statelog_check_state (`pr#10260 <https://github.com/ceph/ceph/pull/10260>`_, weiqiaomiao) -* rgw: clean-up error mapping in Swift's authentication strategy (`pr#15756 <https://github.com/ceph/ceph/pull/15756>`_, Radoslaw Zarzynski) -* rgw: cleanup: fix variable name in RGWRados::create_pool() declaration (`pr#14547 <https://github.com/ceph/ceph/pull/14547>`_, Nathan Cutler) -* rgw: cleanup lc continuation (`pr#14906 <https://github.com/ceph/ceph/pull/14906>`_, Jiaying Ren) -* rgw: cleanup lifecycle managament (`pr#13820 <https://github.com/ceph/ceph/pull/13820>`_, Jiaying Ren) -* rgw: cleanup rgw-admin duplicated judge during OLH GET/READLOG (`pr#15700 <https://github.com/ceph/ceph/pull/15700>`_, Jiaying Ren) -* rgw: clean up the redundant assignment in last_entry_in_listing (`pr#13387 <https://github.com/ceph/ceph/pull/13387>`_, Jing Wenjun) -* rgw: clean up the unneeded rgw::io::ChunkingFilter::has_content_length (`pr#13504 <https://github.com/ceph/ceph/pull/13504>`_, Radoslaw Zarzynski) -* rgw: cleanup unused codes in rgw_admin.cc (`pr#15771 <https://github.com/ceph/ceph/pull/15771>`_, fang yuxiang) -* rgw: cleanup unused var in rgw/rgw_rest_s3.cc (`pr#13434 <https://github.com/ceph/ceph/pull/13434>`_, Jiaying Ren) -* rgw: clear master_zonegroup when reseting RGWPeriodMap (`issue#17239 <http://tracker.ceph.com/issues/17239>`_, `pr#12658 <https://github.com/ceph/ceph/pull/12658>`_, Orit Wasserman) -* rgw: clear old zone short ids on period update (`issue#15618 <http://tracker.ceph.com/issues/15618>`_, `pr#13949 <https://github.com/ceph/ceph/pull/13949>`_, Casey Bodley) -* rgw: cls: ceph::timespan tag_timeout wrong units (`issue#20380 <http://tracker.ceph.com/issues/20380>`_, `pr#16026 <https://github.com/ceph/ceph/pull/16026>`_, Matt Benjamin) -* rgw: cls/rgw: Clean up the "magic string" usage in the cls layer for RGW (`pr#12536 <https://github.com/ceph/ceph/pull/12536>`_, Ira Cooper) -* rgw: cls/rgw: list_plain_entries() stops before bi_log entries (`issue#19876 <http://tracker.ceph.com/issues/19876>`_, `pr#14981 <https://github.com/ceph/ceph/pull/14981>`_, Casey Bodley) -* rgw: cls/user: cls_user_bucket backward compatibility (`issue#19367 <http://tracker.ceph.com/issues/19367>`_, `pr#14128 <https://github.com/ceph/ceph/pull/14128>`_, Yehuda Sadeh) -* rgw: cls_user don't clobber existing bucket stats when creating bucket (`issue#16357 <http://tracker.ceph.com/issues/16357>`_, `pr#10121 <https://github.com/ceph/ceph/pull/10121>`_, Abhishek Lekshmanan) -* rgw: complete versioning enablement after sending it to meta master (`issue#18003 <http://tracker.ceph.com/issues/18003>`_, `pr#12444 <https://github.com/ceph/ceph/pull/12444>`_, Orit Wasserman) -* rgw: Compress crash bug refactor (`issue#20098 <http://tracker.ceph.com/issues/20098>`_, `pr#15569 <https://github.com/ceph/ceph/pull/15569>`_, Adam Kupczyk) -* rgw: continuation of the auth rework -- AWSv4 (`issue#18800 <http://tracker.ceph.com/issues/18800>`_, `pr#14885 <https://github.com/ceph/ceph/pull/14885>`_, Radoslaw Zarzynski, Javier M. Mellid) -* rgw: continuation of the auth rework (`pr#12893 <https://github.com/ceph/ceph/pull/12893>`_, Radoslaw Zarzynski, Matt Benjamin) -* rgw: Correcting the condition in ceph_assert while parsing an AWS Principal (`pr#15997 <https://github.com/ceph/ceph/pull/15997>`_, Pritha Srivastava) -* rgw: correct the debug info when unlink instance failed (`pr#13761 <https://github.com/ceph/ceph/pull/13761>`_, Zhang Shaowen) -* rgw: Correct the return codes for the health check feature (`issue#19025 <http://tracker.ceph.com/issues/19025>`_, `pr#13557 <https://github.com/ceph/ceph/pull/13557>`_, Pavan Rallabhandi) -* rgw: custom user data header (`issue#19644 <http://tracker.ceph.com/issues/19644>`_, `pr#14592 <https://github.com/ceph/ceph/pull/14592>`_, Pavan Rallabhandi) -* rgw: datalog trim and mdlog trim handles the result returned by osd incorrectly (`issue#20190 <http://tracker.ceph.com/issues/20190>`_, `pr#15507 <https://github.com/ceph/ceph/pull/15507>`_, Zhang Shaowen) -* rgw: data sync includes instance in rgw_obj_index_key (`pr#13948 <https://github.com/ceph/ceph/pull/13948>`_, Casey Bodley) -* rgw: deduplicate variants of rgw_make_bucket_entry_name() (`pr#14299 <https://github.com/ceph/ceph/pull/14299>`_, Radoslaw Zarzynski) -* rgw: delete non-empty buckets in slave zonegroup works not well (`issue#19313 <http://tracker.ceph.com/issues/19313>`_, `pr#14043 <https://github.com/ceph/ceph/pull/14043>`_, Zhang Shaowen) -* rgw: delete object in error path (`issue#20620 <http://tracker.ceph.com/issues/20620>`_, `pr#16324 <https://github.com/ceph/ceph/pull/16324>`_, Yehuda Sadeh) -* rgw: disable dynamic reshading for 1st L point release (`pr#16969 <https://github.com/ceph/ceph/pull/16969>`_, Matt Benjamin) -* rgw: display more info when using radosgw-admin bucket stats (`pr#15256 <https://github.com/ceph/ceph/pull/15256>`_, fang.yuxiang) -* rgw: Do not decrement stats cache when the cache values are zero (`issue#20661 <http://tracker.ceph.com/issues/20661>`_, `pr#16389 <https://github.com/ceph/ceph/pull/16389>`_, Pavan Rallabhandi) -* rgw: Do not fetch bucket stats by default upon bucket listing (`issue#20377 <http://tracker.ceph.com/issues/20377>`_, `pr#15834 <https://github.com/ceph/ceph/pull/15834>`_, Pavan Rallabhandi) -* rgw: do not log debug output at level 0 (`pr#15633 <https://github.com/ceph/ceph/pull/15633>`_, Jens Rosenboom) -* rgw: don't do unneccesary write if buffer with zero length (`pr#14925 <https://github.com/ceph/ceph/pull/14925>`_, fang yuxiang) -* rgw: don't init rgw_obj from rgw_obj_key when it's incorrect to do so (`issue#19096 <http://tracker.ceph.com/issues/19096>`_, `pr#13676 <https://github.com/ceph/ceph/pull/13676>`_, Yehuda Sadeh) -* rgw: don't log the env_map twice (`pr#13481 <https://github.com/ceph/ceph/pull/13481>`_, Abhishek Lekshmanan) -* rgw: don't read all user input for a few param requests (`pr#13815 <https://github.com/ceph/ceph/pull/13815>`_, Abhishek Lekshmanan) -* rgw: don't return skew time error in pre-signed url (`issue#18828 <http://tracker.ceph.com/issues/18828>`_, `pr#13354 <https://github.com/ceph/ceph/pull/13354>`_, liuchang0812) -* rgw: dont spawn error_repo until lease is acquired (`issue#19446 <http://tracker.ceph.com/issues/19446>`_, `pr#14714 <https://github.com/ceph/ceph/pull/14714>`_, Casey Bodley) -* rgw: don't specify a length when converting bl -> string (`issue#20037 <http://tracker.ceph.com/issues/20037>`_, `pr#15599 <https://github.com/ceph/ceph/pull/15599>`_, Abhishek Lekshmanan) -* rgw: don't use strlen in constexprs to not brake Clang builds (`pr#15688 <https://github.com/ceph/ceph/pull/15688>`_, Radoslaw Zarzynski) -* rgw: drop asio/{yield,coroutine}.hpp replacements (`pr#15413 <https://github.com/ceph/ceph/pull/15413>`_, Kefu Chai) -* rgw: Drop dump_usage_bucket_info() to silence warning from -Wunused-function (`pr#16497 <https://github.com/ceph/ceph/pull/16497>`_, Wei Qiaomiao) -* rgw: drop unused find_replacement() and some function docs (`pr#16386 <https://github.com/ceph/ceph/pull/16386>`_, Jiaying Ren) -* rgw: drop unused function RGWRemoteDataLog::get_shard_info() (`pr#16236 <https://github.com/ceph/ceph/pull/16236>`_, Shasha Lu) -* rgw: drop unused param "bucket" from select_bucket_placement (`pr#14390 <https://github.com/ceph/ceph/pull/14390>`_, Shasha Lu) -* rgw: drop unused port var (`pr#14412 <https://github.com/ceph/ceph/pull/14412>`_, Jiaying Ren) -* rgw: drop unused rgw_pool parameter, local variables and member variable (`pr#16154 <https://github.com/ceph/ceph/pull/16154>`_, Jiaying Ren) -* rgw: drop unused var header_ended (`pr#15686 <https://github.com/ceph/ceph/pull/15686>`_, Jiaying Ren) -* rgw: drop using std ns in header files and other cleanups (`pr#15137 <https://github.com/ceph/ceph/pull/15137>`_, Abhishek Lekshmanan) -* rgw: dynamic resharding (`pr#15493 <https://github.com/ceph/ceph/pull/15493>`_, Yehuda Sadeh, Orit Wasserman) -* rgw: enable to update acl of bucket created in slave zonegroup (`issue#16888 <http://tracker.ceph.com/issues/16888>`_, `pr#14082 <https://github.com/ceph/ceph/pull/14082>`_, Guo Zhandong) -* rgw: error_code in error log is not right when data sync fails (`issue#18437 <http://tracker.ceph.com/issues/18437>`_, `pr#12810 <https://github.com/ceph/ceph/pull/12810>`_, Zhang Shaowen) -* rgw: error more verbosely in RGWRados::create_pool (`pr#14642 <https://github.com/ceph/ceph/pull/14642>`_, Matt Benjamin) -* rgw: external auth engines of S3 honor rgw_keystone_implicit_tenants (`issue#17779 <http://tracker.ceph.com/issues/17779>`_, `pr#15572 <https://github.com/ceph/ceph/pull/15572>`_, Radoslaw Zarzynski) -* rgw: Fix a bug that multipart upload may exceed the quota (`issue#19602 <http://tracker.ceph.com/issues/19602>`_, `pr#12010 <https://github.com/ceph/ceph/pull/12010>`_, Zhang Shaowen) -* rgw: fix asctime when logging in rgw_lc (`pr#16422 <https://github.com/ceph/ceph/pull/16422>`_, Abhishek Lekshmanan) -* rgw: fix break inside of yield in RGWFetchAllMetaCR (`issue#17655 <http://tracker.ceph.com/issues/17655>`_, `pr#11586 <https://github.com/ceph/ceph/pull/11586>`_, Casey Bodley) -* rgw: fix broken /crossdomain.xml, /info and /healthcheck of Swift API (`issue#19520 <http://tracker.ceph.com/issues/19520>`_, `pr#14373 <https://github.com/ceph/ceph/pull/14373>`_, Radoslaw Zarzynski) -* rgw: fix build of conflict after auth rework (`pr#14203 <https://github.com/ceph/ceph/pull/14203>`_, Casey Bodley) -* rgw: fix configurable write obj window size (`pr#13934 <https://github.com/ceph/ceph/pull/13934>`_, hechuang) -* rgw: fix constexpr for string_size in clang (`pr#15738 <https://github.com/ceph/ceph/pull/15738>`_, Adam C. Emerson, Casey Bodley) -* rgw: fix disabling Swift's object versioning through empty X-Versions-Location (`issue#18852 <http://tracker.ceph.com/issues/18852>`_, `pr#13303 <https://github.com/ceph/ceph/pull/13303>`_, Jing Wenjun) -* rgw: Fix duplicate tag removal during GC (`issue#20107 <http://tracker.ceph.com/issues/20107>`_, `pr#15912 <https://github.com/ceph/ceph/pull/15912>`_, Jens Rosenboom) -* rgw: fix error code of inexistence of versions location in swift api (`issue#18880 <http://tracker.ceph.com/issues/18880>`_, `pr#13350 <https://github.com/ceph/ceph/pull/13350>`_, Jing Wenjun) -* rgw: fix error handling in get_params() of RGWPostObj_ObjStore_S3 (`pr#15670 <https://github.com/ceph/ceph/pull/15670>`_, Radoslaw Zarzynski) -* rgw: fix error handling in the link() method of RGWBucket (`issue#20279 <http://tracker.ceph.com/issues/20279>`_, `pr#15669 <https://github.com/ceph/ceph/pull/15669>`_, Radoslaw Zarzynski) -* rgw: fix error message in removing bucket with --bypass-gc flag (`issue#20688 <http://tracker.ceph.com/issues/20688>`_, `pr#16419 <https://github.com/ceph/ceph/pull/16419>`_, Abhishek Varshney) -* rgw: fix err when copy object in bucket with specified placement rule (`issue#20378 <http://tracker.ceph.com/issues/20378>`_, `pr#15837 <https://github.com/ceph/ceph/pull/15837>`_, fang yuxiang) -* rgw: fixes for AWSBrowserUploadAbstractor auth (`issue#20372 <http://tracker.ceph.com/issues/20372>`_, `pr#15882 <https://github.com/ceph/ceph/pull/15882>`_, Radoslaw Zarzynski, Casey Bodley) -* rgw:Fixes typo in rgw_admin.cc (`issue#19026 <http://tracker.ceph.com/issues/19026>`_, `pr#13576 <https://github.com/ceph/ceph/pull/13576>`_, Ronak Jain) -* rgw: fix for broken yields in RGWMetaSyncShardCR (`issue#18076 <http://tracker.ceph.com/issues/18076>`_, `pr#12223 <https://github.com/ceph/ceph/pull/12223>`_, Casey Bodley) -* rgw: fix for EINVAL errors on forwarded bucket put_acl requests (`pr#14376 <https://github.com/ceph/ceph/pull/14376>`_, Casey Bodley) -* rgw: fix for null version_id in fetch_remote_obj() (`pr#14375 <https://github.com/ceph/ceph/pull/14375>`_, Casey Bodley) -* rgw: Fix for Policy Parse exception in case of multiple statements (`pr#16689 <https://github.com/ceph/ceph/pull/16689>`_, Pritha Srivastava) -* rgw: fix forward request for bulkupload to be applied in multisite (`issue#19645 <http://tracker.ceph.com/issues/19645>`_, `pr#14601 <https://github.com/ceph/ceph/pull/14601>`_, Jing Wenjun) -* rgw: fix 'gc list --include-all' command infinite loop the first items (`issue#19978 <http://tracker.ceph.com/issues/19978>`_, `pr#12774 <https://github.com/ceph/ceph/pull/12774>`_, Shasha Lu, fang yuxiang) -* rgw: fix get bucket policy s3 compatible issue (`pr#15280 <https://github.com/ceph/ceph/pull/15280>`_, Enming Zhang) -* rgw: fix handling of --remote in radosgw-admin period commands (`issue#19554 <http://tracker.ceph.com/issues/19554>`_, `pr#14407 <https://github.com/ceph/ceph/pull/14407>`_, Casey Bodley) -* rgw: fix handling RGWUserInfo::system in RGWHandler_REST_SWIFT (`issue#18476 <http://tracker.ceph.com/issues/18476>`_, `pr#12865 <https://github.com/ceph/ceph/pull/12865>`_, Radoslaw Zarzynski) -* rgw: fix infinite loop in rest api for log list (`issue#20386 <http://tracker.ceph.com/issues/20386>`_, `pr#15983 <https://github.com/ceph/ceph/pull/15983>`_, xierui, Casey Bodley) -* rgw: fix init_bucket_for_sync retcode (`pr#13684 <https://github.com/ceph/ceph/pull/13684>`_, Shasha Lu) -* rgw: fix lc list failure when shards not be all created (`issue#19898 <http://tracker.ceph.com/issues/19898>`_, `pr#15025 <https://github.com/ceph/ceph/pull/15025>`_, Jiaying Ren) -* rgw: fix leaks with incomplete multiparts (`issue#17164 <http://tracker.ceph.com/issues/17164>`_, `pr#15630 <https://github.com/ceph/ceph/pull/15630>`_, Abhishek Varshney) -* rgw: fix marker encoding problem (`issue#20463 <http://tracker.ceph.com/issues/20463>`_, `pr#15998 <https://github.com/ceph/ceph/pull/15998>`_, Marcus Watts) -* rgw: fix memory leak in copy_obj_to_remote_dest (`pr#9974 <https://github.com/ceph/ceph/pull/9974>`_, weiqiaomiao) -* rgw: fix memory leak in delete_obj_aio (`pr#13998 <https://github.com/ceph/ceph/pull/13998>`_, wangzhengyong) -* rgw: fix memory leak in RGWGetObjLayout (`pr#14014 <https://github.com/ceph/ceph/pull/14014>`_, liuchang0812) -* rgw: fix memory leaks during Swift Static Website's error handling (`issue#20757 <http://tracker.ceph.com/issues/20757>`_, `pr#16531 <https://github.com/ceph/ceph/pull/16531>`_, Radoslaw Zarzynski) -* rgw: fix not initialized vars which cause rgw crash with ec data pool (`issue#20542 <http://tracker.ceph.com/issues/20542>`_, `pr#16177 <https://github.com/ceph/ceph/pull/16177>`_, Aleksei Gutikov) -* rgw: fix off-by-one in RGWDataChangesLog::get_info (`issue#18488 <http://tracker.ceph.com/issues/18488>`_, `pr#12884 <https://github.com/ceph/ceph/pull/12884>`_, Casey Bodley) -* rgw: fix parse/eval of policy conditions with IfExists (`issue#20708 <http://tracker.ceph.com/issues/20708>`_, `pr#16463 <https://github.com/ceph/ceph/pull/16463>`_, Casey Bodley) -* rgw: fix period update crash (`issue#18631 <http://tracker.ceph.com/issues/18631>`_, `pr#13054 <https://github.com/ceph/ceph/pull/13054>`_, Orit Wasserman) -* rgw: fix potential null pointer dereference in rgw_admin (`pr#15667 <https://github.com/ceph/ceph/pull/15667>`_, Radoslaw Zarzynski) -* rgw: fix radosgw-admin data sync run crash (`issue#20423 <http://tracker.ceph.com/issues/20423>`_, `pr#15938 <https://github.com/ceph/ceph/pull/15938>`_, Shasha Lu) -* rgw: fix radosgw-admin retcode (`pr#15257 <https://github.com/ceph/ceph/pull/15257>`_, Shasha Lu) -* rgw: fix RadosGW hang during multi-chunk upload of AWSv4 (`issue#19754 <http://tracker.ceph.com/issues/19754>`_, `pr#14770 <https://github.com/ceph/ceph/pull/14770>`_, Radoslaw Zarzynski) -* rgw: fix radosgw will crash when service is restarted during lifecycl… (`issue#20756 <http://tracker.ceph.com/issues/20756>`_, `pr#16495 <https://github.com/ceph/ceph/pull/16495>`_, Wei Qiaomiao) -* rgw: fix response header of Swift API (`issue#19443 <http://tracker.ceph.com/issues/19443>`_, `pr#14280 <https://github.com/ceph/ceph/pull/14280>`_, tone-zhang) -* rgw: fix rest client's order of args in get_v2_signature (`pr#15731 <https://github.com/ceph/ceph/pull/15731>`_, Casey Bodley) -* rgw: fix rgw bucket policy IfExists position (`issue#20248 <http://tracker.ceph.com/issues/20248>`_, `pr#15607 <https://github.com/ceph/ceph/pull/15607>`_, yuliyang) -* rgw: fix rgw hang when do RGWRealmReloader::reload after go SIGHUP (`issue#20686 <http://tracker.ceph.com/issues/20686>`_, `pr#16417 <https://github.com/ceph/ceph/pull/16417>`_, fang.yuxiang) -* rgw: fix RGWPutBucketPolicy error when set BucketPolicy again without delete pre set Policy (`issue#20252 <http://tracker.ceph.com/issues/20252>`_, `pr#15617 <https://github.com/ceph/ceph/pull/15617>`_, yuliyang) -* rgw: fix s3 object uploads with chunked transfers and v4 signatures (`issue#20447 <http://tracker.ceph.com/issues/20447>`_, `pr#15965 <https://github.com/ceph/ceph/pull/15965>`_, Marcus Watts) -* rgw: fix segfault in RevokeThread during its shutdown procedure (`issue#19831 <http://tracker.ceph.com/issues/19831>`_, `pr#15033 <https://github.com/ceph/ceph/pull/15033>`_, Radoslaw Zarzynski) -* rgw: fix slave zonegroup cannot enable the bucket versioning (`issue#18003 <http://tracker.ceph.com/issues/18003>`_, `pr#12175 <https://github.com/ceph/ceph/pull/12175>`_, lvshuhua) -* rgw: fix SLO/DLO range requests (`pr#15060 <https://github.com/ceph/ceph/pull/15060>`_, Shasha Lu) - rgw: fix swift cannot disable object versioning -* rgw: fix swift default auth error after auth strategy refactoring (`pr#15711 <https://github.com/ceph/ceph/pull/15711>`_, Casey Bodley) -* rgw: fix test_multi.py default config file path (`pr#15306 <https://github.com/ceph/ceph/pull/15306>`_, Jiaying Ren) -* rgw: fix the bug that part's index can't be removed after completing multipart upload (`issue#19604 <http://tracker.ceph.com/issues/19604>`_, `pr#14500 <https://github.com/ceph/ceph/pull/14500>`_, Zhang Shaowen) -* rgw: fix the signature mismatch of FormPost in swift API (`issue#20220 <http://tracker.ceph.com/issues/20220>`_, `pr#15564 <https://github.com/ceph/ceph/pull/15564>`_, Jing Wenjun) -* rgw: fix the UTF8 check on bucket entry name in rgw_log_op() (`issue#20779 <http://tracker.ceph.com/issues/20779>`_, `pr#16604 <https://github.com/ceph/ceph/pull/16604>`_, Radoslaw Zarzynski) -* rgw: fix transition from full to incremental meta sync (`pr#13920 <https://github.com/ceph/ceph/pull/13920>`_, Casey Bodley) -* rgw: fix typo in comment (`pr#13578 <https://github.com/ceph/ceph/pull/13578>`_, liuchang0812) -* rgw: fix uninitialized fields (`pr#14120 <https://github.com/ceph/ceph/pull/14120>`_, wangzhengyong) -* rgw: fix upgrate from hammer when zone doesn't have zoneparams (`issue#19231 <http://tracker.ceph.com/issues/19231>`_, `pr#13900 <https://github.com/ceph/ceph/pull/13900>`_, Orit Wasserman) -* rgw: Fix up to 1000 entries at a time in check_bad_index_multipart (`issue#20772 <http://tracker.ceph.com/issues/20772>`_, `pr#16692 <https://github.com/ceph/ceph/pull/16692>`_, Orit Wasserman) -* rgw: fix use of marker in List::list_objects() (`issue#18331 <http://tracker.ceph.com/issues/18331>`_, `pr#13147 <https://github.com/ceph/ceph/pull/13147>`_, Yehuda Sadeh) -* rgw: fix versioned bucket data sync fail when upload is busy (`issue#18208 <http://tracker.ceph.com/issues/18208>`_, `pr#12357 <https://github.com/ceph/ceph/pull/12357>`_, lvshuhua) -* rgw: fix wrong error code for expired Swift TempURL's links (`issue#20384 <http://tracker.ceph.com/issues/20384>`_, `pr#15850 <https://github.com/ceph/ceph/pull/15850>`_, Radoslaw Zarzynski) -* rgw: fix X-Object-Meta-Static-Large-Object in SLO download (`issue#19951 <http://tracker.ceph.com/issues/19951>`_, `pr#15045 <https://github.com/ceph/ceph/pull/15045>`_, Shasha Lu) -* rgw: fix zone did't update realm_id when added to zonegroup (`issue#17995 <http://tracker.ceph.com/issues/17995>`_, `pr#12139 <https://github.com/ceph/ceph/pull/12139>`_, Tianshan Qu) -* rgw: forward RGWPutBucketPolicy to meta master (`issue#20297 <http://tracker.ceph.com/issues/20297>`_, `pr#15736 <https://github.com/ceph/ceph/pull/15736>`_, Casey Bodley) -* rgw: get torrent request's parameter is not the same as amazon s3 (`issue#19136 <http://tracker.ceph.com/issues/19136>`_, `pr#13760 <https://github.com/ceph/ceph/pull/13760>`_, Zhang Shaowen) -* rgw: get wrong content when download object with specific range with compression (`issue#20100 <http://tracker.ceph.com/issues/20100>`_, `pr#15323 <https://github.com/ceph/ceph/pull/15323>`_, fang yuxiang) -* rgw: handle error return value in build_linked_oids_index (`pr#13955 <https://github.com/ceph/ceph/pull/13955>`_, wangzhengyong) -* rgw: http_client clarify the debug msg function call (`pr#13688 <https://github.com/ceph/ceph/pull/13688>`_, Abhishek Lekshmanan) -* rgw: if user.email is empty, dont try to delete (`issue#18980 <http://tracker.ceph.com/issues/18980>`_, `pr#13783 <https://github.com/ceph/ceph/pull/13783>`_, Casey Bodley) -* rgw: implement get/put object tags for S3 (`pr#13753 <https://github.com/ceph/ceph/pull/13753>`_, Abhishek Lekshmanan) -* rgw: improve handling of illformed Swift's container ACLs (`issue#18796 <http://tracker.ceph.com/issues/18796>`_, `pr#13248 <https://github.com/ceph/ceph/pull/13248>`_, Radoslaw Zarzynski) -* rgw: /info claims we do support Swift's accounts ACLs (`issue#20394 <http://tracker.ceph.com/issues/20394>`_, `pr#15887 <https://github.com/ceph/ceph/pull/15887>`_, Radoslaw Zarzynski) -* rgw: initialize non-static class members in ESQueryCompiler (`pr#15884 <https://github.com/ceph/ceph/pull/15884>`_, Jos Collin) -* rgw: initialize Non-static class member val in ESQueryNodeLeafVal_Int (`pr#15888 <https://github.com/ceph/ceph/pull/15888>`_, Jos Collin) -* rgw: initialize Non-static class member worker in RGWReshard (`pr#15886 <https://github.com/ceph/ceph/pull/15886>`_, Jos Collin) -* rgw: Initialize of member variable admin_specified in RGWUserAdminOpState (`pr#16847 <https://github.com/ceph/ceph/pull/16847>`_, amitkuma) -* rgw: Initialize pointer fields (`pr#16021 <https://github.com/ceph/ceph/pull/16021>`_, Jos Collin) -* rgw: LCWorker's worktime is not the same as config rgw_lifecycle_work_time (`issue#18087 <http://tracker.ceph.com/issues/18087>`_, `pr#11963 <https://github.com/ceph/ceph/pull/11963>`_, Zhang Shaowen) -* rgw: ldap: simple_bind() should set ldap version option on tldap (`pr#12616 <https://github.com/ceph/ceph/pull/12616>`_, Weibing Zhang) -* rgw: lease_stack: use reset method instead of assignment (`pr#16185 <https://github.com/ceph/ceph/pull/16185>`_, Nathan Cutler) -* rgw: Let the object stat command be shown in the usage (`issue#19013 <http://tracker.ceph.com/issues/19013>`_, `pr#13291 <https://github.com/ceph/ceph/pull/13291>`_, Pavan Rallabhandi) -* rgw: librgw shut (`issue#18585 <http://tracker.ceph.com/issues/18585>`_, `pr#12972 <https://github.com/ceph/ceph/pull/12972>`_, Matt Benjamin) -* rgw: lifecycle thread shouldn't process the bucket which has been deleted (`issue#20285 <http://tracker.ceph.com/issues/20285>`_, `pr#15677 <https://github.com/ceph/ceph/pull/15677>`_, Zhang Shaowen) -* rgw: lock is not released when set sync marker is failed (`issue#18077 <http://tracker.ceph.com/issues/18077>`_, `pr#12197 <https://github.com/ceph/ceph/pull/12197>`_, Zhang Shaowen) -* rgw: log_meta only for more than one zone (`issue#20357 <http://tracker.ceph.com/issues/20357>`_, `pr#15777 <https://github.com/ceph/ceph/pull/15777>`_, Orit Wasserman, Leo Zhang) -* rgw: lower some log's level in gc process (`pr#15426 <https://github.com/ceph/ceph/pull/15426>`_, Zhang Shaowen) -* rgw: luminous: rgw: Fix rgw not responding occasionally when receiving SIGHUP signal (`issue#20962 <http://tracker.ceph.com/issues/20962>`_, `pr#17113 <https://github.com/ceph/ceph/pull/17113>`_, Yao Zongyou) -* rgw: luminous: RGW: Get Bucket ACL does not honor the s3:GetBucketACL action (`issue#21013 <http://tracker.ceph.com/issues/21013>`_, `issue#21056 <http://tracker.ceph.com/issues/21056>`_, `pr#17117 <https://github.com/ceph/ceph/pull/17117>`_, Abhishek Lekshmanan) -* rgw: luminous: rgw: GetObject Tagging needs to exit earlier if the object has no attributes (`issue#21054 <http://tracker.ceph.com/issues/21054>`_, `issue#21010 <http://tracker.ceph.com/issues/21010>`_, `pr#17118 <https://github.com/ceph/ceph/pull/17118>`_, Abhishek Lekshmanan) -* rgw: luminous: rgw_lc: support for AWSv4 authentication (`pr#16914 <https://github.com/ceph/ceph/pull/16914>`_, Abhishek Lekshmanan) -* rgw: luminous: rgw: S3 v4 auth fails when query string contains (`issue#21000 <http://tracker.ceph.com/issues/21000>`_, `issue#21003 <http://tracker.ceph.com/issues/21003>`_, `issue#20501 <http://tracker.ceph.com/issues/20501>`_, `issue#21043 <http://tracker.ceph.com/issues/21043>`_, `pr#17114 <https://github.com/ceph/ceph/pull/17114>`_, Zhang Shaowen, Marcus Watts) -* rgw: luminous: rgw: Use namespace for lc_pool and roles_pool (`issue#20177 <http://tracker.ceph.com/issues/20177>`_, `issue#20967 <http://tracker.ceph.com/issues/20967>`_, `pr#16943 <https://github.com/ceph/ceph/pull/16943>`_, Orit Wasserman) -* rgw: make RGWEnv return a const ref. to its map (`pr#15269 <https://github.com/ceph/ceph/pull/15269>`_, Abhishek Lekshmanan) -* rgw: make sending Content-Length in 204 and 304 responses controllable (`issue#16602 <http://tracker.ceph.com/issues/16602>`_, `pr#10156 <https://github.com/ceph/ceph/pull/10156>`_, Radoslaw Zarzynski) -* rgw: make sync thread name clear (`issue#18860 <http://tracker.ceph.com/issues/18860>`_, `pr#13324 <https://github.com/ceph/ceph/pull/13324>`_, lvshuhua) -* rgw: match wildcards in StringLike policy conditions (`issue#20308 <http://tracker.ceph.com/issues/20308>`_, `pr#16491 <https://github.com/ceph/ceph/pull/16491>`_, Casey Bodley) -* rgw: metadata search part 2 (`pr#14351 <https://github.com/ceph/ceph/pull/14351>`_, Yehuda Sadeh) -* rgw: meta sync thread crash at RGWMetaSyncShardCR (`issue#20251 <http://tracker.ceph.com/issues/20251>`_, `pr#15660 <https://github.com/ceph/ceph/pull/15660>`_, fang.yuxiang) -* rgw: migrate atomic_t to std::atomic<> (ebirah) (`pr#14839 <https://github.com/ceph/ceph/pull/14839>`_, Jesse Williamson) -* rgw: migrate atomic_t to std::atomic<> (`pr#15001 <https://github.com/ceph/ceph/pull/15001>`_, Jesse Williamson) -* rgw: modify email to empty by admin RESTful api doesn't work (`pr#16309 <https://github.com/ceph/ceph/pull/16309>`_, fang.yuxiang) -* rgw: move the S3 anonymous auth handling to a dedicated engine (`pr#16485 <https://github.com/ceph/ceph/pull/16485>`_, Radoslaw Zarzynski) -* rgw: multipart copy-part remove '/' for s3 java sdk request header (`issue#20075 <http://tracker.ceph.com/issues/20075>`_, `pr#15283 <https://github.com/ceph/ceph/pull/15283>`_, root) -* rgw: multisite enabled over multiple clusters (`pr#12535 <https://github.com/ceph/ceph/pull/12535>`_, Ali Maredia) -* rgw: multisite: fixes for zonegroup redirect (`issue#19488 <http://tracker.ceph.com/issues/19488>`_, `pr#14319 <https://github.com/ceph/ceph/pull/14319>`_, Casey Bodley) -* rgw:multisite: fix RGWRadosRemoveOmapKeysCR and change cn to intrusive_ptr (`issue#20539 <http://tracker.ceph.com/issues/20539>`_, `pr#16197 <https://github.com/ceph/ceph/pull/16197>`_, Shasha Lu) -* rgw: never let http_redirect_code of RGWRedirectInfo to stay uninitialized (`issue#20774 <http://tracker.ceph.com/issues/20774>`_, `pr#16601 <https://github.com/ceph/ceph/pull/16601>`_, Radoslaw Zarzynski) -* rgw: omit X-Account-Access-Control if there is no grant to serialize (`issue#20395 <http://tracker.ceph.com/issues/20395>`_, `pr#15883 <https://github.com/ceph/ceph/pull/15883>`_, Radoslaw Zarzynski) -* rgw: only log metadata on metadata master zone (`issue#20244 <http://tracker.ceph.com/issues/20244>`_, `pr#15613 <https://github.com/ceph/ceph/pull/15613>`_, Casey Bodley) -* rgw: optimize data sync. Add zones_trace in log to avoid needless sync (`issue#19219 <http://tracker.ceph.com/issues/19219>`_, `pr#13851 <https://github.com/ceph/ceph/pull/13851>`_, Zhang Shaowen) -* rgw: optimize generating torrent file. Object data won't stay in memory now (`pr#15153 <https://github.com/ceph/ceph/pull/15153>`_, Zhang Shaowen) -* rgw: orphan: fix error messages (`pr#12782 <https://github.com/ceph/ceph/pull/12782>`_, Weibing Zhang) -* rgw: pass authentication domain to civetweb (`issue#17657 <http://tracker.ceph.com/issues/17657>`_, `pr#12861 <https://github.com/ceph/ceph/pull/12861>`_, Abhishek Lekshmanan) -* rgw: polymorphic error codes (`pr#10690 <https://github.com/ceph/ceph/pull/10690>`_, Pritha Srivastava, Marcus Watts) -* rgw: print is_admin as int instead of __u8 (`pr#12264 <https://github.com/ceph/ceph/pull/12264>`_, Casey Bodley) -* rgw: put object's acl can't work well on the latest object (`issue#18649 <http://tracker.ceph.com/issues/18649>`_, `pr#13078 <https://github.com/ceph/ceph/pull/13078>`_, Zhang Shaowen) -* rgw: radosgw-admin: use zone id when creating a zone (`issue#19498 <http://tracker.ceph.com/issues/19498>`_, `pr#14340 <https://github.com/ceph/ceph/pull/14340>`_, Orit Wasserman) -* rgw: radosgw-admin: warn that 'realm rename' does not update other clusters (`issue#19746 <http://tracker.ceph.com/issues/19746>`_, `pr#14722 <https://github.com/ceph/ceph/pull/14722>`_, Casey Bodley) -* rgw: radosgw, crypto: simplified code in handle_data functions (`pr#15598 <https://github.com/ceph/ceph/pull/15598>`_, Adam Kupczyk) -* rgw: radosgw: fix compilation with cryptopp (`pr#15960 <https://github.com/ceph/ceph/pull/15960>`_, Adam Kupczyk) -* rgw: raise debug level of meta sync logging (`pr#15524 <https://github.com/ceph/ceph/pull/15524>`_, Casey Bodley) -* rgw: raise debug level of RGWPostObj_ObjStore_S3::get_policy (`pr#16203 <https://github.com/ceph/ceph/pull/16203>`_, Shasha Lu) -* rgw: reject request if decoded URI contains \0 in the middle (`issue#20418 <http://tracker.ceph.com/issues/20418>`_, `pr#15953 <https://github.com/ceph/ceph/pull/15953>`_, Radoslaw Zarzynski) -* rgw: remove a redundant judgement in rgw_rados.cc:delete_obj (`pr#11124 <https://github.com/ceph/ceph/pull/11124>`_, Zhang Shaowen) -* rgw: Removed Unwanted headers (`pr#14183 <https://github.com/ceph/ceph/pull/14183>`_, Jos Collin) -* rgw: remove duplicate flush formatter (`pr#12437 <https://github.com/ceph/ceph/pull/12437>`_, Guo Zhandong) -* rgw: remove extra RGWMPObj in rgw_multi.h (`pr#14619 <https://github.com/ceph/ceph/pull/14619>`_, Casey Bodley) -* rgw: remove fastcgi from default rgw frontends (`pr#15098 <https://github.com/ceph/ceph/pull/15098>`_, Casey Bodley) -* rgw: remove invalid read size4 (`issue#18071 <http://tracker.ceph.com/issues/18071>`_, `pr#12767 <https://github.com/ceph/ceph/pull/12767>`_, Matt Benjamin) - rgw: Remove pessimizing move -* rgw: remove redundant codes in rgw_cache.h (`pr#13902 <https://github.com/ceph/ceph/pull/13902>`_, lihongjie) -* rgw: Remove spurious XML header for GetBucketPolicy (`issue#20247 <http://tracker.ceph.com/issues/20247>`_, `pr#15586 <https://github.com/ceph/ceph/pull/15586>`_, Adam C. Emerson) -* rgw: remove the useless output when listing zonegroups (`pr#16331 <https://github.com/ceph/ceph/pull/16331>`_, Zhang Shaowen) -* rgw: remove unused func in rgw_file.h (`pr#15698 <https://github.com/ceph/ceph/pull/15698>`_, lihongjie) -* rgw: remove useless --tier_type in radosgw-admin (`pr#13856 <https://github.com/ceph/ceph/pull/13856>`_, Zhang Shaowen) -* rgw: rename s3_code to err_code for swift (`pr#12300 <https://github.com/ceph/ceph/pull/12300>`_, Guo Zhandong) -* rgw: Replace get_zonegroup().is_master_zonegroup() with is_meta_master() in RGWBulkDelete::Deleter::delete_single() (`pr#16062 <https://github.com/ceph/ceph/pull/16062>`_, Fan Yang) -* rgw: req xml params size limitation error msg (`pr#16310 <https://github.com/ceph/ceph/pull/16310>`_, Enming Zhang) -* rgw: respect Swift's negative, HTTP referer-based ACL grants (`issue#18841 <http://tracker.ceph.com/issues/18841>`_, `pr#14344 <https://github.com/ceph/ceph/pull/14344>`_, Radoslaw Zarzynski) -* rgw: restore admin socket path in mrgw.sh (`pr#16540 <https://github.com/ceph/ceph/pull/16540>`_, Casey Bodley) -* rgw: return the version id in get object and object metadata request (`issue#19370 <http://tracker.ceph.com/issues/19370>`_, `pr#14117 <https://github.com/ceph/ceph/pull/14117>`_, Zhang Shaowen) -* rgw: rgw-admin: fix bucket limit check argparse, div(0) (`pr#15316 <https://github.com/ceph/ceph/pull/15316>`_, Matt Benjamin) -* rgw: rgw-admin: remove deprecated regionmap commands (`issue#18725 <http://tracker.ceph.com/issues/18725>`_, `pr#13963 <https://github.com/ceph/ceph/pull/13963>`_, Casey Bodley) -* rgw: rgw_common: use string::npos for the results of str.find (`pr#14341 <https://github.com/ceph/ceph/pull/14341>`_, Abhishek Lekshmanan) -* rgw: rgw_crypt: log error messages during failures (`pr#16726 <https://github.com/ceph/ceph/pull/16726>`_, Abhishek Lekshmanan) -* rgw: rgw_file: add compression interop to RGW NFS (`issue#20462 <http://tracker.ceph.com/issues/20462>`_, `pr#15989 <https://github.com/ceph/ceph/pull/15989>`_, Matt Benjamin) -* rgw: rgw_file: add lock protection for readdir against gc (`issue#20121 <http://tracker.ceph.com/issues/20121>`_, `pr#15329 <https://github.com/ceph/ceph/pull/15329>`_, Gui Hecheng) -* rgw: rgw_file: add service map registration (`pr#16251 <https://github.com/ceph/ceph/pull/16251>`_, Matt Benjamin) -* rgw: rgw_file: add timed namespace invalidation (`issue#18651 <http://tracker.ceph.com/issues/18651>`_, `pr#13038 <https://github.com/ceph/ceph/pull/13038>`_, Matt Benjamin) -* rgw: rgw_file: avoid a recursive lane lock in LRU drain (`issue#20374 <http://tracker.ceph.com/issues/20374>`_, `pr#15819 <https://github.com/ceph/ceph/pull/15819>`_, Matt Benjamin) -* rgw: rgw_file: avoid stranding invalid-name bucket handles in fhcache (`issue#19036 <http://tracker.ceph.com/issues/19036>`_, `pr#13590 <https://github.com/ceph/ceph/pull/13590>`_, Matt Benjamin) -* rgw: rgw_file cleanup names (`pr#15568 <https://github.com/ceph/ceph/pull/15568>`_, Gui Hecheng) -* rgw: rgw_file: cleanup virtual keyword on derived functions (`pr#14908 <https://github.com/ceph/ceph/pull/14908>`_, Gui Hecheng) -* rgw: rgw_file: ensure valid_s3_object_name for directories, too (`issue#19066 <http://tracker.ceph.com/issues/19066>`_, `pr#13614 <https://github.com/ceph/ceph/pull/13614>`_, Matt Benjamin) -* rgw: rgw_file: fix assert upon setattr on bucket (`issue#20287 <http://tracker.ceph.com/issues/20287>`_, `pr#15679 <https://github.com/ceph/ceph/pull/15679>`_, Gui Hecheng) -* rgw: rgw_file: fix double unref on rgw_fh for rename (`pr#13988 <https://github.com/ceph/ceph/pull/13988>`_, Gui Hecheng) -* rgw: rgw_file: fix flags set on unsuccessful unlink (`pr#15222 <https://github.com/ceph/ceph/pull/15222>`_, Gui Hecheng) -* rgw: rgw_file: fix fs_inst progression (`issue#19214 <http://tracker.ceph.com/issues/19214>`_, `pr#13832 <https://github.com/ceph/ceph/pull/13832>`_, Matt Benjamin) -* rgw: rgw_file: fix missing unlock in unlink (`issue#19435 <http://tracker.ceph.com/issues/19435>`_, `pr#14262 <https://github.com/ceph/ceph/pull/14262>`_, Gui Hecheng) -* rgw: rgw_file: fix misuse of make_key_name before make_fhk (`pr#15108 <https://github.com/ceph/ceph/pull/15108>`_, Gui Hecheng) -* rgw: rgw_file: fix non-negative return code for open operation (`pr#14045 <https://github.com/ceph/ceph/pull/14045>`_, Gui Hecheng) -* rgw: rgw_file: fix non-posix errcode EINVAL to ENAMETOOLONG (`pr#13764 <https://github.com/ceph/ceph/pull/13764>`_, Gui Hecheng) -* rgw: rgw_file: fix readdir after dirent-change (`issue#19634 <http://tracker.ceph.com/issues/19634>`_, `pr#14561 <https://github.com/ceph/ceph/pull/14561>`_, Matt Benjamin) -* rgw: rgw_file: fix reversed return value of getattr (`pr#13895 <https://github.com/ceph/ceph/pull/13895>`_, Gui Hecheng) -* rgw: rgw_file: fix RGWLibFS::setattr for directory objects (`issue#18808 <http://tracker.ceph.com/issues/18808>`_, `pr#13252 <https://github.com/ceph/ceph/pull/13252>`_, Matt Benjamin) -* rgw: rgw_file: fix up potential race condition (`pr#14553 <https://github.com/ceph/ceph/pull/14553>`_, Gui Hecheng) -* rgw: rgw_file: implement reliable has-children check (unlink dir) (`issue#19270 <http://tracker.ceph.com/issues/19270>`_, `pr#13953 <https://github.com/ceph/ceph/pull/13953>`_, Matt Benjamin) -* rgw: rgw_file: interned RGWFileHandle objects need parent refs (`issue#18650 <http://tracker.ceph.com/issues/18650>`_, `pr#13084 <https://github.com/ceph/ceph/pull/13084>`_, Matt Benjamin) -* rgw: rgw_file: posix style atime,ctime,mtime (`pr#13765 <https://github.com/ceph/ceph/pull/13765>`_, Gui Hecheng) -* rgw: rgw_file: pre-compute unix attrs in write_finish() (`issue#19653 <http://tracker.ceph.com/issues/19653>`_, `pr#14609 <https://github.com/ceph/ceph/pull/14609>`_, Matt Benjamin) -* rgw: rgw_file: prevent conflict of mkdir between restarts (`issue#20275 <http://tracker.ceph.com/issues/20275>`_, `pr#15655 <https://github.com/ceph/ceph/pull/15655>`_, Gui Hecheng) -* rgw: rgw_file: properly & or flags (`issue#20663 <http://tracker.ceph.com/issues/20663>`_, `pr#16448 <https://github.com/ceph/ceph/pull/16448>`_, Matt Benjamin) -* rgw: rgw_file: release rgw_fh lock and ref on ENOTEMPTY (`issue#20061 <http://tracker.ceph.com/issues/20061>`_, `pr#15246 <https://github.com/ceph/ceph/pull/15246>`_, Matt Benjamin) -* rgw: rgw_file: removed extra rele() on fs in rgw_umount() (`pr#15152 <https://github.com/ceph/ceph/pull/15152>`_, Gui Hecheng) -* rgw: rgw_file: remove hidden uxattr objects from buckets on delete (`issue#20045 <http://tracker.ceph.com/issues/20045>`_, `pr#15210 <https://github.com/ceph/ceph/pull/15210>`_, Matt Benjamin) -* rgw: rgw_file: remove post-unlink lookup check (`issue#20047 <http://tracker.ceph.com/issues/20047>`_, `pr#15216 <https://github.com/ceph/ceph/pull/15216>`_, Matt Benjamin) -* rgw: rgw_file: replace raw fs->fh_lru.unref with predefined fs->unref (`pr#15541 <https://github.com/ceph/ceph/pull/15541>`_, Gui Hecheng) -* rgw: rgw_file: RGWFileHandle dtor must also cond-unlink from FHCache (`issue#19112 <http://tracker.ceph.com/issues/19112>`_, `pr#13712 <https://github.com/ceph/ceph/pull/13712>`_, Matt Benjamin) -* rgw: rgw_file skip policy read for virtual components (`pr#16034 <https://github.com/ceph/ceph/pull/16034>`_, Gui Hecheng) -* rgw: rgw_file: split last argv on ws, if provided (`pr#12965 <https://github.com/ceph/ceph/pull/12965>`_, Matt Benjamin) -* rgw: rgw_file: store bucket uxattrs on the bucket (`issue#20082 <http://tracker.ceph.com/issues/20082>`_, `pr#15293 <https://github.com/ceph/ceph/pull/15293>`_, Matt Benjamin) -* rgw: rgw_file: support readdir cb type hints (plus fixes) (`issue#19623 <http://tracker.ceph.com/issues/19623>`_, `issue#19625 <http://tracker.ceph.com/issues/19625>`_, `issue#19624 <http://tracker.ceph.com/issues/19624>`_, `pr#14458 <https://github.com/ceph/ceph/pull/14458>`_, Matt Benjamin) -* rgw: rgw_file: use fh_hook::is_linked() to check residence (`issue#19111 <http://tracker.ceph.com/issues/19111>`_, `pr#13703 <https://github.com/ceph/ceph/pull/13703>`_, Matt Benjamin) -* rgw: rgw_file: v3: fix write-timer action (`issue#19932 <http://tracker.ceph.com/issues/19932>`_, `pr#15097 <https://github.com/ceph/ceph/pull/15097>`_, Matt Benjamin) -* rgw: rgw : fix race in RGWCompleteMultipart (`issue#20861 <http://tracker.ceph.com/issues/20861>`_, `pr#16732 <https://github.com/ceph/ceph/pull/16732>`_, Abhishek Varshney) -* rgw: rgw:fix s3 aws v2 signature priority between header['X-Amz-Date'] and header['Date'] (`issue#20176 <http://tracker.ceph.com/issues/20176>`_, `pr#15467 <https://github.com/ceph/ceph/pull/15467>`_, yuliyang) -* rgw: rgw: fix the subdir without slash of s3 website url (`issue#20307 <http://tracker.ceph.com/issues/20307>`_, `pr#15703 <https://github.com/ceph/ceph/pull/15703>`_, liuhong) -* rgw: rgw_lc: drop a bunch of unused headers (`pr#14342 <https://github.com/ceph/ceph/pull/14342>`_, Abhishek Lekshmanan) -* rgw: rgw_ldap: log the ldap err in case of bind failure (`pr#14781 <https://github.com/ceph/ceph/pull/14781>`_, Abhishek Lekshmanan) -* rgw: rgw/lifecycle: do not send lifecycle rules when GetLifeCycle failed (`issue#19363 <http://tracker.ceph.com/issues/19363>`_, `pr#14160 <https://github.com/ceph/ceph/pull/14160>`_, liuchang0812) -* rgw: RGWMetaSyncShardControlCR retries with backoff on all error codes (`issue#19019 <http://tracker.ceph.com/issues/19019>`_, `pr#13546 <https://github.com/ceph/ceph/pull/13546>`_, Casey Bodley) -* rgw: RGWMetaSyncShardCR drops stack refs on destruction (`issue#18412 <http://tracker.ceph.com/issues/18412>`_, `issue#18300 <http://tracker.ceph.com/issues/18300>`_, `pr#12605 <https://github.com/ceph/ceph/pull/12605>`_, Casey Bodley) -* rgw: rgw multisite: automated mdlog trimming (`pr#13111 <https://github.com/ceph/ceph/pull/13111>`_, Casey Bodley) -* rgw: rgw multisite: feature of bucket sync enable/disable (`pr#15801 <https://github.com/ceph/ceph/pull/15801>`_, Zhang Shaowen, Casey Bodley, Zengran Zhang) -* rgw: rgw multisite: fixes for meta sync across periods (`issue#18639 <http://tracker.ceph.com/issues/18639>`_, `pr#13070 <https://github.com/ceph/ceph/pull/13070>`_, Casey Bodley) -* rgw: rgw multisite: fix ref counting of completions (`issue#18414 <http://tracker.ceph.com/issues/18414>`_, `issue#18407 <http://tracker.ceph.com/issues/18407>`_, `pr#12841 <https://github.com/ceph/ceph/pull/12841>`_, Casey Bodley) -* rgw: rgw-multisite: fix the problem of rgw website configure 'RedirectAllRequestsTo' failed to sync to slave zone (`pr#15036 <https://github.com/ceph/ceph/pull/15036>`_, yuliyang) -* rgw: rgw-multisite: fix the problem of rgw website configure request not redirect to metadata master (`pr#15082 <https://github.com/ceph/ceph/pull/15082>`_, yuliyang) -* rgw: rgw multisite: remove the redundant post in OPT_ZONEGROUP_MODIFY (`pr#14359 <https://github.com/ceph/ceph/pull/14359>`_, Jing Wenjun) -* rgw: rgw/multisite: validate bucket location during bucket creation (`pr#15333 <https://github.com/ceph/ceph/pull/15333>`_, Jiaying Ren) -* rgw: RGW NFS: add nfs.rst to doc/radosgw (`pr#15789 <https://github.com/ceph/ceph/pull/15789>`_, Matt Benjamin) -* rgw: rgw_op: remove unused variable iter (`pr#14276 <https://github.com/ceph/ceph/pull/14276>`_, Weibing Zhang) -* rgw: RGWPeriodPusher spawns http thread before cr thread (`issue#19834 <http://tracker.ceph.com/issues/19834>`_, `pr#14936 <https://github.com/ceph/ceph/pull/14936>`_, Casey Bodley) -* rgw: rgw_rados: create sync module instances only if run_sync_thread is set (`issue#19830 <http://tracker.ceph.com/issues/19830>`_, `pr#14994 <https://github.com/ceph/ceph/pull/14994>`_, Abhishek Lekshmanan) -* rgw: rgw_rados drop deprecated global var (`pr#14411 <https://github.com/ceph/ceph/pull/14411>`_, Jiaying Ren) -* rgw: rgw_rados: initialize cur_shard (`pr#15735 <https://github.com/ceph/ceph/pull/15735>`_, Abhishek Lekshmanan) -* rgw: rgw realm set fixes (`issue#18333 <http://tracker.ceph.com/issues/18333>`_, `pr#12731 <https://github.com/ceph/ceph/pull/12731>`_, Orit Wasserman) -* rgw: rgw/rgw_frontend.h: Return negative value for empty uid in RGWLoadGenFrontend::init() (`pr#16204 <https://github.com/ceph/ceph/pull/16204>`_, jimifm) -* rgw: rgw/rgw_main.cc: fix parenteses and function result (`pr#12295 <https://github.com/ceph/ceph/pull/12295>`_, Willem Jan Withagen) -* rgw: rgw/rgw_op:Prevents memory leaks when calling func swift_versioning_copy() fails (`pr#15328 <https://github.com/ceph/ceph/pull/15328>`_, jimifm) -* rgw: rgw/rgw_rados: Remove duplicate calls in RGWRados::finalize() (`pr#15281 <https://github.com/ceph/ceph/pull/15281>`_, jimifm) -* rgw: rgw/rgw_string.h: FreeBSD would like errno.h included (`pr#15737 <https://github.com/ceph/ceph/pull/15737>`_, Willem Jan Withagen) -* rgw: rgw/rgw_swift_auth.cc: using string::back() instead as the C++11 recommend (`pr#14827 <https://github.com/ceph/ceph/pull/14827>`_, liuyuhong) -* rgw: rgw structures rework (`issue#17996 <http://tracker.ceph.com/issues/17996>`_, `issue#19249 <http://tracker.ceph.com/issues/19249>`_, `pr#11485 <https://github.com/ceph/ceph/pull/11485>`_, Yehuda Sadeh) -* rgw: rgw,test: fix rgw placement rule pool config option (`pr#16084 <https://github.com/ceph/ceph/pull/16084>`_, Jiaying Ren) -* rgw: S3 lifecycle now supports expiration date (`pr#15807 <https://github.com/ceph/ceph/pull/15807>`_, Zhang Shaowen) -* rgw: s3 server-side encryption (SSE-C, SSE-KMS) (`pr#11049 <https://github.com/ceph/ceph/pull/11049>`_, Adam Kupczyk, Casey Bodley, Radoslaw Zarzynski) -* rgw: segment fault when shard id out of range (`issue#19732 <http://tracker.ceph.com/issues/19732>`_, `pr#14389 <https://github.com/ceph/ceph/pull/14389>`_, redickwang) -* rgw: set dumpable flag after setuid post ff0e521 (`issue#19089 <http://tracker.ceph.com/issues/19089>`_, `pr#13657 <https://github.com/ceph/ceph/pull/13657>`_, Brad Hubbard) -* rgw: set FCGI_INCLUDE_DIR for cephd_rgw_base (`issue#18918 <http://tracker.ceph.com/issues/18918>`_, `pr#13393 <https://github.com/ceph/ceph/pull/13393>`_, David Disseldorp) -* rgw: set object accounted size correctly (`issue#20071 <http://tracker.ceph.com/issues/20071>`_, `pr#14950 <https://github.com/ceph/ceph/pull/14950>`_, fang yuxiang) -* rgw: set placement rule properly (`pr#15221 <https://github.com/ceph/ceph/pull/15221>`_, fang.yuxiang) -* rgw: should delete in_stream_req if conn->get_obj(...) return not zero value (`pr#9950 <https://github.com/ceph/ceph/pull/9950>`_, weiqiaomiao) -* rgw: should not restrict location_constraint same when user not provide (`pr#16770 <https://github.com/ceph/ceph/pull/16770>`_, Tianshan Qu) -* rgw: should unlock when reshard_log->update() reture non-zero in RGWB… (`pr#16502 <https://github.com/ceph/ceph/pull/16502>`_, Wei Qiaomiao) -* rgw: silence compile warning from -Wmaybe-uninitialized (`pr#15996 <https://github.com/ceph/ceph/pull/15996>`_, Jiaying Ren) -* rgw: silence warning from -Wmaybe-uninitialized (`pr#15949 <https://github.com/ceph/ceph/pull/15949>`_, Jos Collin) -* rgw: stat requests skip compression, manifest handling, etc (`pr#14109 <https://github.com/ceph/ceph/pull/14109>`_, Casey Bodley) -* rgw: Support certain archaic and antiquated distributions(`pr#15498 <https://github.com/ceph/ceph/pull/15498>`_, Adam C. Emerson) -* rgw: swift: ability to update swift read and write acls separately (`issue#19289 <http://tracker.ceph.com/issues/19289>`_, `pr#14499 <https://github.com/ceph/ceph/pull/14499>`_, Marcus Watts) -* rgw: swift: disable revocation thread if sleep == 0 (`issue#19499 <http://tracker.ceph.com/issues/19499>`_, `issue#9493 <http://tracker.ceph.com/issues/9493>`_, `pr#14501 <https://github.com/ceph/ceph/pull/14501>`_, Marcus Watts) -* rgw: swift: fix anonymous user's error code of getting object (`issue#18806 <http://tracker.ceph.com/issues/18806>`_, `pr#13242 <https://github.com/ceph/ceph/pull/13242>`_, Jing Wenjun) -* rgw: swift: the http referer acl in swift API should be shown (`issue#18665 <http://tracker.ceph.com/issues/18665>`_, `pr#13003 <https://github.com/ceph/ceph/pull/13003>`_, Jing Wenjun) -* rgw: swift: The http referer should be parsed to compare in swift API (`issue#18685 <http://tracker.ceph.com/issues/18685>`_, `pr#13005 <https://github.com/ceph/ceph/pull/13005>`_, Jing Wenjun) -* rgw: switch from "timegm()" to "internal_timegm()" for better portability (`issue#12863 <http://tracker.ceph.com/issues/12863>`_, `pr#14327 <https://github.com/ceph/ceph/pull/14327>`_, Rishabh Kumar) -* rgw: switch to std::array in RGWBulkUploadOp due to C++11 and FreeBSD (`pr#14314 <https://github.com/ceph/ceph/pull/14314>`_, Radoslaw Zarzynski) -* rgw: sync status compares the current master period (`issue#18064 <http://tracker.ceph.com/issues/18064>`_, `pr#12907 <https://github.com/ceph/ceph/pull/12907>`_, Abhishek Lekshmanan) -* rgw: test,rgw: fix rgw placement rule pool config option (`pr#16380 <https://github.com/ceph/ceph/pull/16380>`_, Jiaying Ren) -* rgw,tests: luminous: qa/rgw: use 'ceph osd pool application enable' on created pools (`pr#17259 <https://github.com/ceph/ceph/pull/17259>`_, Casey Bodley) -* rgw,tests: qa/rgw: add cluster name to path when s3tests scans rgw log (`pr#14845 <https://github.com/ceph/ceph/pull/14845>`_, Casey Bodley) -* rgw,tests: qa/rgw: add configuration for server-side encryption tests (`pr#13597 <https://github.com/ceph/ceph/pull/13597>`_, Casey Bodley) -* rgw,tests: qa/rgw: add encryption config for s3tests under thrash (`pr#15694 <https://github.com/ceph/ceph/pull/15694>`_, Casey Bodley) -* rgw,tests: qa/rgw: add multisite suite to configure and run multisite tests (`pr#14688 <https://github.com/ceph/ceph/pull/14688>`_, Casey Bodley) -* rgw,tests: qa/rgw: disable lifecycle tests because of expiration failures (`pr#16760 <https://github.com/ceph/ceph/pull/16760>`_, Casey Bodley) -* rgw,tests: qa/rgw: don't scan radosgw logs for encryption keys on jewel upgrade test (`pr#14697 <https://github.com/ceph/ceph/pull/14697>`_, Casey Bodley) -* rgw,tests: qa/rgw: fix assertions in radosgw_admin task (`pr#14842 <https://github.com/ceph/ceph/pull/14842>`_, Casey Bodley) -* rgw,tests: qa/rgw: remove apache/fastcgi and radosgw-agent tests (`pr#15184 <https://github.com/ceph/ceph/pull/15184>`_, Casey Bodley) -* rgw,tests: qa/suites/rgw/thrash: add osd thrashing tests (`pr#13445 <https://github.com/ceph/ceph/pull/13445>`_, Sage Weil) -* rgw,tests: qa/tasks: S3A hadoop task to test s3a with Ceph (`pr#14624 <https://github.com/ceph/ceph/pull/14624>`_, Vasu Kulkarni) -* rgw,tests: test/rgw: add bucket acl and versioning tests to test_multi.py (`pr#12449 <https://github.com/ceph/ceph/pull/12449>`_, Casey Bodley) -* rgw,tests: test/rgw: add test for versioned object sync (`pr#12474 <https://github.com/ceph/ceph/pull/12474>`_, Casey Bodley) -* rgw,tests: test/rgw: fixes for test_multi_period_incremental_sync() (`pr#13067 <https://github.com/ceph/ceph/pull/13067>`_, Casey Bodley) -* rgw,tests: test/rgw: fix for empty lists as default arguments (`pr#14816 <https://github.com/ceph/ceph/pull/14816>`_, Casey Bodley) -* rgw,tests: test/rgw: refactor test_multi.py for use in qa suite (`pr#14433 <https://github.com/ceph/ceph/pull/14433>`_, Casey Bodley) -* rgw,tests: test/rgw: test_bucket_delete_notempty in test_multi.py (`pr#14090 <https://github.com/ceph/ceph/pull/14090>`_, Casey Bodley) -* rgw,tests: vstart: add rgw configuration needed to pass all s3tests (`pr#15782 <https://github.com/ceph/ceph/pull/15782>`_, Casey Bodley) -* rgw,tests: vstart: remove rgw_enable_static_website (`pr#15856 <https://github.com/ceph/ceph/pull/15856>`_, Casey Bodley) -* rgw: the swift container acl should support field .ref (`issue#18484 <http://tracker.ceph.com/issues/18484>`_, `pr#12874 <https://github.com/ceph/ceph/pull/12874>`_, Jing Wenjun) -* rgw: Turn off fcgi as a frontend (`issue#16784 <http://tracker.ceph.com/issues/16784>`_, `pr#15070 <https://github.com/ceph/ceph/pull/15070>`_, Thomas Serlin) -* rgw: Uninitialized member in LCRule (`pr#15827 <https://github.com/ceph/ceph/pull/15827>`_, Jos Collin) -* rgw: update Beast for streaming reads in asio frontend (`pr#14273 <https://github.com/ceph/ceph/pull/14273>`_, Casey Bodley) -* rgw: update bucket cors in secondary zonegroup should forward to master (`issue#16888 <http://tracker.ceph.com/issues/16888>`_, `pr#15260 <https://github.com/ceph/ceph/pull/15260>`_, Shasha Lu) -* rgw: update function doc in rgw_rados.h and rgw_rados.cc (`pr#15803 <https://github.com/ceph/ceph/pull/15803>`_, Jiaying Ren) -* rgw: update is_truncated in function rgw_read_user_buckets (`issue#19365 <http://tracker.ceph.com/issues/19365>`_, `pr#14343 <https://github.com/ceph/ceph/pull/14343>`_, liuchang0812) -* rgw: usage (`issue#16191 <http://tracker.ceph.com/issues/16191>`_, `pr#14287 <https://github.com/ceph/ceph/pull/14287>`_, Ji Chen, Orit Wasserman) -* rgw: use 64-bit offsets for compression (`issue#20231 <http://tracker.ceph.com/issues/20231>`_, `pr#15656 <https://github.com/ceph/ceph/pull/15656>`_, Adam Kupczyk, fang yuxiang) -* rgw: use a namespace for rgw reshard pool for upgrades as well (`issue#20289 <http://tracker.ceph.com/issues/20289>`_, `pr#16368 <https://github.com/ceph/ceph/pull/16368>`_, Karol Mroz, Abhishek Lekshmanan) -* rgw: Use comparison instead of assignment (`pr#16653 <https://github.com/ceph/ceph/pull/16653>`_, amitkuma) -* rgw: Use decoded URI when verifying TempURL (`issue#18590 <http://tracker.ceph.com/issues/18590>`_, `pr#13007 <https://github.com/ceph/ceph/pull/13007>`_, Michal Koutný) -* rgw: use get_data_extra_pool() when get extra pool (`issue#20064 <http://tracker.ceph.com/issues/20064>`_, `pr#15219 <https://github.com/ceph/ceph/pull/15219>`_, fang yuxiang) -* rgw: use pre-defined calls to replace raw flag operation (`pr#15107 <https://github.com/ceph/ceph/pull/15107>`_, Gui Hecheng) -* rgw: use rgw_zone_root_pool for region_map like is done in hammer (`issue#19195 <http://tracker.ceph.com/issues/19195>`_, `pr#13928 <https://github.com/ceph/ceph/pull/13928>`_, Orit Wasserman) -* rgw: use separate http_manager for read_sync_status (`issue#19236 <http://tracker.ceph.com/issues/19236>`_, `pr#13660 <https://github.com/ceph/ceph/pull/13660>`_, Shasha Lu) -* rgw: use uncompressed size for range_to_ofs() in slo/dlo (`pr#15931 <https://github.com/ceph/ceph/pull/15931>`_, Casey Bodley) -* rgw: using RGW_OBJ_NS_MULTIPART in check_bad_index_multipart (`pr#15774 <https://github.com/ceph/ceph/pull/15774>`_, Shasha Lu) -* rgw: using the same bucket num_shards as master zg when create bucket in secondary zg (`issue#19745 <http://tracker.ceph.com/issues/19745>`_, `pr#14388 <https://github.com/ceph/ceph/pull/14388>`_, Shasha Lu) -* rgw: validate tenant names during user create (`pr#16442 <https://github.com/ceph/ceph/pull/16442>`_, Abhishek Lekshmanan) -* rgw: verify md5 in post obj (`issue#19739 <http://tracker.ceph.com/issues/19739>`_, `pr#14961 <https://github.com/ceph/ceph/pull/14961>`_, Yehuda Sadeh) -* rgw: version id doesn't work in fetch_remote_obj (`pr#14010 <https://github.com/ceph/ceph/pull/14010>`_, Zhang Shaowen) -* rgw: VersionIdMarker and NextVersionIdMarker should be returned when listing object versions (`issue#19886 <http://tracker.ceph.com/issues/19886>`_, `pr#15014 <https://github.com/ceph/ceph/pull/15014>`_, Zhang Shaowen) -* rgw: warning, output may be truncated before the last format character (`pr#14194 <https://github.com/ceph/ceph/pull/14194>`_, Jos Collin) -* rgw: when create_bucket use the same num_shards with info.num_shards (`issue#19745 <http://tracker.ceph.com/issues/19745>`_, `pr#15010 <https://github.com/ceph/ceph/pull/15010>`_, Shasha Lu) -* rgw: wip dir orphan (`issue#18992 <http://tracker.ceph.com/issues/18992>`_, `issue#18989 <http://tracker.ceph.com/issues/18989>`_, `issue#19018 <http://tracker.ceph.com/issues/19018>`_, `issue#18991 <http://tracker.ceph.com/issues/18991>`_, `pr#13529 <https://github.com/ceph/ceph/pull/13529>`_, Matt Benjamin) -* rgw: Wip librgw refcnt (`pr#13405 <https://github.com/ceph/ceph/pull/13405>`_, Matt Benjamin) -* rgw: wip parentref (`issue#19060 <http://tracker.ceph.com/issues/19060>`_, `issue#19059 <http://tracker.ceph.com/issues/19059>`_, `pr#13607 <https://github.com/ceph/ceph/pull/13607>`_, Matt Benjamin) -* rgw: Wip rgw fix prefix list (`issue#19432 <http://tracker.ceph.com/issues/19432>`_, `pr#15916 <https://github.com/ceph/ceph/pull/15916>`_, Giovani Rinaldi, Orit Wasserman) -* rgw: Wip rgw openssl 7 (`issue#11239 <http://tracker.ceph.com/issues/11239>`_, `issue#16535 <http://tracker.ceph.com/issues/16535>`_, `pr#11776 <https://github.com/ceph/ceph/pull/11776>`_, Yehuda Sadeh, Marcus Watts) -* rgw: wip: rgw: rest_admin/user avoid double checking input args (`pr#13460 <https://github.com/ceph/ceph/pull/13460>`_, Abhishek Lekshmanan) -* tests: Add integration tests for admin socket output (`pr#15223 <https://github.com/ceph/ceph/pull/15223>`_, Brad Hubbard) -* tests: add MGR=1 so 'pg dump' won't be blocked (`pr#14266 <https://github.com/ceph/ceph/pull/14266>`_, Kefu Chai) -* tests: Add openstack requirements to smoke suite (`pr#12913 <https://github.com/ceph/ceph/pull/12913>`_, Zack Cerza) -* tests: add setup/teardown for asok dir (`pr#16523 <https://github.com/ceph/ceph/pull/16523>`_, Kefu Chai) -* tests: buildpackages: remove because it does not belong (`issue#18846 <http://tracker.ceph.com/issues/18846>`_, `pr#13297 <https://github.com/ceph/ceph/pull/13297>`_, Loic Dachary) -* tests: ceph-disk: add setting for external py-modules for tox-testing (`pr#15433 <https://github.com/ceph/ceph/pull/15433>`_, Willem Jan Withagen) -* tests: ceph-disk: use communicate() instead of wait() for output (`pr#16347 <https://github.com/ceph/ceph/pull/16347>`_, Kefu Chai) -* tests: ceph-helpers.sh reduce get_timeout_delays() verbosity (`pr#13257 <https://github.com/ceph/ceph/pull/13257>`_, Kefu Chai) -* tests: ceph_objectstore_tool.py: kill all daemons (`pr#14428 <https://github.com/ceph/ceph/pull/14428>`_, Kefu Chai) -* tests: ceph_test_objectstore: tolerate fsck EOPNOTSUPP too (`pr#13325 <https://github.com/ceph/ceph/pull/13325>`_, Sage Weil) -* tests: ceph_test_rados_api_tier: tolerate ENOENT from 'pg scrub' (`pr#14807 <https://github.com/ceph/ceph/pull/14807>`_, Sage Weil) -* tests: ceph_test_rados_api_watch_notify: move global variables into test class (`issue#18395 <http://tracker.ceph.com/issues/18395>`_, `pr#12751 <https://github.com/ceph/ceph/pull/12751>`_, Kefu Chai) -* tests: ceph_test_rados_api_watch_notify: test timeout using rados_wat… (`issue#19312 <http://tracker.ceph.com/issues/19312>`_, `pr#14061 <https://github.com/ceph/ceph/pull/14061>`_, Kefu Chai) -* tests: cephtool/test.sh error on full tests (`issue#19698 <http://tracker.ceph.com/issues/19698>`_, `pr#14647 <https://github.com/ceph/ceph/pull/14647>`_, Willem Jan Withagen, David Zafman) -* tests: cephtool/test.sh: Only delete a test pool when no longer needed (`pr#16443 <https://github.com/ceph/ceph/pull/16443>`_, Willem Jan Withagen) -* tests: cls_lock: move lock_info_t definition to cls_lock_types.h (`pr#16091 <https://github.com/ceph/ceph/pull/16091>`_, runsisi) -* tests: config_opts: drop unused opts (`pr#15031 <https://github.com/ceph/ceph/pull/15031>`_, Kefu Chai) -* tests: Decreased amount of jobs on master, kraken, luminous runs (`pr#17074 <https://github.com/ceph/ceph/pull/17074>`_, Yuri Weinstein) -* tests: Don't dump core when using EXPECT_DEATH (`pr#14821 <https://github.com/ceph/ceph/pull/14821>`_, Kefu Chai, Brad Hubbard) -* tests: drop buildpackages.py (`issue#18846 <http://tracker.ceph.com/issues/18846>`_, `pr#13319 <https://github.com/ceph/ceph/pull/13319>`_, Nathan Cutler) -* tests: drop obsolete Perl scripts (`pr#13951 <https://github.com/ceph/ceph/pull/13951>`_, Nathan Cutler) -* tests: drop rbd_cli_tests.pl and RbdLib.pm (`issue#14825 <http://tracker.ceph.com/issues/14825>`_, `pr#12821 <https://github.com/ceph/ceph/pull/12821>`_, Nathan Cutler) -* tests: drop unused rbd_functional_tests.pl script (`issue#14825 <http://tracker.ceph.com/issues/14825>`_, `pr#12818 <https://github.com/ceph/ceph/pull/12818>`_, Nathan Cutler) -* tests: fio_ceph_objectstore: fixes improper write request data lifetime (`pr#14338 <https://github.com/ceph/ceph/pull/14338>`_, Adam Kupczyk) -* tests: fix broken links in upgrade/hammer-jewel-x/stress-split (`issue#19793 <http://tracker.ceph.com/issues/19793>`_, `pr#14831 <https://github.com/ceph/ceph/pull/14831>`_, Nathan Cutler) -* tests: fix NULL references to be acceptable by Clang (`pr#12880 <https://github.com/ceph/ceph/pull/12880>`_, Willem Jan Withagen) -* tests: fix rados/upgrade/jewel-x-singleton and make workunit task handle repo URLs not ending in ".git" (`issue#20554 <http://tracker.ceph.com/issues/20554>`_, `issue#20368 <http://tracker.ceph.com/issues/20368>`_, `pr#16228 <https://github.com/ceph/ceph/pull/16228>`_, Nathan Cutler, Sage Weil) -* tests: fix regression in qa/tasks/ceph_master.py (`issue#16263 <http://tracker.ceph.com/issues/16263>`_, `pr#13279 <https://github.com/ceph/ceph/pull/13279>`_, Nathan Cutler, Kefu Chai) -* tests: fix template specialization of PromoteRequest class (`pr#12815 <https://github.com/ceph/ceph/pull/12815>`_, Ricardo Dias) -* tests: ignore bogus ceph-objectstore-tool error in ceph_manager (`issue#16263 <http://tracker.ceph.com/issues/16263>`_, `pr#13194 <https://github.com/ceph/ceph/pull/13194>`_, Nathan Cutler) -* tests: include/denc: support ENCODE_DUMP (`pr#14962 <https://github.com/ceph/ceph/pull/14962>`_, Sage Weil) -* tests: libradosstriper: do not assign garbage to returned value (`pr#15009 <https://github.com/ceph/ceph/pull/15009>`_, Kefu Chai) -* tests: luminous: tests: qa/standalone: misc fixes (`issue#20465 <http://tracker.ceph.com/issues/20465>`_, `issue#20921 <http://tracker.ceph.com/issues/20921>`_, `issue#20979 <http://tracker.ceph.com/issues/20979>`_, `pr#16985 <https://github.com/ceph/ceph/pull/16985>`_, David Zafman) -* tests: mgr,os,test: kill clang analyzer warnings (`pr#16227 <https://github.com/ceph/ceph/pull/16227>`_, Kefu Chai) -* tests: move swift.py task from teuthology to ceph, phase one (master) (`issue#20392 <http://tracker.ceph.com/issues/20392>`_, `pr#15859 <https://github.com/ceph/ceph/pull/15859>`_, Nathan Cutler, Sage Weil, Warren Usui, Greg Farnum, Ali Maredia, Tommi Virtanen, Zack Cerza, Sam Lang, Yehuda Sadeh, Joe Buck, Josh Durgin) -* tests: nosetests: use /usr/bin/env to find nosetests (`pr#12091 <https://github.com/ceph/ceph/pull/12091>`_, Willem Jan Withagen) -* tests: os: Argument cannot be negative (`pr#16688 <https://github.com/ceph/ceph/pull/16688>`_, amitkuma) -* tests: os/bluestore,test/ceph_test_objectstore: silence gcc warnings (`pr#13924 <https://github.com/ceph/ceph/pull/13924>`_, Kefu Chai) -* tests: osd-scrub-repair.sh disable scrub backoff in test (`pr#13334 <https://github.com/ceph/ceph/pull/13334>`_, Kefu Chai) -* tests: qa: Added luminous to the mix in schedule_subset.sh (`pr#16430 <https://github.com/ceph/ceph/pull/16430>`_, Yuri Weinstein) -* tests: qa/added overrides (`pr#14917 <https://github.com/ceph/ceph/pull/14917>`_, Yuri Weinstein) -* tests: qa: Add reboot case for systemd test (`issue#19717 <http://tracker.ceph.com/issues/19717>`_, `pr#14229 <https://github.com/ceph/ceph/pull/14229>`_, Vasu Kulkarni) -* tests: qa: add supported distros for ceph-ansible (`pr#13711 <https://github.com/ceph/ceph/pull/13711>`_, Tamil Muthamizhan) -* tests: qa: add task for dnsmasq configuration (`pr#15071 <https://github.com/ceph/ceph/pull/15071>`_, Casey Bodley) -* tests: [qa/ceph-deploy]: run create mgr nodes as well (`pr#16216 <https://github.com/ceph/ceph/pull/16216>`_, Vasu Kulkarni) -* tests: qa: Cleaned up distros to use `latest` versions (`pr#12804 <https://github.com/ceph/ceph/pull/12804>`_, Yuri Weinstein) -* tests: qa/distros: make centos_latest 7.3 (`pr#12944 <https://github.com/ceph/ceph/pull/12944>`_, Sage Weil) -* tests: qa,doc: document and fix tests for pool application warnings (`pr#16568 <https://github.com/ceph/ceph/pull/16568>`_, Sage Weil) -* tests: qa: do not mention ceph branch explicitly (`pr#13225 <https://github.com/ceph/ceph/pull/13225>`_, Tamil Muthamizhan) -* tests: qa: do not restrict valgrind runs to centos (`issue#18126 <http://tracker.ceph.com/issues/18126>`_, `pr#15893 <https://github.com/ceph/ceph/pull/15893>`_, Greg Farnum) -* tests: qa/erasure-code: override min_size to 2 (`issue#19770 <http://tracker.ceph.com/issues/19770>`_, `pr#14872 <https://github.com/ceph/ceph/pull/14872>`_, Kefu Chai) -* tests: qa: fixed distros links (`pr#12770 <https://github.com/ceph/ceph/pull/12770>`_, Yuri Weinstein) -* tests: qa/run-standalone.sh: fix the find option to be compatible with GNU find (`pr#16646 <https://github.com/ceph/ceph/pull/16646>`_, Kefu Chai) -* tests: qa: specify client for fs workunit (`pr#12914 <https://github.com/ceph/ceph/pull/12914>`_, Tamil Muthamizhan) -* tests: qa: split test_tiering into smaller pieces (`pr#15146 <https://github.com/ceph/ceph/pull/15146>`_, Kefu Chai) -* tests: qa/suite: Added a smoke suite for ceph-ansible (`pr#12610 <https://github.com/ceph/ceph/pull/12610>`_, Tamil Muthamizhan) -* tests: qa/suite: replace reference to fs/xfs.yaml (`pr#14756 <https://github.com/ceph/ceph/pull/14756>`_, Yehuda Sadeh) -* tests: qa/suites/ceph-ansible: removing fs workunit (`pr#12928 <https://github.com/ceph/ceph/pull/12928>`_, Tamil Muthamizhan) -* tests: qa/suites/{ceph-ansible,rest}: OpenStack volumes (`pr#13672 <https://github.com/ceph/ceph/pull/13672>`_, Zack Cerza) -* tests: qa/suites/ceph-deploy: Drop OpenStack volume count (`pr#13706 <https://github.com/ceph/ceph/pull/13706>`_, Zack Cerza) -* tests: qa/suites: drop 'fs' facet, and add 'objectstore' facet where missing (`pr#14198 <https://github.com/ceph/ceph/pull/14198>`_, Sage Weil) -* tests: qa/suites: escape the parenthesis of the whitelist text (`pr#16722 <https://github.com/ceph/ceph/pull/16722>`_, Kefu Chai) -* tests: qa/suites: fix upgrade tests vs cluster full thrashing (`pr#13852 <https://github.com/ceph/ceph/pull/13852>`_, Sage Weil) -* tests: qa/suites/fs: Add openstack volume configuration (`pr#13640 <https://github.com/ceph/ceph/pull/13640>`_, Zack Cerza) -* tests: qa/suites/jewel-x/point-to-point: don't scane for keys on second s3tests either (`pr#14788 <https://github.com/ceph/ceph/pull/14788>`_, Sage Weil) -* tests: qa/suites/kcephfs: Openstack volume configuration (`pr#13634 <https://github.com/ceph/ceph/pull/13634>`_, Zack Cerza) -* tests: qa/suites/{knfs,hadoop,samba}: OpenStack volume configuration (`pr#13637 <https://github.com/ceph/ceph/pull/13637>`_, Zack Cerza) -* tests: qa/suites/krbd: Add openstack volume configuration (`pr#13631 <https://github.com/ceph/ceph/pull/13631>`_, Zack Cerza) -* tests: qa/suites/powercycle/osd/whitelist_health: whitelist more (`pr#17306 <https://github.com/ceph/ceph/pull/17306>`_, Sage Weil) -* tests: qa/suites/powercycle: whitelist health for thrashing (`pr#16759 <https://github.com/ceph/ceph/pull/16759>`_, Sage Weil) -* tests: qa/suites/rados: a bit more whitelisting (`pr#16820 <https://github.com/ceph/ceph/pull/16820>`_, Sage Weil) -* tests: qa/suites/rados: fix ec thrashing (`pr#15087 <https://github.com/ceph/ceph/pull/15087>`_, Sage Weil) -* tests: qa/suites/rados/objectstore: enable experimental features for testing bluestore (`pr#13456 <https://github.com/ceph/ceph/pull/13456>`_, Kefu Chai, Dan Mick) -* tests: qa/suites/rados/singleton/all/erasure-code-nonregression: fix typo (`pr#16579 <https://github.com/ceph/ceph/pull/16579>`_, Sage Weil) -* tests: qa/suites/rados/singleton/all/mon-auth-caps: more osds so we can go clean (`pr#16225 <https://github.com/ceph/ceph/pull/16225>`_, Sage Weil) -* tests: qa/suites/rados/singleton-bluestore: concat settings (`pr#14884 <https://github.com/ceph/ceph/pull/14884>`_, Kefu Chai) -* tests: qa/suites/rados/singleton-nomsgr/all/multi-backfill-reject: sleep longer (`pr#16739 <https://github.com/ceph/ceph/pull/16739>`_, Sage Weil) -* tests: qa/suites/rados/singleton-nomsgr: fix syntax (`pr#15276 <https://github.com/ceph/ceph/pull/15276>`_, Sage Weil) -* tests: qa/suites/rados/thrash: make sure osds have map before legacy scrub (`pr#15117 <https://github.com/ceph/ceph/pull/15117>`_, Sage Weil) -* tests: qa/suites/rados/upgrade: restart mds (`pr#15517 <https://github.com/ceph/ceph/pull/15517>`_, Sage Weil) -* tests: qa/suites: Reduce fs combination tests for smoke, use bluestore (`pr#14854 <https://github.com/ceph/ceph/pull/14854>`_, Vasu Kulkarni) -* tests: qa/suites: Revert "qa/suites: add mon-reweight-min-pgs-per-osd = 4" (`pr#14584 <https://github.com/ceph/ceph/pull/14584>`_, Kefu Chai) -* tests: qa/suites/rgw: Add openstack volume configuration (`pr#13611 <https://github.com/ceph/ceph/pull/13611>`_, Zack Cerza) -* tests: qa/suites/upgarde/jewel-x/parallel: more whitelisting (`pr#16849 <https://github.com/ceph/ceph/pull/16849>`_, Sage Weil) -* tests: qa/suites/upgrade: add tiering test to hammer-jewel-x (`issue#19185 <http://tracker.ceph.com/issues/19185>`_, `pr#13805 <https://github.com/ceph/ceph/pull/13805>`_, Kefu Chai) -* tests: qa/suites/upgrade/hammer-jewel-x: add luminous.yaml (`issue#20342 <http://tracker.ceph.com/issues/20342>`_, `pr#15764 <https://github.com/ceph/ceph/pull/15764>`_, Kefu Chai) -* tests: qa/suites/upgrade/jewel-x: add mgr.x role (`pr#14689 <https://github.com/ceph/ceph/pull/14689>`_, Sage Weil) -* tests: qa/suites/upgrade/jewel-x: misc fixes for new health checks (`pr#16429 <https://github.com/ceph/ceph/pull/16429>`_, Sage Weil) -* tests: qa/suites/upgrade/kraken-x: do not thrash cluster full during upgrade (`issue#19232 <http://tracker.ceph.com/issues/19232>`_, `pr#13892 <https://github.com/ceph/ceph/pull/13892>`_, Dan Mick) -* tests: qa/suites/upgrade/kraken-x: misc fixes (`pr#14887 <https://github.com/ceph/ceph/pull/14887>`_, Sage Weil) -* tests: qa/suites/upgrade/kraken-x (`pr#13517 <https://github.com/ceph/ceph/pull/13517>`_, Sage Weil, Yuri Weinstein) -* tests: qa/suites/upgrade: set "sortbitwise" for jewel clusters (`pr#15661 <https://github.com/ceph/ceph/pull/15661>`_, Kefu Chai) -* tests: qa/suite/upgrade/jewel-x: various fixes (`pr#13734 <https://github.com/ceph/ceph/pull/13734>`_, Sage Weil) -* tests: qa/tasks: assert on pg status with a timeout (`issue#19594 <http://tracker.ceph.com/issues/19594>`_, `pr#14608 <https://github.com/ceph/ceph/pull/14608>`_, Kefu Chai) -* tests: qa/tasks/ceph: debug osd setup (`pr#16841 <https://github.com/ceph/ceph/pull/16841>`_, Sage Weil) -* tests: qa/tasks/ceph-deploy: create-keys explicitly (`pr#12867 <https://github.com/ceph/ceph/pull/12867>`_, Vasu Kulkarni) -* tests: qa/tasks/ceph-deploy: Fix bluestore options for ceph-deploy (`pr#16571 <https://github.com/ceph/ceph/pull/16571>`_, Vasu Kulkarni) -* tests: qa/tasks/ceph-deploy: use the new create option during instantiation (`pr#12892 <https://github.com/ceph/ceph/pull/12892>`_, Vasu Kulkarni) -* tests: qa/tasks/ceph: don't hard-code cluster name when copying fsid (`pr#16212 <https://github.com/ceph/ceph/pull/16212>`_, Jason Dillaman) -* tests: qa/tasks/ceph_manager: always fix pgp_num when done with thrashosd task (`issue#19771 <http://tracker.ceph.com/issues/19771>`_, `pr#14931 <https://github.com/ceph/ceph/pull/14931>`_, Kefu Chai) -* tests: qa/tasks/ceph_manager: 'ceph $service tell ...' is obsolete (`pr#15252 <https://github.com/ceph/ceph/pull/15252>`_, Sage Weil) -* tests: qa/tasks/ceph.py: debug which pgs aren't scrubbing (`pr#13649 <https://github.com/ceph/ceph/pull/13649>`_, Sage Weil) -* tests: qa/tasks/ceph: raise exceptions if scrubbing fails or cannot proceed (`pr#15310 <https://github.com/ceph/ceph/pull/15310>`_, Sage Weil) -* tests: qa/tasks/ceph: should be "Waiting for all PGs", not "all osds" (`pr#16122 <https://github.com/ceph/ceph/pull/16122>`_, Kefu Chai) -* tests: qa/tasks/ceph: wait longer for scrub (`pr#16824 <https://github.com/ceph/ceph/pull/16824>`_, Sage Weil) -* tests: qa/tasks: few fixes to get ceph-deploy 1node to working state (`pr#14400 <https://github.com/ceph/ceph/pull/14400>`_, Vasu Kulkarni) -* tests: qa/tasks/radosbench: increase timeout (`pr#15885 <https://github.com/ceph/ceph/pull/15885>`_, Sage Weil) -* tests: qa/tasks/rebuild_mondb: grant "mgr:allow \*" to client.admin (`issue#19439 <http://tracker.ceph.com/issues/19439>`_, `pr#14284 <https://github.com/ceph/ceph/pull/14284>`_, Kefu Chai) -* tests: qa/tasks/reg11184: use literal 'foo' instead pool_name (`pr#16451 <https://github.com/ceph/ceph/pull/16451>`_, Kefu Chai) -* tests: qa/tasks/repair_test: unset flags we set (`pr#15296 <https://github.com/ceph/ceph/pull/15296>`_, Sage Weil) -* tests: qa/tasks/rgw.py: start Apache before RadosGW (`pr#13846 <https://github.com/ceph/ceph/pull/13846>`_, Radoslaw Zarzynski) -* tests: qa/tasks/thrashosds-health.yaml: ignore MON_DOWN (`issue#20910 <http://tracker.ceph.com/issues/20910>`_, `pr#17003 <https://github.com/ceph/ceph/pull/17003>`_, Sage Weil) -* tests: qa/tasks: use sudo to check ceph health for systemd test (`pr#14464 <https://github.com/ceph/ceph/pull/14464>`_, Vasu Kulkarni) -* tests: qa/tasks/workunit.py: use "overrides" as the default settings of workunit (`issue#19429 <http://tracker.ceph.com/issues/19429>`_, `pr#14281 <https://github.com/ceph/ceph/pull/14281>`_, Kefu Chai) -* tests: qa/tasks/workunit: use ceph.git as an alternative of ceph-ci.git for cloning workunit (`pr#13663 <https://github.com/ceph/ceph/pull/13663>`_, Kefu Chai) -* tests: qa/tasks/workunit: use the suite repo for cloning workunit (`pr#13452 <https://github.com/ceph/ceph/pull/13452>`_, Kefu Chai) -* tests: qa/tasks/workunit: use the suite repo for cloning workunit (`pr#13625 <https://github.com/ceph/ceph/pull/13625>`_, Kefu Chai) -* tests: qa/test_rados_tool.sh: POSIX dd only accepts 'k' as multiplier (`pr#12699 <https://github.com/ceph/ceph/pull/12699>`_, Willem Jan Withagen) -* tests: qa: timeout when waiting for mgr to be available in healthy() (`pr#16797 <https://github.com/ceph/ceph/pull/16797>`_, Josh Durgin) -* tests: qa: Using centos 7.2 for `latest` version (`pr#12806 <https://github.com/ceph/ceph/pull/12806>`_, Yuri Weinstein) -* tests: qa/workunits/ceph-helpers: display rejected string (`issue#20344 <http://tracker.ceph.com/issues/20344>`_, `pr#14468 <https://github.com/ceph/ceph/pull/14468>`_, Kefu Chai) -* tests: qa/workunits/ceph-helpers: enable experimental features for osd (`pr#16319 <https://github.com/ceph/ceph/pull/16319>`_, Kefu Chai) -* tests: qa/workunits/ceph-helpers.sh: use syntax understood by jq 1.3 (`pr#15530 <https://github.com/ceph/ceph/pull/15530>`_, Kefu Chai) -* tests: qa/workunits/ceph-helpers: test wait_for_health_ok differently (`pr#16317 <https://github.com/ceph/ceph/pull/16317>`_, Kefu Chai) -* tests: qa/workunits/ceph-helpers: wait_for_clean() races with pg creation (`pr#12866 <https://github.com/ceph/ceph/pull/12866>`_, David Zafman) -* tests: qa/workunits/cephtool/test.sh: Be more liberal in testing health-output (`pr#14614 <https://github.com/ceph/ceph/pull/14614>`_, Willem Jan Withagen) -* tests: qa/workunits/cephtool/test.sh: "ceph osd stat" output changed, update accordingly (`pr#16444 <https://github.com/ceph/ceph/pull/16444>`_, Willem Jan Withagen, Kefu Chai) -* tests: qa/workunits/cephtool/test.sh: disable 'fs status' until bug is fixed (`issue#20761 <http://tracker.ceph.com/issues/20761>`_, `pr#16541 <https://github.com/ceph/ceph/pull/16541>`_, Sage Weil) -* tests: qa/workunits/cephtool/test.sh: fix test to watch audit channel (`pr#16470 <https://github.com/ceph/ceph/pull/16470>`_, Sage Weil) -* tests: qa/workunits/cephtool/test.sh: only include last line for epoch (`issue#20477 <http://tracker.ceph.com/issues/20477>`_, `pr#15770 <https://github.com/ceph/ceph/pull/15770>`_, Kefu Chai) -* tests: qa/workunits/rados/test.sh: print test name when it fails (`pr#13264 <https://github.com/ceph/ceph/pull/13264>`_, Kefu Chai) -* tests: rados: move cephtool.yaml to new singleton/bluestore subsuite (`issue#19797 <http://tracker.ceph.com/issues/19797>`_, `pr#14847 <https://github.com/ceph/ceph/pull/14847>`_, Nathan Cutler) -* tests: rbd/test_lock_fence.sh: fix rbdrw.py relative path (`issue#18388 <http://tracker.ceph.com/issues/18388>`_, `pr#12747 <https://github.com/ceph/ceph/pull/12747>`_, Nathan Cutler) -* tests: re-enable cephfs python tests on kclient (`issue#17193 <http://tracker.ceph.com/issues/17193>`_, `issue#18161 <http://tracker.ceph.com/issues/18161>`_, `pr#13200 <https://github.com/ceph/ceph/pull/13200>`_, Nathan Cutler) -* tests: remove temporary file (`pr#12919 <https://github.com/ceph/ceph/pull/12919>`_, Kefu Chai) -* tests: Revert "dummy: reduce run time, run user.yaml playbook" (`issue#18259 <http://tracker.ceph.com/issues/18259>`_, `pr#12506 <https://github.com/ceph/ceph/pull/12506>`_, Nathan Cutler) -* tests: Revert "qa/tasks/workunit: use the suite repo for cloning workunit" (`pr#13495 <https://github.com/ceph/ceph/pull/13495>`_, Sage Weil) -* tests: rgw.py: put client roles in a separate list (`issue#20417 <http://tracker.ceph.com/issues/20417>`_, `pr#15913 <https://github.com/ceph/ceph/pull/15913>`_, Nathan Cutler) -* tests: rgw/singleton: drop duplicate filestore-xfs.yaml (`pr#15959 <https://github.com/ceph/ceph/pull/15959>`_, Nathan Cutler) -* tests: set -x in suites/iozone.sh workunit (`issue#19740 <http://tracker.ceph.com/issues/19740>`_, `pr#14713 <https://github.com/ceph/ceph/pull/14713>`_, Nathan Cutler) -* tests: src/test/test_denc.cc: Fix errors in buffer overflow (`pr#12653 <https://github.com/ceph/ceph/pull/12653>`_, Willem Jan Withagen) -* tests: subst repo and branch in git.ceph.com URL in qa/tasks/cram.py and qa/tasks/qemu.py (`issue#18440 <http://tracker.ceph.com/issues/18440>`_, `pr#12816 <https://github.com/ceph/ceph/pull/12816>`_, Nathan Cutler) -* tests: tasks/workunit.py: when cloning, use --depth=1 (`pr#14214 <https://github.com/ceph/ceph/pull/14214>`_, Dan Mick) -* tests: test: add explicit braces to avoid ambiguous ‘else’ and to silence warnings (`pr#14472 <https://github.com/ceph/ceph/pull/14472>`_, Jos Collin) -* tests: test: add override in test submodule (`pr#13773 <https://github.com/ceph/ceph/pull/13773>`_, liuchang0812) -* tests: test: ceph osd stat out has changed, fix tests for that (`pr#16403 <https://github.com/ceph/ceph/pull/16403>`_, Willem Jan Withagen) -* tests: test:Check make_writeable() return value (`pr#15266 <https://github.com/ceph/ceph/pull/15266>`_, zhanglei) -* tests: test: clean up unused variable (`pr#12873 <https://github.com/ceph/ceph/pull/12873>`_, liuchang0812) -* tests: test/CMakeLists: disable test_pidfile.sh (`issue#20975 <http://tracker.ceph.com/issues/20975>`_, `pr#17241 <https://github.com/ceph/ceph/pull/17241>`_, Sage Weil) -* tests: test/compressor: disable isal tests if not available (`pr#14929 <https://github.com/ceph/ceph/pull/14929>`_, Kefu Chai) -* tests: test: c_read_operations.cc: silence warning from -Wsign-compare (`pr#14888 <https://github.com/ceph/ceph/pull/14888>`_, Jos Collin) -* tests: test: create asok files in a temp directory under $TMPDIR (`issue#16895 <http://tracker.ceph.com/issues/16895>`_, `pr#16445 <https://github.com/ceph/ceph/pull/16445>`_, Kefu Chai) -* tests: test/crush: silence warnings from -Walloc-size-larger-than= and -Wstringop-overflow (`pr#15173 <https://github.com/ceph/ceph/pull/15173>`_, Jos Collin) -* tests: test: c_write_operations.cc: silence warning from -Wsign-compare (`pr#14889 <https://github.com/ceph/ceph/pull/14889>`_, Jos Collin) -* tests: test: Division by zero in Legacy::encode_n() (`pr#15902 <https://github.com/ceph/ceph/pull/15902>`_, Jos Collin) -* tests: test/encoding: fix readable.sh bugs; fix ceph-object-corpus (`pr#13678 <https://github.com/ceph/ceph/pull/13678>`_, Sage Weil) -* tests: test/fio_ceph_objectstore: fix fio plugin build failure by engine_data (`pr#15044 <https://github.com/ceph/ceph/pull/15044>`_, lisali) -* tests: test/fio: Fix assert in set_cache_shards in bluestore fio (`pr#15659 <https://github.com/ceph/ceph/pull/15659>`_, Xiaoyan Li) -* tests: test/fio: fix lack of setting for Sequencer::shard_hint (`pr#15571 <https://github.com/ceph/ceph/pull/15571>`_, Igor Fedotov) -* tests: test/fio: print all perfcounters rather than objectstore itself (`pr#16339 <https://github.com/ceph/ceph/pull/16339>`_, Jianpeng Ma) -* tests: test/fio: remove experimental option for bluestore & rocksdb (`pr#16263 <https://github.com/ceph/ceph/pull/16263>`_, Pan Liu) -* tests: test: Fixes for test_pidfile (`issue#20770 <http://tracker.ceph.com/issues/20770>`_, `pr#16587 <https://github.com/ceph/ceph/pull/16587>`_, David Zafman) -* tests: test: fixing assert that creates warning: comparison between signed and unsigned integer expressions (`pr#14794 <https://github.com/ceph/ceph/pull/14794>`_, Jos Collin) -* tests: test: Fix mismatched sign comparison in histogram test (`pr#13362 <https://github.com/ceph/ceph/pull/13362>`_, Adam C. Emerson) -* tests: test: Fix reg11184 test to remove extraneous pg (`pr#16265 <https://github.com/ceph/ceph/pull/16265>`_, David Zafman) -* tests: test: fix test_pidfile (`pr#13646 <https://github.com/ceph/ceph/pull/13646>`_, yaoning) -* tests: test/fsx: Remove the dead code associated with aio backend (`pr#14905 <https://github.com/ceph/ceph/pull/14905>`_, Zhou Zhengping) -* tests: test: Initialize pointer variables in TestMemIoCtxImpl (`pr#16785 <https://github.com/ceph/ceph/pull/16785>`_, amitkuma) -* tests: test/librados: Initialize member variables in aio.cc (`pr#16845 <https://github.com/ceph/ceph/pull/16845>`_, amitkuma) -* tests: test: librados_test_stub: tmap_update: return -ENOENT when removing nonexisent key (`pr#12667 <https://github.com/ceph/ceph/pull/12667>`_, Mykola Golub) -* tests: test: migrate atomic_t to std::atomic (`pr#14655 <https://github.com/ceph/ceph/pull/14655>`_, Jesse Williamson) -* tests: test,mon,msg: kill clang analyzer warnings (`pr#16320 <https://github.com/ceph/ceph/pull/16320>`_, Kefu Chai) -* tests: test/mon: silence warnings from -Wreorder (`pr#15692 <https://github.com/ceph/ceph/pull/15692>`_, Jos Collin) -* tests: test/msgr: fixed the hang issue for perf_msg_client (`pr#16358 <https://github.com/ceph/ceph/pull/16358>`_, Pan Liu) -* tests: test/msgr: silence warnings from -Wsign-compare (`pr#15356 <https://github.com/ceph/ceph/pull/15356>`_, Jos Collin) -* tests: test/msgr: silence warnings from -Wsign-compare (`pr#15570 <https://github.com/ceph/ceph/pull/15570>`_, Jos Collin) -* tests: test: objectstore: chain_xattr: fix wrong memset usage to fill buf (`pr#14277 <https://github.com/ceph/ceph/pull/14277>`_, Weibing Zhang) -* tests: test/objectstore: Check apply_transaction() return values (`pr#15171 <https://github.com/ceph/ceph/pull/15171>`_, zhanglei) -* tests: test/objectstore/: Check put_ref return value (`pr#15007 <https://github.com/ceph/ceph/pull/15007>`_, zhanglei) -* tests: test/old: Removed commented code (`pr#15366 <https://github.com/ceph/ceph/pull/15366>`_, Jos Collin) -* tests: test/osdc: fix comparison error and silence warning from -Wunused-value (`pr#15353 <https://github.com/ceph/ceph/pull/15353>`_, Willem Jan Withagen) -* tests: test/osd: kill compile warning (`pr#16669 <https://github.com/ceph/ceph/pull/16669>`_, Yan Jun) -* tests: test/osd/osd-dup.sh: lower wb fd throttle limits (`pr#14984 <https://github.com/ceph/ceph/pull/14984>`_, Dan Mick) -* tests: test/osd/osd-dup.sh: use wait_for_clean (`pr#15722 <https://github.com/ceph/ceph/pull/15722>`_, Dan Mick) -* tests: test/osd/osd-scrub-repair.sh: disable ec_overwrite tests on FreeBSD (`pr#15445 <https://github.com/ceph/ceph/pull/15445>`_, Willem Jan Withagen) -* tests: test/osd/osd-scrub-repair.sh: Fix diff options on FreeBSD (`pr#15914 <https://github.com/ceph/ceph/pull/15914>`_, Willem Jan Withagen) -* tests: test/osd: Removed Commented Code - 2 (`issue#20207 <http://tracker.ceph.com/issues/20207>`_, `pr#15540 <https://github.com/ceph/ceph/pull/15540>`_, Jos Collin) -* tests: test: osd/TestOSDMap.cc: fix Clang complain about promotion (`pr#15525 <https://github.com/ceph/ceph/pull/15525>`_, Willem Jan Withagen) -* tests: test/rados: fix wrong parameter order of RETURN1_IF_NOT_VAL (`pr#16589 <https://github.com/ceph/ceph/pull/16589>`_, Yan Jun) -* tests: test: reg11184 might not always find pg 2.0 prior to import (`pr#16610 <https://github.com/ceph/ceph/pull/16610>`_, David Zafman) -* tests: test: Rename FileJournal object to distinguish (`pr#15279 <https://github.com/ceph/ceph/pull/15279>`_, Jos Collin) -* tests: test: replace hard-code binary names with varibles (`pr#12675 <https://github.com/ceph/ceph/pull/12675>`_, liuchang0812) -* tests: test: sed on FreeBSD requires "-i extension", so use gsed (`pr#13903 <https://github.com/ceph/ceph/pull/13903>`_, Willem Jan Withagen) -* tests: test: s/osd_objectstore_type/osd_objectstore (`pr#16469 <https://github.com/ceph/ceph/pull/16469>`_, xie xingguo) -* tests: test: test_denc.cc: silence warning from -Wsign-compare (`pr#15355 <https://github.com/ceph/ceph/pull/15355>`_, Jos Collin) -* tests: test: Test fix for SnapSet change (`pr#15161 <https://github.com/ceph/ceph/pull/15161>`_, David Zafman) -* tests: test: test_pidfile running 2nd mon has unreliable log output (`pr#16635 <https://github.com/ceph/ceph/pull/16635>`_, David Zafman) -* tests: test: Thrasher: do not update pools_to_fix_pgp_num if nothing happens (`pr#13518 <https://github.com/ceph/ceph/pull/13518>`_, Kefu Chai) -* tests: test: Thrasher: update pgp_num of all expanded pools if not yet (`pr#13367 <https://github.com/ceph/ceph/pull/13367>`_, Kefu Chai) -* tests: test/unittest_bluefs: check whether mounted success (`pr#14988 <https://github.com/ceph/ceph/pull/14988>`_, shiqi) -* tests: test/unittest_bluefs: remove unused variable (`pr#14006 <https://github.com/ceph/ceph/pull/14006>`_, shiqi) -* tests: test: unittest_hostname compile error on freebsd (`pr#13739 <https://github.com/ceph/ceph/pull/13739>`_, liuchang0812) -* tests: test: update test_rados_tool.sh, use POOL and OBJ var (`pr#12706 <https://github.com/ceph/ceph/pull/12706>`_, liuchang0812) -* tests: test: use 7130 for crush-classes.sh (`pr#14783 <https://github.com/ceph/ceph/pull/14783>`_, Loic Dachary) -* tests: test/vstart_wrapper.sh: display_log on test failure (`pr#15620 <https://github.com/ceph/ceph/pull/15620>`_, Kefu Chai) -* tests: test: warning: comparison between signed and unsigned integer expressions (`pr#14705 <https://github.com/ceph/ceph/pull/14705>`_, Jos Collin) -* tests: Thrasher: eliminate a race between kill_osd and __init__ (`issue#18799 <http://tracker.ceph.com/issues/18799>`_, `pr#13237 <https://github.com/ceph/ceph/pull/13237>`_, Nathan Cutler) -* tests: Thrasher: handle "OSD has the store locked" gracefully (`issue#19556 <http://tracker.ceph.com/issues/19556>`_, `pr#14415 <https://github.com/ceph/ceph/pull/14415>`_, Nathan Cutler) -* tests,tools: script/find_dups_in_pg_log: scrip to find dup requests due to short pg logs (`pr#13417 <https://github.com/ceph/ceph/pull/13417>`_, Sage Weil) -* tests,tools: test, ceph-osdomap-tool: kill clang warnings (`pr#15905 <https://github.com/ceph/ceph/pull/15905>`_, Kefu Chai) -* tests,tools: test: kill warnings (`pr#14892 <https://github.com/ceph/ceph/pull/14892>`_, Kefu Chai) -* tests: update SUSE yaml facets in qa/distros/all (`issue#18856 <http://tracker.ceph.com/issues/18856>`_, `pr#13313 <https://github.com/ceph/ceph/pull/13313>`_, Nathan Cutler) -* tests: workunit: request branch when cloning (`pr#14260 <https://github.com/ceph/ceph/pull/14260>`_, Kefu Chai, Dan Mick) -* tools: add override in tool submodule (`pr#13776 <https://github.com/ceph/ceph/pull/13776>`_, liuchang0812) -* tools: brag: count the number of mds in fsmap not in mdsmap (`issue#19192 <http://tracker.ceph.com/issues/19192>`_, `pr#13798 <https://github.com/ceph/ceph/pull/13798>`_, Peng Zhang) -* tools: ceph_common.sh: fix syntax error (`issue#17826 <http://tracker.ceph.com/issues/17826>`_, `pr#13419 <https://github.com/ceph/ceph/pull/13419>`_, Dan Mick) -* tools: ceph-conf: fix typo in usage: 'mon add' should be 'mon addr' (`pr#15935 <https://github.com/ceph/ceph/pull/15935>`_, Peng Zhang) -* tools: ceph-create-keys: add an argument to override default 10-minute timeout (`pr#16049 <https://github.com/ceph/ceph/pull/16049>`_, Douglas Fuller) -* tools: ceph-detect-init: adding Arch Linux support (`pr#12787 <https://github.com/ceph/ceph/pull/12787>`_, Jamin W. Collins) -* tools: ceph-detect-init: Adds Oracle Linux Server and Oracle VM Server detect (`pr#13917 <https://github.com/ceph/ceph/pull/13917>`_, Nikita Gerasimov) -* tools: ceph-detect-init: detect init system by poking the system (`issue#19884 <http://tracker.ceph.com/issues/19884>`_, `pr#15043 <https://github.com/ceph/ceph/pull/15043>`_, Kefu Chai) -* tools: ceph-disk: Add fix subcommand (`pr#13310 <https://github.com/ceph/ceph/pull/13310>`_, Boris Ranto) -* tools: ceph-disk: change the lockbox partition number to 5 (`issue#20556 <http://tracker.ceph.com/issues/20556>`_, `pr#16247 <https://github.com/ceph/ceph/pull/16247>`_, Shangzhong Zhu) -* tools: ceph-disk: command invocation needs all fields separate (`pr#15733 <https://github.com/ceph/ceph/pull/15733>`_, Willem Jan Withagen) -* tools: ceph-disk: convert none str to str before printing it (`issue#18371 <http://tracker.ceph.com/issues/18371>`_, `pr#12760 <https://github.com/ceph/ceph/pull/12760>`_, Kefu Chai) -* tools: ceph-disk: do not remove mount point if deactive --once (`pr#16474 <https://github.com/ceph/ceph/pull/16474>`_, Song Shun) -* tools: ceph-disk: Fix for missing 'not' in \*_is_diskdevice checks (`issue#20706 <http://tracker.ceph.com/issues/20706>`_, `pr#16481 <https://github.com/ceph/ceph/pull/16481>`_, Nikita Gerasimov) -* tools: ceph_disk/main.py: FreeBSD root has wheel for group (`pr#16609 <https://github.com/ceph/ceph/pull/16609>`_, Willem Jan Withagen) -* tools: ceph-disk: s/ceph_osd_mkfs/command_check_call/ (`issue#20685 <http://tracker.ceph.com/issues/20685>`_, `pr#16427 <https://github.com/ceph/ceph/pull/16427>`_, Zhu Shangzhong) -* tools: ceph.in: add help for locally-handled commands (`pr#13288 <https://github.com/ceph/ceph/pull/13288>`_, Dan Mick) -* tools: ceph.in: adjust usage width according to user's tty (`pr#15190 <https://github.com/ceph/ceph/pull/15190>`_, Kefu Chai) -* tools: ceph.in: assert(state==connected) before help_for_target() (`pr#15156 <https://github.com/ceph/ceph/pull/15156>`_, Kefu Chai) -* tools: ceph.in: drop the compatiiblity to handle non json commands (`pr#15508 <https://github.com/ceph/ceph/pull/15508>`_, Kefu Chai) -* tools: ceph.in: filter out audit from ceph -w (`pr#16345 <https://github.com/ceph/ceph/pull/16345>`_, John Spray) -* tools: ceph.in, mgr: misc cleanups (`pr#16229 <https://github.com/ceph/ceph/pull/16229>`_, liuchang0812) -* tools: ceph.in: print return code when json_command failed (`pr#15378 <https://github.com/ceph/ceph/pull/15378>`_, liuchang0812) -* tools: ceph-objectstore-tool: Handle object names that are also valid json (`pr#12848 <https://github.com/ceph/ceph/pull/12848>`_, David Zafman) -* tools: ceph-release-notes: escape asterisks not for inline emphasis (`pr#16199 <https://github.com/ceph/ceph/pull/16199>`_, Kefu Chai) -* tools: ceph-release-notes: escape _ for unintended links (`issue#17499 <http://tracker.ceph.com/issues/17499>`_, `pr#16528 <https://github.com/ceph/ceph/pull/16528>`_, Kefu Chai) -* tools: ceph-release-notes: handle an edge case (`pr#16277 <https://github.com/ceph/ceph/pull/16277>`_, Nathan Cutler) -* tools: ceph-release-notes: ignore low-numbered PRs (`issue#18695 <http://tracker.ceph.com/issues/18695>`_, `pr#13151 <https://github.com/ceph/ceph/pull/13151>`_, Nathan Cutler) -* tools: ceph-release-notes: port it to py3 (`pr#16261 <https://github.com/ceph/ceph/pull/16261>`_, Kefu Chai) -* tools: ceph-release-notes: prefixes and pep8 compliance (`pr#14156 <https://github.com/ceph/ceph/pull/14156>`_, Nathan Cutler) -* tools: ceph-release-notes: refactor and fix regressions (`pr#16411 <https://github.com/ceph/ceph/pull/16411>`_, Nathan Cutler) -* tools: ceph-release-notes: strip trailing punctuation (`pr#14385 <https://github.com/ceph/ceph/pull/14385>`_, Nathan Cutler) -* tools: ceph-rest-api: be more tolerant on network failure (`issue#20115 <http://tracker.ceph.com/issues/20115>`_, `pr#15706 <https://github.com/ceph/ceph/pull/15706>`_, Kefu Chai) -* tools: ceph-volume: adds functional CI testing #16919 (`pr#16970 <https://github.com/ceph/ceph/pull/16970>`_, Andrew Schoen, Alfredo Deza) -* tools: ceph-volume docs (`pr#17124 <https://github.com/ceph/ceph/pull/17124>`_, Alfredo Deza) -* tools: ceph-volume: initial take on ceph-volume CLI tool (`pr#16632 <https://github.com/ceph/ceph/pull/16632>`_, Dan Mick, Alfredo Deza) -* tools: ceph-volume: Use a delimited CLI output parser instead of JSON (`pr#17123 <https://github.com/ceph/ceph/pull/17123>`_, Alfredo Deza) -* tools: change compare_exchange_weak to compare_exchange_strong (`pr#15030 <https://github.com/ceph/ceph/pull/15030>`_, Jesse Williamson) -* tools: Cleanup dead code in ceph-objectstore-tool (`pr#15812 <https://github.com/ceph/ceph/pull/15812>`_, David Zafman) -* tools: fio_ceph_objectstore: Print db_statistics when rocksdb_perf is enabled (`pr#15796 <https://github.com/ceph/ceph/pull/15796>`_, Xiaoyan Li) -* tools: init-ceph: print trailing n in "status" output (`pr#13351 <https://github.com/ceph/ceph/pull/13351>`_, Kefu Chai) -* tools: init-ceph: should have a space before "]" (`pr#14796 <https://github.com/ceph/ceph/pull/14796>`_, Kefu Chai) -* tools: os/bluestore/bluestore_tool: add sanity check to get rid of occasionally crash (`pr#16013 <https://github.com/ceph/ceph/pull/16013>`_, xie xingguo) -* tools: rados: check for negative return value of rados_create_with_context() as its comment put (`pr#10893 <https://github.com/ceph/ceph/pull/10893>`_, zhang.zezhu) -* tools: rados: fix typo in 'df' column name (`pr#15603 <https://github.com/ceph/ceph/pull/15603>`_, Ilya Dryomov) -* tools: rados: out json 'df' values as numbers, not strings (`issue#15546 <http://tracker.ceph.com/issues/15546>`_, `pr#14644 <https://github.com/ceph/ceph/pull/14644>`_, Sage Weil) -* tools: script: add docker core dump debugger (`pr#16375 <https://github.com/ceph/ceph/pull/16375>`_, Patrick Donnelly) -* tools: script: ceph-release-notes check orig. issue only for backports (`pr#12979 <https://github.com/ceph/ceph/pull/12979>`_, Abhishek Lekshmanan) -* tools: script/sepia_bt.sh: no need to pass version and sha1 anymore (`pr#13380 <https://github.com/ceph/ceph/pull/13380>`_, Kefu Chai) -* tools: src/ceph-disk/ceph_disk/main.py: Make 'ceph-disk list' work on FreeBSD (`pr#14483 <https://github.com/ceph/ceph/pull/14483>`_, Willem Jan Withagen) -* tools: stop.sh: boilerplate error (don't stop mon when stopping mgr) (`pr#14461 <https://github.com/ceph/ceph/pull/14461>`_, Dan Mick) -* tools: support hammer in rbd_recover_tool (`pr#12413 <https://github.com/ceph/ceph/pull/12413>`_, Bartłomiej Święcki) -* tools: tools/ceph_kvstore_tool: add "bluestore-kv" to usage (`pr#15326 <https://github.com/ceph/ceph/pull/15326>`_, xie xingguo) -* tools: tools/crushtool: replicated-rule API support (`pr#15011 <https://github.com/ceph/ceph/pull/15011>`_, xie xingguo) -* tools: tools/rados: add a parameter "--offset" to rados put command (`pr#12674 <https://github.com/ceph/ceph/pull/12674>`_, liuchang0812) -* tools: tools/rados: Check return value of connect (`issue#19319 <http://tracker.ceph.com/issues/19319>`_, `pr#14057 <https://github.com/ceph/ceph/pull/14057>`_, Brad Hubbard) -* tools: tools/rados: fixed typo in help information (`pr#15618 <https://github.com/ceph/ceph/pull/15618>`_, Pan Liu) -* tools: tools/rados: remove useless function declaration (`pr#12566 <https://github.com/ceph/ceph/pull/12566>`_, liuchang0812) -* tools: tools/rados: some cleanups (`pr#16147 <https://github.com/ceph/ceph/pull/16147>`_, Yan Jun) -* tools: vstart: "debug_ms=1" for mgr by default (`pr#15127 <https://github.com/ceph/ceph/pull/15127>`_, Kefu Chai) -* tools: vstart: don't configure rgw_dns_name (`pr#13411 <https://github.com/ceph/ceph/pull/13411>`_, Yehuda Sadeh) -* tools: vstart: don't create cluster by default (`pr#13891 <https://github.com/ceph/ceph/pull/13891>`_, Yehuda Sadeh) -* tools: vstart: print "start osd.$id" instead of "start osd$id" (`pr#15427 <https://github.com/ceph/ceph/pull/15427>`_, Kefu Chai) -* tools: vstart.sh: bind restful, dashboard to ::, not 127.0.0.1 (`pr#16349 <https://github.com/ceph/ceph/pull/16349>`_, Sage Weil) -* tools: vstart.sh: do not add host for mgr.\* section if not $overwrite_conf (`pr#13767 <https://github.com/ceph/ceph/pull/13767>`_, Kefu Chai) -* tools: warning, ‘%.16x’ directive output truncated writing 16 bytes into a region of size 9 (`pr#14292 <https://github.com/ceph/ceph/pull/14292>`_, Jos Collin) -* tracing: don't include oid when tracing at dequeue_op() (`pr#13410 <https://github.com/ceph/ceph/pull/13410>`_, Yehuda Sadeh) diff --git a/doc/releases/mimic.rst b/doc/releases/mimic.rst deleted file mode 100644 index c811556e3..000000000 --- a/doc/releases/mimic.rst +++ /dev/null @@ -1,4475 +0,0 @@ -===== -Mimic -===== - -Mimic is the 13th stable release of Ceph. It is named after the mimic -octopus (thaumoctopus mimicus). - -v13.2.10 Mimic -============== - -This is the tenth bugfix release of Ceph Mimic, this release fixes a RGW -vulnerability affecting mimic, and we recommend that all mimic users upgrade. - -Notable Changes ---------------- -* CVE 2020 12059: Fix an issue with Post Object Requests with Tagging - (`issue#44967 <http://tracker.ceph.com/issues/44967>`_, Lei Cao, Abhishek - Lekshmanan) - -v13.2.9 Mimic -============= - -This is the ninth and very likely the last stable release in the Ceph Mimic -stable release series. This release fixes bugs across all components and also -contains a RGW security fix. We recommend all mimic users to upgrade to this -version. - -Notable Changes ---------------- - -* CVE-2020-1760: Fixed XSS due to RGW GetObject header-splitting - -* The configuration value ``osd_calc_pg_upmaps_max_stddev`` used for upmap - balancing has been removed. Instead use the mgr balancer config - ``upmap_max_deviation`` which now is an integer number of PGs of deviation - from the target PGs per OSD. This can be set with a command like - ``ceph config set mgr mgr/balancer/upmap_max_deviation 2``. The default - ``upmap_max_deviation`` is 1. There are situations where crush rules - would not allow a pool to ever have completely balanced PGs. For example, if - crush requires 1 replica on each of 3 racks, but there are fewer OSDs in 1 of - the racks. In those cases, the configuration value can be increased. - -* The ``cephfs-data-scan scan_links`` command now automatically repair inotables - and snaptable. - - -Changelog ---------- - -* bluestore: os/bluestore: fix improper setting of STATE_KV_SUBMITTED (`pr#31673 <https://github.com/ceph/ceph/pull/31673>`_, Igor Fedotov) -* ceph-volume/batch: check lvs list before access (`pr#34479 <https://github.com/ceph/ceph/pull/34479>`_, Jan Fajerski) -* ceph-volume/batch: fail on filtered devices when non-interactive (`pr#33201 <https://github.com/ceph/ceph/pull/33201>`_, Jan Fajerski) -* ceph-volume/batch: return success when all devices are filtered (`pr#34476 <https://github.com/ceph/ceph/pull/34476>`_, Jan Fajerski) -* ceph-volume/lvm/activate.py: clarify error message: fsid refers to osd_fsid (`pr#32865 <https://github.com/ceph/ceph/pull/32865>`_, Yaniv Kaul) -* ceph-volume/test: patch VolumeGroups (`pr#32559 <https://github.com/ceph/ceph/pull/32559>`_, Jan Fajerski) -* ceph-volume: Dereference symlink in lvm list (`pr#32876 <https://github.com/ceph/ceph/pull/32876>`_, Benoît Knecht) -* ceph-volume: add db and wal support to raw mode (`pr#33622 <https://github.com/ceph/ceph/pull/33622>`_, Sébastien Han) -* ceph-volume: add methods to pass filters to pvs, vgs and lvs commands (`pr#33215 <https://github.com/ceph/ceph/pull/33215>`_, Rishabh Dave) -* ceph-volume: add proper size attribute to partitions (`pr#32529 <https://github.com/ceph/ceph/pull/32529>`_, Jan Fajerski) -* ceph-volume: add raw mode (`pr#33580 <https://github.com/ceph/ceph/pull/33580>`_, Jan Fajerski, Sage Weil, Guillaume Abrioux) -* ceph-volume: add sizing arguments to prepare (`pr#33578 <https://github.com/ceph/ceph/pull/33578>`_, Jan Fajerski) -* ceph-volume: add utility functions (`pr#32544 <https://github.com/ceph/ceph/pull/32544>`_, Mohamad Gebai) -* ceph-volume: allow raw block devices everywhere (`pr#32869 <https://github.com/ceph/ceph/pull/32869>`_, Jan Fajerski) -* ceph-volume: allow to skip restorecon calls (`pr#32530 <https://github.com/ceph/ceph/pull/32530>`_, Alfredo Deza) -* ceph-volume: avoid calling zap_lv with a LV-less VG (`pr#33610 <https://github.com/ceph/ceph/pull/33610>`_, Jan Fajerski) -* ceph-volume: batch bluestore fix create_lvs call (`pr#33579 <https://github.com/ceph/ceph/pull/33579>`_, Jan Fajerski) -* ceph-volume: batch bluestore fix create_lvs call (`pr#33623 <https://github.com/ceph/ceph/pull/33623>`_, Jan Fajerski) -* ceph-volume: check if we run in an selinux environment (`pr#32866 <https://github.com/ceph/ceph/pull/32866>`_, Jan Fajerski) -* ceph-volume: check if we run in an selinux environment, now also in py2 (`pr#32867 <https://github.com/ceph/ceph/pull/32867>`_, Jan Fajerski) -* ceph-volume: devices/simple/scan: Fix string in log statement (`pr#34444 <https://github.com/ceph/ceph/pull/34444>`_, Jan Fajerski) -* ceph-volume: don't create osd['block.db'] by default (`pr#33626 <https://github.com/ceph/ceph/pull/33626>`_, Jan Fajerski) -* ceph-volume: don't remove vg twice when zapping filestore (`pr#33615 <https://github.com/ceph/ceph/pull/33615>`_, Jan Fajerski) -* ceph-volume: finer grained availability notion in inventory (`pr#33606 <https://github.com/ceph/ceph/pull/33606>`_, Jan Fajerski) -* ceph-volume: fix is_ceph_device for lvm batch (`pr#33608 <https://github.com/ceph/ceph/pull/33608>`_, Jan Fajerski, Dimitri Savineau) -* ceph-volume: fix the integer overflow (`pr#32872 <https://github.com/ceph/ceph/pull/32872>`_, dongdong tao) -* ceph-volume: import mock.mock instead of unittest.mock (py2) (`pr#32871 <https://github.com/ceph/ceph/pull/32871>`_, Jan Fajerski) -* ceph-volume: lvm deactivate command (`pr#33208 <https://github.com/ceph/ceph/pull/33208>`_, Jan Fajerski) -* ceph-volume: lvm/deactivate: add unit tests, remove --all (`pr#32862 <https://github.com/ceph/ceph/pull/32862>`_, Jan Fajerski) -* ceph-volume: lvm: get_device_vgs() filter by provided prefix (`pr#33617 <https://github.com/ceph/ceph/pull/33617>`_, Jan Fajerski, Yehuda Sadeh) -* ceph-volume: make get_devices fs location independent (`pr#33124 <https://github.com/ceph/ceph/pull/33124>`_, Jan Fajerski) -* ceph-volume: minor clean-up of "simple scan" subcommand help (`pr#32557 <https://github.com/ceph/ceph/pull/32557>`_, Michael Fritch) -* ceph-volume: mokeypatch calls to lvm related binaries (`pr#31406 <https://github.com/ceph/ceph/pull/31406>`_, Jan Fajerski) -* ceph-volume: pass journal_size as Size not string (`pr#33611 <https://github.com/ceph/ceph/pull/33611>`_, Jan Fajerski) -* ceph-volume: rearrange api/lvm.py (`pr#31407 <https://github.com/ceph/ceph/pull/31407>`_, Rishabh Dave) -* ceph-volume: refactor listing.py + fixes (`pr#33603 <https://github.com/ceph/ceph/pull/33603>`_, Jan Fajerski, Rishabh Dave, Theofilos Mouratidis, Guillaume Abrioux) -* ceph-volume: reject disks smaller then 5GB in inventory (`issue#40776 <http://tracker.ceph.com/issues/40776>`_, `pr#32528 <https://github.com/ceph/ceph/pull/32528>`_, Jan Fajerski) -* ceph-volume: silence 'ceph-bluestore-tool' failures (`pr#33605 <https://github.com/ceph/ceph/pull/33605>`_, Sébastien Han) -* ceph-volume: skip missing interpreters when running tox tests (`pr#33489 <https://github.com/ceph/ceph/pull/33489>`_, Andrew Schoen) -* ceph-volume: skip osd creation when already done (`pr#33607 <https://github.com/ceph/ceph/pull/33607>`_, Guillaume Abrioux) -* ceph-volume: strip _dmcrypt suffix in simple scan json output (`pr#33618 <https://github.com/ceph/ceph/pull/33618>`_, Jan Fajerski) -* ceph-volume: use correct extents if using db-devices and >1 osds_per_device (`pr#32875 <https://github.com/ceph/ceph/pull/32875>`_, Fabian Niepelt) -* ceph-volume: use fsync for dd command (`pr#31552 <https://github.com/ceph/ceph/pull/31552>`_, Rishabh Dave) -* ceph-volume: use get_device_vgs in has_common_vg (`pr#33609 <https://github.com/ceph/ceph/pull/33609>`_, Jan Fajerski) -* ceph-volume: util: look for executable in $PATH (`pr#32861 <https://github.com/ceph/ceph/pull/32861>`_, Shyukri Shyukriev) -* cephfs: cephfs: osdc/objecter: Fix last_sent in scientific format and add age to ops (`pr#31384 <https://github.com/ceph/ceph/pull/31384>`_, Varsha Rao) -* cephfs: cephfs: test_volume_client: declare only one default for python version (`issue#40460 <http://tracker.ceph.com/issues/40460>`_, `pr#30110 <https://github.com/ceph/ceph/pull/30110>`_, Rishabh Dave) -* cephfs: client: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (`pr#31283 <https://github.com/ceph/ceph/pull/31283>`_, "Yan, Zheng") -* cephfs: client: remove Inode.dir_contacts field and handle bad whence value to llseek gracefully (`pr#31380 <https://github.com/ceph/ceph/pull/31380>`_, Jeff Layton) -* cephfs: mds: avoid calling clientreplay_done() prematurely (`pr#31282 <https://github.com/ceph/ceph/pull/31282>`_, "Yan, Zheng") -* cephfs: mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable (`pr#32757 <https://github.com/ceph/ceph/pull/32757>`_, "Yan, Zheng") -* cephfs: mds: fix infinite loop in Locker::file_update_finish (`pr#31284 <https://github.com/ceph/ceph/pull/31284>`_, "Yan, Zheng") -* cephfs: mds: mds returns -5(EIO) error when the deleted file does not exist (`pr#31381 <https://github.com/ceph/ceph/pull/31381>`_, huanwen ren) -* cephfs: mds: split the dir if the op makes it oversized, because some ops maybe in flight (`pr#31379 <https://github.com/ceph/ceph/pull/31379>`_, simon gao) -* cephfs: tools/cephfs: make 'cephfs-data-scan scan_links' reconstruct snaptable (`pr#31281 <https://github.com/ceph/ceph/pull/31281>`_, "Yan, Zheng") -* common/config: parse --log-early option (`pr#33130 <https://github.com/ceph/ceph/pull/33130>`_, Sage Weil) -* common: common/admin_socket: Increase socket timeouts (`pr#33323 <https://github.com/ceph/ceph/pull/33323>`_, Brad Hubbard) -* common: common/config: update values when they are removed via mon (`pr#33327 <https://github.com/ceph/ceph/pull/33327>`_, Sage Weil) -* common: common/util: use ifstream to read from /proc files (`pr#32902 <https://github.com/ceph/ceph/pull/32902>`_, Kefu Chai, songweibin) -* core,mgr,tests: mgr: Release GIL and Balancer fixes (`pr#31957 <https://github.com/ceph/ceph/pull/31957>`_, Neha Ojha, Kefu Chai, Noah Watkins, David Zafman) -* core,mgr: mgr/prometheus: assign a value to osd_dev_node when obj_store is not filestore or bluestore (`pr#31557 <https://github.com/ceph/ceph/pull/31557>`_, jiahuizeng) -* core,tests: qa/tasks/cbt: install python3 deps (`pr#34193 <https://github.com/ceph/ceph/pull/34193>`_, Sage Weil) -* core: mon/OSDMonitor: fix format error ceph osd stat --format json (`pr#33322 <https://github.com/ceph/ceph/pull/33322>`_, Zheng Yin) -* core: mon: Don't put session during feature change (`pr#33154 <https://github.com/ceph/ceph/pull/33154>`_, Brad Hubbard) -* core: osd/PeeringState.cc: don't let num_objects become negative (`pr#33331 <https://github.com/ceph/ceph/pull/33331>`_, Neha Ojha) -* core: osd/PeeringState.cc: skip peer_purged when discovering all missing (`pr#33329 <https://github.com/ceph/ceph/pull/33329>`_, Neha Ojha) -* core: osd/PeeringState.h: ignore MLogRec in Peering/GetInfo (`pr#33594 <https://github.com/ceph/ceph/pull/33594>`_, Neha Ojha) -* core: osd/PeeringState: do not exclude up from acting_recovery_backfill (`pr#33324 <https://github.com/ceph/ceph/pull/33324>`_, Nathan Cutler, xie xingguo) -* core: osd: Allow 64-char hostname to be added as the "host" in CRUSH (`pr#33145 <https://github.com/ceph/ceph/pull/33145>`_, Michal Skalski) -* core: osd: Diagnostic logging for upmap cleaning (`pr#32717 <https://github.com/ceph/ceph/pull/32717>`_, David Zafman) -* core: osd: backfill_toofull seen on cluster where the most full OSD is at 1% (`pr#32361 <https://github.com/ceph/ceph/pull/32361>`_, David Zafman) -* core: osd: set collection pool opts on collection create, pg load (`pr#32125 <https://github.com/ceph/ceph/pull/32125>`_, Sage Weil) -* core: selinux: Allow ceph to read udev db (`pr#32258 <https://github.com/ceph/ceph/pull/32258>`_, Boris Ranto) -* core: selinux: Allow ceph-mgr access to httpd dir (`pr#34458 <https://github.com/ceph/ceph/pull/34458>`_, Brad Hubbard) -* doc: remove invalid option mon_pg_warn_max_per_osd (`pr#31875 <https://github.com/ceph/ceph/pull/31875>`_, zhang daolong) -* doc: doc/_templates/page.html: redirect to etherpad (`pr#32249 <https://github.com/ceph/ceph/pull/32249>`_, Neha Ojha) -* doc: doc/cephfs/client-auth: description and example are inconsistent (`pr#32782 <https://github.com/ceph/ceph/pull/32782>`_, Ilya Dryomov) -* doc: wrong datatype describing crush_rule (`pr#32255 <https://github.com/ceph/ceph/pull/32255>`_, Kefu Chai) -* mgr,pybind: mgr/prometheus: report per-pool pg states (`pr#33158 <https://github.com/ceph/ceph/pull/33158>`_, Aleksei Zakharov) -* mgr,pybind: mgr/telemetry: check get_metadata return val (`pr#33096 <https://github.com/ceph/ceph/pull/33096>`_, Yaarit Hatuka) -* mount.ceph: give a hint message when no mds is up or cluster is laggy (`pr#32911 <https://github.com/ceph/ceph/pull/32911>`_, Xiubo Li) -* pybind: pybind/mgr: Cancel output color control (`pr#31805 <https://github.com/ceph/ceph/pull/31805>`_, Zheng Yin) -* qa: get rid of iterkeys for py3 compatibility (`pr#33999 <https://github.com/ceph/ceph/pull/33999>`_, Kyr Shatskyy) -* rbd: creating thick-provision image progress percent info exceeds 100% (`pr#33318 <https://github.com/ceph/ceph/pull/33318>`_, Xiangdong Mu) -* rbd: librbd: diff iterate with fast-diff now correctly includes parent (`pr#32470 <https://github.com/ceph/ceph/pull/32470>`_, Jason Dillaman) -* rbd: librbd: don't call refresh from mirror::GetInfoRequest state machine (`pr#32952 <https://github.com/ceph/ceph/pull/32952>`_, Mykola Golub) -* rbd: librbd: fix rbd_open_by_id, rbd_open_by_id_read_only (`pr#33315 <https://github.com/ceph/ceph/pull/33315>`_, yangjun) -* rbd: nautilus: rbd-mirror: fix 'rbd mirror status' asok command output (`pr#32714 <https://github.com/ceph/ceph/pull/32714>`_, Mykola Golub) -* rbd: rbd-mirror: clone v2 mirroring improvements (`pr#31520 <https://github.com/ceph/ceph/pull/31520>`_, Mykola Golub) -* rbd: rbd-mirror: improve detection of blacklisted state (`pr#33598 <https://github.com/ceph/ceph/pull/33598>`_, Mykola Golub) -* rbd: rbd-mirror: make logrotate work (`pr#32598 <https://github.com/ceph/ceph/pull/32598>`_, Mykola Golub) -* rgw: add bucket permission verify when copy obj (`pr#31377 <https://github.com/ceph/ceph/pull/31377>`_, NancySu05) -* rgw: add list user admin OP API (`pr#31754 <https://github.com/ceph/ceph/pull/31754>`_, Oshyn Song) -* rgw: add missing admin property when sync user info (`pr#30804 <https://github.com/ceph/ceph/pull/30804>`_, zhang Shaowen) -* rgw: add num_shards to radosgw-admin bucket stats (`pr#31183 <https://github.com/ceph/ceph/pull/31183>`_, Paul Emmerich) -* rgw: adding mfa code validation when bucket versioning status is changed (`pr#33303 <https://github.com/ceph/ceph/pull/33303>`_, Pritha Srivastava) -* rgw: allow reshard log entries for non-existent buckets to be cancelled (`pr#33302 <https://github.com/ceph/ceph/pull/33302>`_, J. Eric Ivancich) -* rgw: auto-clean reshard queue entries for non-existent buckets (`pr#33300 <https://github.com/ceph/ceph/pull/33300>`_, J. Eric Ivancich) -* rgw: change the "rgw admin status" 'num_shards' output to signed int (`issue#37645 <http://tracker.ceph.com/issues/37645>`_, `pr#33305 <https://github.com/ceph/ceph/pull/33305>`_, Mark Kogan) -* rgw: crypt: permit RGW-AUTO/default with SSE-S3 headers (`pr#31861 <https://github.com/ceph/ceph/pull/31861>`_, Matt Benjamin) -* rgw: find oldest period and update RGWMetadataLogHistory() (`pr#33309 <https://github.com/ceph/ceph/pull/33309>`_, Shilpa Jagannath) -* rgw: fix a bug that bucket instance obj can't be removed after resharding completed (`pr#33306 <https://github.com/ceph/ceph/pull/33306>`_, zhang Shaowen) -* rgw: fix bad user stats on versioned bucket after reshard (`pr#33304 <https://github.com/ceph/ceph/pull/33304>`_, J. Eric Ivancich) -* rgw: fix memory growth while deleting objects with (`pr#31378 <https://github.com/ceph/ceph/pull/31378>`_, Mark Kogan) -* rgw: get barbican secret key request maybe return error code (`pr#33966 <https://github.com/ceph/ceph/pull/33966>`_, Richard Bai(白学余)) -* rgw: make max_connections configurable in beast (`pr#33341 <https://github.com/ceph/ceph/pull/33341>`_, Tiago Pasqualini) -* rgw: making implicit_tenants backwards compatible (`issue#24348 <http://tracker.ceph.com/issues/24348>`_, `pr#33748 <https://github.com/ceph/ceph/pull/33748>`_, Marcus Watts) -* rgw: maybe coredump when reload operator happened (`pr#33313 <https://github.com/ceph/ceph/pull/33313>`_, Richard Bai(白学余)) -* rgw: move forward marker even in case of many rgw.none indexes (`pr#33311 <https://github.com/ceph/ceph/pull/33311>`_, Ilsoo Byun) -* rgw: prevent bucket reshard scheduling if bucket is resharding (`pr#31299 <https://github.com/ceph/ceph/pull/31299>`_, J. Eric Ivancich) -* rgw: update the hash source for multipart entries during resharding (`pr#33312 <https://github.com/ceph/ceph/pull/33312>`_, dongdong tao) - - -v13.2.8 Mimic -============= - -This is the eighth release in the Ceph Mimic stable release series. Its sole -purpose is to fix a regression that found its way into the previous release. - -Notable Changes ---------------- - -* Due to a missed backport, clusters in the process of being upgraded from - 13.2.6 to 13.2.7 might suffer an OSD crash in build_incremental_map_msg. - This regression was reported in https://tracker.ceph.com/issues/43106 - and is fixed in 13.2.8 (this release). Users of 13.2.6 can upgrade to 13.2.8 - directly - i.e., skip 13.2.7 - to avoid this. - -Changelog ---------- - -* osd: fix sending incremental map messages (more) (`issue#43106 <https://tracker.ceph.com/issues/43106>`_, `pr#32000 <https://github.com/ceph/ceph/pull/32000>`_, Sage Weil) -* tests: added missing point release versions (`pr#32087 <https://github.com/ceph/ceph/pull/32087>`_, Yuri Weinstein) -* tests: rgw: add missing force-branch: ceph-mimic for swift tasks (`pr#32033 <https://github.com/ceph/ceph/pull/32033>`_, Casey Bodley) - - -v13.2.7 Mimic -============= - -This is the seventh bugfix release of the Mimic v13.2.x long-term stable release -series. All Mimic users are advised to upgrade. - -Notable Changes ---------------- - -MDS: - -* Cache trimming is now throttled. Dropping the MDS cache via the "ceph tell - mds.<foo> cache drop" command or large reductions in the cache size will no - longer cause service unavailability. - -* Behavior with recalling caps has been significantly improved to not attempt - recalling too many caps at once, leading to instability. MDS with a large - cache (64GB+) should be more stable. - -* MDS now provides a config option "mds_max_caps_per_client" (default: 1M) to - limit the number of caps a client session may hold. Long running client - sessions with a large number of caps have been a source of instability in the - MDS when all of these caps need to be processed during certain session - events. It is recommended to not unnecessarily increase this value. - -* The "mds_recall_state_timeout" config parameter has been removed. Late client - recall warnings are now generated based on the number of caps the MDS has - recalled which have not been released. The new config parameters - "mds_recall_warning_threshold" (default: 32K) and "mds_recall_warning_decay_rate" - (default: 60s) set the threshold for this warning. - -* The "cache drop" admin socket command has been removed. The "ceph tell mds.X - cache drop" remains. - -OSD: - -* A health warning is now generated if the average osd heartbeat ping time exceeds - a configurable threshold for any of the intervals computed. The OSD computes - 1 minute, 5 minute and 15 minute intervals with average, minimum and maximum - values. New configuration option "mon_warn_on_slow_ping_ratio" specifies - a percentage of "osd_heartbeat_grace" to determine the threshold. A value of - zero disables the warning. A new configuration option "mon_warn_on_slow_ping_time", - specified in milliseconds, overrides the computed value, causing a warning - when OSD heartbeat pings take longer than the specified amount. A new admin - command "ceph daemon mgr.# dump_osd_network [threshold]" lists all connections - with a ping time longer than the specified threshold or value determined by - the config options, for the average for any of the 3 intervals. A new admin - command "ceph daemon osd.# dump_osd_network [threshold]" does the same but only - including heartbeats initiated by the specified OSD. - -* The default value of the "osd_deep_scrub_large_omap_object_key_threshold" - parameter has been lowered to detect an object with large number of omap keys - more easily. - -RGW: - -* radosgw-admin introduces two subcommands that allow the managing of expire-stale - objects that might be left behind after a bucket reshard in earlier versions - of RGW. One subcommand lists such objects and the other deletes them. Read the - troubleshooting section of the dynamic resharding docs for details. - -Changelog ---------- - -* bluestore: 50-100% iops lost due to bluefs_preextend_wal_files = false (`issue#40280 <http://tracker.ceph.com/issues/40280>`_, `pr#28574 <https://github.com/ceph/ceph/pull/28574>`_, Vitaliy Filippov) -* bluestore: Change default for bluestore_fsck_on_mount_deep as false (`pr#29699 <https://github.com/ceph/ceph/pull/29699>`_, Neha Ojha) -* bluestore: _txc_add_transaction error (39) Directory not empty not handled on operation 21 (op 1, counting from 0) (`issue#39692 <http://tracker.ceph.com/issues/39692>`_, `pr#29217 <https://github.com/ceph/ceph/pull/29217>`_, Sage Weil) -* bluestore: apply shared_alloc_size to shared device with log level change (`pr#30219 <https://github.com/ceph/ceph/pull/30219>`_, Vikhyat Umrao, Josh Durgin, Sage Weil, Igor Fedotov) -* bluestore: avoid length overflow in extents returned by Stupid Allocator (`issue#40758 <http://tracker.ceph.com/issues/40758>`_, `issue#40703 <http://tracker.ceph.com/issues/40703>`_, `pr#29024 <https://github.com/ceph/ceph/pull/29024>`_, Igor Fedotov) -* bluestore: common/options: Set concurrent bluestore rocksdb compactions to 2 (`pr#30150 <https://github.com/ceph/ceph/pull/30150>`_, Mark Nelson) -* bluestore: default to bitmap allocator for bluestore/bluefs (`pr#28970 <https://github.com/ceph/ceph/pull/28970>`_, Igor Fedotov) -* bluestore: dump before "no-spanning blob id" abort (`pr#28029 <https://github.com/ceph/ceph/pull/28029>`_, Igor Fedotov) -* bluestore: fix >2GB bluefs writes (`pr#28967 <https://github.com/ceph/ceph/pull/28967>`_, Sage Weil, kungf) -* bluestore: fix duplicate allocations in bmap allocator (`issue#40080 <http://tracker.ceph.com/issues/40080>`_, `pr#28645 <https://github.com/ceph/ceph/pull/28645>`_, Igor Fedotov) -* bluestore: load OSD all compression settings unconditionally (`issue#40480 <http://tracker.ceph.com/issues/40480>`_, `pr#28894 <https://github.com/ceph/ceph/pull/28894>`_, Igor Fedotov) -* build/ops: Cython 0.29 removed support for subinterpreters: raises ImportError: Interpreter change detected (`issue#39593 <http://tracker.ceph.com/issues/39593>`_, `issue#39592 <http://tracker.ceph.com/issues/39592>`_, `pr#27971 <https://github.com/ceph/ceph/pull/27971>`_, Kefu Chai, Tim Serong) -* build/ops: admin/build-doc: use python3 (`pr#30663 <https://github.com/ceph/ceph/pull/30663>`_, Kefu Chai) -* build/ops: admin/build-doc: use python3 (follow-on fix) (`pr#30687 <https://github.com/ceph/ceph/pull/30687>`_, Nathan Cutler) -* build/ops: backport miscellaneous install-deps.sh and ceph.spec.in fixes from master (`issue#37707 <http://tracker.ceph.com/issues/37707>`_, `pr#30718 <https://github.com/ceph/ceph/pull/30718>`_, Jeff Layton, Kefu Chai, Nathan Cutler, Brad Hubbard, Changcheng Liu, Sebastian Wagner, Yunchuan Wen, Tomasz Setkowski, Zack Cerza) -* build/ops: ceph.spec.in: reserve 2500MB per build job (`pr#30355 <https://github.com/ceph/ceph/pull/30355>`_, Dan van der Ster) -* build/ops: cmake,run-make-check.sh: disable SPDK by default (`pr#30183 <https://github.com/ceph/ceph/pull/30183>`_, Kefu Chai) -* build/ops: cmake: detect armv8 crc and crypto feature using CHECK_C_COMPILER_FLAG (`issue#17516 <http://tracker.ceph.com/issues/17516>`_, `pr#30713 <https://github.com/ceph/ceph/pull/30713>`_, Kefu Chai) -* build/ops: do_cmake.sh: source not found (`issue#39981 <http://tracker.ceph.com/issues/39981>`_, `issue#40005 <http://tracker.ceph.com/issues/40005>`_, `pr#28217 <https://github.com/ceph/ceph/pull/28217>`_, Nathan Cutler) -* build/ops: fix build fail related to PYTHON_EXECUTABLE variable (`pr#30260 <https://github.com/ceph/ceph/pull/30260>`_, Ilsoo Byun) -* build/ops: install-deps.sh: Remove CR repo (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `pr#30128 <https://github.com/ceph/ceph/pull/30128>`_, Alfredo Deza, Brad Hubbard) -* build/ops: install-deps.sh: install `python\*-devel` for python\*rpm-macros (`pr#30244 <https://github.com/ceph/ceph/pull/30244>`_, Kefu Chai) -* build/ops: make "patch" build dependency explicit (`issue#40269 <http://tracker.ceph.com/issues/40269>`_, `issue#40175 <http://tracker.ceph.com/issues/40175>`_, `pr#29150 <https://github.com/ceph/ceph/pull/29150>`_, Nathan Cutler) -* build/ops: python3-cephfs should provide python36-cephfs (`pr#30982 <https://github.com/ceph/ceph/pull/30982>`_, Kefu Chai) -* build/ops: rpm: always build ceph-test package (`pr#30188 <https://github.com/ceph/ceph/pull/30188>`_, Nathan Cutler) -* ceph-volume: PVolumes.filter shouldn't purge itself (`pr#30806 <https://github.com/ceph/ceph/pull/30806>`_, Rishabh Dave) -* ceph-volume: VolumeGroups.filter shouldn't purge itself (`pr#30808 <https://github.com/ceph/ceph/pull/30808>`_, Rishabh Dave) -* ceph-volume: add Ceph's device id to inventory (`pr#31211 <https://github.com/ceph/ceph/pull/31211>`_, Sebastian Wagner) -* ceph-volume: api/lvm: check if list of LVs is empty (`pr#31229 <https://github.com/ceph/ceph/pull/31229>`_, Rishabh Dave) -* ceph-volume: assume msgrV1 for all branches containing mimic (`pr#31615 <https://github.com/ceph/ceph/pull/31615>`_, Jan Fajerski) -* ceph-volume: batch functional idempotency test fails since message is now on stderr (`pr#29688 <https://github.com/ceph/ceph/pull/29688>`_, Jan Fajerski) -* ceph-volume: broken assertion errors after pytest changes (`pr#28948 <https://github.com/ceph/ceph/pull/28948>`_, Alfredo Deza) -* ceph-volume: do not fail when trying to remove crypt mapper (`pr#30555 <https://github.com/ceph/ceph/pull/30555>`_, Guillaume Abrioux) -* ceph-volume: does not recognize wal/db partitions created by ceph-disk (`pr#29463 <https://github.com/ceph/ceph/pull/29463>`_, Jan Fajerski) -* ceph-volume: ensure device lists are disjoint (`pr#30334 <https://github.com/ceph/ceph/pull/30334>`_, Jan Fajerski) -* ceph-volume: extend batch (`issue#40919 <http://tracker.ceph.com/issues/40919>`_, `pr#29243 <https://github.com/ceph/ceph/pull/29243>`_, Andrew Schoen, Jan Fajerski, Sébastien Han, Volker Theile) -* ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30301 <https://github.com/ceph/ceph/pull/30301>`_, Alfredo Deza) -* ceph-volume: fix warnings raised by pytest (`pr#30678 <https://github.com/ceph/ceph/pull/30678>`_, Rishabh Dave) -* ceph-volume: implement __format__ in Size to format sizes in py3 (`pr#30333 <https://github.com/ceph/ceph/pull/30333>`_, Jan Fajerski) -* ceph-volume: look for rotational data in lsblk (`pr#26991 <https://github.com/ceph/ceph/pull/26991>`_, Andrew Schoen) -* ceph-volume: lvm.activate: Return an error if WAL/DB devices absent (`pr#29039 <https://github.com/ceph/ceph/pull/29039>`_, David Casier) -* ceph-volume: lvm.zap fix cleanup for db partitions (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#30303 <https://github.com/ceph/ceph/pull/30303>`_, Dominik Csapak) -* ceph-volume: minor optimizations related to class Volumes's use (`pr#30096 <https://github.com/ceph/ceph/pull/30096>`_, Rishabh Dave) -* ceph-volume: miscellaneous backports (`pr#31227 <https://github.com/ceph/ceph/pull/31227>`_, Mohamad Gebai, Andrew Schoen) -* ceph-volume: missing string substitution when reporting mounts (`issue#40977 <http://tracker.ceph.com/issues/40977>`_, `pr#29350 <https://github.com/ceph/ceph/pull/29350>`_, Shyukri Shyukriev) -* ceph-volume: more mimic backports (`pr#29631 <https://github.com/ceph/ceph/pull/29631>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: more missing mimic backports (`pr#31362 <https://github.com/ceph/ceph/pull/31362>`_, Mohamad Gebai, Kefu Chai) -* ceph-volume: pre-install python-apt and its variants before test runs (`pr#30295 <https://github.com/ceph/ceph/pull/30295>`_, Alfredo Deza) -* ceph-volume: prints errors to stdout with --format json (`issue#38548 <http://tracker.ceph.com/issues/38548>`_, `pr#29507 <https://github.com/ceph/ceph/pull/29507>`_, Jan Fajerski) -* ceph-volume: prints log messages to stdout (`pr#29602 <https://github.com/ceph/ceph/pull/29602>`_, Jan Fajerski, Alfredo Deza, Kefu Chai) -* ceph-volume: replace testinfra command with py.test (`pr#28930 <https://github.com/ceph/ceph/pull/28930>`_, Alfredo Deza) -* ceph-volume: simple functional tests drop test for lvm zap (`pr#29661 <https://github.com/ceph/ceph/pull/29661>`_, Jan Fajerski) -* ceph-volume: simple: when 'type' file is not present activate fails (`pr#29417 <https://github.com/ceph/ceph/pull/29417>`_, Jan Fajerski, Alfredo Deza) -* ceph-volume: tests add a sleep in tox for slow OSDs after booting (`pr#28947 <https://github.com/ceph/ceph/pull/28947>`_, Alfredo Deza) -* ceph-volume: tests set the noninteractive flag for Debian (`pr#29900 <https://github.com/ceph/ceph/pull/29900>`_, Alfredo Deza) -* ceph-volume: update testing playbook 'deploy.yml' (`pr#29074 <https://github.com/ceph/ceph/pull/29074>`_, Andrew Schoen, Guillaume Abrioux) -* ceph-volume: use the OSD identifier when reporting success (`pr#29770 <https://github.com/ceph/ceph/pull/29770>`_, Alfredo Deza) -* ceph-volume: zap always skips block.db, leaves them around (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#30306 <https://github.com/ceph/ceph/pull/30306>`_, Alfredo Deza) -* ceph_detect_init: Add support for ALT Linux (`pr#27028 <https://github.com/ceph/ceph/pull/27028>`_, Andrey Bychkov) -* cephfs: MDSTableServer.cc: 83: FAILED assert(version == tid) (`issue#39212 <http://tracker.ceph.com/issues/39212>`_, `issue#38835 <http://tracker.ceph.com/issues/38835>`_, `pr#29222 <https://github.com/ceph/ceph/pull/29222>`_, "Yan, Zheng") -* cephfs: avoid map been inserted by mistake (`pr#29833 <https://github.com/ceph/ceph/pull/29833>`_, XiaoGuoDong2019) -* cephfs: ceph-fuse: client hang because its bad session PipeConnection to mds (`issue#39305 <http://tracker.ceph.com/issues/39305>`_, `issue#39685 <http://tracker.ceph.com/issues/39685>`_, `pr#29200 <https://github.com/ceph/ceph/pull/29200>`_, Guan yunfei) -* cephfs: client: EINVAL may be returned when offset is 0 (`pr#30932 <https://github.com/ceph/ceph/pull/30932>`_, wenpengLi) -* cephfs: client: _readdir_cache_cb() may use the readdir_cache already clear (`issue#41148 <http://tracker.ceph.com/issues/41148>`_, `pr#30933 <https://github.com/ceph/ceph/pull/30933>`_, huanwen ren) -* cephfs: client: add procession of SEEK_HOLE and SEEK_DATA in lseek (`pr#30918 <https://github.com/ceph/ceph/pull/30918>`_, Shen Hang) -* cephfs: client: bump ll_ref from int32 to uint64_t (`pr#29187 <https://github.com/ceph/ceph/pull/29187>`_, Xiaoxi CHEN) -* cephfs: client: ceph.dir.rctime xattr value incorrectly prefixes 09 to the nanoseconds component (`issue#40168 <http://tracker.ceph.com/issues/40168>`_, `pr#28501 <https://github.com/ceph/ceph/pull/28501>`_, David Disseldorp) -* cephfs: client: fix bad error handling in _lookup_parent (`issue#40085 <http://tracker.ceph.com/issues/40085>`_, `pr#29609 <https://github.com/ceph/ceph/pull/29609>`_, Jeff Layton) -* cephfs: client: nfs-ganesha with cephfs client, removing dir reports not empty (`issue#40746 <http://tracker.ceph.com/issues/40746>`_, `pr#30443 <https://github.com/ceph/ceph/pull/30443>`_, Peng Xie) -* cephfs: client: return -EIO when sync file which unsafe reqs have been dropped (`issue#40877 <http://tracker.ceph.com/issues/40877>`_, `pr#30241 <https://github.com/ceph/ceph/pull/30241>`_, simon gao) -* cephfs: client: set snapdir's link count to 1 (`pr#30108 <https://github.com/ceph/ceph/pull/30108>`_, "Yan, Zheng") -* cephfs: client: support the fallocate() when fuse version >= 2.9 (`issue#40615 <http://tracker.ceph.com/issues/40615>`_, `pr#30228 <https://github.com/ceph/ceph/pull/30228>`_, huanwen ren) -* cephfs: client: unlink dentry for inode with llref=0 (`issue#40960 <http://tracker.ceph.com/issues/40960>`_, `pr#29479 <https://github.com/ceph/ceph/pull/29479>`_, Xiaoxi CHEN) -* cephfs: fix a memory leak (`pr#29915 <https://github.com/ceph/ceph/pull/29915>`_, XiaoGuoDong2019) -* cephfs: getattr on snap inode stuck (`issue#40437 <http://tracker.ceph.com/issues/40437>`_, `pr#29230 <https://github.com/ceph/ceph/pull/29230>`_, "Yan, Zheng") -* cephfs: kcephfs TestClientLimits.test_client_pin fails with client caps fell below min (`issue#38270 <http://tracker.ceph.com/issues/38270>`_, `issue#38687 <http://tracker.ceph.com/issues/38687>`_, `pr#29211 <https://github.com/ceph/ceph/pull/29211>`_, "Yan, Zheng") -* cephfs: mds: Fix duplicate client entries in eviction list (`pr#30950 <https://github.com/ceph/ceph/pull/30950>`_, Sidharth Anupkrishnan) -* cephfs: mds: avoid sending too many osd requests at once after mds restarts (`issue#40042 <http://tracker.ceph.com/issues/40042>`_, `issue#40028 <http://tracker.ceph.com/issues/40028>`_, `pr#28650 <https://github.com/ceph/ceph/pull/28650>`_, simon gao) -* cephfs: mds: behind on trimming and [dentry] was purgeable but no longer is! (`issue#39223 <http://tracker.ceph.com/issues/39223>`_, `issue#38679 <http://tracker.ceph.com/issues/38679>`_, `pr#29224 <https://github.com/ceph/ceph/pull/29224>`_, "Yan, Zheng") -* cephfs: mds: cannot switch mds state from standby-replay to active (`issue#40213 <http://tracker.ceph.com/issues/40213>`_, `pr#29232 <https://github.com/ceph/ceph/pull/29232>`_, "Yan, Zheng", simon gao) -* cephfs: mds: change how mds revoke stale caps (`issue#38043 <http://tracker.ceph.com/issues/38043>`_, `issue#17854 <http://tracker.ceph.com/issues/17854>`_, `pr#28585 <https://github.com/ceph/ceph/pull/28585>`_, "Yan, Zheng", Rishabh Dave) -* cephfs: mds: check dir fragment to split dir if mkdir makes it oversized (`issue#39689 <http://tracker.ceph.com/issues/39689>`_, `pr#28381 <https://github.com/ceph/ceph/pull/28381>`_, Erqi Chen) -* cephfs: mds: cleanup unneeded client_snap_caps when splitting snap inode (`issue#39987 <http://tracker.ceph.com/issues/39987>`_, `pr#30234 <https://github.com/ceph/ceph/pull/30234>`_, "Yan, Zheng") -* cephfs: mds: delay exporting directory whose pin value exceeds max rank id (`issue#40603 <http://tracker.ceph.com/issues/40603>`_, `pr#29940 <https://github.com/ceph/ceph/pull/29940>`_, Zhi Zhang) -* cephfs: mds: destroy reconnect msg when it is from non-existent session to avoid memory leak (`issue#40588 <http://tracker.ceph.com/issues/40588>`_, `pr#28796 <https://github.com/ceph/ceph/pull/28796>`_, Shen Hang) -* cephfs: mds: evict an unresponsive client only when another client wants its caps (`pr#30239 <https://github.com/ceph/ceph/pull/30239>`_, Rishabh Dave) -* cephfs: mds: fix SnapRealm::resolve_snapname for long name (`issue#39472 <http://tracker.ceph.com/issues/39472>`_, `pr#28186 <https://github.com/ceph/ceph/pull/28186>`_, "Yan, Zheng") -* cephfs: mds: fix corner case of replaying open sessions (`pr#28579 <https://github.com/ceph/ceph/pull/28579>`_, "Yan, Zheng") -* cephfs: mds: high debug logging with many subtrees is slow (`issue#38875 <http://tracker.ceph.com/issues/38875>`_, `pr#29219 <https://github.com/ceph/ceph/pull/29219>`_, Rishabh Dave) -* cephfs: mds: make MDSIOContextBase delete itself when shutting down (`pr#30417 <https://github.com/ceph/ceph/pull/30417>`_, Xuehan Xu) -* cephfs: mds: mds_cap_revoke_eviction_timeout is not used to initialize Server::cap_revoke_eviction_timeout (`issue#38844 <http://tracker.ceph.com/issues/38844>`_, `issue#39210 <http://tracker.ceph.com/issues/39210>`_, `pr#29220 <https://github.com/ceph/ceph/pull/29220>`_, simon gao) -* cephfs: mds: output lock state in format dump (`issue#39669 <http://tracker.ceph.com/issues/39669>`_, `issue#39645 <http://tracker.ceph.com/issues/39645>`_, `pr#28274 <https://github.com/ceph/ceph/pull/28274>`_, Zhi Zhang) -* cephfs: mds: remove cache drop admin socket command (`issue#38020 <http://tracker.ceph.com/issues/38020>`_, `issue#38099 <http://tracker.ceph.com/issues/38099>`_, `pr#29210 <https://github.com/ceph/ceph/pull/29210>`_, Patrick Donnelly) -* cephfs: mds: reset heartbeat during long-running loops in recovery (`issue#40222 <http://tracker.ceph.com/issues/40222>`_, `pr#28918 <https://github.com/ceph/ceph/pull/28918>`_, "Yan, Zheng") -* cephfs: mds: stopping MDS with a large cache (40+GB) causes it to miss heartbeats (`issue#38022 <http://tracker.ceph.com/issues/38022>`_, `issue#38129 <http://tracker.ceph.com/issues/38129>`_, `issue#37723 <http://tracker.ceph.com/issues/37723>`_, `issue#38131 <http://tracker.ceph.com/issues/38131>`_, `pr#28452 <https://github.com/ceph/ceph/pull/28452>`_, Patrick Donnelly) -* cephfs: mds: there is an assertion when calling Beacon::shutdown() (`issue#39215 <http://tracker.ceph.com/issues/39215>`_, `issue#38822 <http://tracker.ceph.com/issues/38822>`_, `pr#29223 <https://github.com/ceph/ceph/pull/29223>`_, huanwen ren) -* cephfs: mount.ceph.c: do not pass nofail to the kernel (`issue#39233 <http://tracker.ceph.com/issues/39233>`_, `pr#28090 <https://github.com/ceph/ceph/pull/28090>`_, Kenneth Waegeman) -* cephfs: mount.ceph: properly handle -o strictatime (`pr#30240 <https://github.com/ceph/ceph/pull/30240>`_, Jeff Layton) -* cephfs: mount: key parsing fail when doing a remount (`issue#40165 <http://tracker.ceph.com/issues/40165>`_, `pr#29225 <https://github.com/ceph/ceph/pull/29225>`_, Luis Henriques) -* cephfs: pybind: added lseek() (`issue#39679 <http://tracker.ceph.com/issues/39679>`_, `pr#28337 <https://github.com/ceph/ceph/pull/28337>`_, Xiaowei Chu) -* cephfs: test_volume_client: fix test_put_object_versioned() (`issue#39405 <http://tracker.ceph.com/issues/39405>`_, `issue#39510 <http://tracker.ceph.com/issues/39510>`_, `pr#30236 <https://github.com/ceph/ceph/pull/30236>`_, Rishabh Dave) -* common/ceph_context: avoid unnecessary wait during service thread shutdown (`pr#31096 <https://github.com/ceph/ceph/pull/31096>`_, Jason Dillaman) -* common/options.cc: Lower the default value of osd_deep_scrub_large_omap_object_key_threshold (`pr#29174 <https://github.com/ceph/ceph/pull/29174>`_, Neha Ojha) -* common/util: handle long lines in /proc/cpuinfo (`issue#39475 <http://tracker.ceph.com/issues/39475>`_, `issue#38296 <http://tracker.ceph.com/issues/38296>`_, `pr#28206 <https://github.com/ceph/ceph/pull/28206>`_, Sage Weil) -* common: Keyrings created by ceph auth get are not suitable for ceph auth import (`issue#22227 <http://tracker.ceph.com/issues/22227>`_, `issue#40547 <http://tracker.ceph.com/issues/40547>`_, `pr#28741 <https://github.com/ceph/ceph/pull/28741>`_, Kefu Chai) -* common: data race in OutputDataSocket (`issue#40268 <http://tracker.ceph.com/issues/40268>`_, `issue#40188 <http://tracker.ceph.com/issues/40188>`_, `pr#29201 <https://github.com/ceph/ceph/pull/29201>`_, Casey Bodley) -* common: parse ISO 8601 datetime format (`issue#40088 <http://tracker.ceph.com/issues/40088>`_, `pr#28326 <https://github.com/ceph/ceph/pull/28326>`_, Sage Weil) -* core: .mgrstat failed to decode mgrstat state; luminous dev version? (`issue#38852 <http://tracker.ceph.com/issues/38852>`_, `issue#38839 <http://tracker.ceph.com/issues/38839>`_, `pr#29249 <https://github.com/ceph/ceph/pull/29249>`_, Sage Weil) -* core: Better default value for osd_snap_trim_sleep (`pr#29732 <https://github.com/ceph/ceph/pull/29732>`_, Neha Ojha) -* core: Health warnings on long network ping times (`issue#40640 <http://tracker.ceph.com/issues/40640>`_, `issue#40586 <http://tracker.ceph.com/issues/40586>`_, `pr#30225 <https://github.com/ceph/ceph/pull/30225>`_, xie xingguo, David Zafman) -* core: ceph daemon mon.a config set mon_health_to_clog false cause leader mon assert (`issue#39625 <http://tracker.ceph.com/issues/39625>`_, `pr#29741 <https://github.com/ceph/ceph/pull/29741>`_, huangjun) -* core: crc cache should be invalidated when posting preallocated rx buffers (`issue#38437 <http://tracker.ceph.com/issues/38437>`_, `pr#29247 <https://github.com/ceph/ceph/pull/29247>`_, Ilya Dryomov) -* core: lazy omap stat collection (`pr#29189 <https://github.com/ceph/ceph/pull/29189>`_, Brad Hubbard) -* core: mon, osd: parallel clean_pg_upmaps (`issue#40104 <http://tracker.ceph.com/issues/40104>`_, `issue#40230 <http://tracker.ceph.com/issues/40230>`_, `pr#28619 <https://github.com/ceph/ceph/pull/28619>`_, xie xingguo) -* core: mon,osd: limit MOSDMap messages by size as well as map count (`issue#38277 <http://tracker.ceph.com/issues/38277>`_, `issue#38040 <http://tracker.ceph.com/issues/38040>`_, `pr#29242 <https://github.com/ceph/ceph/pull/29242>`_, Sage Weil) -* core: mon/AuthMonitor: fix initial creation of rotating keys (`issue#40634 <http://tracker.ceph.com/issues/40634>`_, `pr#30181 <https://github.com/ceph/ceph/pull/30181>`_, Sage Weil) -* core: mon/MDSMonitor: use stringstream instead of dout for mds repaired (`issue#40472 <http://tracker.ceph.com/issues/40472>`_, `pr#30235 <https://github.com/ceph/ceph/pull/30235>`_, Zhi Zhang) -* core: mon/MgrMonitor: fix null deref when invalid formatter is specified (`pr#29593 <https://github.com/ceph/ceph/pull/29593>`_, Sage Weil) -* core: mon/OSDMonitor.cc: better error message about min_size (`pr#29618 <https://github.com/ceph/ceph/pull/29618>`_, Neha Ojha) -* core: mon/OSDMonitor: trim not-longer-exist failure reporters (`pr#30903 <https://github.com/ceph/ceph/pull/30903>`_, NancySu05) -* core: mon: C_AckMarkedDown has not handled the Callback Arguments (`pr#30213 <https://github.com/ceph/ceph/pull/30213>`_, NancySu05) -* core: mon: ensure prepare_failure() marks no_reply on op (`pr#30481 <https://github.com/ceph/ceph/pull/30481>`_, Joao Eduardo Luis) -* core: mon: paxos: introduce new reset_pending_committing_finishers for safety (`issue#39744 <http://tracker.ceph.com/issues/39744>`_, `issue#39484 <http://tracker.ceph.com/issues/39484>`_, `pr#28540 <https://github.com/ceph/ceph/pull/28540>`_, Greg Farnum) -* core: mon: show pool id in pool ls command (`issue#40287 <http://tracker.ceph.com/issues/40287>`_, `pr#30485 <https://github.com/ceph/ceph/pull/30485>`_, Chang Liu) -* core: osd beacon sometimes has empty pg list (`issue#40464 <http://tracker.ceph.com/issues/40464>`_, `issue#40377 <http://tracker.ceph.com/issues/40377>`_, `pr#29253 <https://github.com/ceph/ceph/pull/29253>`_, Sage Weil) -* core: osd/OSD.cc: make osd bench description consistent with parameters (`issue#39374 <http://tracker.ceph.com/issues/39374>`_, `issue#39006 <http://tracker.ceph.com/issues/39006>`_, `pr#28097 <https://github.com/ceph/ceph/pull/28097>`_, Neha Ojha) -* core: osd/OSDCap: Check for empty namespace (`issue#40835 <http://tracker.ceph.com/issues/40835>`_, `pr#30214 <https://github.com/ceph/ceph/pull/30214>`_, Brad Hubbard) -* core: osd/OSDMap: Replace get_out_osds with get_out_existing_osds (`issue#39422 <http://tracker.ceph.com/issues/39422>`_, `issue#39154 <http://tracker.ceph.com/issues/39154>`_, `pr#28142 <https://github.com/ceph/ceph/pull/28142>`_, Brad Hubbard) -* core: osd/OSDMap: do not trust partially simplified pg_upmap_item (`pr#30898 <https://github.com/ceph/ceph/pull/30898>`_, xie xingguo) -* core: osd/PG: Add PG to large omap log message (`pr#30924 <https://github.com/ceph/ceph/pull/30924>`_, Brad Hubbard) -* core: osd/PG: fix last_complete re-calculation on splitting (`issue#39538 <http://tracker.ceph.com/issues/39538>`_, `issue#26958 <http://tracker.ceph.com/issues/26958>`_, `pr#28259 <https://github.com/ceph/ceph/pull/28259>`_, xie xingguo) -* core: osd/PeeringState: do not complain about past_intervals constrained by oldest epoch (`pr#30222 <https://github.com/ceph/ceph/pull/30222>`_, Sage Weil) -* core: osd/PeeringState: recover_got - add special handler for empty log (`pr#30895 <https://github.com/ceph/ceph/pull/30895>`_, xie xingguo) -* core: osd/PrimaryLogPG: Avoid accessing destroyed references in finish_degr… (`pr#30291 <https://github.com/ceph/ceph/pull/30291>`_, Tao Ning) -* core: osd/PrimaryLogPG: skip obcs that don't exist during backfill scan_range (`pr#31029 <https://github.com/ceph/ceph/pull/31029>`_, Sage Weil) -* core: osd/PrimaryLogPG: update oi.size on write op implicitly truncating ob… (`pr#30275 <https://github.com/ceph/ceph/pull/30275>`_, xie xingguo) -* core: osd: Better error message when OSD count is less than osd_pool_default_size (`issue#38617 <http://tracker.ceph.com/issues/38617>`_, `pr#30180 <https://github.com/ceph/ceph/pull/30180>`_, Kefu Chai, Sage Weil, zjh) -* core: osd: Don't evict after a flush if intersecting scrub range (`issue#38840 <http://tracker.ceph.com/issues/38840>`_, `issue#39518 <http://tracker.ceph.com/issues/39518>`_, `pr#28232 <https://github.com/ceph/ceph/pull/28232>`_, David Zafman) -* core: osd: Don't include user changeable flag in snaptrim related assert (`issue#38124 <http://tracker.ceph.com/issues/38124>`_, `issue#39698 <http://tracker.ceph.com/issues/39698>`_, `pr#28202 <https://github.com/ceph/ceph/pull/28202>`_, David Zafman) -* core: osd: Fix for compatibility of encode/decode of osd_stat_t (`pr#31275 <https://github.com/ceph/ceph/pull/31275>`_, Kefu Chai, David Zafman) -* core: osd: Include dups in copy_after() and copy_up_to() (`issue#39304 <http://tracker.ceph.com/issues/39304>`_, `pr#28089 <https://github.com/ceph/ceph/pull/28089>`_, David Zafman) -* core: osd: Output Base64 encoding of CRC header if binary data present (`issue#39737 <http://tracker.ceph.com/issues/39737>`_, `pr#28503 <https://github.com/ceph/ceph/pull/28503>`_, David Zafman) -* core: osd: Remove unused osdmap flags full, nearfull from output (`pr#30901 <https://github.com/ceph/ceph/pull/30901>`_, David Zafman) -* core: osd: clear PG_STATE_CLEAN when repair object (`pr#30243 <https://github.com/ceph/ceph/pull/30243>`_, Zengran Zhang) -* core: osd: fix build_incremental_map_msg (`issue#38282 <http://tracker.ceph.com/issues/38282>`_, `pr#31236 <https://github.com/ceph/ceph/pull/31236>`_, Sage Weil) -* core: osd: make project_pg_history handle concurrent osdmap publish (`issue#26970 <http://tracker.ceph.com/issues/26970>`_, `pr#29976 <https://github.com/ceph/ceph/pull/29976>`_, Sage Weil) -* core: osd: merge replica log on primary need according to replica log's crt (`pr#30916 <https://github.com/ceph/ceph/pull/30916>`_, Zengran Zhang) -* core: osd: pg stuck in backfill_wait with plenty of disk space (`issue#38034 <http://tracker.ceph.com/issues/38034>`_, `pr#28201 <https://github.com/ceph/ceph/pull/28201>`_, xie xingguo, David Zafman) -* core: osd: report omap/data/metadata usage (`issue#40639 <http://tracker.ceph.com/issues/40639>`_, `pr#28852 <https://github.com/ceph/ceph/pull/28852>`_, Sage Weil) -* core: osd: rollforward may need to mark pglog dirty (`issue#40403 <http://tracker.ceph.com/issues/40403>`_, `pr#31035 <https://github.com/ceph/ceph/pull/31035>`_, Zengran Zhang) -* core: osd: scrub error on big objects; make bluestore refuse to start on big objects (`pr#30784 <https://github.com/ceph/ceph/pull/30784>`_, David Zafman, Sage Weil) -* core: osd: take heartbeat_lock when calling heartbeat() (`issue#39513 <http://tracker.ceph.com/issues/39513>`_, `issue#39439 <http://tracker.ceph.com/issues/39439>`_, `pr#28220 <https://github.com/ceph/ceph/pull/28220>`_, Sage Weil) -* core: osds allows to partially start more than N+2 (`issue#38206 <http://tracker.ceph.com/issues/38206>`_, `issue#38076 <http://tracker.ceph.com/issues/38076>`_, `pr#29241 <https://github.com/ceph/ceph/pull/29241>`_, Sage Weil) -* core: should report EINVAL in ErasureCode::parse() if m<=0 (`issue#38682 <http://tracker.ceph.com/issues/38682>`_, `issue#38751 <http://tracker.ceph.com/issues/38751>`_, `pr#28995 <https://github.com/ceph/ceph/pull/28995>`_, Sage Weil) -* core: should set EPOLLET flag on del_event() (`issue#38856 <http://tracker.ceph.com/issues/38856>`_, `pr#29250 <https://github.com/ceph/ceph/pull/29250>`_, Roman Penyaev) -* doc/ceph-fuse: mention -k option in ceph-fuse man page (`pr#30936 <https://github.com/ceph/ceph/pull/30936>`_, Rishabh Dave) -* doc/rbd: s/guess/xml/ for codeblock lexer (`pr#31090 <https://github.com/ceph/ceph/pull/31090>`_, Kefu Chai) -* doc/rgw: document use of 'realm pull' instead of 'period pull' (`issue#39655 <http://tracker.ceph.com/issues/39655>`_, `pr#30131 <https://github.com/ceph/ceph/pull/30131>`_, Casey Bodley) -* doc: Document behaviour of fsync-after-close (`issue#24641 <http://tracker.ceph.com/issues/24641>`_, `pr#29765 <https://github.com/ceph/ceph/pull/29765>`_, Jos Collin, Jeff Layton) -* doc: Object Gateway multisite document read-only argument error (`issue#40497 <http://tracker.ceph.com/issues/40497>`_, `pr#29289 <https://github.com/ceph/ceph/pull/29289>`_, Chenjiong Deng) -* doc: default values for mon_health_to_clog\_\* were flipped (`pr#30227 <https://github.com/ceph/ceph/pull/30227>`_, James McClune) -* doc: describe metadata_heap cleanup (`issue#18174 <http://tracker.ceph.com/issues/18174>`_, `pr#30070 <https://github.com/ceph/ceph/pull/30070>`_, Dan van der Ster) -* doc: fix rgw_ldap_dnattr username token (`pr#30099 <https://github.com/ceph/ceph/pull/30099>`_, Thomas Kriechbaumer) -* doc: rgw: CreateBucketConfiguration for s3 PUT Bucket request (`issue#39602 <http://tracker.ceph.com/issues/39602>`_, `issue#39597 <http://tracker.ceph.com/issues/39597>`_, `pr#29257 <https://github.com/ceph/ceph/pull/29257>`_, Casey Bodley) -* doc: update bluestore cache settings and clarify data fraction (`issue#39522 <http://tracker.ceph.com/issues/39522>`_, `pr#31258 <https://github.com/ceph/ceph/pull/31258>`_, Jan Fajerski) -* doc: wrong value of usage log default in logging section (`issue#37891 <http://tracker.ceph.com/issues/37891>`_, `issue#37856 <http://tracker.ceph.com/issues/37856>`_, `pr#29014 <https://github.com/ceph/ceph/pull/29014>`_, Abhishek Lekshmanan) -* filestore: assure sufficient leaves in pre-split (`issue#39390 <http://tracker.ceph.com/issues/39390>`_, `pr#30182 <https://github.com/ceph/ceph/pull/30182>`_, Jeegn Chen) -* krbd: avoid udev netlink socket overrun and retry on transient errors from udev_enumerate_scan_devices() (`pr#31322 <https://github.com/ceph/ceph/pull/31322>`_, Ilya Dryomov, Adam C. Emerson) -* krbd: fix rbd map hang due to udev return subsystem unordered (`issue#39089 <http://tracker.ceph.com/issues/39089>`_, `pr#30176 <https://github.com/ceph/ceph/pull/30176>`_, Zhi Zhang) -* mgr/balancer: fix fudge (`pr#28399 <https://github.com/ceph/ceph/pull/28399>`_, xie xingguo) -* mgr/balancer: python3 compatibility issue (`pr#31013 <https://github.com/ceph/ceph/pull/31013>`_, Mykola Golub) -* mgr/balancer: restrict automatic balancing to specific weekdays (`pr#26499 <https://github.com/ceph/ceph/pull/26499>`_, xie xingguo) -* mgr/crash: fix python3 invalid syntax problems (`pr#29029 <https://github.com/ceph/ceph/pull/29029>`_, Ricardo Dias) -* mgr/dashboard: Fix run-frontend-e2e-tests.sh (`issue#40707 <http://tracker.ceph.com/issues/40707>`_, `pr#28954 <https://github.com/ceph/ceph/pull/28954>`_, Kiefer Chang, Tiago Melo) -* mgr/dashboard: Fix various RGW issues (`pr#28210 <https://github.com/ceph/ceph/pull/28210>`_, Volker Theile) -* mgr/dashboard: RGW proxy can't handle self-signed SSL certificates (`pr#30543 <https://github.com/ceph/ceph/pull/30543>`_, Volker Theile) -* mgr/dashboard: cephfs multimds graphs stack together (`issue#40660 <http://tracker.ceph.com/issues/40660>`_, `pr#28911 <https://github.com/ceph/ceph/pull/28911>`_, Kiefer Chang) -* mgr/localpool: pg_num is an int arg to 'osd pool create' (`pr#30447 <https://github.com/ceph/ceph/pull/30447>`_, Sage Weil) -* mgr/prometheus: Cast collect_timeout (scrape_interval) to float (`pr#31108 <https://github.com/ceph/ceph/pull/31108>`_, Ben Meekhof) -* mgr/prometheus: replace whitespaces in metrics' names (`issue#39458 <http://tracker.ceph.com/issues/39458>`_, `pr#28165 <https://github.com/ceph/ceph/pull/28165>`_, Alfonso Martínez) -* mgr/telemetry: Ignore crashes in report when module not enabled (`pr#30846 <https://github.com/ceph/ceph/pull/30846>`_, Wido den Hollander) -* mgr: DaemonServer::handle_conf_change - broken locking (`issue#38899 <http://tracker.ceph.com/issues/38899>`_, `issue#38963 <http://tracker.ceph.com/issues/38963>`_, `pr#29197 <https://github.com/ceph/ceph/pull/29197>`_, xie xingguo) -* mgr: deadlock (`issue#39040 <http://tracker.ceph.com/issues/39040>`_, `issue#39426 <http://tracker.ceph.com/issues/39426>`_, `pr#28161 <https://github.com/ceph/ceph/pull/28161>`_, xie xingguo) -* mgr: do not reset reported if a new metric is not collected (`pr#30391 <https://github.com/ceph/ceph/pull/30391>`_, Ilsoo Byun) -* radosgw-admin: bucket sync status not 'caught up' during full sync (`issue#40806 <http://tracker.ceph.com/issues/40806>`_, `pr#30170 <https://github.com/ceph/ceph/pull/30170>`_, Casey Bodley) -* rbd-mirror: cannot restore deferred deletion mirrored images (`pr#30828 <https://github.com/ceph/ceph/pull/30828>`_, Jason Dillaman, Mykola Golub) -* rbd-mirror: clear out bufferlist prior to listing mirror images (`issue#39461 <http://tracker.ceph.com/issues/39461>`_, `issue#39407 <http://tracker.ceph.com/issues/39407>`_, `pr#28123 <https://github.com/ceph/ceph/pull/28123>`_, Jason Dillaman) -* rbd-mirror: don't overwrite status error returned by replay (`pr#29872 <https://github.com/ceph/ceph/pull/29872>`_, Mykola Golub) -* rbd-mirror: handle duplicates in image sync throttler queue (`issue#40519 <http://tracker.ceph.com/issues/40519>`_, `issue#40593 <http://tracker.ceph.com/issues/40593>`_, `pr#28815 <https://github.com/ceph/ceph/pull/28815>`_, Mykola Golub) -* rbd-mirror: ignore errors relating to parsing the cluster config file (`pr#30117 <https://github.com/ceph/ceph/pull/30117>`_, Jason Dillaman) -* rbd/action: fix error getting positional argument (`issue#40095 <http://tracker.ceph.com/issues/40095>`_, `pr#29294 <https://github.com/ceph/ceph/pull/29294>`_, songweibin) -* rbd/tests: avoid hexdump skip and length options in krbd test (`pr#30569 <https://github.com/ceph/ceph/pull/30569>`_, Ilya Dryomov) -* rbd: Reduce log level for cls/journal and cls/rbd expected errors (`issue#40865 <http://tracker.ceph.com/issues/40865>`_, `pr#29565 <https://github.com/ceph/ceph/pull/29565>`_, Jason Dillaman) -* rbd: filter out group/trash snapshots from snap_list (`issue#38538 <http://tracker.ceph.com/issues/38538>`_, `issue#39186 <http://tracker.ceph.com/issues/39186>`_, `pr#28138 <https://github.com/ceph/ceph/pull/28138>`_, songweibin, Jason Dillaman) -* rbd: journal: properly advance read offset after skipping invalid range (`pr#28814 <https://github.com/ceph/ceph/pull/28814>`_, Mykola Golub) -* rbd: librbd: add missing shutdown states to managed lock helper (`issue#38387 <http://tracker.ceph.com/issues/38387>`_, `issue#38509 <http://tracker.ceph.com/issues/38509>`_, `pr#28151 <https://github.com/ceph/ceph/pull/28151>`_, Jason Dillaman) -* rbd: librbd: async open/close should free ImageCtx before issuing callback (`issue#39429 <http://tracker.ceph.com/issues/39429>`_, `issue#39031 <http://tracker.ceph.com/issues/39031>`_, `pr#28125 <https://github.com/ceph/ceph/pull/28125>`_, Jason Dillaman) -* rbd: librbd: avoid dereferencing an empty container during deep-copy (`issue#40368 <http://tracker.ceph.com/issues/40368>`_, `pr#30177 <https://github.com/ceph/ceph/pull/30177>`_, Jason Dillaman) -* rbd: librbd: disable image mirroring when moving to trash (`pr#28150 <https://github.com/ceph/ceph/pull/28150>`_, Mykola Golub) -* rbd: librbd: ensure compare-and-write doesn't skip compare after copyup (`issue#38383 <http://tracker.ceph.com/issues/38383>`_, `issue#38441 <http://tracker.ceph.com/issues/38441>`_, `pr#28133 <https://github.com/ceph/ceph/pull/28133>`_, Ilya Dryomov) -* rbd: librbd: properly handle potential object map failures (`issue#39952 <http://tracker.ceph.com/issues/39952>`_, `issue#36074 <http://tracker.ceph.com/issues/36074>`_, `pr#30796 <https://github.com/ceph/ceph/pull/30796>`_, Jason Dillaman, Mykola Golub) -* rbd: librbd: properly track in-flight flush requests (`issue#40573 <http://tracker.ceph.com/issues/40573>`_, `pr#28770 <https://github.com/ceph/ceph/pull/28770>`_, Jason Dillaman) -* rbd: librbd: race condition possible when validating RBD pool (`issue#38500 <http://tracker.ceph.com/issues/38500>`_, `issue#38563 <http://tracker.ceph.com/issues/38563>`_, `pr#28139 <https://github.com/ceph/ceph/pull/28139>`_, Jason Dillaman) -* rbd: use the ordered throttle for the export action (`issue#40435 <http://tracker.ceph.com/issues/40435>`_, `pr#30178 <https://github.com/ceph/ceph/pull/30178>`_, Jason Dillaman) -* restful: Query nodes_by_id for items (`pr#31273 <https://github.com/ceph/ceph/pull/31273>`_, Boris Ranto) -* rgw admin: disable stale instance delete in a multiste env (`pr#30340 <https://github.com/ceph/ceph/pull/30340>`_, Abhishek Lekshmanan) -* rgw/OutputDataSocket: append_output(buffer::list&) says it will (but does not) discard output at data_max_backlog (`issue#40178 <http://tracker.ceph.com/issues/40178>`_, `issue#40351 <http://tracker.ceph.com/issues/40351>`_, `pr#29279 <https://github.com/ceph/ceph/pull/29279>`_, Matt Benjamin) -* rgw/cls: keep issuing bilog trim ops after reset (`issue#40187 <http://tracker.ceph.com/issues/40187>`_, `pr#30074 <https://github.com/ceph/ceph/pull/30074>`_, Casey Bodley) -* rgw/multisite: Don't allow certain radosgw-admin commands to run on non-master zone (`issue#39548 <http://tracker.ceph.com/issues/39548>`_, `pr#30133 <https://github.com/ceph/ceph/pull/30133>`_, Shilpa Jagannath) -* rgw/rgw_op: Remove get_val from hotpath via legacy options (`pr#30141 <https://github.com/ceph/ceph/pull/30141>`_, Mark Nelson) -* rgw: Add support for --bypass-gc flag of radosgw-admin bucket rm command in RGW Multi-site (`issue#39748 <http://tracker.ceph.com/issues/39748>`_, `issue#24991 <http://tracker.ceph.com/issues/24991>`_, `pr#29262 <https://github.com/ceph/ceph/pull/29262>`_, Casey Bodley) -* rgw: Don't crash on copy when metadata directive not supplied (`issue#40416 <http://tracker.ceph.com/issues/40416>`_, `pr#29500 <https://github.com/ceph/ceph/pull/29500>`_, Adam C. Emerson) -* rgw: Fix bucket versioning vs. swift metadata bug (`pr#30140 <https://github.com/ceph/ceph/pull/30140>`_, Marcus Watts) -* rgw: Fix rgw decompression log-print (`pr#30156 <https://github.com/ceph/ceph/pull/30156>`_, Han Fengzhe) -* rgw: Multisite sync corruption for large multipart obj (`issue#40144 <http://tracker.ceph.com/issues/40144>`_, `pr#29273 <https://github.com/ceph/ceph/pull/29273>`_, Casey Bodley, Tianshan Qu, Xiaoxi CHEN) -* rgw: RGWCoroutine::call(nullptr) sets retcode=0 (`pr#30159 <https://github.com/ceph/ceph/pull/30159>`_, Casey Bodley) -* rgw: Return tenant field in bucket_stats function (`issue#40038 <http://tracker.ceph.com/issues/40038>`_, `pr#28209 <https://github.com/ceph/ceph/pull/28209>`_, Volker Theile) -* rgw: S3 policy evaluated incorrectly (`issue#38638 <http://tracker.ceph.com/issues/38638>`_, `issue#39274 <http://tracker.ceph.com/issues/39274>`_, `pr#29255 <https://github.com/ceph/ceph/pull/29255>`_, Pritha Srivastava) -* rgw: Save an unnecessary copy of RGWEnv (`pr#29483 <https://github.com/ceph/ceph/pull/29483>`_, Mark Kogan) -* rgw: Swift interface: server side copy fails if object name contains '?' (`issue#27217 <http://tracker.ceph.com/issues/27217>`_, `issue#40128 <http://tracker.ceph.com/issues/40128>`_, `pr#29267 <https://github.com/ceph/ceph/pull/29267>`_, Casey Bodley) -* rgw: TempURL should not allow PUTs with the X-Object-Manifest (`issue#40133 <http://tracker.ceph.com/issues/40133>`_, `issue#20797 <http://tracker.ceph.com/issues/20797>`_, `pr#28711 <https://github.com/ceph/ceph/pull/28711>`_, Radoslaw Zarzynski) -* rgw: abort multipart fix (`pr#29016 <https://github.com/ceph/ceph/pull/29016>`_, J. Eric Ivancich) -* rgw: asio: check the remote endpoint before processing requests (`pr#30977 <https://github.com/ceph/ceph/pull/30977>`_, Abhishek Lekshmanan) -* rgw: conditionally allow builtin users with non-unique email addresses (`issue#40089 <http://tracker.ceph.com/issues/40089>`_, `issue#40507 <http://tracker.ceph.com/issues/40507>`_, `pr#28716 <https://github.com/ceph/ceph/pull/28716>`_, Matt Benjamin) -* rgw: data/bilogs are trimmed when no peers are reading them (`issue#39487 <http://tracker.ceph.com/issues/39487>`_, `pr#30130 <https://github.com/ceph/ceph/pull/30130>`_, Casey Bodley) -* rgw: datalog/mdlog trim commands loop until done (`pr#30868 <https://github.com/ceph/ceph/pull/30868>`_, Casey Bodley) -* rgw: do necessary checking of website configuration (`issue#40678 <http://tracker.ceph.com/issues/40678>`_, `pr#30980 <https://github.com/ceph/ceph/pull/30980>`_, Enming Zhang) -* rgw: don't throw when accept errors are happening on frontend (`pr#30154 <https://github.com/ceph/ceph/pull/30154>`_, Yuval Lifshitz) -* rgw: fix CreateBucket with BucketLocation parameter failed under default zonegroup (`pr#30171 <https://github.com/ceph/ceph/pull/30171>`_, Enming Zhang) -* rgw: fix bucket may redundantly list keys after BI_PREFIX_CHAR (`issue#40147 <http://tracker.ceph.com/issues/40147>`_, `issue#39984 <http://tracker.ceph.com/issues/39984>`_, `pr#28409 <https://github.com/ceph/ceph/pull/28409>`_, Casey Bodley, Tianshan Qu) -* rgw: fix cls_bucket_list_unordered() partial results (`pr#30253 <https://github.com/ceph/ceph/pull/30253>`_, Mark Kogan) -* rgw: fix data sync start delay if remote haven't init data_log (`pr#30510 <https://github.com/ceph/ceph/pull/30510>`_, Tianshan Qu) -* rgw: fix drain handles error when deleting bucket with bypass-gc option (`pr#29984 <https://github.com/ceph/ceph/pull/29984>`_, dongdong tao) -* rgw: fix list bucket with delimiter wrongly skip some special keys (`issue#40905 <http://tracker.ceph.com/issues/40905>`_, `pr#30168 <https://github.com/ceph/ceph/pull/30168>`_, Tianshan Qu) -* rgw: fix list versions starts with version_id=null (`pr#30775 <https://github.com/ceph/ceph/pull/30775>`_, Tianshan Qu) -* rgw: fix potential realm watch lost (`issue#40991 <http://tracker.ceph.com/issues/40991>`_, `pr#30167 <https://github.com/ceph/ceph/pull/30167>`_, Tianshan Qu) -* rgw: fix race b/w bucket reshard and ops waiting on reshard completion (`pr#29139 <https://github.com/ceph/ceph/pull/29139>`_, J. Eric Ivancich) -* rgw: fix refcount tags to match and update object's idtag (`pr#30891 <https://github.com/ceph/ceph/pull/30891>`_, J. Eric Ivancich) -* rgw: fixed "unrecognized arg" error when using "radosgw-admin zone rm" (`pr#30172 <https://github.com/ceph/ceph/pull/30172>`_, Hongang Chen) -* rgw: gc remove tag after all sub io finish (`issue#40903 <http://tracker.ceph.com/issues/40903>`_, `pr#30173 <https://github.com/ceph/ceph/pull/30173>`_, Tianshan Qu) -* rgw: housekeeping of reset stats operation in radosgw-admin and cls back-end (`pr#30165 <https://github.com/ceph/ceph/pull/30165>`_, J. Eric Ivancich) -* rgw: increase beast parse buffer size to 64k (`pr#30450 <https://github.com/ceph/ceph/pull/30450>`_, Casey Bodley) -* rgw: ldap auth: S3 auth failure should return InvalidAccessKeyId (`pr#30652 <https://github.com/ceph/ceph/pull/30652>`_, Matt Benjamin) -* rgw: make dns hostnames matching case insensitive (`issue#40995 <http://tracker.ceph.com/issues/40995>`_, `pr#30166 <https://github.com/ceph/ceph/pull/30166>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: mitigate bucket list with max-entries excessively high (`pr#30134 <https://github.com/ceph/ceph/pull/30134>`_, J. Eric Ivancich) -* rgw: multisite: 'radosgw-admin bucket sync status' should call syncs_from(source.name) instead of id (`issue#40022 <http://tracker.ceph.com/issues/40022>`_, `issue#40141 <http://tracker.ceph.com/issues/40141>`_, `pr#29270 <https://github.com/ceph/ceph/pull/29270>`_, Casey Bodley) -* rgw: multisite: RGWListBucketIndexesCR for data full sync needs pagination (`issue#39551 <http://tracker.ceph.com/issues/39551>`_, `issue#40354 <http://tracker.ceph.com/issues/40354>`_, `pr#29284 <https://github.com/ceph/ceph/pull/29284>`_, Shilpa Jagannath) -* rgw: multisite: data sync loops back to the start of the datalog after reaching the end (`issue#39033 <http://tracker.ceph.com/issues/39033>`_, `issue#39074 <http://tracker.ceph.com/issues/39074>`_, `pr#29021 <https://github.com/ceph/ceph/pull/29021>`_, Casey Bodley) -* rgw: multisite: mismatch of bucket creation times from List Buckets (`issue#39635 <http://tracker.ceph.com/issues/39635>`_, `issue#39734 <http://tracker.ceph.com/issues/39734>`_, `pr#28483 <https://github.com/ceph/ceph/pull/28483>`_, Casey Bodley) -* rgw: multisite: overwrites in versioning-suspended buckets fail to sync (`issue#38080 <http://tracker.ceph.com/issues/38080>`_, `issue#37792 <http://tracker.ceph.com/issues/37792>`_, `pr#29017 <https://github.com/ceph/ceph/pull/29017>`_, Casey Bodley) -* rgw: multisite: period pusher gets 403 Forbidden against other zonegroups (`issue#39415 <http://tracker.ceph.com/issues/39415>`_, `issue#39287 <http://tracker.ceph.com/issues/39287>`_, `pr#29256 <https://github.com/ceph/ceph/pull/29256>`_, Casey Bodley) -* rgw: non-existent mdlog failures logged at level 0 (`issue#38747 <http://tracker.ceph.com/issues/38747>`_, `issue#40033 <http://tracker.ceph.com/issues/40033>`_, `pr#28757 <https://github.com/ceph/ceph/pull/28757>`_, Abhishek Lekshmanan) -* rgw: perfcounters: add gc retire counter (`pr#30073 <https://github.com/ceph/ceph/pull/30073>`_, Matt Benjamin) -* rgw: permit rgw-admin to populate user info by access-key (`pr#30105 <https://github.com/ceph/ceph/pull/30105>`_, Matt Benjamin, Marc Koderer) -* rgw: provide admin-friendly reshard status output (`issue#37615 <http://tracker.ceph.com/issues/37615>`_, `issue#40357 <http://tracker.ceph.com/issues/40357>`_, `pr#29285 <https://github.com/ceph/ceph/pull/29285>`_, Mark Kogan) -* rgw: remove_olh_pending_entries() does not limit the number of xattrs to remove (`issue#39179 <http://tracker.ceph.com/issues/39179>`_, `issue#39118 <http://tracker.ceph.com/issues/39118>`_, `pr#28348 <https://github.com/ceph/ceph/pull/28348>`_, Casey Bodley) -* rgw: resharding of a versioned bucket causes a bucket stats discrepancy (`issue#39532 <http://tracker.ceph.com/issues/39532>`_, `pr#28249 <https://github.com/ceph/ceph/pull/28249>`_, J. Eric Ivancich) -* rgw: return ERR_NO_SUCH_BUCKET early while evaluating bucket policy (`issue#38420 <http://tracker.ceph.com/issues/38420>`_, `issue#39697 <http://tracker.ceph.com/issues/39697>`_, `pr#28422 <https://github.com/ceph/ceph/pull/28422>`_, Abhishek Lekshmanan) -* rgw: rgw_file: all directories are virtual with respect to contents (`issue#40262 <http://tracker.ceph.com/issues/40262>`_, `issue#40204 <http://tracker.ceph.com/issues/40204>`_, `pr#28887 <https://github.com/ceph/ceph/pull/28887>`_, Matt Benjamin) -* rgw: set null version object issues (`issue#36763 <http://tracker.ceph.com/issues/36763>`_, `issue#40360 <http://tracker.ceph.com/issues/40360>`_, `pr#29288 <https://github.com/ceph/ceph/pull/29288>`_, Tianshan Qu) -* rgw: support delimiter longer then one symbol (`issue#39989 <http://tracker.ceph.com/issues/39989>`_, `issue#38776 <http://tracker.ceph.com/issues/38776>`_, `pr#29018 <https://github.com/ceph/ceph/pull/29018>`_, Tianshan Qu, Matt Benjamin) -* rgw: swift object expiry fails when a bucket reshards (`issue#39741 <http://tracker.ceph.com/issues/39741>`_, `pr#29258 <https://github.com/ceph/ceph/pull/29258>`_, Casey Bodley, Abhishek Lekshmanan, J. Eric Ivancich) -* rgw: swift: refrain from corrupting static large objects when using nginx as a GET cache (`pr#30135 <https://github.com/ceph/ceph/pull/30135>`_, Andrey Groshev) -* rgw: the Multi-Object Delete operation of S3 API wrongly handles the Code response element (`issue#18241 <http://tracker.ceph.com/issues/18241>`_, `issue#40136 <http://tracker.ceph.com/issues/40136>`_, `pr#29268 <https://github.com/ceph/ceph/pull/29268>`_, Radoslaw Zarzynski) -* rgw: update resharding documentation (`issue#39047 <http://tracker.ceph.com/issues/39047>`_, `pr#29020 <https://github.com/ceph/ceph/pull/29020>`_, J. Eric Ivancich) -* rgw_file: fix invalidation of top-level directories (`issue#40215 <http://tracker.ceph.com/issues/40215>`_, `pr#29276 <https://github.com/ceph/ceph/pull/29276>`_, Matt Benjamin) -* rgw_file: advance_mtime() should consider namespace expiration (`issue#40415 <http://tracker.ceph.com/issues/40415>`_, `pr#30660 <https://github.com/ceph/ceph/pull/30660>`_, Matt Benjamin) -* rgw_file: fix readdir eof() calc--caller stop implies !eof and introduce fast S3 Unix stats (immutable) (`issue#40375 <http://tracker.ceph.com/issues/40375>`_, `issue#40456 <http://tracker.ceph.com/issues/40456>`_, `pr#30077 <https://github.com/ceph/ceph/pull/30077>`_, Matt Benjamin) -* rgw_file: include tenant when hashing bucket names (`issue#40225 <http://tracker.ceph.com/issues/40225>`_, `issue#40118 <http://tracker.ceph.com/issues/40118>`_, `pr#29277 <https://github.com/ceph/ceph/pull/29277>`_, Matt Benjamin) -* rgw_file: readdir: do not construct markers w/leading '/' (`pr#30157 <https://github.com/ceph/ceph/pull/30157>`_, Matt Benjamin) -* rgw_file: save etag and acl info in setattr (`issue#39229 <http://tracker.ceph.com/issues/39229>`_, `pr#28073 <https://github.com/ceph/ceph/pull/28073>`_, Tao Chen) -* rpm: missing dependency on python34-ceph-argparse from python34-cephfs (and others?) (`issue#24918 <http://tracker.ceph.com/issues/24918>`_, `issue#24919 <http://tracker.ceph.com/issues/24919>`_, `issue#37613 <http://tracker.ceph.com/issues/37613>`_, `pr#27949 <https://github.com/ceph/ceph/pull/27949>`_, Kefu Chai) -* tests: cls_rbd: removed mirror peer pool test cases (`pr#31485 <https://github.com/ceph/ceph/pull/31485>`_, Jason Dillaman) -* tests: librbd: set nbd timeout due to newer kernels defaulting it on (`pr#30424 <https://github.com/ceph/ceph/pull/30424>`_, Jason Dillaman) -* tests: ceph-disk: use a Python2.7 compatible version of pytest (`pr#31254 <https://github.com/ceph/ceph/pull/31254>`_, Alfredo Deza) -* tests: rgw: don't use ceph-ansible in s3a-hadoop suite (`issue#39706 <http://tracker.ceph.com/issues/39706>`_, `pr#30069 <https://github.com/ceph/ceph/pull/30069>`_, Casey Bodley) -* tests/workunits/rbd: wait for rbd-nbd unmap to complete (`issue#39598 <http://tracker.ceph.com/issues/39598>`_, `issue#39674 <http://tracker.ceph.com/issues/39674>`_, `pr#28310 <https://github.com/ceph/ceph/pull/28310>`_, Jason Dillaman) -* tests: fix issues in vstart runner (`pr#28208 <https://github.com/ceph/ceph/pull/28208>`_, Volker Theile) -* tests: limit loops waiting for force-backfill/force-recovery to happen (`issue#38351 <http://tracker.ceph.com/issues/38351>`_, `issue#38309 <http://tracker.ceph.com/issues/38309>`_, `pr#29245 <https://github.com/ceph/ceph/pull/29245>`_, David Zafman) -* tests: remove s3tests ! (`pr#31640 <https://github.com/ceph/ceph/pull/31640>`_, Yuri Weinstein) -* tests: cephfs: TestMisc.test_evict_client fails (`issue#40219 <http://tracker.ceph.com/issues/40219>`_, `pr#29228 <https://github.com/ceph/ceph/pull/29228>`_, "Yan, Zheng") -* tests: do not take ceph.conf.template from ceph/teuthology.git (`pr#30841 <https://github.com/ceph/ceph/pull/30841>`_, Sage Weil) -* tests: ignore expected MDS_CLIENT_LATE_RELEASE warning (`issue#40968 <http://tracker.ceph.com/issues/40968>`_, `pr#29812 <https://github.com/ceph/ceph/pull/29812>`_, Patrick Donnelly) -* tests: install python3-cephfs for fs suite (`pr#31285 <https://github.com/ceph/ceph/pull/31285>`_, Kefu Chai) -* tests: kclient unmount hangs after file system goes down (`issue#38709 <http://tracker.ceph.com/issues/38709>`_, `issue#38677 <http://tracker.ceph.com/issues/38677>`_, `pr#29218 <https://github.com/ceph/ceph/pull/29218>`_, Patrick Donnelly) -* tests: krbd_msgr_segments.t: filter lvcreate output (`pr#31324 <https://github.com/ceph/ceph/pull/31324>`_, Ilya Dryomov) -* tests: make get_mon_status use mon addr (`pr#31461 <https://github.com/ceph/ceph/pull/31461>`_, Sage Weil, Nathan Cutler) -* tests: make: \*\*\* [hello_world_cpp] Error 127 in rados (`issue#40320 <http://tracker.ceph.com/issues/40320>`_, `pr#29203 <https://github.com/ceph/ceph/pull/29203>`_, Kefu Chai) -* tests: qa/standalone/scrub/osd-scrub-snaps.sh sometimes fails (`issue#40179 <http://tracker.ceph.com/issues/40179>`_, `issue#40078 <http://tracker.ceph.com/issues/40078>`_, `pr#29251 <https://github.com/ceph/ceph/pull/29251>`_, David Zafman) -* tests: qa/tasks/ceph.py: pass cluster_name to get_mons (`pr#31424 <https://github.com/ceph/ceph/pull/31424>`_, Nathan Cutler) -* tests: qa/workunits/rbd: stress test "rbd mirror pool status --verbose" (`pr#29873 <https://github.com/ceph/ceph/pull/29873>`_, Mykola Golub) -* tests: remove "1node" and "systemd" tests as ceph-deploy is not actively developed (`pr#28457 <https://github.com/ceph/ceph/pull/28457>`_, Yuri Weinstein) -* tests: sleep briefly after resetting kclient (`pr#29751 <https://github.com/ceph/ceph/pull/29751>`_, Patrick Donnelly) -* tests: test_volume_client: print python version correctly (`issue#40317 <http://tracker.ceph.com/issues/40317>`_, `issue#40184 <http://tracker.ceph.com/issues/40184>`_, `pr#29208 <https://github.com/ceph/ceph/pull/29208>`_, Lianne) -* tests: use curl in wait_for_radosgw() in util/rgw.py (`pr#28668 <https://github.com/ceph/ceph/pull/28668>`_, Ali Maredia) -* tests: use hard_reset to reboot kclient (`issue#37681 <http://tracker.ceph.com/issues/37681>`_, `pr#30233 <https://github.com/ceph/ceph/pull/30233>`_, Patrick Donnelly) -* tests: whitelisted 'application not enabled' (`pr#28389 <https://github.com/ceph/ceph/pull/28389>`_, Yuri Weinstein) -* tools/rados: list objects in a pg (`issue#36732 <http://tracker.ceph.com/issues/36732>`_, `pr#30893 <https://github.com/ceph/ceph/pull/30893>`_, Vikhyat Umrao, Li Wang) -* tools/rbd-ggate: close log before running postfork (`pr#30121 <https://github.com/ceph/ceph/pull/30121>`_, Willem Jan Withagen) -* tools: Add clear-data-digest command to objectstore tool (`issue#37749 <http://tracker.ceph.com/issues/37749>`_, `pr#29196 <https://github.com/ceph/ceph/pull/29196>`_, Li Yichao) -* tools: ceph-objectstore-tool can't remove head with bad snapset (`pr#30081 <https://github.com/ceph/ceph/pull/30081>`_, David Zafman) -* tools: ceph-objectstore-tool: return 0 if incmap is sane (`pr#31659 <https://github.com/ceph/ceph/pull/31659>`_, Kefu Chai) -* tools: ceph-objectstore-tool: update-mon-db: do not fail if incmap is missing (`pr#30979 <https://github.com/ceph/ceph/pull/30979>`_, Kefu Chai) -* tools: crushtool crash on Fedora 28 and newer (`issue#39174 <http://tracker.ceph.com/issues/39174>`_, `issue#39311 <http://tracker.ceph.com/issues/39311>`_, `pr#27986 <https://github.com/ceph/ceph/pull/27986>`_, Brad Hubbard) - - -v13.2.6 Mimic -============= - -This is the sixth bugfix release of the Mimic v13.2.x long term -stable release series. We recommend all Mimic users upgrade. - -Notable Changes ---------------- -* Ceph v13.2.6 now packages python bindings for python3.6 instead of - python3.4, because EPEL7 recently switched from python3.4 to - python3.6 as the native python3. See the `announcement <https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/>_` - for more details on the background of this change. - -Changelog ---------- -* cephfs: MDSMonitor: do not assign standby-replay when degraded (`issue#36384 <http://tracker.ceph.com/issues/36384>`_, `pr#26643 <https://github.com/ceph/ceph/pull/26643>`_, Patrick Donnelly) -* ceph-volume: add --all flag to simple activate (`pr#26655 <https://github.com/ceph/ceph/pull/26655>`_, Jan Fajerski) -* ceph-volume: use our own testinfra suite for functional testing (`pr#26702 <https://github.com/ceph/ceph/pull/26702>`_, Andrew Schoen) -* cli: ability to change file ownership (`issue#38370 <http://tracker.ceph.com/issues/38370>`_, `pr#26760 <https://github.com/ceph/ceph/pull/26760>`_, Sébastien Han) -* cli: better output of 'ceph health detail' (`issue#39266 <http://tracker.ceph.com/issues/39266>`_, `pr#27847 <https://github.com/ceph/ceph/pull/27847>`_, Shen Hang) -* cls/rgw: raise debug level of bi_log_iterate_entries output (`pr#27973 <https://github.com/ceph/ceph/pull/27973>`_, Casey Bodley) -* common: ceph_timer: stop timer's thread when it is suspended (`issue#37766 <http://tracker.ceph.com/issues/37766>`_, `pr#26583 <https://github.com/ceph/ceph/pull/26583>`_, Peng Wang) -* common/str_map: fix trim() on empty string (`issue#38329 <http://tracker.ceph.com/issues/38329>`_, `pr#26810 <https://github.com/ceph/ceph/pull/26810>`_, Sage Weil) -* core: ENOENT in collection_move_rename on EC backfill target (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `pr#27943 <https://github.com/ceph/ceph/pull/27943>`_, Neha Ojha) -* core: Fix recovery and backfill priority handling (`issue#38041 <http://tracker.ceph.com/issues/38041>`_, `pr#27081 <https://github.com/ceph/ceph/pull/27081>`_, David Zafman) -* crush: add root_bucket to identify underfull buckets (`issue#38826 <http://tracker.ceph.com/issues/38826>`_, `pr#27257 <https://github.com/ceph/ceph/pull/27257>`_, huangjun) -* crush: backport recent upmap fixes (`issue#37968 <http://tracker.ceph.com/issues/37968>`_, `issue#38897 <http://tracker.ceph.com/issues/38897>`_, `issue#37940 <http://tracker.ceph.com/issues/37940>`_, `pr#27963 <https://github.com/ceph/ceph/pull/27963>`_, xie xingguo) -* crush/CrushWrapper: ensure crush_choose_arg_map.size == max_buckets (`issue#38664 <http://tracker.ceph.com/issues/38664>`_, `pr#27082 <https://github.com/ceph/ceph/pull/27082>`_, Sage Weil) -* doc: Fix incorrect mention of 'osd_deep_mon_scrub_interval' (`pr#26860 <https://github.com/ceph/ceph/pull/26860>`_, Ashish Singh) -* doc: Minor rados related documentation fixes (`issue#38896 <http://tracker.ceph.com/issues/38896>`_, `pr#27188 <https://github.com/ceph/ceph/pull/27188>`_, David Zafman) -* doc: osd_recovery_priority is not documented (but osd_recovery_op_priority is) (`issue#23999 <http://tracker.ceph.com/issues/23999>`_, `pr#26901 <https://github.com/ceph/ceph/pull/26901>`_, David Zafman) -* doc/radosgw: Document mappings of S3 Operations to ACL grants (`issue#38523 <http://tracker.ceph.com/issues/38523>`_, `pr#26968 <https://github.com/ceph/ceph/pull/26968>`_, Adam C. Emerson) -* doc/rgw: document placement target configuration (`issue#24508 <http://tracker.ceph.com/issues/24508>`_, `pr#27032 <https://github.com/ceph/ceph/pull/27032>`_, Casey Bodley) -* doc: Update bluestore config docs - fix typo (as -> has) (`pr#27845 <https://github.com/ceph/ceph/pull/27845>`_, Yaniv Kaul) -* doc: updated reference link for log based PG (`issue#38465 <http://tracker.ceph.com/issues/38465>`_, `pr#26829 <https://github.com/ceph/ceph/pull/26829>`_, James McClune) -* include/intarith: enforce the same type for p2\*() arguments (`pr#27318 <https://github.com/ceph/ceph/pull/27318>`_, Ilya Dryomov) -* librbd: avoid aggregate-initializing any static_visitor (`issue#38659 <http://tracker.ceph.com/issues/38659>`_, `pr#27041 <https://github.com/ceph/ceph/pull/27041>`_, Willem Jan Withagen) -* librbd: avoid aggregate-initializing IsWriteOpVisitor (`issue#38660 <http://tracker.ceph.com/issues/38660>`_, `pr#27039 <https://github.com/ceph/ceph/pull/27039>`_, Willem Jan Withagen) -* mds: drop reconnect message from non-existent session (`issue#39026 <http://tracker.ceph.com/issues/39026>`_, `pr#27916 <https://github.com/ceph/ceph/pull/27916>`_, Shen Hang) -* mds: inode filtering on 'dump cache' asok (`issue#11172 <http://tracker.ceph.com/issues/11172>`_, `pr#27058 <https://github.com/ceph/ceph/pull/27058>`_, dongdong tao) -* mds/server: check directory split after rename (`issue#38994 <http://tracker.ceph.com/issues/38994>`_, `pr#27917 <https://github.com/ceph/ceph/pull/27917>`_, Shen Hang) -* mds: wait for client to release shared cap when re-acquiring xlock (`issue#38491 <http://tracker.ceph.com/issues/38491>`_, `pr#27023 <https://github.com/ceph/ceph/pull/27023>`_, "Yan, Zheng") -* mgr/balancer: blame if upmap won't actually work (`issue#38780 <http://tracker.ceph.com/issues/38780>`_, `pr#26497 <https://github.com/ceph/ceph/pull/26497>`_, xie xingguo) -* mgr/BaseMgrModule: drop GIL for ceph_send_command (`issue#38537 <http://tracker.ceph.com/issues/38537>`_, `pr#26833 <https://github.com/ceph/ceph/pull/26833>`_, Sage Weil) -* mgr: crashdump feature backport (`pr#24639 <https://github.com/ceph/ceph/pull/24639>`_, Noah Watkins, Sage Weil, Dan Mick) -* mgr/dashboard: fix for using '::' on hosts without ipv6 (`issue#38575 <http://tracker.ceph.com/issues/38575>`_, `pr#26750 <https://github.com/ceph/ceph/pull/26750>`_, Noah Watkins) -* mgr/dashboard: Manager should complain about wrong dashboard certificate (`issue#24453 <http://tracker.ceph.com/issues/24453>`_, `pr#27747 <https://github.com/ceph/ceph/pull/27747>`_, Volker Theile, Ricardo Dias) -* mgr/dashboard: Search broken for entries with null values (`issue#38583 <http://tracker.ceph.com/issues/38583>`_, `pr#26944 <https://github.com/ceph/ceph/pull/26944>`_, Patrick Nawracay) -* mgr/dashboard: show I/O stats in Pool list (`pr#27053 <https://github.com/ceph/ceph/pull/27053>`_, Alfonso Martínez) -* mgr/dashboard: Update npm packages (`issue#39080 <http://tracker.ceph.com/issues/39080>`_, `pr#26670 <https://github.com/ceph/ceph/pull/26670>`_, Tiago Melo) -* mgr/dashboard: Use human readable units on the OSD I/O graphs (`issue#25075 <http://tracker.ceph.com/issues/25075>`_, `pr#27558 <https://github.com/ceph/ceph/pull/27558>`_, Tiago Melo) -* mgr: drop GIL in get_config (`pr#26612 <https://github.com/ceph/ceph/pull/26612>`_, John Spray) -* mgr: enable inter-module calls (`pr#27638 <https://github.com/ceph/ceph/pull/27638>`_, John Spray) -* mgr/prometheus: add interface and objectstore to osd metadata (`pr#26537 <https://github.com/ceph/ceph/pull/26537>`_, Jan Fajerski, Konstantin Shalygin) -* mgr/PyModule: put mgr_module_path first in sys.path (`issue#38469 <http://tracker.ceph.com/issues/38469>`_, `pr#26777 <https://github.com/ceph/ceph/pull/26777>`_, Tim Serong) -* mon/OSDMonitor: fix osd boot check (`pr#27351 <https://github.com/ceph/ceph/pull/27351>`_, Sage Weil) -* mon/OSDMonitor: further improve prepare_command_pool_set E2BIG error message (`issue#39353 <http://tracker.ceph.com/issues/39353>`_, `pr#27647 <https://github.com/ceph/ceph/pull/27647>`_, Nathan Cutler) -* msg: output peer address when detecting bad CRCs (`issue#39367 <http://tracker.ceph.com/issues/39367>`_, `pr#27860 <https://github.com/ceph/ceph/pull/27860>`_, Greg Farnum) -* multisite: bucket full sync does not handle delete markers (`issue#38007 <http://tracker.ceph.com/issues/38007>`_, `pr#26194 <https://github.com/ceph/ceph/pull/26194>`_, Casey Bodley) -* multisite: rgw_data_sync_status json decode failure breaks automated datalog trimming (`issue#38373 <http://tracker.ceph.com/issues/38373>`_, `pr#26615 <https://github.com/ceph/ceph/pull/26615>`_, Casey Bodley) -* os/bluestore: backport new bitmap allocator (`pr#26983 <https://github.com/ceph/ceph/pull/26983>`_, Igor Fedotov, Sage Weil) -* os/bluestore: bitmap allocator might fail to return contiguous chunk despite having enough space (`pr#27298 <https://github.com/ceph/ceph/pull/27298>`_, Igor Fedotov) -* os/bluestore: call fault_range properly prior to looking for blob to … (`pr#27570 <https://github.com/ceph/ceph/pull/27570>`_, Igor Fedotov) -* os/bluestore: fix improper backport for p2 macros for bmap allocator (`pr#27606 <https://github.com/ceph/ceph/pull/27606>`_, Igor Fedotov) -* os/bluestore: fix length overflow (`issue#39245 <http://tracker.ceph.com/issues/39245>`_, `pr#27366 <https://github.com/ceph/ceph/pull/27366>`_, Jianpeng Ma) -* os/bluestore: fix out-of-bound access in bmap allocator (`pr#27738 <https://github.com/ceph/ceph/pull/27738>`_, Igor Fedotov) -* os/bluestore_tool: bluefs-bdev-expand: indicate bypassed for main dev (`pr#27447 <https://github.com/ceph/ceph/pull/27447>`_, Igor Fedotov) -* osd: FAILED ceph_assert(attrs || !pg_log.get_missing().is_missing(soid) || (it_objects != pg_log.get_log().objects.end() && it_objects->second->op == pg_log_entry_t::LOST_REVERT)) in PrimaryLogPG::get_object_context() (`issue#38931 <http://tracker.ceph.com/issues/38931>`_, `issue#38784 <http://tracker.ceph.com/issues/38784>`_, `pr#27940 <https://github.com/ceph/ceph/pull/27940>`_, xie xingguo) -* osd: fixup OpTracker destruct assert, waiting_for_osdmap take ref with OpRequest (`issue#38377 <http://tracker.ceph.com/issues/38377>`_, `pr#26862 <https://github.com/ceph/ceph/pull/26862>`_, linbing) -* osd/PG: discover missing objects when an OSD peers and PG is degraded (`pr#27745 <https://github.com/ceph/ceph/pull/27745>`_, Jonas Jelten) -* osd/PGLog.h: print olog_can_rollback_to before deciding to rollback (`issue#38894 <http://tracker.ceph.com/issues/38894>`_, `pr#27284 <https://github.com/ceph/ceph/pull/27284>`_, Neha Ojha) -* osd/PGLog: preserve original_crt to check rollbackability (`issue#39023 <http://tracker.ceph.com/issues/39023>`_, `issue#36739 <http://tracker.ceph.com/issues/36739>`_, `pr#27629 <https://github.com/ceph/ceph/pull/27629>`_, Neha Ojha) -* osd/PrimaryLogPG: handle object !exists in handle_watch_timeout (`issue#38432 <http://tracker.ceph.com/issues/38432>`_, `pr#26709 <https://github.com/ceph/ceph/pull/26709>`_, Sage Weil) -* osd: process_copy_chunk remove obc ref before pg unlock (`issue#38842 <http://tracker.ceph.com/issues/38842>`_, `pr#27587 <https://github.com/ceph/ceph/pull/27587>`_, Zengran Zhang) -* osd: shutdown recovery_request_timer earlier (`issue#38945 <http://tracker.ceph.com/issues/38945>`_, `pr#27938 <https://github.com/ceph/ceph/pull/27938>`_, Zengran Zhang) -* pybind/rados: fixed Python3 string conversion issue on get_fsid (`issue#38381 <http://tracker.ceph.com/issues/38381>`_, `pr#27259 <https://github.com/ceph/ceph/pull/27259>`_, Jason Dillaman) -* rbd: API list_images() Segmentation fault (`issue#38468 <http://tracker.ceph.com/issues/38468>`_, `pr#26707 <https://github.com/ceph/ceph/pull/26707>`_, songweibin) -* rbd: krbd: return -ETIMEDOUT in polling (`issue#38792 <http://tracker.ceph.com/issues/38792>`_, `pr#27588 <https://github.com/ceph/ceph/pull/27588>`_, Dongsheng Yang) -* rbd_mirror: don't report error if image replay canceled (`pr#26140 <https://github.com/ceph/ceph/pull/26140>`_, Mykola Golub) -* rgw: Adding tcp_nodelay option to Beast (`issue#34308 <http://tracker.ceph.com/issues/34308>`_, `pr#27367 <https://github.com/ceph/ceph/pull/27367>`_, Or Friedmann) -* rgw admin: add tenant argument to reshard cancel (`issue#38214 <http://tracker.ceph.com/issues/38214>`_, `pr#27603 <https://github.com/ceph/ceph/pull/27603>`_, Abhishek Lekshmanan) -* rgw-admin: fix data sync report for master zone (`issue#38938 <http://tracker.ceph.com/issues/38938>`_, `pr#27421 <https://github.com/ceph/ceph/pull/27421>`_, cfanz) -* rgw: admin: handle delete_at attr in object stat output (`pr#27828 <https://github.com/ceph/ceph/pull/27828>`_, Abhishek Lekshmanan) -* rgw: allow radosgw-admin to list bucket w --allow-unordered (`pr#28096 <https://github.com/ceph/ceph/pull/28096>`_, J. Eric Ivancich) -* rgw: beast: set a default port for endpoints (`issue#39000 <http://tracker.ceph.com/issues/39000>`_, `pr#27661 <https://github.com/ceph/ceph/pull/27661>`_, Abhishek Lekshmanan) -* rgw: bucket limit check misbehaves for > max-entries buckets (usually 1000) (`pr#26945 <https://github.com/ceph/ceph/pull/26945>`_, Matt Benjamin) -* rgw: bug in versioning concurrent, list and get have consistency issue (`issue#38060 <http://tracker.ceph.com/issues/38060>`_, `pr#26664 <https://github.com/ceph/ceph/pull/26664>`_, Wang Hao) -* rgw: check for non-existent bucket in RGWGetACLs (`issue#38116 <http://tracker.ceph.com/issues/38116>`_, `pr#26529 <https://github.com/ceph/ceph/pull/26529>`_, Matt Benjamin) -* rgw: cls_bucket_list_unordered lists a single shard (`issue#39393 <http://tracker.ceph.com/issues/39393>`_, `pr#28086 <https://github.com/ceph/ceph/pull/28086>`_, Casey Bodley) -* rgw: data sync drains lease stack on lease failure (`issue#38479 <http://tracker.ceph.com/issues/38479>`_, `pr#26762 <https://github.com/ceph/ceph/pull/26762>`_, Casey Bodley) -* rgw: don't crash on missing /etc/mime.types (`issue#38328 <http://tracker.ceph.com/issues/38328>`_, `pr#27354 <https://github.com/ceph/ceph/pull/27354>`_, Casey Bodley) -* rgw: failed to pass test_bucket_create_naming_bad_punctuation in s3test (`issue#23587 <http://tracker.ceph.com/issues/23587>`_, `issue#26965 <http://tracker.ceph.com/issues/26965>`_, `pr#27666 <https://github.com/ceph/ceph/pull/27666>`_, yuliyang, Abhishek Lekshmanan) -* rgw: fix bug of apply default quota, for this create new a user may core using beast (`issue#38847 <http://tracker.ceph.com/issues/38847>`_, `pr#27335 <https://github.com/ceph/ceph/pull/27335>`_, liaoxin01) -* rgw: fix read not exists null version return wrong (`issue#38811 <http://tracker.ceph.com/issues/38811>`_, `pr#27304 <https://github.com/ceph/ceph/pull/27304>`_, Tianshan Qu) -* rgw: Fix S3 compatibility bug when CORS is not found (`issue#37945 <http://tracker.ceph.com/issues/37945>`_, `pr#27356 <https://github.com/ceph/ceph/pull/27356>`_, Nick Janus) -* rgw: GetBucketCORS API returns Not Found error code when CORS configuration does not exist (`issue#26964 <http://tracker.ceph.com/issues/26964>`_, `pr#27122 <https://github.com/ceph/ceph/pull/27122>`_, yuliyang, ashitakasam) -* rgw: get or set realm zonegroup zone should check user's caps for security (`issue#37352 <http://tracker.ceph.com/issues/37352>`_, `pr#27948 <https://github.com/ceph/ceph/pull/27948>`_, yuliyang, Casey Bodley) -* rgw: ldap: fix LDAPAuthEngine::init() when uri !empty() (`issue#38699 <http://tracker.ceph.com/issues/38699>`_, `pr#27174 <https://github.com/ceph/ceph/pull/27174>`_, Matt Benjamin) -* rgw: multiple es related fixes and improvements (`issue#38028 <http://tracker.ceph.com/issues/38028>`_, `issue#22877 <http://tracker.ceph.com/issues/22877>`_, `issue#36233 <http://tracker.ceph.com/issues/36233>`_, `issue#38030 <http://tracker.ceph.com/issues/38030>`_, `issue#36092 <http://tracker.ceph.com/issues/36092>`_, `pr#26517 <https://github.com/ceph/ceph/pull/26517>`_, Yehuda Sadeh, Abhishek Lekshmanan, Willem Jan Withagen) -* rgw: nfs: skip empty (non-POSIX) path segments (`issue#38744 <http://tracker.ceph.com/issues/38744>`_, `pr#27179 <https://github.com/ceph/ceph/pull/27179>`_, Matt Benjamin) -* rgw: only update last_trim marker on ENODATA (`issue#38075 <http://tracker.ceph.com/issues/38075>`_, `pr#26641 <https://github.com/ceph/ceph/pull/26641>`_, Casey Bodley) -* rgw: resolve bugs and clean up garbage collection code (`issue#38454 <http://tracker.ceph.com/issues/38454>`_, `pr#27796 <https://github.com/ceph/ceph/pull/27796>`_, J. Eric Ivancich) -* rgw: rgw_file: use correct secret key to check auth (`issue#37855 <http://tracker.ceph.com/issues/37855>`_, `pr#26687 <https://github.com/ceph/ceph/pull/26687>`_, MinSheng Lin) -* rgw: sse c fixes (`issue#38700 <http://tracker.ceph.com/issues/38700>`_, `pr#27297 <https://github.com/ceph/ceph/pull/27297>`_, Adam Kupczyk, Casey Bodley, Abhishek Lekshmanan) -* rgw: sync module: avoid printing attrs of objects in log (`issue#37646 <http://tracker.ceph.com/issues/37646>`_, `pr#27029 <https://github.com/ceph/ceph/pull/27029>`_, Abhishek Lekshmanan) -* rgw: use chunked encoding to get partial results out faster (`issue#12713 <http://tracker.ceph.com/issues/12713>`_, `pr#28014 <https://github.com/ceph/ceph/pull/28014>`_, Robin H. Johnson) -* rgw: when exclusive lock fails due existing lock, log add'l info (`issue#38171 <http://tracker.ceph.com/issues/38171>`_, `pr#26553 <https://github.com/ceph/ceph/pull/26553>`_, J. Eric Ivancich) -* rgw: when using nfs-ganesha to upload file, rgw es sync module get failed (`issue#36233 <http://tracker.ceph.com/issues/36233>`_, `pr#27972 <https://github.com/ceph/ceph/pull/27972>`_, Abhishek Lekshmanan) -* run-standalone.sh: Need double-quotes to handle | in core_pattern on all distributions (`issue#38325 <http://tracker.ceph.com/issues/38325>`_, `pr#26811 <https://github.com/ceph/ceph/pull/26811>`_, David Zafman) -* spdk: update to latest spdk-18.05 branch (`pr#27451 <https://github.com/ceph/ceph/pull/27451>`_, Kefu Chai) -* test: run-standalone.sh set local library location so mgr can find li… (`issue#38262 <http://tracker.ceph.com/issues/38262>`_, `pr#26495 <https://github.com/ceph/ceph/pull/26495>`_, David Zafman) -* test/store_test: fix/workaround for BlobReuseOnOverwriteUT and garbageCollection (`pr#27055 <https://github.com/ceph/ceph/pull/27055>`_, Igor Fedotov) -* test: Verify a log trim trims the dup_index (`pr#26578 <https://github.com/ceph/ceph/pull/26578>`_, Brad Hubbard) -* tools: ceph-disk/tests: use random unused port for CEPH_MON (`issue#39066 <http://tracker.ceph.com/issues/39066>`_, `pr#27228 <https://github.com/ceph/ceph/pull/27228>`_, Kefu Chai) -* tools: ceph-objectstore-tool: rename dump-import to dump-export (`issue#39284 <http://tracker.ceph.com/issues/39284>`_, `pr#27635 <https://github.com/ceph/ceph/pull/27635>`_, David Zafman) - - -v13.2.5 Mimic -============= - -This is the fifth bugfix release of the Mimic v13.2.x long term -stable release series. We recommend all Mimic users upgrade. - -Notable Changes ---------------- - -* This release fixes the pg log hard limit bug that was introduced in - 13.2.2, https://tracker.ceph.com/issues/36686. A flag called - `pglog_hardlimit` has been introduced, which is off by default. Enabling - this flag will limit the length of the pg log. In order to enable - that, the flag must be set by running `ceph osd set pglog_hardlimit` - after completely upgrading to 13.2.2. Once the cluster has this flag - set, the length of the pg log will be capped by a hard limit. Once set, - this flag *must not* be unset anymore. In luminous, this feature was - introduced in 12.2.11. Users who are running 12.2.11, and want to - continue to use this feature, should upgrade to 13.2.5 or later. - -* This release also fixes a CVE on civetweb, CVE-2019-3821 where SSL file - descriptors were not closed in civetweb in case the initial negotiation fails. - -* There have been fixes to RGW dynamic and manual resharding, which no longer - leaves behind stale bucket instances to be removed manually. For finding and - cleaning up older instances from a reshard a radosgw-admin command `reshard - stale-instances list` and `reshard stale-instances rm` should do the necessary - cleanup. These commands should *not* be used on a multisite setup as the stale - instances may be unlikely to be from a reshard and can have consequences. In - the next version the admin CLI will prevent this command to be run on a - multisite cluster, however for the current release users are urged not to - use the delete command on a multisite cluster. - -Changelog ---------- - -* build/ops: Destruction of basic_string _GLIBCXX_USE_CXX11_ABI=0 and C++17 mode results in invalid delete (`issue#38177 <http://tracker.ceph.com/issues/38177>`_, `pr#26593 <https://github.com/ceph/ceph/pull/26593>`_, Kefu Chai, Jason Dillaman) -* build/ops: rpm: require ceph-base instead of ceph-common (`issue#37620 <http://tracker.ceph.com/issues/37620>`_, `pr#25809 <https://github.com/ceph/ceph/pull/25809>`_, Sébastien Han) -* build/ops: run-make-check.sh ccache tweaks (`issue#24817 <http://tracker.ceph.com/issues/24817>`_, `issue#24777 <http://tracker.ceph.com/issues/24777>`_, `pr#25153 <https://github.com/ceph/ceph/pull/25153>`_, Nathan Cutler, Jonathan Brielmaier, Erwan Velu) -* ceph-create-keys: fix octal notation for Python 3 without losing compatibility with Python 2 (`issue#37641 <http://tracker.ceph.com/issues/37641>`_, `pr#25531 <https://github.com/ceph/ceph/pull/25531>`_, James Page) -* cephfs: MDCache::finish_snaprealm_reconnect() create and drop MClientSnap message (`issue#38285 <http://tracker.ceph.com/issues/38285>`_, `pr#26472 <https://github.com/ceph/ceph/pull/26472>`_, "Yan, Zheng") -* cephfs: mgr/status: fix fs status subcommand did not show standby-replay MDS' perf info (`issue#36399 <http://tracker.ceph.com/issues/36399>`_, `pr#25031 <https://github.com/ceph/ceph/pull/25031>`_, Zhi Zhang) -* ceph-objectstore-tool: Dump hashinfo (`issue#37597 <http://tracker.ceph.com/issues/37597>`_, `pr#25721 <https://github.com/ceph/ceph/pull/25721>`_, David Zafman) -* ceph-volume-client: allow setting mode of CephFS volumes (`issue#36651 <http://tracker.ceph.com/issues/36651>`_, `pr#25413 <https://github.com/ceph/ceph/pull/25413>`_, Tom Barron) -* ceph-volume: enable device discards (`issue#36532 <http://tracker.ceph.com/issues/36532>`_, `pr#25749 <https://github.com/ceph/ceph/pull/25749>`_, Jonas Jelten) -* ceph-volume: fix JSON output in `inventory` (`issue#37390 <http://tracker.ceph.com/issues/37390>`_, `pr#25923 <https://github.com/ceph/ceph/pull/25923>`_, Sebastian Wagner) -* ceph-volume: Fix TypeError: join() takes exactly one argument (2 given) (`issue#37595 <http://tracker.ceph.com/issues/37595>`_, `pr#25771 <https://github.com/ceph/ceph/pull/25771>`_, Sebastian Wagner) -* ceph-volume normalize comma to dot for string to int conversions (`issue#37442 <http://tracker.ceph.com/issues/37442>`_, `pr#25775 <https://github.com/ceph/ceph/pull/25775>`_, Alfredo Deza) -* ceph-volume: revert partition as disk (`issue#37506 <http://tracker.ceph.com/issues/37506>`_, `pr#26294 <https://github.com/ceph/ceph/pull/26294>`_, Jan Fajerski) -* ceph-volume: set permissions right before prime-osd-dir (`issue#37486 <http://tracker.ceph.com/issues/37486>`_, `pr#25777 <https://github.com/ceph/ceph/pull/25777>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume tests/functional declare ceph-ansible roles instead of importing them (`issue#37805 <http://tracker.ceph.com/issues/37805>`_, `pr#25837 <https://github.com/ceph/ceph/pull/25837>`_, Alfredo Deza) -* ceph-volume zap: improve zapping to remove all partitions and all LVs, encrypted or not (`issue#37449 <http://tracker.ceph.com/issues/37449>`_, `pr#25351 <https://github.com/ceph/ceph/pull/25351>`_, Alfredo Deza) -* cli: dump osd-fsid as part of osd find <id> (`issue#37966 <http://tracker.ceph.com/issues/37966>`_, `pr#26035 <https://github.com/ceph/ceph/pull/26035>`_, Noah Watkins) -* client: do not move f->pos untill success write (`issue#37546 <http://tracker.ceph.com/issues/37546>`_, `pr#25683 <https://github.com/ceph/ceph/pull/25683>`_, Junhui Tang) -* client: fix failure in quota size limitation when using samba (`issue#37547 <http://tracker.ceph.com/issues/37547>`_, `pr#25678 <https://github.com/ceph/ceph/pull/25678>`_, Junhui Tang) -* client: fix fuse client hang because its pipe to mds is not ok (`issue#36079 <http://tracker.ceph.com/issues/36079>`_, `pr#25903 <https://github.com/ceph/ceph/pull/25903>`_, Guan yunfei) -* client: retry remount on dcache invalidation failure (`issue#27657 <http://tracker.ceph.com/issues/27657>`_, `pr#24695 <https://github.com/ceph/ceph/pull/24695>`_, Venky Shankar) -* client: session flush does not cause cap release message flush (`issue#38009 <http://tracker.ceph.com/issues/38009>`_, `pr#26424 <https://github.com/ceph/ceph/pull/26424>`_, Patrick Donnelly) -* cmake: do not pass -B{symbolic,symbolic-functions} to linker on FreeBSD (`issue#36717 <http://tracker.ceph.com/issues/36717>`_, `pr#25525 <https://github.com/ceph/ceph/pull/25525>`_, Willem Jan Withagen) -* common: fix memory leaks in WeightedPriorityQueue (`issue#36248 <http://tracker.ceph.com/issues/36248>`_, `pr#25295 <https://github.com/ceph/ceph/pull/25295>`_, Radoslaw Zarzynski) -* common: fix missing include boost/noncopyable.hpp (`issue#38178 <http://tracker.ceph.com/issues/38178>`_, `pr#26277 <https://github.com/ceph/ceph/pull/26277>`_, Willem Jan Withagen) -* core: list-inconsistent-obj output truncated, causing osd-scrub-repair.sh failure (`issue#37653 <http://tracker.ceph.com/issues/37653>`_, `pr#25603 <https://github.com/ceph/ceph/pull/25603>`_, David Zafman) -* core: luminous->(mimic,nautilus): PGMapDigest decode error on luminous end (`issue#38295 <http://tracker.ceph.com/issues/38295>`_, `pr#26451 <https://github.com/ceph/ceph/pull/26451>`_, Sage Weil) -* core: Objecter::calc_op_budget: Fix invalid access to extent union member (`issue#37932 <http://tracker.ceph.com/issues/37932>`_, `pr#26066 <https://github.com/ceph/ceph/pull/26066>`_, Simon Ruggier) -* core: scrub warning check incorrectly uses mon scrub interval (`issue#37264 <http://tracker.ceph.com/issues/37264>`_, `pr#26493 <https://github.com/ceph/ceph/pull/26493>`_, David Zafman) -* deep fsck fails on inspecting very large onodes (`issue#38065 <http://tracker.ceph.com/issues/38065>`_, `pr#26291 <https://github.com/ceph/ceph/pull/26291>`_, Igor Fedotov) -* doc: pin the version for "breathe" to 4.1.11 (`issue#38229 <http://tracker.ceph.com/issues/38229>`_, `pr#26333 <https://github.com/ceph/ceph/pull/26333>`_, Alfredo Deza) -* doc: rados/configuration: refresh osdmap section (`issue#38051 <http://tracker.ceph.com/issues/38051>`_, `pr#26373 <https://github.com/ceph/ceph/pull/26373>`_, Ilya Dryomov) -* doc: updated Ceph documentation links (`issue#37793 <http://tracker.ceph.com/issues/37793>`_, `pr#26180 <https://github.com/ceph/ceph/pull/26180>`_, James McClune) -* doc/user-management: Remove obsolete reset caps command (`issue#37663 <http://tracker.ceph.com/issues/37663>`_, `pr#25607 <https://github.com/ceph/ceph/pull/25607>`_, Brad Hubbard) -* journal: max journal order is incorrectly set at 64 (`issue#37541 <http://tracker.ceph.com/issues/37541>`_, `pr#25957 <https://github.com/ceph/ceph/pull/25957>`_, Mykola Golub) -* librbd: fix missing unblock_writes if shrink is not allowed (`issue#36778 <http://tracker.ceph.com/issues/36778>`_, `pr#25252 <https://github.com/ceph/ceph/pull/25252>`_, runsisi) -* librbd: reset snaps in rbd_snap_list() (`issue#37508 <http://tracker.ceph.com/issues/37508>`_, `pr#25459 <https://github.com/ceph/ceph/pull/25459>`_, Kefu Chai) -* mds: broadcast quota message to client when disable quota (`issue#38054 <http://tracker.ceph.com/issues/38054>`_, `pr#26292 <https://github.com/ceph/ceph/pull/26292>`_, Junhui Tang) -* mds: create separate config for heartbeat timeout (`issue#37674 <http://tracker.ceph.com/issues/37674>`_, `pr#26010 <https://github.com/ceph/ceph/pull/26010>`_, Patrick Donnelly) -* mds: directories pinned keep being replicated back and forth between exporting mds and importing mds (`issue#37368 <http://tracker.ceph.com/issues/37368>`_, `pr#25521 <https://github.com/ceph/ceph/pull/25521>`_, Xuehan Xu) -* mds: disallow dumping huge caches to formatter (`issue#36703 <http://tracker.ceph.com/issues/36703>`_, `pr#25642 <https://github.com/ceph/ceph/pull/25642>`_, Venky Shankar) -* mds: do not call Journaler::_trim twice (`issue#37566 <http://tracker.ceph.com/issues/37566>`_, `pr#25561 <https://github.com/ceph/ceph/pull/25561>`_, Tang Junhui) -* mds: fix bug filelock stuck at LOCK_XSYN leading client can't read data (`issue#37333 <http://tracker.ceph.com/issues/37333>`_, `pr#25676 <https://github.com/ceph/ceph/pull/25676>`_, Guan yunfei) -* mds: fix incorrect l_pq_executing_ops statistics when meet an invalid item in purge queue (`issue#37567 <http://tracker.ceph.com/issues/37567>`_, `pr#25559 <https://github.com/ceph/ceph/pull/25559>`_, Junhui Tang) -* mds: fix potential re-evaluate stray dentry in _unlink_local_finish (`issue#38263 <http://tracker.ceph.com/issues/38263>`_, `pr#26474 <https://github.com/ceph/ceph/pull/26474>`_, Zhi Zhang) -* mds: fix races of updating wanted caps (`issue#37464 <http://tracker.ceph.com/issues/37464>`_, `pr#25680 <https://github.com/ceph/ceph/pull/25680>`_, "Yan, Zheng") -* mds: handle fragment notify race (`issue#36035 <http://tracker.ceph.com/issues/36035>`_, `pr#26252 <https://github.com/ceph/ceph/pull/26252>`_, "Yan, Zheng") -* mds: handle state change race (`issue#37594 <http://tracker.ceph.com/issues/37594>`_, `pr#26051 <https://github.com/ceph/ceph/pull/26051>`_, "Yan, Zheng") -* mds: log evicted clients to clog/dbg (`issue#37639 <http://tracker.ceph.com/issues/37639>`_, `pr#25857 <https://github.com/ceph/ceph/pull/25857>`_, Patrick Donnelly) -* MDSMonitor: allow beacons from stopping MDS that was laggy (`issue#37724 <http://tracker.ceph.com/issues/37724>`_, `pr#25685 <https://github.com/ceph/ceph/pull/25685>`_, Patrick Donnelly) -* MDSMonitor: missing osdmon writeable check (`issue#37929 <http://tracker.ceph.com/issues/37929>`_, `pr#26069 <https://github.com/ceph/ceph/pull/26069>`_, Patrick Donnelly) -* mds: purge queue recovery hangs during boot if PQ journal is damaged (`issue#37543 <http://tracker.ceph.com/issues/37543>`_, `pr#26055 <https://github.com/ceph/ceph/pull/26055>`_, Patrick Donnelly) -* mds: PurgeQueue write error handler does not handle EBLACKLISTED (`issue#37394 <http://tracker.ceph.com/issues/37394>`_, `pr#25523 <https://github.com/ceph/ceph/pull/25523>`_, Patrick Donnelly) -* mds: remove duplicated l_mdc_num_strays perfcounter set (`issue#37516 <http://tracker.ceph.com/issues/37516>`_, `pr#25681 <https://github.com/ceph/ceph/pull/25681>`_, Zhi Zhang) -* mds: remove wrong assertion in Locker::snapflush_nudge (`issue#37721 <http://tracker.ceph.com/issues/37721>`_, `pr#25885 <https://github.com/ceph/ceph/pull/25885>`_, "Yan, Zheng") -* mds: runs out of file descriptors after several respawns (`issue#35850 <http://tracker.ceph.com/issues/35850>`_, `pr#25822 <https://github.com/ceph/ceph/pull/25822>`_, Patrick Donnelly) -* mds: severe internal fragment when decoding xattr_map from log event (`issue#37399 <http://tracker.ceph.com/issues/37399>`_, `pr#25519 <https://github.com/ceph/ceph/pull/25519>`_, "Yan, Zheng") -* mds: trim cache after journal flush (`issue#38010 <http://tracker.ceph.com/issues/38010>`_, `pr#26214 <https://github.com/ceph/ceph/pull/26214>`_, Patrick Donnelly) -* mds: wait shorter intervals if beacon not sent (`issue#36367 <http://tracker.ceph.com/issues/36367>`_, `pr#25980 <https://github.com/ceph/ceph/pull/25980>`_, Patrick Donnelly) -* mgr: add get_latest_counter() to C++ -> Python interface (`issue#38138 <http://tracker.ceph.com/issues/38138>`_, `pr#26074 <https://github.com/ceph/ceph/pull/26074>`_, Jan Fajerski) -* mgr/balancer: add cmd to list all plans (`issue#37418 <http://tracker.ceph.com/issues/37418>`_, `pr#25293 <https://github.com/ceph/ceph/pull/25293>`_, Yang Honggang) -* mgr/balancer: add crush_compat_metrics param to change optimization keys (`issue#37412 <http://tracker.ceph.com/issues/37412>`_, `pr#25291 <https://github.com/ceph/ceph/pull/25291>`_, Dan van der Ster) -* mgr/dashboard: Set mirror_mode to None (`issue#37870 <http://tracker.ceph.com/issues/37870>`_, `pr#26009 <https://github.com/ceph/ceph/pull/26009>`_, Sebastian Wagner) -* mgr: deadlock: _check_auth_rotating possible clock skew, rotating keys expired way too early (`issue#23460 <http://tracker.ceph.com/issues/23460>`_, `pr#26426 <https://github.com/ceph/ceph/pull/26426>`_, Yan Jun) -* mgr: prometheus: added bluestore db and wal devices to ceph_disk_occupation metric (`issue#36627 <http://tracker.ceph.com/issues/36627>`_, `pr#25218 <https://github.com/ceph/ceph/pull/25218>`_, Konstantin Shalygin) -* mgr: race between daemon state and service map in 'service status' (`issue#36656 <http://tracker.ceph.com/issues/36656>`_, `pr#25368 <https://github.com/ceph/ceph/pull/25368>`_, Mykola Golub) -* mgr/restful: fix py got exception when get osd info (`issue#38182 <http://tracker.ceph.com/issues/38182>`_, `pr#26200 <https://github.com/ceph/ceph/pull/26200>`_, Boris Ranto, zouaiguo) -* mgr: various python3 fixes (`issue#37415 <http://tracker.ceph.com/issues/37415>`_, `pr#25292 <https://github.com/ceph/ceph/pull/25292>`_, Noah Watkins) -* mgr will refuse connection from the monitor who starts behind it (`issue#37753 <http://tracker.ceph.com/issues/37753>`_, `pr#26235 <https://github.com/ceph/ceph/pull/26235>`_, Xinying Song) -* mgr/zabbix: Send more PG information to Zabbix (`issue#38180 <http://tracker.ceph.com/issues/38180>`_, `pr#25944 <https://github.com/ceph/ceph/pull/25944>`_, Wido den Hollander) -* mon: A PG with PG_STATE_REPAIR doesn't mean damaged data, PG_STATE_IN… (`issue#38070 <http://tracker.ceph.com/issues/38070>`_, `pr#26304 <https://github.com/ceph/ceph/pull/26304>`_, David Zafman) -* mon: log last command skips latest entry (`issue#36679 <http://tracker.ceph.com/issues/36679>`_, `pr#25526 <https://github.com/ceph/ceph/pull/25526>`_, John Spray) -* mon: mark REMOVE_SNAPS messages as no_reply (`issue#37568 <http://tracker.ceph.com/issues/37568>`_, `pr#25782 <https://github.com/ceph/ceph/pull/25782>`_, "Yan, Zheng") -* mon/OSDMonitor: do not populate void pg_temp into nextmap (`issue#37784 <http://tracker.ceph.com/issues/37784>`_, `pr#25844 <https://github.com/ceph/ceph/pull/25844>`_, Aleksei Zakharov) -* mon: shutdown messenger early to avoid accessing deleted logger (`issue#37780 <http://tracker.ceph.com/issues/37780>`_, `pr#25846 <https://github.com/ceph/ceph/pull/25846>`_, ningtao) -* msg/async: backport recent messenger fixes (`issue#36497 <http://tracker.ceph.com/issues/36497>`_, `issue#37778 <http://tracker.ceph.com/issues/37778>`_, `pr#25958 <https://github.com/ceph/ceph/pull/25958>`_, xie xingguo) -* msg/async: crashes when authenticator provided by verify_authorizer not implemented (`issue#36443 <http://tracker.ceph.com/issues/36443>`_, `pr#25299 <https://github.com/ceph/ceph/pull/25299>`_, Sage Weil) -* multisite: es sync null versioned object failed because of olh info (`issue#23842 <http://tracker.ceph.com/issues/23842>`_, `issue#23841 <http://tracker.ceph.com/issues/23841>`_, `pr#25578 <https://github.com/ceph/ceph/pull/25578>`_, Tianshan Qu, Shang Ding) -* os/bluestore: fixup access a destroy cond cause deadlock or undefine (`issue#37733 <http://tracker.ceph.com/issues/37733>`_, `pr#26260 <https://github.com/ceph/ceph/pull/26260>`_, linbing) -* os/bluestore: KernelDevice::read() does the EIO mapping now (`issue#36455 <http://tracker.ceph.com/issues/36455>`_, `pr#25854 <https://github.com/ceph/ceph/pull/25854>`_, Radoslaw Zarzynski) -* os/bluestore: rename does not old ref to replacement onode at old name (`issue#36541 <http://tracker.ceph.com/issues/36541>`_, `pr#25313 <https://github.com/ceph/ceph/pull/25313>`_, Sage Weil) -* osd: Add support for osd_delete_sleep configuration value (`issue#36474 <http://tracker.ceph.com/issues/36474>`_, `pr#25507 <https://github.com/ceph/ceph/pull/25507>`_, Jianpeng Ma, David Zafman) -* osd-backfill-stats.sh fails in rados/standalone/osd.yaml (`issue#37393 <http://tracker.ceph.com/issues/37393>`_, `issue#35982 <http://tracker.ceph.com/issues/35982>`_, `pr#26329 <https://github.com/ceph/ceph/pull/26329>`_, Sage Weil, David Zafman) -* osd: backport recent upmap fixes (`issue#37940 <http://tracker.ceph.com/issues/37940>`_, `issue#37881 <http://tracker.ceph.com/issues/37881>`_, `pr#26128 <https://github.com/ceph/ceph/pull/26128>`_, huangjun, xie xingguo) -* osdc/Objecter: update op_target_t::paused in _calc_target (`issue#37398 <http://tracker.ceph.com/issues/37398>`_, `pr#25718 <https://github.com/ceph/ceph/pull/25718>`_, Song Shun, runsisi) -* osd: failed assert when osd_memory_target options mismatch (`issue#37507 <http://tracker.ceph.com/issues/37507>`_, `pr#25605 <https://github.com/ceph/ceph/pull/25605>`_, xie xingguo) -* osd: force-backfill sets forced_recovery instead of forced_backfill in 13.2.1 (`issue#27985 <http://tracker.ceph.com/issues/27985>`_, `pr#26324 <https://github.com/ceph/ceph/pull/26324>`_, xie xingguo) -* osd/mon: fix upgrades for pg log hard limit (`issue#36686 <http://tracker.ceph.com/issues/36686>`_, `pr#26206 <https://github.com/ceph/ceph/pull/26206>`_, Neha Ojha) -* osd/OSDMap: cancel mapping if target osd is out (`issue#37501 <http://tracker.ceph.com/issues/37501>`_, `pr#25699 <https://github.com/ceph/ceph/pull/25699>`_, ningtao, xie xingguo) -* osd/OSD: OSD::mkfs asserts when reusing disk with existing superblock (`issue#37404 <http://tracker.ceph.com/issues/37404>`_, `pr#25385 <https://github.com/ceph/ceph/pull/25385>`_, Igor Fedotov) -* osd/PG.cc: account for missing set irrespective of last_complete (`issue#37919 <http://tracker.ceph.com/issues/37919>`_, `pr#26239 <https://github.com/ceph/ceph/pull/26239>`_, Neha Ojha) -* osd/PrimaryLogPG: fix the extent length error of the sync read (`issue#37680 <http://tracker.ceph.com/issues/37680>`_, `pr#25708 <https://github.com/ceph/ceph/pull/25708>`_, Xiaofei Cui) -* osd: Prioritize user specified scrubs (`issue#37269 <http://tracker.ceph.com/issues/37269>`_, `pr#25513 <https://github.com/ceph/ceph/pull/25513>`_, David Zafman) -* os/filestore: ceph_abort() on fsync(2) or fdatasync(2) failure (`issue#38258 <http://tracker.ceph.com/issues/38258>`_, `pr#26438 <https://github.com/ceph/ceph/pull/26438>`_, Sage Weil) -* pybind/mgr: drop unnecessary iterkeys usage to make py-3 compatible (`issue#37581 <http://tracker.ceph.com/issues/37581>`_, `pr#25759 <https://github.com/ceph/ceph/pull/25759>`_, Mykola Golub) -* pybind/mgr/status: fix ceph fs status in py3 environments (`issue#37573 <http://tracker.ceph.com/issues/37573>`_, `pr#25694 <https://github.com/ceph/ceph/pull/25694>`_, Jan Fajerski) -* qa: pjd test appears to require more than 3h timeout for some configurations (`issue#36594 <http://tracker.ceph.com/issues/36594>`_, `pr#25557 <https://github.com/ceph/ceph/pull/25557>`_, Patrick Donnelly) -* qa/rados/upgrade: align thrashing with upgrade suite, don't import/export pgs (`issue#37665 <http://tracker.ceph.com/issues/37665>`_, `pr#25856 <https://github.com/ceph/ceph/pull/25856>`_, Sage Weil) -* qa/tasks/radosbench: default to 64k writes (`issue#37797 <http://tracker.ceph.com/issues/37797>`_, `pr#26354 <https://github.com/ceph/ceph/pull/26354>`_, Sage Weil) -* qa: test_damage needs to silence MDS_READ_ONLY (`issue#37944 <http://tracker.ceph.com/issues/37944>`_, `pr#26072 <https://github.com/ceph/ceph/pull/26072>`_, Patrick Donnelly) -* qa: test_damage performs truncate test on same object repeatedly (`issue#37836 <http://tracker.ceph.com/issues/37836>`_, `issue#37837 <http://tracker.ceph.com/issues/37837>`_, `pr#26047 <https://github.com/ceph/ceph/pull/26047>`_, Patrick Donnelly) -* qa: teuthology may hang on diagnostic commands for fuse mount (`issue#36390 <http://tracker.ceph.com/issues/36390>`_, `pr#25515 <https://github.com/ceph/ceph/pull/25515>`_, Patrick Donnelly) -* qa: whitelist cap revoke warning (`issue#25188 <http://tracker.ceph.com/issues/25188>`_, `pr#26496 <https://github.com/ceph/ceph/pull/26496>`_, Patrick Donnelly) -* qa/workunits/rados/test_health_warnings: prevent out osds (`issue#37776 <http://tracker.ceph.com/issues/37776>`_, `pr#25850 <https://github.com/ceph/ceph/pull/25850>`_, Sage Weil) -* qa: wrong setting for msgr failures (`issue#36676 <http://tracker.ceph.com/issues/36676>`_, `pr#25517 <https://github.com/ceph/ceph/pull/25517>`_, Patrick Donnelly) -* rbd: fix delay time calculation for trash move (`issue#37861 <http://tracker.ceph.com/issues/37861>`_, `pr#25954 <https://github.com/ceph/ceph/pull/25954>`_, Mykola Golub) -* rgw: debug logging for v4 auth does not sanitize encryption keys (`issue#37847 <http://tracker.ceph.com/issues/37847>`_, `pr#26003 <https://github.com/ceph/ceph/pull/26003>`_, Casey Bodley) -* rgw: Don't treat colons specially in resource part of ARN (`issue#23817 <http://tracker.ceph.com/issues/23817>`_, `pr#25386 <https://github.com/ceph/ceph/pull/25386>`_, Adam C. Emerson) -* rgw: fails to start on Fedora 28 from default configuration (`issue#24228 <http://tracker.ceph.com/issues/24228>`_, `pr#26129 <https://github.com/ceph/ceph/pull/26129>`_, Matt Benjamin) -* rgw: feature -- log successful bucket resharding events (`issue#37647 <http://tracker.ceph.com/issues/37647>`_, `pr#25740 <https://github.com/ceph/ceph/pull/25740>`_, J. Eric Ivancich) -* rgw_file: user info never synced since librgw init (`issue#37527 <http://tracker.ceph.com/issues/37527>`_, `pr#25485 <https://github.com/ceph/ceph/pull/25485>`_, Tao Chen) -* rgw: fix max-size in radosgw-admin and REST Admin API (`issue#37517 <http://tracker.ceph.com/issues/37517>`_, `pr#25449 <https://github.com/ceph/ceph/pull/25449>`_, Nick Erdmann) -* rgw: fix version bucket stats (`issue#21429 <http://tracker.ceph.com/issues/21429>`_, `pr#25643 <https://github.com/ceph/ceph/pull/25643>`_, Shasha Lu) -* rgw: handle S3 version 2 pre-signed urls with meta-data (`issue#23470 <http://tracker.ceph.com/issues/23470>`_, `pr#25899 <https://github.com/ceph/ceph/pull/25899>`_, Matt Benjamin) -* rgw: master zone deletion without a zonegroup rm would break rgw rados init (`issue#37328 <http://tracker.ceph.com/issues/37328>`_, `pr#25511 <https://github.com/ceph/ceph/pull/25511>`_, Abhishek Lekshmanan) -* rgw: multisite: sync gets stuck retrying deletes that fail with ERR_PRECONDITION_FAILED (`issue#37448 <http://tracker.ceph.com/issues/37448>`_, `pr#25505 <https://github.com/ceph/ceph/pull/25505>`_, Casey Bodley) -* rgw: Object can still be deleted even if s3:DeleteObject policy is set (`issue#37403 <http://tracker.ceph.com/issues/37403>`_, `pr#26309 <https://github.com/ceph/ceph/pull/26309>`_, Enming.Zhang) -* rgw: "radosgw-admin bucket rm ... --purge-objects" can hang (`issue#38134 <http://tracker.ceph.com/issues/38134>`_, `pr#26266 <https://github.com/ceph/ceph/pull/26266>`_, J. Eric Ivancich) -* rgw: radosgw-admin: translate reshard status codes (trivial) (`issue#36486 <http://tracker.ceph.com/issues/36486>`_, `pr#25198 <https://github.com/ceph/ceph/pull/25198>`_, Matt Benjamin) -* rgw: rgwgc: process coredump in some special case (`issue#23199 <http://tracker.ceph.com/issues/23199>`_, `pr#25624 <https://github.com/ceph/ceph/pull/25624>`_, zhaokun) -* rpm: Use hardened LDFLAGS (`issue#36316 <http://tracker.ceph.com/issues/36316>`_, `pr#25171 <https://github.com/ceph/ceph/pull/25171>`_, Boris Ranto) - -v13.2.4 Mimic -============= - -This is the fourth bugfix release of the Mimic v13.2.x long term -stable release series. This release includes two security fixes that -were tested but inadvertently excluded from the final v13.2.3 release -build. - -Changelog ---------- - -* CVE-2018-16846: rgw: enforce bounds on max-keys/max-uploads/max-parts (`issue#35994 <http://tracker.ceph.com/issues/35994>`_) -* CVE-2018-14662: mon: limit caps allowed to access the config store - -v13.2.3 Mimic -============= - -This is the third bugfix release of the Mimic v13.2.x long term stable release -series. This release contains many fixes across all components of Ceph. -We recommend that all users upgrade. - -* The default memory utilization for the mons has been increased - somewhat. Rocksdb now uses 512 MB of RAM by default, which should - be sufficient for small to medium-sized clusters; large clusters - should tune this up. Also, the `mon_osd_cache_size` has been - increase from 10 OSDMaps to 500, which will translate to an - additional 500 MB to 1 GB of RAM for large clusters, and much less - for small clusters. - -* Ceph v13.2.2 includes a wrong backport, which may cause mds to go into - 'damaged' state when upgrading Ceph cluster from previous version. - The bug is fixed in v13.2.3. If you are already running v13.2.2, - upgrading to v13.2.3 does not require special action. - -* The bluestore_cache_* options are no longer needed. They are replaced - by osd_memory_target, defaulting to 4GB. BlueStore will expand - and contract its cache to attempt to stay within this - limit. Users upgrading should note this is a higher default - than the previous bluestore_cache_size of 1GB, so OSDs using - BlueStore will use more memory by default. - For more details, see the `BlueStore docs <http://docs.ceph.com/docs/mimic/rados/configuration/bluestore-config-ref/#automatic-cache-sizing>`_. - -* This version contains an upgrade bug, http://tracker.ceph.com/issues/36686, - due to which upgrading during recovery/backfill can cause OSDs to fail. This - bug can be worked around, either by restarting all the OSDs after the upgrade, - or by upgrading when all PGs are in "active+clean" state. If you have already - successfully upgraded to 13.2.2, this issue should not impact you. Going - forward, we are working on a clean upgrade path for this feature. - -Changelog ---------- - -* build/ops: Can't compile Ceph on Fedora 29 as it doesn't recognize python\*3\*-tox as an install Tox (`issue#18163 <http://tracker.ceph.com/issues/18163>`_, `issue#37301 <http://tracker.ceph.com/issues/37301>`_, `issue#37422 <http://tracker.ceph.com/issues/37422>`_, `pr#25294 <https://github.com/ceph/ceph/pull/25294>`_, Nathan Cutler, Brad Hubbard) -* build/ops: debian: correct ceph-common relationship with older radosgw package (`pr#25115 <https://github.com/ceph/ceph/pull/25115>`_, Matthew Vernon) -* ceph-bluestore-tool: fix set label functionality for specific keys (`pr#24352 <https://github.com/ceph/ceph/pull/24352>`_, Igor Fedotov) -* ceph fs add_data_pool applies pool application metadata incorrectly (`issue#36203 <http://tracker.ceph.com/issues/36203>`_, `issue#36028 <http://tracker.ceph.com/issues/36028>`_, `pr#24470 <https://github.com/ceph/ceph/pull/24470>`_, John Spray) -* cephfs: client: explicitly show blacklisted state via asok status command (`issue#36457 <http://tracker.ceph.com/issues/36457>`_, `issue#36352 <http://tracker.ceph.com/issues/36352>`_, `pr#24993 <https://github.com/ceph/ceph/pull/24993>`_, Jonathan Brielmaier, Zhi Zhang) -* cephfs: client: request next osdmap for blacklisted client (`issue#36668 <http://tracker.ceph.com/issues/36668>`_, `issue#36690 <http://tracker.ceph.com/issues/36690>`_, `pr#24987 <https://github.com/ceph/ceph/pull/24987>`_, Zhi Zhang) -* cephfs-journal-tool: wrong layout info used (`issue#24933 <http://tracker.ceph.com/issues/24933>`_, `issue#24644 <http://tracker.ceph.com/issues/24644>`_, `pr#24583 <https://github.com/ceph/ceph/pull/24583>`_, Gu Zhongyan) -* cephfs: some tool commands silently operate on only rank 0, even if multiple ranks exist (`issue#36218 <http://tracker.ceph.com/issues/36218>`_, `pr#25036 <https://github.com/ceph/ceph/pull/25036>`_, Venky Shankar) -* ceph-fuse: add to selinux profile (`issue#36103 <http://tracker.ceph.com/issues/36103>`_, `issue#36197 <http://tracker.ceph.com/issues/36197>`_, `pr#24439 <https://github.com/ceph/ceph/pull/24439>`_, Patrick Donnelly) -* ceph-volume: activate option --auto-detect-objectstore respects --no-systemd (`issue#36249 <http://tracker.ceph.com/issues/36249>`_, `pr#24357 <https://github.com/ceph/ceph/pull/24357>`_, Alfredo Deza) -* ceph-volume add device_id to inventory listing (`pr#25349 <https://github.com/ceph/ceph/pull/25349>`_, Jan Fajerski) -* ceph-volume: add inventory command (`issue#24972 <http://tracker.ceph.com/issues/24972>`_, `pr#25013 <https://github.com/ceph/ceph/pull/25013>`_, Jan Fajerski) -* ceph-volume Additional work on ceph-volume to add some choose_disk capabilities (`issue#36446 <http://tracker.ceph.com/issues/36446>`_, `pr#24782 <https://github.com/ceph/ceph/pull/24782>`_, Erwan Velu) -* ceph-volume add new ceph-handlers role from ceph-ansible (`issue#36251 <http://tracker.ceph.com/issues/36251>`_, `pr#24337 <https://github.com/ceph/ceph/pull/24337>`_, Alfredo Deza) -* ceph-volume: adds a --prepare flag to `lvm batch` (`issue#36363 <http://tracker.ceph.com/issues/36363>`_, `pr#24760 <https://github.com/ceph/ceph/pull/24760>`_, Andrew Schoen) -* ceph-volume: allow to specify --cluster-fsid instead of reading from ceph.conf (`issue#26953 <http://tracker.ceph.com/issues/26953>`_, `pr#25116 <https://github.com/ceph/ceph/pull/25116>`_, Alfredo Deza) -* ceph_volume_client: py3 compatible (`issue#26850 <http://tracker.ceph.com/issues/26850>`_, `issue#17230 <http://tracker.ceph.com/issues/17230>`_, `pr#24443 <https://github.com/ceph/ceph/pull/24443>`_, Rishabh Dave, Patrick Donnelly) -* ceph-volume custom cluster names fail on filestore trigger (`issue#27210 <http://tracker.ceph.com/issues/27210>`_, `pr#24279 <https://github.com/ceph/ceph/pull/24279>`_, Alfredo Deza) -* ceph-volume: do not send (lvm) stderr/stdout to the terminal, use the logfile (`issue#36492 <http://tracker.ceph.com/issues/36492>`_, `pr#24740 <https://github.com/ceph/ceph/pull/24740>`_, Alfredo Deza) -* ceph-volume enable --no-systemd flag for simple sub-command (`issue#36470 <http://tracker.ceph.com/issues/36470>`_, `pr#25011 <https://github.com/ceph/ceph/pull/25011>`_, Alfredo Deza) -* ceph-volume: fix journal and filestore data size in `lvm batch --report` (`issue#36242 <http://tracker.ceph.com/issues/36242>`_, `pr#24306 <https://github.com/ceph/ceph/pull/24306>`_, Andrew Schoen) -* ceph-volume: lsblk can fail to find PARTLABEL, must fallback to blkid (`issue#36098 <http://tracker.ceph.com/issues/36098>`_, `pr#24334 <https://github.com/ceph/ceph/pull/24334>`_, Alfredo Deza) -* ceph-volume lvm.prepare update help to indicate partitions are needed, not devices (`issue#24795 <http://tracker.ceph.com/issues/24795>`_, `pr#24449 <https://github.com/ceph/ceph/pull/24449>`_, Alfredo Deza) -* ceph-volume: make `lvm batch` idempotent (`pr#24588 <https://github.com/ceph/ceph/pull/24588>`_, Andrew Schoen) -* ceph-volume: patch Device when testing (`issue#36768 <http://tracker.ceph.com/issues/36768>`_, `pr#25066 <https://github.com/ceph/ceph/pull/25066>`_, Alfredo Deza) -* ceph-volume: reject devices that have existing GPT headers (`issue#27062 <http://tracker.ceph.com/issues/27062>`_, `pr#25103 <https://github.com/ceph/ceph/pull/25103>`_, Andrew Schoen) -* ceph-volume: remove LVs when using zap --destroy (`pr#25100 <https://github.com/ceph/ceph/pull/25100>`_, Alfredo Deza) -* ceph-volume remove version reporting from help menu (`issue#36386 <http://tracker.ceph.com/issues/36386>`_, `pr#24753 <https://github.com/ceph/ceph/pull/24753>`_, Alfredo Deza) -* ceph-volume: rename Device property valid to available (`issue#36701 <http://tracker.ceph.com/issues/36701>`_, `pr#25133 <https://github.com/ceph/ceph/pull/25133>`_, Jan Fajerski) -* ceph-volume: skip processing devices that don't exist when scanning system disks (`issue#36247 <http://tracker.ceph.com/issues/36247>`_, `pr#24381 <https://github.com/ceph/ceph/pull/24381>`_, Alfredo Deza) -* ceph-volume systemd import main so console_scripts work for executable (`issue#36648 <http://tracker.ceph.com/issues/36648>`_, `pr#24852 <https://github.com/ceph/ceph/pull/24852>`_, Alfredo Deza) -* ceph-volume tests install ceph-ansible's requirements.txt dependencies (`issue#36672 <http://tracker.ceph.com/issues/36672>`_, `pr#24959 <https://github.com/ceph/ceph/pull/24959>`_, Alfredo Deza) -* ceph-volume tests.systemd update imports for systemd module (`issue#36704 <http://tracker.ceph.com/issues/36704>`_, `pr#24957 <https://github.com/ceph/ceph/pull/24957>`_, Alfredo Deza) -* ceph-volume: use console_scripts (`issue#36601 <http://tracker.ceph.com/issues/36601>`_, `pr#24838 <https://github.com/ceph/ceph/pull/24838>`_, Mehdi Abaakouk) -* ceph-volume util.encryption don't push stderr to terminal (`issue#36246 <http://tracker.ceph.com/issues/36246>`_, `pr#24826 <https://github.com/ceph/ceph/pull/24826>`_, Alfredo Deza) -* ceph-volume util.encryption robust blkid+lsblk detection of lockbox (`pr#24980 <https://github.com/ceph/ceph/pull/24980>`_, Alfredo Deza) -* client: fix use-after-free in Client::link() (`issue#35841 <http://tracker.ceph.com/issues/35841>`_, `issue#24557 <http://tracker.ceph.com/issues/24557>`_, `pr#24187 <https://github.com/ceph/ceph/pull/24187>`_, "Yan, Zheng") -* client: statfs inode count odd (`issue#35940 <http://tracker.ceph.com/issues/35940>`_, `issue#24849 <http://tracker.ceph.com/issues/24849>`_, `pr#24377 <https://github.com/ceph/ceph/pull/24377>`_, Rishabh Dave) -* client:two ceph-fuse client, one can not list out files created by an… (`issue#27051 <http://tracker.ceph.com/issues/27051>`_, `issue#35934 <http://tracker.ceph.com/issues/35934>`_, `pr#24295 <https://github.com/ceph/ceph/pull/24295>`_, Peng Xie) -* client: update ctime when modifying file content (`issue#35945 <http://tracker.ceph.com/issues/35945>`_, `issue#36134 <http://tracker.ceph.com/issues/36134>`_, `pr#24385 <https://github.com/ceph/ceph/pull/24385>`_, "Yan, Zheng") -* common: get real hostname from container/pod environment (`pr#23916 <https://github.com/ceph/ceph/pull/23916>`_, Sage Weil) -* core: _aio_log_start inflight overlap of 0x10000~1000 with [65536~4096] (`issue#36754 <http://tracker.ceph.com/issues/36754>`_, `issue#36625 <http://tracker.ceph.com/issues/36625>`_, `pr#25062 <https://github.com/ceph/ceph/pull/25062>`_, Jonathan Brielmaier, Yang Honggang) -* core: FAILED assert(osdmap_manifest.pinned.empty()) in OSDMonitor::prune_init() (`issue#24612 <http://tracker.ceph.com/issues/24612>`_, `issue#35071 <http://tracker.ceph.com/issues/35071>`_, `pr#24918 <https://github.com/ceph/ceph/pull/24918>`_, Joao Eduardo Luis) -* core: Interactive mode CLI prints no output since Mimic (`issue#36358 <http://tracker.ceph.com/issues/36358>`_, `issue#36432 <http://tracker.ceph.com/issues/36432>`_, `pr#24971 <https://github.com/ceph/ceph/pull/24971>`_, John Spray, Mohamad Gebai) -* core: mgr crash on scrub of unconnected osd (`issue#36110 <http://tracker.ceph.com/issues/36110>`_, `issue#36465 <http://tracker.ceph.com/issues/36465>`_, `pr#25029 <https://github.com/ceph/ceph/pull/25029>`_, Sage Weil) -* core: mon osdmap cash too small during upgrade to mimic (`issue#36505 <http://tracker.ceph.com/issues/36505>`_, `pr#25019 <https://github.com/ceph/ceph/pull/25019>`_, Sage Weil) -* core: monstore tool rebuild does not generate creating_pgs (`issue#36306 <http://tracker.ceph.com/issues/36306>`_, `issue#36433 <http://tracker.ceph.com/issues/36433>`_, `pr#25016 <https://github.com/ceph/ceph/pull/25016>`_, Sage Weil) -* core: Objecter: add ignore cache flag if got redirect reply (`issue#36658 <http://tracker.ceph.com/issues/36658>`_, `pr#25075 <https://github.com/ceph/ceph/pull/25075>`_, Iain Buclaw, Jonathan Brielmaier) -* core: objecter cannot resend split-dropped op when racing with con reset (`issue#22544 <http://tracker.ceph.com/issues/22544>`_, `issue#35843 <http://tracker.ceph.com/issues/35843>`_, `pr#24970 <https://github.com/ceph/ceph/pull/24970>`_, Sage Weil) -* core: os/bluestore: cache autotuning and memory limit (`issue#37340 <http://tracker.ceph.com/issues/37340>`_, `pr#25283 <https://github.com/ceph/ceph/pull/25283>`_, Josh Durgin, Mark Nelson) -* core: rados rm --force-full is blocked when cluster is in full status (`issue#36435 <http://tracker.ceph.com/issues/36435>`_, `pr#25017 <https://github.com/ceph/ceph/pull/25017>`_, Yang Honggang) -* crush/CrushWrapper: fix crush tree json dumper (`issue#36150 <http://tracker.ceph.com/issues/36150>`_, `pr#24481 <https://github.com/ceph/ceph/pull/24481>`_, Oshyn Song) -* debian/control: require fuse for ceph-fuse (`issue#21057 <http://tracker.ceph.com/issues/21057>`_, `pr#24037 <https://github.com/ceph/ceph/pull/24037>`_, Thomas Serlin) -* doc: add ceph-volume inventory sections (`pr#25130 <https://github.com/ceph/ceph/pull/25130>`_, Jan Fajerski) -* doc: fix broken fstab url in cephfs/fuse (`issue#36286 <http://tracker.ceph.com/issues/36286>`_, `issue#36313 <http://tracker.ceph.com/issues/36313>`_, `pr#24441 <https://github.com/ceph/ceph/pull/24441>`_, Jos Collin) -* doc: Put command template into literal block (`pr#25000 <https://github.com/ceph/ceph/pull/25000>`_, Alexey Stupnikov) -* doc: remove deprecated 'scrubq' from ceph(8) (`issue#35813 <http://tracker.ceph.com/issues/35813>`_, `issue#35855 <http://tracker.ceph.com/issues/35855>`_, `pr#24210 <https://github.com/ceph/ceph/pull/24210>`_, Ruben Kerkhof) -* docs: backport edit on github changes (`pr#25362 <https://github.com/ceph/ceph/pull/25362>`_, Neha Ojha, Noah Watkins) -* doc: Typo error on cephfs/fuse/ (`issue#36180 <http://tracker.ceph.com/issues/36180>`_, `issue#36308 <http://tracker.ceph.com/issues/36308>`_, `pr#24420 <https://github.com/ceph/ceph/pull/24420>`_, Karun Josy) -* ec: src/common/interval_map.h: 161: FAILED assert(len > 0) (`issue#21931 <http://tracker.ceph.com/issues/21931>`_, `issue#22330 <http://tracker.ceph.com/issues/22330>`_, `pr#24581 <https://github.com/ceph/ceph/pull/24581>`_, Neha Ojha) -* fsck: cid is improperly matched to oid (`issue#36146 <http://tracker.ceph.com/issues/36146>`_, `issue#36551 <http://tracker.ceph.com/issues/36551>`_, `issue#36099 <http://tracker.ceph.com/issues/36099>`_, `issue#32731 <http://tracker.ceph.com/issues/32731>`_, `pr#24480 <https://github.com/ceph/ceph/pull/24480>`_, Kefu Chai, Sage Weil) -* kernel_untar_build.sh: bison: command not found (`issue#36121 <http://tracker.ceph.com/issues/36121>`_, `pr#24241 <https://github.com/ceph/ceph/pull/24241>`_, Neha Ojha) -* libcephfs: expose CEPH_SETATTR_MTIME_NOW and CEPH_SETATTR_ATIME_NOW (`issue#36205 <http://tracker.ceph.com/issues/36205>`_, `issue#35961 <http://tracker.ceph.com/issues/35961>`_, `pr#24464 <https://github.com/ceph/ceph/pull/24464>`_, Zhu Shangzhong) -* librados application's symbol could conflict with the libceph-common (`issue#26839 <http://tracker.ceph.com/issues/26839>`_, `issue#25154 <http://tracker.ceph.com/issues/25154>`_, `pr#24708 <https://github.com/ceph/ceph/pull/24708>`_, Kefu Chai) -* librbd: blacklisted client might not notice it lost the lock (`issue#34534 <http://tracker.ceph.com/issues/34534>`_, `pr#24401 <https://github.com/ceph/ceph/pull/24401>`_, Jason Dillaman) -* librbd: ensure exclusive lock acquired when removing sync point snaps… (`issue#35714 <http://tracker.ceph.com/issues/35714>`_, `issue#24898 <http://tracker.ceph.com/issues/24898>`_, `pr#24137 <https://github.com/ceph/ceph/pull/24137>`_, Mykola Golub) -* librbd: fixed assert when flattening clone with zero overlap (`issue#35957 <http://tracker.ceph.com/issues/35957>`_, `issue#35702 <http://tracker.ceph.com/issues/35702>`_, `pr#24356 <https://github.com/ceph/ceph/pull/24356>`_, Jason Dillaman) -* librbd: journaling unable request can not be sent to remote lock owner (`issue#26939 <http://tracker.ceph.com/issues/26939>`_, `issue#35712 <http://tracker.ceph.com/issues/35712>`_, `pr#24122 <https://github.com/ceph/ceph/pull/24122>`_, Mykola Golub) -* librbd: object map improperly flagged as invalidated (`issue#24516 <http://tracker.ceph.com/issues/24516>`_, `issue#36225 <http://tracker.ceph.com/issues/36225>`_, `pr#24413 <https://github.com/ceph/ceph/pull/24413>`_, Jason Dillaman) -* librgw: crashes in multisite configuration (`issue#36302 <http://tracker.ceph.com/issues/36302>`_, `issue#36415 <http://tracker.ceph.com/issues/36415>`_, `pr#24908 <https://github.com/ceph/ceph/pull/24908>`_, Casey Bodley) -* mds: allows client to create .. and . dirents (`issue#32104 <http://tracker.ceph.com/issues/32104>`_, `pr#24384 <https://github.com/ceph/ceph/pull/24384>`_, Venky Shankar) -* mds: curate priority of perf counters sent to mgr (`issue#35938 <http://tracker.ceph.com/issues/35938>`_, `issue#26991 <http://tracker.ceph.com/issues/26991>`_, `issue#32090 <http://tracker.ceph.com/issues/32090>`_, `issue#35837 <http://tracker.ceph.com/issues/35837>`_, `pr#24467 <https://github.com/ceph/ceph/pull/24467>`_, Patrick Donnelly, Venky Shankar) -* mds: evict cap revoke non-responding clients (`pr#24661 <https://github.com/ceph/ceph/pull/24661>`_, Venky Shankar) -* mimic:mds: fix mds damaged due to unexpected journal length (`issue#36199 <http://tracker.ceph.com/issues/36199>`_, `pr#24463 <https://github.com/ceph/ceph/pull/24463>`_, Zhi Zhang) -* mds: internal op missing events time 'throttled', 'all_read', 'dispatched' (`issue#36114 <http://tracker.ceph.com/issues/36114>`_, `issue#36195 <http://tracker.ceph.com/issues/36195>`_, `pr#24411 <https://github.com/ceph/ceph/pull/24411>`_, Yanhu Cao) -* mds: migrate strays part by part when shutdown mds (`issue#26926 <http://tracker.ceph.com/issues/26926>`_, `issue#32092 <http://tracker.ceph.com/issues/32092>`_, `pr#24435 <https://github.com/ceph/ceph/pull/24435>`_, "Yan, Zheng") -* mds: optimize the way how max export size is enforced (`issue#25131 <http://tracker.ceph.com/issues/25131>`_, `pr#23952 <https://github.com/ceph/ceph/pull/23952>`_, "Yan, Zheng") -* mds: print is_laggy message once (`issue#35250 <http://tracker.ceph.com/issues/35250>`_, `issue#35719 <http://tracker.ceph.com/issues/35719>`_, `pr#24161 <https://github.com/ceph/ceph/pull/24161>`_, Patrick Donnelly) -* mds: rctime may go back (`issue#35916 <http://tracker.ceph.com/issues/35916>`_, `issue#36136 <http://tracker.ceph.com/issues/36136>`_, `pr#24379 <https://github.com/ceph/ceph/pull/24379>`_, "Yan, Zheng") -* mds: rctime not set on system inode (root) at startup (`issue#36221 <http://tracker.ceph.com/issues/36221>`_, `issue#36461 <http://tracker.ceph.com/issues/36461>`_, `pr#25042 <https://github.com/ceph/ceph/pull/25042>`_, Patrick Donnelly) -* mds: reset heartbeat map at potential time-consuming places (`issue#26858 <http://tracker.ceph.com/issues/26858>`_, `pr#23506 <https://github.com/ceph/ceph/pull/23506>`_, Yan, Zheng, "Yan, Zheng") -* mds: src/mds/MDLog.cc: 281: FAILED ceph_assert(!capped) during max_mds thrashing (`issue#36350 <http://tracker.ceph.com/issues/36350>`_, `issue#37093 <http://tracker.ceph.com/issues/37093>`_, `pr#25095 <https://github.com/ceph/ceph/pull/25095>`_, "Yan, Zheng", Jonathan Brielmaier) -* mgr/DaemonServer: fix Session leak (`pr#24233 <https://github.com/ceph/ceph/pull/24233>`_, Sage Weil) -* mgr/dashboard: Add http support to dashboard (`issue#36069 <http://tracker.ceph.com/issues/36069>`_, `pr#24734 <https://github.com/ceph/ceph/pull/24734>`_, Boris Ranto, Wido den Hollander) -* mgr/dashboard: Add support for URI encode (`issue#24621 <http://tracker.ceph.com/issues/24621>`_, `issue#26856 <http://tracker.ceph.com/issues/26856>`_, `issue#24907 <http://tracker.ceph.com/issues/24907>`_, `pr#24488 <https://github.com/ceph/ceph/pull/24488>`_, Tiago Melo) -* mgr/dashboard: Progress bar does not stop in TableKeyValueComponent (`issue#35925 <http://tracker.ceph.com/issues/35925>`_, `pr#24258 <https://github.com/ceph/ceph/pull/24258>`_, Volker Theile) -* mgr/dashboard: Remove fieldsets when using CdTable (`issue#27851 <http://tracker.ceph.com/issues/27851>`_, `issue#26999 <http://tracker.ceph.com/issues/26999>`_, `pr#24478 <https://github.com/ceph/ceph/pull/24478>`_, Tiago Melo) -* mgr: hold lock while accessing the request list and submittin request (`pr#25113 <https://github.com/ceph/ceph/pull/25113>`_, Jerry Lee) -* mgr: [restful] deep_scrub is not a valid OSD command (`issue#36720 <http://tracker.ceph.com/issues/36720>`_, `issue#36749 <http://tracker.ceph.com/issues/36749>`_, `pr#25040 <https://github.com/ceph/ceph/pull/25040>`_, Boris Ranto) -* mon: mgr options not parse propertly (`issue#35076 <http://tracker.ceph.com/issues/35076>`_, `issue#35836 <http://tracker.ceph.com/issues/35836>`_, `pr#24176 <https://github.com/ceph/ceph/pull/24176>`_, Sage Weil) -* mon/OSDMonitor: invalidate max_failed_since on cancel_report (`issue#35930 <http://tracker.ceph.com/issues/35930>`_, `issue#35860 <http://tracker.ceph.com/issues/35860>`_, `pr#24281 <https://github.com/ceph/ceph/pull/24281>`_, xie xingguo) -* mon: test if gid exists in pending for prepare_beacon (`issue#35848 <http://tracker.ceph.com/issues/35848>`_, `pr#24272 <https://github.com/ceph/ceph/pull/24272>`_, Patrick Donnelly) -* msg/async: clean up local buffers on dispatch (`issue#36127 <http://tracker.ceph.com/issues/36127>`_, `issue#35987 <http://tracker.ceph.com/issues/35987>`_, `pr#24386 <https://github.com/ceph/ceph/pull/24386>`_, Greg Farnum) -* msg: ceph_abort() when there are enough accepter errors in msg server (`issue#36219 <http://tracker.ceph.com/issues/36219>`_, `pr#25045 <https://github.com/ceph/ceph/pull/25045>`_, penglaiyxy@gmail.com) -* msg: challenging authorizer messages appear at debug_ms=0 (`issue#35251 <http://tracker.ceph.com/issues/35251>`_, `issue#35717 <http://tracker.ceph.com/issues/35717>`_, `pr#24113 <https://github.com/ceph/ceph/pull/24113>`_, Patrick Donnelly) -* multisite: data full sync does not limit concurrent bucket sync (`issue#26897 <http://tracker.ceph.com/issues/26897>`_, `issue#36216 <http://tracker.ceph.com/issues/36216>`_, `pr#24536 <https://github.com/ceph/ceph/pull/24536>`_, Casey Bodley) -* multisite: data sync error repo processing does not back off on empty (`issue#35979 <http://tracker.ceph.com/issues/35979>`_, `issue#26938 <http://tracker.ceph.com/issues/26938>`_, `pr#24319 <https://github.com/ceph/ceph/pull/24319>`_, Casey Bodley) -* multisite: incremental data sync makes unnecessary call to RGWReadRemoteDataLogShardInfoCR (`issue#35977 <http://tracker.ceph.com/issues/35977>`_, `issue#26952 <http://tracker.ceph.com/issues/26952>`_, `pr#24710 <https://github.com/ceph/ceph/pull/24710>`_, Casey Bodley) -* multisite: intermittent test_bucket_index_log_trim failures (`issue#36201 <http://tracker.ceph.com/issues/36201>`_, `issue#36034 <http://tracker.ceph.com/issues/36034>`_, `pr#24400 <https://github.com/ceph/ceph/pull/24400>`_, Casey Bodley) -* multisite: invalid read in RGWCloneMetaLogCoroutine (`issue#36208 <http://tracker.ceph.com/issues/36208>`_, `issue#35851 <http://tracker.ceph.com/issues/35851>`_, `pr#24414 <https://github.com/ceph/ceph/pull/24414>`_, Casey Bodley) -* multisite: segfault on shutdown/realm reload (`issue#35857 <http://tracker.ceph.com/issues/35857>`_, `issue#35543 <http://tracker.ceph.com/issues/35543>`_, `pr#24235 <https://github.com/ceph/ceph/pull/24235>`_, Casey Bodley) -* os/bluestore: fix bloom filter num entry miscalculation in repairer (`issue#25001 <http://tracker.ceph.com/issues/25001>`_, `pr#24339 <https://github.com/ceph/ceph/pull/24339>`_, Igor Fedotov) -* os/bluestore: handle spurious read errors (`issue#22464 <http://tracker.ceph.com/issues/22464>`_, `pr#24647 <https://github.com/ceph/ceph/pull/24647>`_, Paul Emmerich) -* osd: add creating to pg_string_state (`issue#36174 <http://tracker.ceph.com/issues/36174>`_, `issue#36298 <http://tracker.ceph.com/issues/36298>`_, `pr#24601 <https://github.com/ceph/ceph/pull/24601>`_, Dan van der Ster) -* osd: backport recent upmap fixes (`pr#25419 <https://github.com/ceph/ceph/pull/25419>`_, ningtao, xie xingguo) -* osdc/Objecter: possible race condition with connection reset (`issue#36183 <http://tracker.ceph.com/issues/36183>`_, `issue#36296 <http://tracker.ceph.com/issues/36296>`_, `pr#24600 <https://github.com/ceph/ceph/pull/24600>`_, Jason Dillaman) -* osd: crash in OpTracker::unregister_inflight_op via OSD::get_health_metrics (`issue#24889 <http://tracker.ceph.com/issues/24889>`_, `pr#23026 <https://github.com/ceph/ceph/pull/23026>`_, Radoslaw Zarzynski) -* osdc: reduce ObjectCacher's memory fragments (`issue#36192 <http://tracker.ceph.com/issues/36192>`_, `issue#36643 <http://tracker.ceph.com/issues/36643>`_, `pr#24873 <https://github.com/ceph/ceph/pull/24873>`_, "Yan, Zheng") -* osd/ECBackend: don't get result code of subchunk-read overwritten (`issue#35959 <http://tracker.ceph.com/issues/35959>`_, `issue#21769 <http://tracker.ceph.com/issues/21769>`_, `pr#24298 <https://github.com/ceph/ceph/pull/24298>`_, songweibin) -* OSDMapMapping does not handle active.size() > pool size (`issue#26866 <http://tracker.ceph.com/issues/26866>`_, `issue#35936 <http://tracker.ceph.com/issues/35936>`_, `pr#24431 <https://github.com/ceph/ceph/pull/24431>`_, Sage Weil) -* osd/PG: avoid choose_acting picking want with > pool size items (`issue#35963 <http://tracker.ceph.com/issues/35963>`_, `issue#35924 <http://tracker.ceph.com/issues/35924>`_, `pr#24344 <https://github.com/ceph/ceph/pull/24344>`_, Sage Weil) -* osd/PrimaryLogPG: fix potential pg-log overtrimming (`pr#24309 <https://github.com/ceph/ceph/pull/24309>`_, xie xingguo) -* osd: race condition opening heartbeat connection (`issue#36637 <http://tracker.ceph.com/issues/36637>`_, `issue#36602 <http://tracker.ceph.com/issues/36602>`_, `pr#25026 <https://github.com/ceph/ceph/pull/25026>`_, Sage Weil) -* osd: RBD client IOPS pool stats are incorrect (2x higher; includes IO hints as an op) (`issue#24909 <http://tracker.ceph.com/issues/24909>`_, `issue#36557 <http://tracker.ceph.com/issues/36557>`_, `pr#25024 <https://github.com/ceph/ceph/pull/25024>`_, Jason Dillaman) -* osd: Remove old bft= which has been superceded by backfill (`issue#36292 <http://tracker.ceph.com/issues/36292>`_, `issue#36170 <http://tracker.ceph.com/issues/36170>`_, `pr#24573 <https://github.com/ceph/ceph/pull/24573>`_, David Zafman) -* qa: add test that builds example librados programs (`issue#36228 <http://tracker.ceph.com/issues/36228>`_, `issue#15100 <http://tracker.ceph.com/issues/15100>`_, `pr#24537 <https://github.com/ceph/ceph/pull/24537>`_, Nathan Cutler) -* qa/ceph-ansible: Specify stable-3.2 branch (`pr#25191 <https://github.com/ceph/ceph/pull/25191>`_, Brad Hubbard) -* qa: extend timeout for SessionMap flush (`issue#36156 <http://tracker.ceph.com/issues/36156>`_, `pr#24438 <https://github.com/ceph/ceph/pull/24438>`_, Patrick Donnelly) -* qa: fsstress workunit does not execute in parallel on same host without clobbering files (`issue#36278 <http://tracker.ceph.com/issues/36278>`_, `issue#24177 <http://tracker.ceph.com/issues/24177>`_, `issue#36323 <http://tracker.ceph.com/issues/36323>`_, `issue#36184 <http://tracker.ceph.com/issues/36184>`_, `issue#36165 <http://tracker.ceph.com/issues/36165>`_, `issue#36153 <http://tracker.ceph.com/issues/36153>`_, `pr#24408 <https://github.com/ceph/ceph/pull/24408>`_, Patrick Donnelly) -* qa: increase rm timeout for workunit cleanup (`issue#36501 <http://tracker.ceph.com/issues/36501>`_, `issue#36365 <http://tracker.ceph.com/issues/36365>`_, `pr#24684 <https://github.com/ceph/ceph/pull/24684>`_, Patrick Donnelly) -* qa: install dependencies for rbd_workunit_kernel_untar_build (`issue#35074 <http://tracker.ceph.com/issues/35074>`_, `issue#35077 <http://tracker.ceph.com/issues/35077>`_, `pr#24240 <https://github.com/ceph/ceph/pull/24240>`_, Ilya Dryomov) -* qa: remove knfs site from future releases (`issue#36075 <http://tracker.ceph.com/issues/36075>`_, `issue#36102 <http://tracker.ceph.com/issues/36102>`_, `pr#24269 <https://github.com/ceph/ceph/pull/24269>`_, Yuri Weinstein) -* qa/suites/rados/thrash-old-clients: exclude packages for hammer, jewel (`pr#25193 <https://github.com/ceph/ceph/pull/25193>`_, Neha Ojha) -* qa/suites/rgw/verify/tasks/cls_rgw: test cls_rgw (`issue#25024 <http://tracker.ceph.com/issues/25024>`_, `pr#23197 <https://github.com/ceph/ceph/pull/23197>`_, Casey Bodley, Sage Weil) -* qa/tasks/qemu: use unique clone directory to avoid race with workunit (`issue#36542 <http://tracker.ceph.com/issues/36542>`_, `issue#36569 <http://tracker.ceph.com/issues/36569>`_, `pr#24811 <https://github.com/ceph/ceph/pull/24811>`_, Jason Dillaman) -* qa: test_recovery_pool tries asok on wrong node (`issue#24928 <http://tracker.ceph.com/issues/24928>`_, `issue#24858 <http://tracker.ceph.com/issues/24858>`_, `pr#23087 <https://github.com/ceph/ceph/pull/23087>`_, Patrick Donnelly) -* qa: tolerate failed rank while waiting for state (`issue#36280 <http://tracker.ceph.com/issues/36280>`_, `issue#35828 <http://tracker.ceph.com/issues/35828>`_, `pr#24572 <https://github.com/ceph/ceph/pull/24572>`_, Patrick Donnelly) -* qa/workunits: replace 'realpath' with 'readlink -f' in fsstress.sh (`issue#36409 <http://tracker.ceph.com/issues/36409>`_, `issue#36430 <http://tracker.ceph.com/issues/36430>`_, `issue#35538 <http://tracker.ceph.com/issues/35538>`_, `pr#24622 <https://github.com/ceph/ceph/pull/24622>`_, Ilya Dryomov, Jason Dillaman) -* RADOS: probably missing clone location for async_recovery_targets (`issue#35964 <http://tracker.ceph.com/issues/35964>`_, `issue#35546 <http://tracker.ceph.com/issues/35546>`_, `pr#24345 <https://github.com/ceph/ceph/pull/24345>`_, xie xingguo) -* mimic:rbd: fix error import when the input is a pipe (`issue#35705 <http://tracker.ceph.com/issues/35705>`_, `issue#34536 <http://tracker.ceph.com/issues/34536>`_, `pr#24002 <https://github.com/ceph/ceph/pull/24002>`_, songweibin) -* [rbd-mirror] failed assertion when updating mirror status (`issue#36084 <http://tracker.ceph.com/issues/36084>`_, `issue#36120 <http://tracker.ceph.com/issues/36120>`_, `pr#24321 <https://github.com/ceph/ceph/pull/24321>`_, Jason Dillaman) -* rbd: [rbd-mirror] forced promotion after killing remote cluster results in stuck state (`issue#36659 <http://tracker.ceph.com/issues/36659>`_, `issue#36693 <http://tracker.ceph.com/issues/36693>`_, `pr#24952 <https://github.com/ceph/ceph/pull/24952>`_, Jonathan Brielmaier, Jason Dillaman) -* rbd: [rbd-mirror] periodic mirror status timer might fail to be scheduled (`issue#36500 <http://tracker.ceph.com/issues/36500>`_, `issue#36555 <http://tracker.ceph.com/issues/36555>`_, `pr#24916 <https://github.com/ceph/ceph/pull/24916>`_, Jason Dillaman) -* rbd: rbd-nbd: do not ceph_abort() after print the usages (`issue#36660 <http://tracker.ceph.com/issues/36660>`_, `issue#36713 <http://tracker.ceph.com/issues/36713>`_, `pr#24988 <https://github.com/ceph/ceph/pull/24988>`_, Shiyang Ruan) -* rbd: TokenBucketThrottle: use reference to m_blockers.front() and then update it (`issue#36529 <http://tracker.ceph.com/issues/36529>`_, `issue#36475 <http://tracker.ceph.com/issues/36475>`_, `pr#24915 <https://github.com/ceph/ceph/pull/24915>`_, Dongsheng Yang) -* Revert "mimic: cephfs-journal-tool: enable purge_queue journal's event commands" (`issue#36346 <http://tracker.ceph.com/issues/36346>`_, `issue#24604 <http://tracker.ceph.com/issues/24604>`_, `pr#24485 <https://github.com/ceph/ceph/pull/24485>`_, Xuehan Xu, "Yan, Zheng") -* rgw: abort_bucket_multiparts() ignores individual NoSuchUpload errors (`issue#36129 <http://tracker.ceph.com/issues/36129>`_, `issue#35986 <http://tracker.ceph.com/issues/35986>`_, `pr#24388 <https://github.com/ceph/ceph/pull/24388>`_, Casey Bodley) -* rgw-admin: reshard add can add a non existant bucket (`issue#36449 <http://tracker.ceph.com/issues/36449>`_, `issue#36756 <http://tracker.ceph.com/issues/36756>`_, `pr#25087 <https://github.com/ceph/ceph/pull/25087>`_, Jonathan Brielmaier, Abhishek Lekshmanan) -* rgw: async sync_object and remove_object does not access coroutine me… (`issue#36138 <http://tracker.ceph.com/issues/36138>`_, `issue#35905 <http://tracker.ceph.com/issues/35905>`_, `pr#24417 <https://github.com/ceph/ceph/pull/24417>`_, Tianshan Qu) -* rgw/beast: drop privileges after binding ports (`issue#36041 <http://tracker.ceph.com/issues/36041>`_, `pr#24436 <https://github.com/ceph/ceph/pull/24436>`_, Paul Emmerich) -* rgw: beast frontend fails to parse ipv6 endpoints (`issue#36662 <http://tracker.ceph.com/issues/36662>`_, `issue#36734 <http://tracker.ceph.com/issues/36734>`_, `pr#25079 <https://github.com/ceph/ceph/pull/25079>`_, Jonathan Brielmaier, Casey Bodley) -* rgw: cls_user_remove_bucket does not write the modified cls_user_stats (`issue#36496 <http://tracker.ceph.com/issues/36496>`_, `issue#36533 <http://tracker.ceph.com/issues/36533>`_, `pr#24910 <https://github.com/ceph/ceph/pull/24910>`_, Casey Bodley) -* rgw: default quota not set in radosgw for Openstack users (`issue#24595 <http://tracker.ceph.com/issues/24595>`_, `issue#36223 <http://tracker.ceph.com/issues/36223>`_, `pr#24907 <https://github.com/ceph/ceph/pull/24907>`_, Casey Bodley) -* mimic:rgw: fix chunked-encoding for chunks >1MiB (`issue#36125 <http://tracker.ceph.com/issues/36125>`_, `issue#35990 <http://tracker.ceph.com/issues/35990>`_, `pr#24363 <https://github.com/ceph/ceph/pull/24363>`_, Robin H. Johnson) -* rgw: fix deadlock on RGWIndexCompletionManager::stop (`issue#26949 <http://tracker.ceph.com/issues/26949>`_, `issue#35710 <http://tracker.ceph.com/issues/35710>`_, `pr#24101 <https://github.com/ceph/ceph/pull/24101>`_, Yao Zongyou) -* mimic:rgw: fix leak of curl handle on shutdown (`issue#35715 <http://tracker.ceph.com/issues/35715>`_, `issue#36213 <http://tracker.ceph.com/issues/36213>`_, `pr#24518 <https://github.com/ceph/ceph/pull/24518>`_, Casey Bodley) -* mimic:rgw: list bucket can not show the object uploaded by RGWPostObj when enable bucket versioning (`pr#24571 <https://github.com/ceph/ceph/pull/24571>`_, yuliyang) -* rgw: radosgw-admin user stats are incorrect when dynamic re-sharding is enabled (`issue#36535 <http://tracker.ceph.com/issues/36535>`_, `pr#24911 <https://github.com/ceph/ceph/pull/24911>`_, Casey Bodley) -* rgw: raise debug level on redundant data sync error messages (`issue#35830 <http://tracker.ceph.com/issues/35830>`_, `issue#36140 <http://tracker.ceph.com/issues/36140>`_, `pr#24418 <https://github.com/ceph/ceph/pull/24418>`_, Casey Bodley) -* rgw: raise default rgw_curl_low_speed_time to 300 seconds (`issue#35708 <http://tracker.ceph.com/issues/35708>`_, `issue#27989 <http://tracker.ceph.com/issues/27989>`_, `pr#24071 <https://github.com/ceph/ceph/pull/24071>`_, Casey Bodley) -* rgw: renew resharding locks to prevent expiration (`issue#36687 <http://tracker.ceph.com/issues/36687>`_, `issue#27219 <http://tracker.ceph.com/issues/27219>`_, `issue#34307 <http://tracker.ceph.com/issues/34307>`_, `pr#24899 <https://github.com/ceph/ceph/pull/24899>`_, Orit Wasserman, J. Eric Ivancich) -* rgw: resharding produces invalid values of bucket stats (`issue#36290 <http://tracker.ceph.com/issues/36290>`_, `issue#36381 <http://tracker.ceph.com/issues/36381>`_, `pr#24526 <https://github.com/ceph/ceph/pull/24526>`_, Abhishek Lekshmanan) -* mimic:rgw: return x-amz-version-id: null when delete obj in versioning (`issue#35814 <http://tracker.ceph.com/issues/35814>`_, `pr#24189 <https://github.com/ceph/ceph/pull/24189>`_, yuliyang) -* rgw: RGWAsyncGetBucketInstanceInfo does not access coroutine memory (`issue#36211 <http://tracker.ceph.com/issues/36211>`_, `issue#35812 <http://tracker.ceph.com/issues/35812>`_, `pr#24516 <https://github.com/ceph/ceph/pull/24516>`_, Casey Bodley) -* rgw: set default objecter_inflight_ops = 24576 (`issue#36571 <http://tracker.ceph.com/issues/36571>`_, `issue#25109 <http://tracker.ceph.com/issues/25109>`_, `pr#24860 <https://github.com/ceph/ceph/pull/24860>`_, Jonathan Brielmaier, Matt Benjamin) -* rgw: support server-side encryption when SSL is terminated in a proxy (`issue#36645 <http://tracker.ceph.com/issues/36645>`_, `issue#27221 <http://tracker.ceph.com/issues/27221>`_, `pr#24931 <https://github.com/ceph/ceph/pull/24931>`_, Jonathan Brielmaier, Casey Bodley) -* rgw: use-after-free from RGWRadosGetOmapKeysCR::~RGWRadosGetOmapKeysCR (`issue#21154 <http://tracker.ceph.com/issues/21154>`_, `issue#36537 <http://tracker.ceph.com/issues/36537>`_, `issue#36539 <http://tracker.ceph.com/issues/36539>`_, `pr#24912 <https://github.com/ceph/ceph/pull/24912>`_, Casey Bodley, Sage Weil) -* rpm: use updated gperftools (`issue#36508 <http://tracker.ceph.com/issues/36508>`_, `issue#35969 <http://tracker.ceph.com/issues/35969>`_, `pr#24260 <https://github.com/ceph/ceph/pull/24260>`_, Brad Hubbard, Kefu Chai) -* segv in BlueStore::OldExtent::create (`issue#36592 <http://tracker.ceph.com/issues/36592>`_, `issue#36526 <http://tracker.ceph.com/issues/36526>`_, `pr#24745 <https://github.com/ceph/ceph/pull/24745>`_, Sage Weil) -* test/librbd: not valid to have different parents between image snapshots (`issue#36117 <http://tracker.ceph.com/issues/36117>`_, `pr#24244 <https://github.com/ceph/ceph/pull/24244>`_, Jason Dillaman) -* [test] periodic seg faults within unittest_librbd (`issue#36220 <http://tracker.ceph.com/issues/36220>`_, `issue#36238 <http://tracker.ceph.com/issues/36238>`_, `pr#24711 <https://github.com/ceph/ceph/pull/24711>`_, Jason Dillaman) -* test/rbd_mirror: race in WaitingOnLeaderReleaseLeader (`issue#36236 <http://tracker.ceph.com/issues/36236>`_, `issue#36276 <http://tracker.ceph.com/issues/36276>`_, `pr#24551 <https://github.com/ceph/ceph/pull/24551>`_, Mykola Golub) -* tests: ceph-admin-commands.sh workunit does not log what it's doing (`issue#37153 <http://tracker.ceph.com/issues/37153>`_, `issue#37089 <http://tracker.ceph.com/issues/37089>`_, `pr#25085 <https://github.com/ceph/ceph/pull/25085>`_, Nathan Cutler) -* tests: librados api aio tests race condition (`issue#24587 <http://tracker.ceph.com/issues/24587>`_, `issue#36647 <http://tracker.ceph.com/issues/36647>`_, `pr#25027 <https://github.com/ceph/ceph/pull/25027>`_, Josh Durgin) -* tests: make readable.sh fail if it doesn't run anything (`pr#25050 <https://github.com/ceph/ceph/pull/25050>`_, Greg Farnum) -* tests: rbd: move OpenStack devstack test to rocky release (`issue#36410 <http://tracker.ceph.com/issues/36410>`_, `issue#36428 <http://tracker.ceph.com/issues/36428>`_, `pr#24913 <https://github.com/ceph/ceph/pull/24913>`_, Jason Dillaman) -* tests: unittest_rbd_mirror: TestMockImageMap.AddInstancePingPongImageTest: Value of: it != peer_ack_ctxs->end() (`issue#36683 <http://tracker.ceph.com/issues/36683>`_, `issue#36689 <http://tracker.ceph.com/issues/36689>`_, `pr#24946 <https://github.com/ceph/ceph/pull/24946>`_, Mykola Golub, Jonathan Brielmaier) -* tests: use timeout for fs asok operations (`issue#36335 <http://tracker.ceph.com/issues/36335>`_, `issue#36503 <http://tracker.ceph.com/issues/36503>`_, `pr#25332 <https://github.com/ceph/ceph/pull/25332>`_, Patrick Donnelly) -* tests: /usr/bin/ld: cannot find -lradospp in rados mimic (`issue#37396 <http://tracker.ceph.com/issues/37396>`_, `pr#25285 <https://github.com/ceph/ceph/pull/25285>`_, Nathan Cutler) -* test: Use a grep pattern that works across releases (`issue#35845 <http://tracker.ceph.com/issues/35845>`_, `issue#35909 <http://tracker.ceph.com/issues/35909>`_, `pr#24017 <https://github.com/ceph/ceph/pull/24017>`_, David Zafman) -* tools: ceph-objectstore-tool: Allow target level as first positional … (`issue#35846 <http://tracker.ceph.com/issues/35846>`_, `issue#35992 <http://tracker.ceph.com/issues/35992>`_, `pr#24116 <https://github.com/ceph/ceph/pull/24116>`_, David Zafman) - -v13.2.2 Mimic -============= - -This is the second bugfix release of the Mimic v13.2.x long term stable release -series. This release contains many fixes across all components of Ceph. -We recommend that all users upgrade. - -* This version contains an upgrade bug, http://tracker.ceph.com/issues/36686, - due to which upgrading during recovery/backfill can cause OSDs to fail. This - bug can be worked around, either by restarting all the OSDs after the upgrade, - or by upgrading when all PGs are in "active+clean" state. - - If you have successfully upgraded to 13.2.2, this issue should not impact - you. Going forward, we are working on a clean upgrade path for this feature. - -Changelog ---------- - -* build/ops: Boost system library is no longer required to compile and link example librados program (`issue#25073 <http://tracker.ceph.com/issues/25073>`_, `issue#25054 <http://tracker.ceph.com/issues/25054>`_, `pr#23201 <https://github.com/ceph/ceph/pull/23201>`_, Nathan Cutler) -* build/ops: debian/rules: fix ceph-mgr .pyc files left behind (`issue#27059 <http://tracker.ceph.com/issues/27059>`_, `issue#26883 <http://tracker.ceph.com/issues/26883>`_, `pr#23831 <https://github.com/ceph/ceph/pull/23831>`_, Dan Mick) -* build/ops: mimic 13.2.0 doesn't build in Fedora rawhide (`issue#24449 <http://tracker.ceph.com/issues/24449>`_, `issue#24905 <http://tracker.ceph.com/issues/24905>`_, `pr#23885 <https://github.com/ceph/ceph/pull/23885>`_, Kefu Chai) -* ceph-disk: compatibility fix for python 3 (`pr#24008 <https://github.com/ceph/ceph/pull/24008>`_, Tim Serong) -* ceph-disk: return a list instead of an iterator (`pr#23392 <https://github.com/ceph/ceph/pull/23392>`_, Alexander Graul) -* cephfs-journal-tool: enable purge_queue journal's event commands (`issue#24604 <http://tracker.ceph.com/issues/24604>`_, `issue#26989 <http://tracker.ceph.com/issues/26989>`_, `pr#23818 <https://github.com/ceph/ceph/pull/23818>`_, Xuehan Xu) -* ceph tell osd.x bench writes resulting JSON to stderr instead of stdout (`issue#35942 <http://tracker.ceph.com/issues/35942>`_, `issue#24022 <http://tracker.ceph.com/issues/24022>`_, `pr#24041 <https://github.com/ceph/ceph/pull/24041>`_, Коренберг Маркr, John Spray, Kefu Chai) -* ceph-volume add a __release__ string, to help version-conditional calls (`issue#25169 <http://tracker.ceph.com/issues/25169>`_, `pr#23333 <https://github.com/ceph/ceph/pull/23333>`_, Alfredo Deza) -* ceph-volume: adds test for `ceph-volume lvm list /dev/sda` (`issue#24784 <http://tracker.ceph.com/issues/24784>`_, `issue#24957 <http://tracker.ceph.com/issues/24957>`_, `pr#23349 <https://github.com/ceph/ceph/pull/23349>`_, Andrew Schoen) -* ceph-volume: an OSD ID must exist and be destroyed before reuse (`pr#23101 <https://github.com/ceph/ceph/pull/23101>`_, Andrew Schoen, Ron Allred) -* ceph-volume: batch: allow journal+block.db sizing on the CLI (`issue#36088 <http://tracker.ceph.com/issues/36088>`_, `pr#24208 <https://github.com/ceph/ceph/pull/24208>`_, Alfredo Deza) -* ceph-volume batch: allow --osds-per-device, default it to 1 (`issue#35913 <http://tracker.ceph.com/issues/35913>`_, `pr#24079 <https://github.com/ceph/ceph/pull/24079>`_, Alfredo Deza) -* ceph-volume batch carve out lvs for bluestore (`issue#34535 <http://tracker.ceph.com/issues/34535>`_, `pr#24074 <https://github.com/ceph/ceph/pull/24074>`_, Alfredo Deza) -* ceph-volume batch command (`pr#23777 <https://github.com/ceph/ceph/pull/23777>`_, Alfredo Deza) -* ceph-volume: batch tests for mixed-type of devices (`issue#35535 <http://tracker.ceph.com/issues/35535>`_, `issue#27210 <http://tracker.ceph.com/issues/27210>`_, `pr#23966 <https://github.com/ceph/ceph/pull/23966>`_, Alfredo Deza) -* ceph_volume_client: allow atomic update of RADOS objects (`issue#24173 <http://tracker.ceph.com/issues/24173>`_, `issue#24863 <http://tracker.ceph.com/issues/24863>`_, `pr#23878 <https://github.com/ceph/ceph/pull/23878>`_, Rishabh Dave) -* CephVolumeClient: delay required after adding data pool to MDSMap (`issue#25206 <http://tracker.ceph.com/issues/25206>`_, `pr#23725 <https://github.com/ceph/ceph/pull/23725>`_, Patrick Donnelly) -* ceph-volume: do not use stdin in luminous (`issue#25173 <http://tracker.ceph.com/issues/25173>`_, `pr#23368 <https://github.com/ceph/ceph/pull/23368>`_, Alfredo Deza) -* ceph-volume: earlier detection for --journal and --filestore flag requirements (`issue#24794 <http://tracker.ceph.com/issues/24794>`_, `pr#24205 <https://github.com/ceph/ceph/pull/24205>`_, Alfredo Deza) -* ceph-volume enable the ceph-osd during lvm activation (`issue#24152 <http://tracker.ceph.com/issues/24152>`_, `pr#23393 <https://github.com/ceph/ceph/pull/23393>`_, Dan van der Ster, Alfredo Deza) -* ceph-volume expand auto engine for multiple devices on filestore (`pr#23807 <https://github.com/ceph/ceph/pull/23807>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: expand auto engine for single type devices on filestore (`pr#23786 <https://github.com/ceph/ceph/pull/23786>`_, Alfredo Deza) -* ceph-volume fix zap not working with LVs (`issue#35970 <http://tracker.ceph.com/issues/35970>`_, `pr#24081 <https://github.com/ceph/ceph/pull/24081>`_, Alfredo Deza) -* ceph-volume lvm.activate conditional mon-config on prime-osd-dir (`issue#25216 <http://tracker.ceph.com/issues/25216>`_, `pr#23400 <https://github.com/ceph/ceph/pull/23400>`_, Alfredo Deza) -* ceph-volume: `lvm batch` allow extra flags (like dmcrypt) for bluestore (`pr#23780 <https://github.com/ceph/ceph/pull/23780>`_, Alfredo Deza) -* ceph-volume: `lvm batch` documentation and man page updates (`pr#23756 <https://github.com/ceph/ceph/pull/23756>`_, Alfredo Deza) -* ceph-volume lvm.batch remove non-existent sys_api property (`issue#34310 <http://tracker.ceph.com/issues/34310>`_, `pr#23810 <https://github.com/ceph/ceph/pull/23810>`_, Alfredo Deza) -* ceph-volume lvm.listing only include devices if they exist (`issue#24952 <http://tracker.ceph.com/issues/24952>`_, `pr#23149 <https://github.com/ceph/ceph/pull/23149>`_, Alfredo Deza) -* ceph-volume: process.call with stdin in Python 3 fix (`issue#24993 <http://tracker.ceph.com/issues/24993>`_, `pr#23239 <https://github.com/ceph/ceph/pull/23239>`_, Alfredo Deza) -* ceph-volume: PVolumes.get() should return one PV when using name or uuid (`issue#24784 <http://tracker.ceph.com/issues/24784>`_, `pr#23327 <https://github.com/ceph/ceph/pull/23327>`_, Andrew Schoen) -* ceph-volume: refuse to zap mapper devices (`issue#24504 <http://tracker.ceph.com/issues/24504>`_, `pr#22965 <https://github.com/ceph/ceph/pull/22965>`_, Andrew Schoen) -* ceph-volume: Restore SELinux context (`pr#23295 <https://github.com/ceph/ceph/pull/23295>`_, Boris Ranto) -* ceph-volume: run tests without waiting on ceph repos (`pr#23806 <https://github.com/ceph/ceph/pull/23806>`_, Andrew Schoen) -* ceph-volume tests/functional add mgrs daemons to lvm tests (`pr#23784 <https://github.com/ceph/ceph/pull/23784>`_, Alfredo Deza) -* ceph-volume: tests.functional inherit SSH_ARGS from ansible (`pr#23812 <https://github.com/ceph/ceph/pull/23812>`_, Alfredo Deza) -* ceph-volume: update batch documentation to explain filestore strategies (`issue#34309 <http://tracker.ceph.com/issues/34309>`_, `pr#23826 <https://github.com/ceph/ceph/pull/23826>`_, Alfredo Deza) -* ceph-volume: update version of ansible to 2.6.x for simple tests (`pr#23269 <https://github.com/ceph/ceph/pull/23269>`_, Andrew Schoen) -* client: add inst to asok status output (`issue#24724 <http://tracker.ceph.com/issues/24724>`_, `issue#24931 <http://tracker.ceph.com/issues/24931>`_, `pr#23109 <https://github.com/ceph/ceph/pull/23109>`_, Patrick Donnelly) -* client: check for unmounted condition before printing debug output (`issue#25213 <http://tracker.ceph.com/issues/25213>`_, `issue#26914 <http://tracker.ceph.com/issues/26914>`_, `pr#23603 <https://github.com/ceph/ceph/pull/23603>`_, Jeff Layton) -* client: requests that do name lookup may be sent to wrong mds (`issue#26984 <http://tracker.ceph.com/issues/26984>`_, `issue#26860 <http://tracker.ceph.com/issues/26860>`_, `pr#23700 <https://github.com/ceph/ceph/pull/23700>`_, "Yan, Zheng") -* cls/rgw: add rgw_usage_log_entry type to ceph-dencoder (`issue#35070 <http://tracker.ceph.com/issues/35070>`_, `pr#23857 <https://github.com/ceph/ceph/pull/23857>`_, Vaibhav Bhembre) -* common: check completion condition before waiting (`issue#25007 <http://tracker.ceph.com/issues/25007>`_, `issue#25222 <http://tracker.ceph.com/issues/25222>`_, `pr#23435 <https://github.com/ceph/ceph/pull/23435>`_, Patrick Donnelly) -* core: deep scrub cannot find the bitrot if the object is cached (`issue#35068 <http://tracker.ceph.com/issues/35068>`_, `pr#23873 <https://github.com/ceph/ceph/pull/23873>`_, Adam C. Emerson, Xiaoguang Wang) -* core: Fix 25085 and 24949 (`pr#23272 <https://github.com/ceph/ceph/pull/23272>`_, David Zafman) -* core: force-create-pg broken (`issue#34532 <http://tracker.ceph.com/issues/34532>`_, `issue#26940 <http://tracker.ceph.com/issues/26940>`_, `pr#23872 <https://github.com/ceph/ceph/pull/23872>`_, Sage Weil) -* core: Limit pg log length during recovery/backfill so that we don't run out of memory (`issue#21416 <http://tracker.ceph.com/issues/21416>`_, `pr#23403 <https://github.com/ceph/ceph/pull/23403>`_, Neha Ojha) -* doc: broken bash example in bluestore migration (`issue#35078 <http://tracker.ceph.com/issues/35078>`_, `pr#23854 <https://github.com/ceph/ceph/pull/23854>`_, Alfredo Deza) -* doc: Fix broken urls (`issue#25185 <http://tracker.ceph.com/issues/25185>`_, `issue#26916 <http://tracker.ceph.com/issues/26916>`_, `pr#23607 <https://github.com/ceph/ceph/pull/23607>`_, Jos Collin) -* doc: http://docs.ceph.com/docs/mimic/rados/operations/pg-states/ (`issue#25055 <http://tracker.ceph.com/issues/25055>`_, `pr#23163 <https://github.com/ceph/ceph/pull/23163>`_, Jan Fajerski, Nathan Cutler) -* docs: radosgw: ldap-auth: fixed option name 'rgw_ldap_searchfilter' (`issue#32129 <http://tracker.ceph.com/issues/32129>`_, `pr#23956 <https://github.com/ceph/ceph/pull/23956>`_, Konstantin Shalygin) -* filestore: add pgid in filestore pg dir split log message (`issue#25225 <http://tracker.ceph.com/issues/25225>`_, `pr#23453 <https://github.com/ceph/ceph/pull/23453>`_, Vikhyat Umrao) -* kv: MergeOperator name() returns string, and caller calls c_str() on the temporary (`issue#26907 <http://tracker.ceph.com/issues/26907>`_, `issue#26875 <http://tracker.ceph.com/issues/26875>`_, `pr#23865 <https://github.com/ceph/ceph/pull/23865>`_, Sage Weil) -* libradosstriper conditional compile (`issue#27213 <http://tracker.ceph.com/issues/27213>`_, `pr#23869 <https://github.com/ceph/ceph/pull/23869>`_, Kefu Chai, Jesse Williamson) -* librbd: deep-copy should not write to objects that cannot exist (`issue#25000 <http://tracker.ceph.com/issues/25000>`_, `issue#25083 <http://tracker.ceph.com/issues/25083>`_, `pr#23358 <https://github.com/ceph/ceph/pull/23358>`_, Jason Dillaman) -* librbd: validate data pool for self-managed snapshot support (`issue#24945 <http://tracker.ceph.com/issues/24945>`_, `pr#23560 <https://github.com/ceph/ceph/pull/23560>`_, Mykola Golub) -* link against libstdc++ statically (`issue#26880 <http://tracker.ceph.com/issues/26880>`_, `issue#25209 <http://tracker.ceph.com/issues/25209>`_, `pr#23490 <https://github.com/ceph/ceph/pull/23490>`_, Kefu Chai) -* mds: avoid using g_conf->get_val<...>(...) in hot path (`issue#24820 <http://tracker.ceph.com/issues/24820>`_, `pr#23407 <https://github.com/ceph/ceph/pull/23407>`_, "Yan, Zheng") -* mds: calculate load by checking self CPU usage (`issue#26834 <http://tracker.ceph.com/issues/26834>`_, `issue#26888 <http://tracker.ceph.com/issues/26888>`_, `pr#23503 <https://github.com/ceph/ceph/pull/23503>`_, "Yan, Zheng") -* mds: crash when dumping ops in flight (`issue#26894 <http://tracker.ceph.com/issues/26894>`_, `issue#26982 <http://tracker.ceph.com/issues/26982>`_, `pr#23672 <https://github.com/ceph/ceph/pull/23672>`_, "Yan, Zheng") -* mds: dump recent events on respawn (`issue#25040 <http://tracker.ceph.com/issues/25040>`_, `pr#23275 <https://github.com/ceph/ceph/pull/23275>`_, Patrick Donnelly) -* mds: explain delayed client_request due to subtree migration (`issue#26988 <http://tracker.ceph.com/issues/26988>`_, `issue#24840 <http://tracker.ceph.com/issues/24840>`_, `pr#23792 <https://github.com/ceph/ceph/pull/23792>`_, Yan, Zheng, "Yan, Zheng") -* mds: handle discontinuous mdsmap (`issue#24856 <http://tracker.ceph.com/issues/24856>`_, `pr#23180 <https://github.com/ceph/ceph/pull/23180>`_, "Yan, Zheng") -* mds: health warning for slow metadata IO (`issue#24879 <http://tracker.ceph.com/issues/24879>`_, `issue#25045 <http://tracker.ceph.com/issues/25045>`_, `pr#23343 <https://github.com/ceph/ceph/pull/23343>`_, "Yan, Zheng") -* mds: increase debug level for dropped client cap msg (`issue#25042 <http://tracker.ceph.com/issues/25042>`_, `pr#23309 <https://github.com/ceph/ceph/pull/23309>`_, Patrick Donnelly) -* mds: introduce cephfs' own feature bits (`issue#14456 <http://tracker.ceph.com/issues/14456>`_, `issue#24914 <http://tracker.ceph.com/issues/24914>`_, `pr#23105 <https://github.com/ceph/ceph/pull/23105>`_, Yan, Zheng, "Yan, Zheng", Patrick Donnelly) -* mds: mark beacons as high priority (`issue#26905 <http://tracker.ceph.com/issues/26905>`_, `issue#26899 <http://tracker.ceph.com/issues/26899>`_, `pr#23565 <https://github.com/ceph/ceph/pull/23565>`_, Patrick Donnelly) -* mds: MDBalancer::try_rebalance() may stop prematurely (`issue#32086 <http://tracker.ceph.com/issues/32086>`_, `issue#26973 <http://tracker.ceph.com/issues/26973>`_, `pr#23883 <https://github.com/ceph/ceph/pull/23883>`_, "Yan, Zheng") -* MDSMonitor: note ignored beacons/map changes at higher debug level (`issue#26898 <http://tracker.ceph.com/issues/26898>`_, `issue#26929 <http://tracker.ceph.com/issues/26929>`_, `pr#23704 <https://github.com/ceph/ceph/pull/23704>`_, Patrick Donnelly) -* mds,osd,mon,msg: use intrusive_ptr for holding Connection::priv (`issue#20924 <http://tracker.ceph.com/issues/20924>`_, `pr#22339 <https://github.com/ceph/ceph/pull/22339>`_, "Yan, Zheng", Kefu Chai) -* mds: print mdsmap processed at low debug level (`issue#25035 <http://tracker.ceph.com/issues/25035>`_, `pr#23196 <https://github.com/ceph/ceph/pull/23196>`_, Patrick Donnelly) -* mds: scrub doesn't always return JSON results (`issue#23958 <http://tracker.ceph.com/issues/23958>`_, `issue#25037 <http://tracker.ceph.com/issues/25037>`_, `pr#23225 <https://github.com/ceph/ceph/pull/23225>`_, Venky Shankar) -* mds: use fast dispatch to handle MDSBeacon (`issue#23519 <http://tracker.ceph.com/issues/23519>`_, `issue#26923 <http://tracker.ceph.com/issues/26923>`_, `pr#23703 <https://github.com/ceph/ceph/pull/23703>`_, "Yan, Zheng") -* mgr balancer does not save optimized plan but latest (`issue#32082 <http://tracker.ceph.com/issues/32082>`_, `issue#27000 <http://tracker.ceph.com/issues/27000>`_, `pr#23782 <https://github.com/ceph/ceph/pull/23782>`_, Stefan Priebe) -* mgr: "balancer execute" only requires read permissions (`issue#26912 <http://tracker.ceph.com/issues/26912>`_, `issue#25345 <http://tracker.ceph.com/issues/25345>`_, `pr#23583 <https://github.com/ceph/ceph/pull/23583>`_, John Spray) -* mgrc: enable disabling stats via mgr_stats_threshold (`issue#25197 <http://tracker.ceph.com/issues/25197>`_, `issue#26837 <http://tracker.ceph.com/issues/26837>`_, `pr#23463 <https://github.com/ceph/ceph/pull/23463>`_, John Spray) -* mgr/dashboard: Display RGW user/bucket quota max size in human readable form (`issue#35706 <http://tracker.ceph.com/issues/35706>`_, `pr#24047 <https://github.com/ceph/ceph/pull/24047>`_, Volker Theile) -* mgr/dashboard: Escape regex pattern in DeletionModalComponent (`issue#24902 <http://tracker.ceph.com/issues/24902>`_, `issue#26920 <http://tracker.ceph.com/issues/26920>`_, `pr#23669 <https://github.com/ceph/ceph/pull/23669>`_, Tiago Melo) -* mgr/dashboard: Prevent RGW API user deletion (`pr#22670 <https://github.com/ceph/ceph/pull/22670>`_, Volker Theile) -* mgr/dashboard: RestClient can't handle ProtocolError exceptions (`pr#23875 <https://github.com/ceph/ceph/pull/23875>`_, Volker Theile) -* mgr/dashboard: RGW is not working if an URL prefix is defined (`pr#23203 <https://github.com/ceph/ceph/pull/23203>`_, Volker Theile) -* mgr/dashboard: URL prefix is not working (`issue#25120 <http://tracker.ceph.com/issues/25120>`_, `pr#23874 <https://github.com/ceph/ceph/pull/23874>`_, Ricardo Marques) -* mgr: Ignore daemon if no metadata was returned (`pr#23356 <https://github.com/ceph/ceph/pull/23356>`_, Wido den Hollander) -* mgr/MgrClient: Protect daemon_health_metrics (`issue#23352 <http://tracker.ceph.com/issues/23352>`_, `pr#23458 <https://github.com/ceph/ceph/pull/23458>`_, Kjetil Joergensen, Brad Hubbard) -* mgr: Sync the prometheus module (`pr#23215 <https://github.com/ceph/ceph/pull/23215>`_, Boris Ranto) -* mon: add purge-new (`pr#23259 <https://github.com/ceph/ceph/pull/23259>`_, Sage Weil) -* mon: Automatically set expected_num_objects for new pools with >=100 PGs per OSD (`issue#24687 <http://tracker.ceph.com/issues/24687>`_, `issue#25144 <http://tracker.ceph.com/issues/25144>`_, `pr#23860 <https://github.com/ceph/ceph/pull/23860>`_, Douglas Fuller) -* multisite: intermittent failures in test_bucket_sync_disable_enable (`issue#26895 <http://tracker.ceph.com/issues/26895>`_, `issue#26980 <http://tracker.ceph.com/issues/26980>`_, `pr#23856 <https://github.com/ceph/ceph/pull/23856>`_, Casey Bodley) -* multisite: object metadata operations are skipped by sync (`issue#24367 <http://tracker.ceph.com/issues/24367>`_, `issue#24986 <http://tracker.ceph.com/issues/24986>`_, `pr#23172 <https://github.com/ceph/ceph/pull/23172>`_, Casey Bodley) -* object errors found in be_select_auth_object() aren't logged the same (`issue#32108 <http://tracker.ceph.com/issues/32108>`_, `issue#25108 <http://tracker.ceph.com/issues/25108>`_, `pr#23870 <https://github.com/ceph/ceph/pull/23870>`_, David Zafman) -* os/bluestore: bluestore_buffer_hit_bytes perf counter doesn't reset (`pr#23772 <https://github.com/ceph/ceph/pull/23772>`_, Igor Fedotov) -* os/bluestore/BlueStore.cc: 1025: FAILED assert(buffer_bytes >= b->length) from ObjectStore/StoreTest.ColSplitTest2/2 (`issue#24439 <http://tracker.ceph.com/issues/24439>`_, `issue#26944 <http://tracker.ceph.com/issues/26944>`_, `pr#23748 <https://github.com/ceph/ceph/pull/23748>`_, Sage Weil) -* os/bluestore: fix assertion in StupidAllocator::get_fragmentation (`pr#23676 <https://github.com/ceph/ceph/pull/23676>`_, Igor Fedotov) -* osd: do_sparse_read(): Verify checksum earlier so we will try to repair (`issue#24875 <http://tracker.ceph.com/issues/24875>`_, `pr#23378 <https://github.com/ceph/ceph/pull/23378>`_, David Zafman) -* osd,mon: increase mon_max_pg_per_osd to 300 (`issue#25176 <http://tracker.ceph.com/issues/25176>`_, `pr#23861 <https://github.com/ceph/ceph/pull/23861>`_, Neha Ojha) -* osd/OSDMap: CRUSH_TUNABLES5 added in jewel, not kraken (`issue#25057 <http://tracker.ceph.com/issues/25057>`_, `issue#25101 <http://tracker.ceph.com/issues/25101>`_, `pr#23226 <https://github.com/ceph/ceph/pull/23226>`_, Sage Weil) -* osd/PrimaryLogPG: avoid dereferencing invalid complete_to (`pr#23951 <https://github.com/ceph/ceph/pull/23951>`_, xie xingguo) -* osd: segv in OSDMap::calc_pg_upmaps from balancer (`issue#22056 <http://tracker.ceph.com/issues/22056>`_, `issue#26933 <http://tracker.ceph.com/issues/26933>`_, `pr#23888 <https://github.com/ceph/ceph/pull/23888>`_, Brad Hubbard) -* qa: cfuse_workunit_kernel_untar_build fails on Ubuntu 18.04 (`issue#26956 <http://tracker.ceph.com/issues/26956>`_, `issue#26967 <http://tracker.ceph.com/issues/26967>`_, `issue#24679 <http://tracker.ceph.com/issues/24679>`_, `pr#23769 <https://github.com/ceph/ceph/pull/23769>`_, Patrick Donnelly) -* qa: fix ceph-disk suite and add coverage for ceph-detect-init (`pr#23337 <https://github.com/ceph/ceph/pull/23337>`_, Nathan Cutler) -* qa/rgw: patch keystone requirements.txt (`issue#26946 <http://tracker.ceph.com/issues/26946>`_, `issue#23659 <http://tracker.ceph.com/issues/23659>`_, `pr#23771 <https://github.com/ceph/ceph/pull/23771>`_, Casey Bodley) -* qa/suites/rados: move valgrind test to singleton-flat (`issue#24992 <http://tracker.ceph.com/issues/24992>`_, `pr#23744 <https://github.com/ceph/ceph/pull/23744>`_, Sage Weil) -* qa/tasks: s3a fix mirror (`pr#24038 <https://github.com/ceph/ceph/pull/24038>`_, Vasu Kulkarni) -* qa/tests: added OBJECT_MISPLACED to the whitelist (`pr#23301 <https://github.com/ceph/ceph/pull/23301>`_, Yuri Weinstein) -* qa/tests: added v13.2.1 to the mix (`pr#23218 <https://github.com/ceph/ceph/pull/23218>`_, Yuri Weinstein) -* qa/tests: update ansible version to 2.5 (`pr#24091 <https://github.com/ceph/ceph/pull/24091>`_, Yuri Weinstein) -* rados: not all exceptions accept keyargs (`issue#25178 <http://tracker.ceph.com/issues/25178>`_, `issue#24033 <http://tracker.ceph.com/issues/24033>`_, `pr#23335 <https://github.com/ceph/ceph/pull/23335>`_, Rishabh Dave) -* rados python bindings use prval from stack (`issue#25204 <http://tracker.ceph.com/issues/25204>`_, `issue#25175 <http://tracker.ceph.com/issues/25175>`_, `pr#23863 <https://github.com/ceph/ceph/pull/23863>`_, Sage Weil) -* rbd: improved trash snapshot namespace handling (`issue#25121 <http://tracker.ceph.com/issues/25121>`_, `issue#23398 <http://tracker.ceph.com/issues/23398>`_, `issue#25114 <http://tracker.ceph.com/issues/25114>`_, `pr#23559 <https://github.com/ceph/ceph/pull/23559>`_, Mykola Golub, Jason Dillaman) -* rgw: add curl_low_speed_limit and curl_low_speed_time config to avoid (`issue#25021 <http://tracker.ceph.com/issues/25021>`_, `pr#23173 <https://github.com/ceph/ceph/pull/23173>`_, Mark Kogan, Zhang Shaowen) -* rgw: change default rgw_thread_pool_size to 512 (`issue#25214 <http://tracker.ceph.com/issues/25214>`_, `issue#25088 <http://tracker.ceph.com/issues/25088>`_, `issue#25218 <http://tracker.ceph.com/issues/25218>`_, `issue#24544 <http://tracker.ceph.com/issues/24544>`_, `pr#23383 <https://github.com/ceph/ceph/pull/23383>`_, Douglas Fuller, Casey Bodley) -* rgw: civetweb fails on urls with control characters (`issue#26849 <http://tracker.ceph.com/issues/26849>`_, `issue#24158 <http://tracker.ceph.com/issues/24158>`_, `pr#23855 <https://github.com/ceph/ceph/pull/23855>`_, Abhishek Lekshmanan) -* rgw: civetweb: use poll instead of select while waiting on sockets (`issue#35954 <http://tracker.ceph.com/issues/35954>`_, `pr#24058 <https://github.com/ceph/ceph/pull/24058>`_, Abhishek Lekshmanan) -* rgw: do not ignore EEXIST in RGWPutObj::execute (`issue#25078 <http://tracker.ceph.com/issues/25078>`_, `issue#22790 <http://tracker.ceph.com/issues/22790>`_, `pr#23206 <https://github.com/ceph/ceph/pull/23206>`_, Matt Benjamin) -* rgw: fail to recover index from crash mimic backport (`issue#24640 <http://tracker.ceph.com/issues/24640>`_, `issue#24629 <http://tracker.ceph.com/issues/24629>`_, `issue#24280 <http://tracker.ceph.com/issues/24280>`_, `pr#23118 <https://github.com/ceph/ceph/pull/23118>`_, Tianshan Qu) -* rgw_file: deep stat handling (`issue#26842 <http://tracker.ceph.com/issues/26842>`_, `issue#24915 <http://tracker.ceph.com/issues/24915>`_, `pr#23498 <https://github.com/ceph/ceph/pull/23498>`_, Matt Benjamin) -* rgw: Fix log level of gc_iterate_entries (`issue#23801 <http://tracker.ceph.com/issues/23801>`_, `issue#26921 <http://tracker.ceph.com/issues/26921>`_, `pr#23686 <https://github.com/ceph/ceph/pull/23686>`_, iliul) -* rgw: Limit the number of lifecycle rules on one bucket (`issue#26845 <http://tracker.ceph.com/issues/26845>`_, `issue#24572 <http://tracker.ceph.com/issues/24572>`_, `pr#23521 <https://github.com/ceph/ceph/pull/23521>`_, Zhang Shaowen) -* rgw: radosgw-admin: 'sync error trim' loops until complete (`issue#24873 <http://tracker.ceph.com/issues/24873>`_, `issue#24984 <http://tracker.ceph.com/issues/24984>`_, `pr#23140 <https://github.com/ceph/ceph/pull/23140>`_, Casey Bodley) -* rgw: The delete markers generated by object expiration should have owner (`issue#24568 <http://tracker.ceph.com/issues/24568>`_, `issue#26847 <http://tracker.ceph.com/issues/26847>`_, `pr#23541 <https://github.com/ceph/ceph/pull/23541>`_, Zhang Shaowen) -* rpm: should change ceph-mgr package depency from py-bcrypt to python2-bcrypt (`issue#27212 <http://tracker.ceph.com/issues/27212>`_, `pr#23868 <https://github.com/ceph/ceph/pull/23868>`_, Konstantin Sakhinov) -* rpm: silence osd block chown (`issue#25152 <http://tracker.ceph.com/issues/25152>`_, `pr#23324 <https://github.com/ceph/ceph/pull/23324>`_, Dan van der Ster) -* run-rbd-unit-tests.sh test fails to finish in jenkin's make check run (`issue#27060 <http://tracker.ceph.com/issues/27060>`_, `issue#24910 <http://tracker.ceph.com/issues/24910>`_, `pr#23858 <https://github.com/ceph/ceph/pull/23858>`_, Mykola Golub) -* scrub livelock (`issue#26931 <http://tracker.ceph.com/issues/26931>`_, `issue#26890 <http://tracker.ceph.com/issues/26890>`_, `pr#23722 <https://github.com/ceph/ceph/pull/23722>`_, Sage Weil) -* spdk: compile with -march=core2 instead of -march=native (`issue#25032 <http://tracker.ceph.com/issues/25032>`_, `pr#23175 <https://github.com/ceph/ceph/pull/23175>`_, Nathan Cutler) -* tests: cluster [WRN] 25 slow requests in powercycle (`issue#25119 <http://tracker.ceph.com/issues/25119>`_, `pr#23886 <https://github.com/ceph/ceph/pull/23886>`_, Neha Ojha) -* test: Use pids instead of jobspecs which were wrong (`issue#32079 <http://tracker.ceph.com/issues/32079>`_, `issue#27056 <http://tracker.ceph.com/issues/27056>`_, `pr#23893 <https://github.com/ceph/ceph/pull/23893>`_, David Zafman) -* tools/ceph-detect-init: support RHEL as a platform (`issue#18163 <http://tracker.ceph.com/issues/18163>`_, `pr#23303 <https://github.com/ceph/ceph/pull/23303>`_, Nathan Cutler) -* tools: ceph-detect-init: support SLED (`issue#18163 <http://tracker.ceph.com/issues/18163>`_, `pr#23111 <https://github.com/ceph/ceph/pull/23111>`_, Nathan Cutler) -* tools: cephfs-data-scan: print the max used ino (`issue#26978 <http://tracker.ceph.com/issues/26978>`_, `issue#26925 <http://tracker.ceph.com/issues/26925>`_, `pr#23880 <https://github.com/ceph/ceph/pull/23880>`_, "Yan, Zheng") - - -v13.2.1 Mimic -============= - -This is the first bugfix release of the Mimic v13.2.x long term stable release -series. This release contains many fixes across all components of Ceph, -including a few security fixes. We recommend that all users upgrade. - -Notable Changes ---------------- - -* CVE 2018-1128: auth: cephx authorizer subject to replay attack (`issue#24836 <http://tracker.ceph.com/issues/24836>`_, Sage Weil) -* CVE 2018-1129: auth: cephx signature check is weak (`issue#24837 <http://tracker.ceph.com/issues/24837>`_, Sage Weil) -* CVE 2018-10861: mon: auth checks not correct for pool ops (`issue#24838 <http://tracker.ceph.com/issues/24838>`_, Jason Dillaman) - -Changelog ---------- - -* bluestore: common/hobject: improved hash calculation for hobject_t etc (`pr#22777 <https://github.com/ceph/ceph/pull/22777>`_, Adam Kupczyk, Sage Weil) -* bluestore,core: mimic: os/bluestore: don't store/use path_block.{db,wal} from meta (`pr#22477 <https://github.com/ceph/ceph/pull/22477>`_, Sage Weil, Alfredo Deza) -* bluestore: os/bluestore: backport 24319 and 24550 (`issue#24550 <http://tracker.ceph.com/issues/24550>`_, `issue#24502 <http://tracker.ceph.com/issues/24502>`_, `issue#24319 <http://tracker.ceph.com/issues/24319>`_, `issue#24581 <http://tracker.ceph.com/issues/24581>`_, `pr#22649 <https://github.com/ceph/ceph/pull/22649>`_, Sage Weil) -* bluestore: os/bluestore: fix incomplete faulty range marking when doing compression (`pr#22910 <https://github.com/ceph/ceph/pull/22910>`_, Igor Fedotov) -* bluestore: spdk: fix ceph-osd crash when activate SPDK (`issue#24472 <http://tracker.ceph.com/issues/24472>`_, `issue#24371 <http://tracker.ceph.com/issues/24371>`_, `pr#22684 <https://github.com/ceph/ceph/pull/22684>`_, tone-zhang) -* build/ops: build/ops: ceph.git has two different versions of dpdk in the source tree (`issue#24942 <http://tracker.ceph.com/issues/24942>`_, `issue#24032 <http://tracker.ceph.com/issues/24032>`_, `pr#23070 <https://github.com/ceph/ceph/pull/23070>`_, Kefu Chai) -* build/ops: build/ops: install-deps.sh fails on newest openSUSE Leap (`issue#25065 <http://tracker.ceph.com/issues/25065>`_, `pr#23178 <https://github.com/ceph/ceph/pull/23178>`_, Kyr Shatskyy) -* build/ops: build/ops: Mimic build fails with -DWITH_RADOSGW=0 (`issue#24766 <http://tracker.ceph.com/issues/24766>`_, `pr#22851 <https://github.com/ceph/ceph/pull/22851>`_, Dan Mick) -* build/ops: cmake: enable RTTI for both debug and release RocksDB builds (`pr#22299 <https://github.com/ceph/ceph/pull/22299>`_, Igor Fedotov) -* build/ops: deb/rpm: add python-six as build-time and run-time dependency (`issue#24885 <http://tracker.ceph.com/issues/24885>`_, `pr#22948 <https://github.com/ceph/ceph/pull/22948>`_, Nathan Cutler, Kefu Chai) -* build/ops: deb,rpm: fix block.db symlink ownership (`pr#23246 <https://github.com/ceph/ceph/pull/23246>`_, Sage Weil) -* build/ops: include: fix build with older clang (OSX target) (`pr#23049 <https://github.com/ceph/ceph/pull/23049>`_, Christopher Blum) -* build/ops: include: fix build with older clang (`pr#23034 <https://github.com/ceph/ceph/pull/23034>`_, Kefu Chai) -* build/ops,rbd: build/ops: order rbdmap.service before remote-fs-pre.target (`issue#24713 <http://tracker.ceph.com/issues/24713>`_, `issue#24734 <http://tracker.ceph.com/issues/24734>`_, `pr#22843 <https://github.com/ceph/ceph/pull/22843>`_, Ilya Dryomov) -* cephfs: cephfs: allow prohibiting user snapshots in CephFS (`issue#24705 <http://tracker.ceph.com/issues/24705>`_, `issue#24284 <http://tracker.ceph.com/issues/24284>`_, `pr#22812 <https://github.com/ceph/ceph/pull/22812>`_, "Yan, Zheng") -* cephfs: cephfs-journal-tool: Fix purging when importing an zero-length journal (`issue#24861 <http://tracker.ceph.com/issues/24861>`_, `pr#22981 <https://github.com/ceph/ceph/pull/22981>`_, yupeng chen, zhongyan gu) -* cephfs: client: fix bug #24491 _ll_drop_pins may access invalid iterator (`issue#24534 <http://tracker.ceph.com/issues/24534>`_, `pr#22791 <https://github.com/ceph/ceph/pull/22791>`_, Liu Yangkuan) -* cephfs: client: update inode fields according to issued caps (`issue#24539 <http://tracker.ceph.com/issues/24539>`_, `issue#24269 <http://tracker.ceph.com/issues/24269>`_, `pr#22819 <https://github.com/ceph/ceph/pull/22819>`_, "Yan, Zheng") -* cephfs: common/DecayCounter: set last_decay to current time when decoding dec… (`issue#24440 <http://tracker.ceph.com/issues/24440>`_, `issue#24537 <http://tracker.ceph.com/issues/24537>`_, `pr#22816 <https://github.com/ceph/ceph/pull/22816>`_, Zhi Zhang) -* cephfs,core: mon/MDSMonitor: do not send redundant MDS health messages to cluster log (`issue#24308 <http://tracker.ceph.com/issues/24308>`_, `issue#24330 <http://tracker.ceph.com/issues/24330>`_, `pr#22265 <https://github.com/ceph/ceph/pull/22265>`_, Sage Weil) -* cephfs: mds: add magic to header of open file table (`issue#24541 <http://tracker.ceph.com/issues/24541>`_, `issue#24240 <http://tracker.ceph.com/issues/24240>`_, `pr#22841 <https://github.com/ceph/ceph/pull/22841>`_, "Yan, Zheng") -* cephfs: mds: low wrlock efficiency due to dirfrags traversal (`issue#24704 <http://tracker.ceph.com/issues/24704>`_, `issue#24467 <http://tracker.ceph.com/issues/24467>`_, `pr#22884 <https://github.com/ceph/ceph/pull/22884>`_, Xuehan Xu) -* cephfs: PurgeQueue sometimes ignores Journaler errors (`issue#24533 <http://tracker.ceph.com/issues/24533>`_, `issue#24703 <http://tracker.ceph.com/issues/24703>`_, `pr#22810 <https://github.com/ceph/ceph/pull/22810>`_, John Spray) -* cephfs,rbd: osdc: Fix the wrong BufferHead offset (`issue#24583 <http://tracker.ceph.com/issues/24583>`_, `pr#22869 <https://github.com/ceph/ceph/pull/22869>`_, dongdong tao) -* cephfs: repeated eviction of idle client until some IO happens (`issue#24052 <http://tracker.ceph.com/issues/24052>`_, `issue#24296 <http://tracker.ceph.com/issues/24296>`_, `pr#22550 <https://github.com/ceph/ceph/pull/22550>`_, "Yan, Zheng") -* cephfs: test gets ENOSPC from bluestore block device (`issue#24238 <http://tracker.ceph.com/issues/24238>`_, `issue#24913 <http://tracker.ceph.com/issues/24913>`_, `issue#24899 <http://tracker.ceph.com/issues/24899>`_, `issue#24758 <http://tracker.ceph.com/issues/24758>`_, `pr#22835 <https://github.com/ceph/ceph/pull/22835>`_, Patrick Donnelly, Sage Weil) -* cephfs,tests: pjd: cd: too many arguments (`issue#24310 <http://tracker.ceph.com/issues/24310>`_, `pr#22882 <https://github.com/ceph/ceph/pull/22882>`_, Neha Ojha) -* cephfs,tests: qa: client socket inaccessible without sudo (`issue#24872 <http://tracker.ceph.com/issues/24872>`_, `issue#24904 <http://tracker.ceph.com/issues/24904>`_, `pr#23030 <https://github.com/ceph/ceph/pull/23030>`_, Patrick Donnelly) -* cephfs,tests: qa: fix ffsb cd argument (`issue#24719 <http://tracker.ceph.com/issues/24719>`_, `issue#24829 <http://tracker.ceph.com/issues/24829>`_, `issue#24680 <http://tracker.ceph.com/issues/24680>`_, `issue#24579 <http://tracker.ceph.com/issues/24579>`_, `pr#22956 <https://github.com/ceph/ceph/pull/22956>`_, Yan, Zheng, Patrick Donnelly) -* cephfs,tests: qa/suites: Add supported-random-distro$ links (`issue#24706 <http://tracker.ceph.com/issues/24706>`_, `issue#24138 <http://tracker.ceph.com/issues/24138>`_, `pr#22700 <https://github.com/ceph/ceph/pull/22700>`_, Warren Usui) -* ceph-volume describe better the options for migrating away from ceph-disk (`pr#22514 <https://github.com/ceph/ceph/pull/22514>`_, Alfredo Deza) -* ceph-volume dmcrypt and activate --all documentation updates (`pr#22529 <https://github.com/ceph/ceph/pull/22529>`_, Alfredo Deza) -* ceph-volume: error on commands that need ceph.conf to operate (`issue#23941 <http://tracker.ceph.com/issues/23941>`_, `pr#22747 <https://github.com/ceph/ceph/pull/22747>`_, Andrew Schoen) -* ceph-volume expand on the LVM API to create multiple LVs at different sizes (`pr#22508 <https://github.com/ceph/ceph/pull/22508>`_, Alfredo Deza) -* ceph-volume initial take on auto sub-command (`pr#22515 <https://github.com/ceph/ceph/pull/22515>`_, Alfredo Deza) -* ceph-volume lvm.activate Do not search for a MON configuration (`pr#22398 <https://github.com/ceph/ceph/pull/22398>`_, Wido den Hollander) -* ceph-volume lvm.common use destroy-new, doesn't need admin keyring (`issue#24585 <http://tracker.ceph.com/issues/24585>`_, `pr#22900 <https://github.com/ceph/ceph/pull/22900>`_, Alfredo Deza) -* ceph-volume: provide a nice errror message when missing ceph.conf (`pr#22832 <https://github.com/ceph/ceph/pull/22832>`_, Andrew Schoen) -* ceph-volume tests destroy osds on monitor hosts (`pr#22507 <https://github.com/ceph/ceph/pull/22507>`_, Alfredo Deza) -* ceph-volume tests do not include admin keyring in OSD nodes (`pr#22425 <https://github.com/ceph/ceph/pull/22425>`_, Alfredo Deza) -* ceph-volume tests.functional install new ceph-ansible dependencies (`pr#22535 <https://github.com/ceph/ceph/pull/22535>`_, Alfredo Deza) -* ceph-volume: tests/functional run lvm list after OSD provisioning (`issue#24961 <http://tracker.ceph.com/issues/24961>`_, `pr#23148 <https://github.com/ceph/ceph/pull/23148>`_, Alfredo Deza) -* ceph-volume tests/functional use Ansible 2.6 (`pr#23244 <https://github.com/ceph/ceph/pull/23244>`_, Alfredo Deza) -* ceph-volume: unmount lvs correctly before zapping (`issue#24796 <http://tracker.ceph.com/issues/24796>`_, `pr#23127 <https://github.com/ceph/ceph/pull/23127>`_, Andrew Schoen) -* cmake: bump up the required boost version to 1.67 (`pr#22412 <https://github.com/ceph/ceph/pull/22412>`_, Kefu Chai) -* common: common: Abort in OSDMap::decode() during qa/standalone/erasure-code/test-erasure-eio.sh (`issue#24865 <http://tracker.ceph.com/issues/24865>`_, `issue#23492 <http://tracker.ceph.com/issues/23492>`_, `pr#23024 <https://github.com/ceph/ceph/pull/23024>`_, Sage Weil) -* common: common: fix typo in rados bench write JSON output (`issue#24292 <http://tracker.ceph.com/issues/24292>`_, `issue#24199 <http://tracker.ceph.com/issues/24199>`_, `pr#22406 <https://github.com/ceph/ceph/pull/22406>`_, Sandor Zeestraten) -* common,core: common: partially revert 95fc248 to make get_process_name work (`issue#24123 <http://tracker.ceph.com/issues/24123>`_, `issue#24215 <http://tracker.ceph.com/issues/24215>`_, `pr#22311 <https://github.com/ceph/ceph/pull/22311>`_, Mykola Golub) -* common: osd: Change osd_skip_data_digest default to false and make it LEVEL_DEV (`pr#23084 <https://github.com/ceph/ceph/pull/23084>`_, Sage Weil, David Zafman) -* common: tell ... config rm <foo> not idempotent (`issue#24468 <http://tracker.ceph.com/issues/24468>`_, `issue#24408 <http://tracker.ceph.com/issues/24408>`_, `pr#22552 <https://github.com/ceph/ceph/pull/22552>`_, Sage Weil) -* core: bluestore: flush_commit is racy (`issue#24261 <http://tracker.ceph.com/issues/24261>`_, `issue#21480 <http://tracker.ceph.com/issues/21480>`_, `pr#22382 <https://github.com/ceph/ceph/pull/22382>`_, Sage Weil) -* core: ceph osd safe-to-destroy crashes the mgr (`issue#24708 <http://tracker.ceph.com/issues/24708>`_, `issue#23249 <http://tracker.ceph.com/issues/23249>`_, `pr#22805 <https://github.com/ceph/ceph/pull/22805>`_, Sage Weil) -* core: change default filestore_merge_threshold to -10 (`issue#24686 <http://tracker.ceph.com/issues/24686>`_, `issue#24747 <http://tracker.ceph.com/issues/24747>`_, `pr#22813 <https://github.com/ceph/ceph/pull/22813>`_, Douglas Fuller) -* core: common/hobject: improved hash calculation (`pr#22722 <https://github.com/ceph/ceph/pull/22722>`_, Adam Kupczyk) -* core: cosbench stuck at booting cosbench driver (`issue#24473 <http://tracker.ceph.com/issues/24473>`_, `pr#22887 <https://github.com/ceph/ceph/pull/22887>`_, Neha Ojha) -* core: librados: fix buffer overflow for aio_exec python binding (`issue#24475 <http://tracker.ceph.com/issues/24475>`_, `pr#22707 <https://github.com/ceph/ceph/pull/22707>`_, Aleksei Gutikov) -* core: mon: enable level_compaction_dynamic_level_bytes for rocksdb (`issue#24375 <http://tracker.ceph.com/issues/24375>`_, `issue#24361 <http://tracker.ceph.com/issues/24361>`_, `pr#22361 <https://github.com/ceph/ceph/pull/22361>`_, Kefu Chai) -* core: mon/MgrMonitor: change 'unresponsive' message to info level (`issue#24246 <http://tracker.ceph.com/issues/24246>`_, `issue#24222 <http://tracker.ceph.com/issues/24222>`_, `pr#22333 <https://github.com/ceph/ceph/pull/22333>`_, Sage Weil) -* core: mon/OSDMonitor: no_reply on MOSDFailure messages (`issue#24322 <http://tracker.ceph.com/issues/24322>`_, `issue#24350 <http://tracker.ceph.com/issues/24350>`_, `pr#22297 <https://github.com/ceph/ceph/pull/22297>`_, Sage Weil) -* core: os/bluestore: firstly delete db then delete bluefs if open db met error (`pr#22525 <https://github.com/ceph/ceph/pull/22525>`_, Jianpeng Ma) -* core: os/bluestore: fix races on SharedBlob::coll in ~SharedBlob (`issue#24859 <http://tracker.ceph.com/issues/24859>`_, `issue#24887 <http://tracker.ceph.com/issues/24887>`_, `pr#23065 <https://github.com/ceph/ceph/pull/23065>`_, Radoslaw Zarzynski) -* core: osd: choose_acting loop (`issue#24383 <http://tracker.ceph.com/issues/24383>`_, `issue#24618 <http://tracker.ceph.com/issues/24618>`_, `pr#22889 <https://github.com/ceph/ceph/pull/22889>`_, Neha Ojha) -* core: osd: do not blindly roll forward to log.head (`issue#24597 <http://tracker.ceph.com/issues/24597>`_, `pr#22997 <https://github.com/ceph/ceph/pull/22997>`_, Sage Weil) -* core: osd: eternal stuck PG in 'unfound_recovery' (`issue#24500 <http://tracker.ceph.com/issues/24500>`_, `issue#24373 <http://tracker.ceph.com/issues/24373>`_, `pr#22545 <https://github.com/ceph/ceph/pull/22545>`_, Sage Weil) -* core: osd: fix deep scrub with osd_skip_data_digest=true (default) and blue… (`issue#24922 <http://tracker.ceph.com/issues/24922>`_, `issue#24958 <http://tracker.ceph.com/issues/24958>`_, `pr#23094 <https://github.com/ceph/ceph/pull/23094>`_, Sage Weil) -* core: osd: fix getting osd maps on initial osd startup (`pr#22651 <https://github.com/ceph/ceph/pull/22651>`_, Paul Emmerich) -* core: osd: increase default hard pg limit (`issue#24355 <http://tracker.ceph.com/issues/24355>`_, `pr#22621 <https://github.com/ceph/ceph/pull/22621>`_, Josh Durgin) -* core: osd: may get empty info at recovery (`issue#24771 <http://tracker.ceph.com/issues/24771>`_, `issue#24588 <http://tracker.ceph.com/issues/24588>`_, `pr#22861 <https://github.com/ceph/ceph/pull/22861>`_, Sage Weil) -* core: osd/PrimaryLogPG: rebuild attrs from clients (`issue#24768 <http://tracker.ceph.com/issues/24768>`_, `issue#24805 <http://tracker.ceph.com/issues/24805>`_, `pr#22960 <https://github.com/ceph/ceph/pull/22960>`_, Sage Weil) -* core: osd: retry to read object attrs at EC recovery (`issue#24406 <http://tracker.ceph.com/issues/24406>`_, `pr#22394 <https://github.com/ceph/ceph/pull/22394>`_, xiaofei cui) -* core: osd/Session: fix invalid iterator dereference in Sessoin::have_backoff() (`issue#24486 <http://tracker.ceph.com/issues/24486>`_, `issue#24494 <http://tracker.ceph.com/issues/24494>`_, `pr#22730 <https://github.com/ceph/ceph/pull/22730>`_, Sage Weil) -* core: PG: add custom_reaction Backfilled and release reservations after bac… (`issue#24332 <http://tracker.ceph.com/issues/24332>`_, `pr#22559 <https://github.com/ceph/ceph/pull/22559>`_, Neha Ojha) -* core: set correctly shard for existed Collection (`issue#24769 <http://tracker.ceph.com/issues/24769>`_, `issue#24761 <http://tracker.ceph.com/issues/24761>`_, `pr#22859 <https://github.com/ceph/ceph/pull/22859>`_, Jianpeng Ma) -* core,tests: Bring back diff -y for non-FreeBSD (`issue#24738 <http://tracker.ceph.com/issues/24738>`_, `issue#24470 <http://tracker.ceph.com/issues/24470>`_, `pr#22826 <https://github.com/ceph/ceph/pull/22826>`_, Sage Weil, David Zafman) -* core,tests: ceph_test_rados_api_misc: fix LibRadosMiscPool.PoolCreationRace (`issue#24204 <http://tracker.ceph.com/issues/24204>`_, `issue#24150 <http://tracker.ceph.com/issues/24150>`_, `pr#22291 <https://github.com/ceph/ceph/pull/22291>`_, Sage Weil) -* core,tests: qa/workunits/suites/blogbench.sh: use correct dir name (`pr#22775 <https://github.com/ceph/ceph/pull/22775>`_, Neha Ojha) -* core,tests: Wip scrub omap (`issue#24366 <http://tracker.ceph.com/issues/24366>`_, `issue#24381 <http://tracker.ceph.com/issues/24381>`_, `pr#22374 <https://github.com/ceph/ceph/pull/22374>`_, David Zafman) -* core,tools: ceph-detect-init: stop using platform.linux_distribution (`issue#18163 <http://tracker.ceph.com/issues/18163>`_, `pr#21523 <https://github.com/ceph/ceph/pull/21523>`_, Nathan Cutler) -* core: ValueError: too many values to unpack due to lack of subdir (`issue#24617 <http://tracker.ceph.com/issues/24617>`_, `pr#22888 <https://github.com/ceph/ceph/pull/22888>`_, Neha Ojha) -* doc: ceph-bluestore-tool manpage not getting rendered correctly (`issue#25062 <http://tracker.ceph.com/issues/25062>`_, `issue#24800 <http://tracker.ceph.com/issues/24800>`_, `pr#23176 <https://github.com/ceph/ceph/pull/23176>`_, Nathan Cutler) -* doc: doc: update experimental features - snapshots (`pr#22803 <https://github.com/ceph/ceph/pull/22803>`_, Jos Collin) -* doc: fix the links in releases/schedule.rst (`pr#22372 <https://github.com/ceph/ceph/pull/22372>`_, Kefu Chai) -* doc: [mimic] doc/cephfs: remove lingering "experimental" note about multimds (`pr#22854 <https://github.com/ceph/ceph/pull/22854>`_, John Spray) -* lvm: when osd creation fails log the exception (`issue#24456 <http://tracker.ceph.com/issues/24456>`_, `pr#22640 <https://github.com/ceph/ceph/pull/22640>`_, Andrew Schoen) -* mgr/dashboard: Fix bug when creating S3 keys (`pr#22468 <https://github.com/ceph/ceph/pull/22468>`_, Volker Theile) -* mgr/dashboard: fix lint error caused by codelyzer update (`pr#22713 <https://github.com/ceph/ceph/pull/22713>`_, Tiago Melo) -* mgr/dashboard: Fix some datatable CSS issues (`pr#22274 <https://github.com/ceph/ceph/pull/22274>`_, Volker Theile) -* mgr/dashboard: Float numbers incorrectly formatted (`issue#24081 <http://tracker.ceph.com/issues/24081>`_, `issue#24707 <http://tracker.ceph.com/issues/24707>`_, `pr#22886 <https://github.com/ceph/ceph/pull/22886>`_, Stephan Müller, Tiago Melo) -* mgr/dashboard: Missing breadcrumb on monitor performance counters page (`issue#24764 <http://tracker.ceph.com/issues/24764>`_, `pr#22849 <https://github.com/ceph/ceph/pull/22849>`_, Ricardo Marques, Tiago Melo) -* mgr/dashboard: Replace Pool with Pools (`issue#24699 <http://tracker.ceph.com/issues/24699>`_, `pr#22807 <https://github.com/ceph/ceph/pull/22807>`_, Lenz Grimmer) -* mgr: mgr/dashboard: Listen on port 8443 by default and not 8080 (`pr#22449 <https://github.com/ceph/ceph/pull/22449>`_, Wido den Hollander) -* mgr,mon: exception for dashboard in config-key warning (`pr#22770 <https://github.com/ceph/ceph/pull/22770>`_, John Spray) -* mgr,pybind: Python bindings use iteritems method which is not Python 3 compatible (`issue#24803 <http://tracker.ceph.com/issues/24803>`_, `issue#24779 <http://tracker.ceph.com/issues/24779>`_, `pr#22917 <https://github.com/ceph/ceph/pull/22917>`_, Nathan Cutler) -* mgr: Sync up ceph-mgr prometheus related changes (`pr#22341 <https://github.com/ceph/ceph/pull/22341>`_, Boris Ranto) -* mon: don't require CEPHX_V2 from mons until nautilus (`pr#23233 <https://github.com/ceph/ceph/pull/23233>`_, Sage Weil) -* mon/OSDMonitor: Respect paxos_propose_interval (`pr#22268 <https://github.com/ceph/ceph/pull/22268>`_, Xiaoxi CHEN) -* osd: forward-port osd_distrust_data_digest from luminous (`pr#23184 <https://github.com/ceph/ceph/pull/23184>`_, Sage Weil) -* osd/OSDMap: fix CEPHX_V2 osd requirement to nautilus, not mimic (`pr#23250 <https://github.com/ceph/ceph/pull/23250>`_, Sage Weil) -* qa/rgw: disable testing on ec-cache pools (`issue#23965 <http://tracker.ceph.com/issues/23965>`_, `pr#23096 <https://github.com/ceph/ceph/pull/23096>`_, Casey Bodley) -* qa/suites/upgrade/mimic-p2p: allow target version to apply (`pr#23262 <https://github.com/ceph/ceph/pull/23262>`_, Sage Weil) -* qa/tests: added supported distro for powercycle suite (`pr#22224 <https://github.com/ceph/ceph/pull/22224>`_, Yuri Weinstein) -* qa/tests: changed distro symlink to point to new way using supported OSes (`pr#22653 <https://github.com/ceph/ceph/pull/22653>`_, Yuri Weinstein) -* rbd: librbd: deep_copy: resize head object map if needed (`issue#24499 <http://tracker.ceph.com/issues/24499>`_, `issue#24399 <http://tracker.ceph.com/issues/24399>`_, `pr#22768 <https://github.com/ceph/ceph/pull/22768>`_, Mykola Golub) -* rbd: librbd: fix crash when opening nonexistent snapshot (`issue#24637 <http://tracker.ceph.com/issues/24637>`_, `issue#24698 <http://tracker.ceph.com/issues/24698>`_, `pr#22943 <https://github.com/ceph/ceph/pull/22943>`_, Mykola Golub) -* rbd: librbd: force 'invalid object map' flag on-disk update (`issue#24496 <http://tracker.ceph.com/issues/24496>`_, `issue#24434 <http://tracker.ceph.com/issues/24434>`_, `pr#22754 <https://github.com/ceph/ceph/pull/22754>`_, Mykola Golub) -* rbd: librbd: utilize the journal disabled policy when removing images (`issue#24388 <http://tracker.ceph.com/issues/24388>`_, `issue#23512 <http://tracker.ceph.com/issues/23512>`_, `pr#22662 <https://github.com/ceph/ceph/pull/22662>`_, Jason Dillaman) -* rbd: Prevent the use of internal feature bits from outside cls/rbd (`issue#24165 <http://tracker.ceph.com/issues/24165>`_, `issue#24203 <http://tracker.ceph.com/issues/24203>`_, `pr#22222 <https://github.com/ceph/ceph/pull/22222>`_, Jason Dillaman) -* rbd: rbd-mirror daemon failed to stop on active/passive test case (`issue#24390 <http://tracker.ceph.com/issues/24390>`_, `pr#22667 <https://github.com/ceph/ceph/pull/22667>`_, Jason Dillaman) -* rbd: [rbd-mirror] entries_behind_master will not be zero after mirror over (`issue#24391 <http://tracker.ceph.com/issues/24391>`_, `issue#23516 <http://tracker.ceph.com/issues/23516>`_, `pr#22549 <https://github.com/ceph/ceph/pull/22549>`_, Jason Dillaman) -* rbd: rbd-mirror simple image map policy doesn't always level-load instances (`issue#24519 <http://tracker.ceph.com/issues/24519>`_, `issue#24161 <http://tracker.ceph.com/issues/24161>`_, `pr#22892 <https://github.com/ceph/ceph/pull/22892>`_, Venky Shankar) -* rbd: rbd trash purge --threshold should support data pool (`issue#24476 <http://tracker.ceph.com/issues/24476>`_, `issue#22872 <http://tracker.ceph.com/issues/22872>`_, `pr#22891 <https://github.com/ceph/ceph/pull/22891>`_, Mahati Chamarthy) -* rbd,tests: qa: krbd_exclusive_option.sh: bump lock_timeout to 60 seconds (`issue#25081 <http://tracker.ceph.com/issues/25081>`_, `pr#23209 <https://github.com/ceph/ceph/pull/23209>`_, Ilya Dryomov) -* rbd: yet another case when deep copying a clone may result in invalid object map (`issue#24596 <http://tracker.ceph.com/issues/24596>`_, `issue#24545 <http://tracker.ceph.com/issues/24545>`_, `pr#22894 <https://github.com/ceph/ceph/pull/22894>`_, Mykola Golub) -* rgw: cls_bucket_list fails causes cascading osd crashes (`issue#24631 <http://tracker.ceph.com/issues/24631>`_, `issue#24117 <http://tracker.ceph.com/issues/24117>`_, `pr#22927 <https://github.com/ceph/ceph/pull/22927>`_, Yehuda Sadeh) -* rgw: multisite: RGWSyncTraceNode released twice and crashed in reload (`issue#24432 <http://tracker.ceph.com/issues/24432>`_, `issue#24619 <http://tracker.ceph.com/issues/24619>`_, `pr#22926 <https://github.com/ceph/ceph/pull/22926>`_, Tianshan Qu) -* rgw: objects in cache never refresh after rgw_cache_expiry_interval (`issue#24346 <http://tracker.ceph.com/issues/24346>`_, `issue#24385 <http://tracker.ceph.com/issues/24385>`_, `pr#22643 <https://github.com/ceph/ceph/pull/22643>`_, Casey Bodley) -* rgw: add configurable AWS-compat invalid range get behavior (`issue#24317 <http://tracker.ceph.com/issues/24317>`_, `issue#24352 <http://tracker.ceph.com/issues/24352>`_, `pr#22590 <https://github.com/ceph/ceph/pull/22590>`_, Matt Benjamin) -* rgw: Admin OPS Api overwrites email when user is modified (`issue#24253 <http://tracker.ceph.com/issues/24253>`_, `pr#22523 <https://github.com/ceph/ceph/pull/22523>`_, Volker Theile) -* rgw: fix gc may cause a large number of read traffic (`issue#24807 <http://tracker.ceph.com/issues/24807>`_, `issue#24767 <http://tracker.ceph.com/issues/24767>`_, `pr#22941 <https://github.com/ceph/ceph/pull/22941>`_, Xin Liao) -* rgw: have a configurable authentication order (`issue#23089 <http://tracker.ceph.com/issues/23089>`_, `issue#24547 <http://tracker.ceph.com/issues/24547>`_, `pr#22842 <https://github.com/ceph/ceph/pull/22842>`_, Abhishek Lekshmanan) -* rgw: index complete miss zones_trace set (`issue#24701 <http://tracker.ceph.com/issues/24701>`_, `issue#24590 <http://tracker.ceph.com/issues/24590>`_, `pr#22818 <https://github.com/ceph/ceph/pull/22818>`_, Tianshan Qu) -* rgw: Invalid Access-Control-Request-Request may bypass validate_cors_rule_method (`issue#24809 <http://tracker.ceph.com/issues/24809>`_, `issue#24223 <http://tracker.ceph.com/issues/24223>`_, `pr#22935 <https://github.com/ceph/ceph/pull/22935>`_, Jeegn Chen) -* rgw: meta and data notify thread miss stop cr manager (`issue#24702 <http://tracker.ceph.com/issues/24702>`_, `issue#24589 <http://tracker.ceph.com/issues/24589>`_, `pr#22821 <https://github.com/ceph/ceph/pull/22821>`_, Tianshan Qu) -* rgw:-multisite: endless loop in RGWBucketShardIncrementalSyncCR (`issue#24700 <http://tracker.ceph.com/issues/24700>`_, `issue#24603 <http://tracker.ceph.com/issues/24603>`_, `pr#22815 <https://github.com/ceph/ceph/pull/22815>`_, cfanz) -* rgw: performance regression for luminous 12.2.4 (`issue#23379 <http://tracker.ceph.com/issues/23379>`_, `issue#24633 <http://tracker.ceph.com/issues/24633>`_, `pr#22929 <https://github.com/ceph/ceph/pull/22929>`_, Mark Kogan) -* rgw: radogw-admin reshard status command should print text for reshar… (`issue#24834 <http://tracker.ceph.com/issues/24834>`_, `issue#23257 <http://tracker.ceph.com/issues/23257>`_, `pr#23021 <https://github.com/ceph/ceph/pull/23021>`_, Orit Wasserman) -* rgw: "radosgw-admin objects expire" always returns ok even if the pro… (`issue#24831 <http://tracker.ceph.com/issues/24831>`_, `issue#24592 <http://tracker.ceph.com/issues/24592>`_, `pr#23001 <https://github.com/ceph/ceph/pull/23001>`_, Zhang Shaowen) -* rgw: require --yes-i-really-mean-it to run radosgw-admin orphans find (`issue#24146 <http://tracker.ceph.com/issues/24146>`_, `issue#24843 <http://tracker.ceph.com/issues/24843>`_, `pr#22986 <https://github.com/ceph/ceph/pull/22986>`_, Matt Benjamin) -* rgw: REST admin metadata API paging failure bucket & bucket.instance: InvalidArgument (`issue#23099 <http://tracker.ceph.com/issues/23099>`_, `issue#24813 <http://tracker.ceph.com/issues/24813>`_, `pr#22933 <https://github.com/ceph/ceph/pull/22933>`_, Matt Benjamin) -* rgw: set cr state if aio_read err return in RGWCloneMetaLogCoroutine:state_send_rest_request (`issue#24566 <http://tracker.ceph.com/issues/24566>`_, `issue#24783 <http://tracker.ceph.com/issues/24783>`_, `pr#22880 <https://github.com/ceph/ceph/pull/22880>`_, Tianshan Qu) -* rgw: test/rgw: fix for bucket checkpoints (`issue#24212 <http://tracker.ceph.com/issues/24212>`_, `issue#24313 <http://tracker.ceph.com/issues/24313>`_, `pr#22466 <https://github.com/ceph/ceph/pull/22466>`_, Casey Bodley) -* rgw,tests: add unit test for cls bi list command (`issue#24736 <http://tracker.ceph.com/issues/24736>`_, `issue#24483 <http://tracker.ceph.com/issues/24483>`_, `pr#22845 <https://github.com/ceph/ceph/pull/22845>`_, Orit Wasserman) -* tests: mimic - qa/tests: Set ansible-version: 2.4 (`issue#24926 <http://tracker.ceph.com/issues/24926>`_, `pr#23122 <https://github.com/ceph/ceph/pull/23122>`_, Yuri Weinstein) -* tests: osd sends op_reply out of order (`issue#25010 <http://tracker.ceph.com/issues/25010>`_, `pr#23136 <https://github.com/ceph/ceph/pull/23136>`_, Neha Ojha) -* tests: qa/tests - added overrides stanza to allow runs on ovh on rhel OS (`pr#23156 <https://github.com/ceph/ceph/pull/23156>`_, Yuri Weinstein) -* tests: qa/tests - added skeleton for mimic point to point upgrades testing (`pr#22697 <https://github.com/ceph/ceph/pull/22697>`_, Yuri Weinstein) -* tests: qa/tests: fix supported distro lists for ceph-deploy (`pr#23017 <https://github.com/ceph/ceph/pull/23017>`_, Vasu Kulkarni) -* tests: qa: wait longer for osd to flush pg stats (`issue#24321 <http://tracker.ceph.com/issues/24321>`_, `pr#22492 <https://github.com/ceph/ceph/pull/22492>`_, Kefu Chai) -* tests: tests: Health check failed: 1 MDSs report slow requests (MDS_SLOW_REQUEST) in powercycle (`issue#25034 <http://tracker.ceph.com/issues/25034>`_, `pr#23154 <https://github.com/ceph/ceph/pull/23154>`_, Neha Ojha) -* tests: tests: make test_ceph_argparse.py pass on py3-only systems (`issue#24825 <http://tracker.ceph.com/issues/24825>`_, `issue#24816 <http://tracker.ceph.com/issues/24816>`_, `pr#22988 <https://github.com/ceph/ceph/pull/22988>`_, Nathan Cutler) -* tests: upgrade/luminous-x: whitelist REQUEST_SLOW for rados_mon_thrash (`issue#25056 <http://tracker.ceph.com/issues/25056>`_, `issue#25051 <http://tracker.ceph.com/issues/25051>`_, `pr#23164 <https://github.com/ceph/ceph/pull/23164>`_, Nathan Cutler) - -v13.2.0 Mimic -============= - -This is the first stable release of Mimic, the next long term release series. - -Major Changes from Luminous ---------------------------- - -- *Dashboard*: - - * The (read-only) Ceph manager dashboard introduced in Ceph Luminous has been - replaced with a new implementation inspired by and derived from the - `openATTIC <https://openattic.org>`_ Ceph management tool, providing a - drop-in replacement offering a :ref:`number of additional management - features <mgr-dashboard>`. - -- *RADOS*: - - * Config options can now be centrally stored and managed by the monitor. - * The monitor daemon uses significantly less disk space when undergoing - recovery or rebalancing operations. - * An *async recovery* feature reduces the tail latency of requests - when the OSDs are recovering from a recent failure. - * OSD preemption of scrub by conflicting requests reduces tail latency. - -- *RGW*: - - * RGW can now replicate a zone (or a subset of buckets) to an - external cloud storage service like S3. - * RGW now supports the S3 multi-factor authentication API on - versioned buckets. - * The Beast frontend is no longer experimental, and is considered - stable and ready for use. - -- *CephFS*: - - * Snapshots are now stable when combined with multiple MDS daemons. - -- *RBD*: - - * Image clones no longer require explicit *protect* and *unprotect* - steps. - * Images can be deep-copied (including any clone linkage to a parent - image and associated snapshots) to new pools or with altered data - layouts. - -- *Misc*: - - * We have dropped the Debian builds for the Mimic release due to the - lack of GCC 8 in Stretch. We expect Debian builds to return with - the release of Buster in early 2019, and hope to build a final - Luminous release (and possibly later Mimic point releases) once - Buster is available. - - -Upgrading from Luminous ------------------------ - -Notes -~~~~~ - -* We recommend you avoid creating any RADOS pools while the upgrade is - in process. - -* You can monitor the progress of your upgrade at each stage with the - ``ceph versions`` command, which will tell you what ceph version(s) are - running for each type of daemon. - -Instructions -~~~~~~~~~~~~ - -#. If your cluster was originally installed with a version prior to - Luminous, ensure that it has completed at least one full scrub of - all PGs while running Luminous. Failure to do so will cause your - monitor daemons to refuse to join the quorum on start, leaving them - non-functional. - - If you are unsure whether or not your Luminous cluster has - completed a full scrub of all PGs, you can check your cluster's - state by running:: - - # ceph osd dump | grep ^flags - - In order to be able to proceed to Mimic, your OSD map must include - the ``recovery_deletes`` and ``purged_snapdirs`` flags. - - If your OSD map does not contain both these flags, you can simply - wait for approximately 24-48 hours, which in a standard cluster - configuration should be ample time for all your placement groups to - be scrubbed at least once, and then repeat the above process to - recheck. - - However, if you have just completed an upgrade to Luminous and want - to proceed to Mimic in short order, you can force a scrub on all - placement groups with a one-line shell command, like:: - - # ceph pg dump pgs_brief | cut -d " " -f 1 | xargs -n1 ceph pg scrub - - You should take into consideration that this forced scrub may - possibly have a negative impact on your Ceph clients' performance. - -#. Make sure your cluster is stable and healthy (no down or - recovering OSDs). (Optional, but recommended.) - -#. Set the ``noout`` flag for the duration of the upgrade. (Optional, - but recommended.):: - - # ceph osd set noout - -#. Upgrade monitors by installing the new packages and restarting the - monitor daemons.:: - - # systemctl restart ceph-mon.target - - Once all monitors are up, verify that the monitor upgrade is - complete by looking for the ``mimic`` feature string in the mon - map. For example:: - - # ceph mon feature ls - - should include `mimic` under persistent features:: - - on current monmap (epoch NNN) - persistent: [kraken,luminous,mimic] - required: [kraken,luminous,mimic] - -#. Upgrade ``ceph-mgr`` daemons by installing the new packages and - restarting with:: - - # systemctl restart ceph-mgr.target - - Verify the ``ceph-mgr`` daemons are running by checking ``ceph - -s``:: - - # ceph -s - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the - ceph-osd daemons on all hosts:: - - # systemctl restart ceph-osd.target - - You can monitor the progress of the OSD upgrades with the new - ``ceph versions`` or ``ceph osd versions`` command:: - - # ceph osd versions - { - "ceph version 12.2.5 (...) luminous (stable)": 12, - "ceph version 13.2.0 (...) mimic (stable)": 22, - } - -#. Upgrade all CephFS MDS daemons. For each CephFS file system, - - #. Reduce the number of ranks to 1. (Make note of the original - number of MDS daemons first if you plan to restore it later.):: - - # ceph status - # ceph fs set <fs_name> max_mds 1 - - #. Wait for the cluster to deactivate any non-zero ranks by - periodically checking the status:: - - # ceph status - - #. Take all standby MDS daemons offline on the appropriate hosts with:: - - # systemctl stop ceph-mds@<daemon_name> - - #. Confirm that only one MDS is online and is rank 0 for your FS:: - - # ceph status - - #. Upgrade the last remaining MDS daemon by installing the new - packages and restarting the daemon:: - - # systemctl restart ceph-mds.target - - #. Restart all standby MDS daemons that were taken offline:: - - # systemctl start ceph-mds.target - - #. Restore the original value of ``max_mds`` for the volume:: - - # ceph fs set <fs_name> max_mds <original_max_mds> - -#. Upgrade all radosgw daemons by upgrading packages and restarting - daemons on all hosts:: - - # systemctl restart radosgw.target - -#. Complete the upgrade by disallowing pre-Mimic OSDs and enabling - all new Mimic-only functionality:: - - # ceph osd require-osd-release mimic - -#. If you set ``noout`` at the beginning, be sure to clear it with:: - - # ceph osd unset noout - -#. Verify the cluster is healthy with ``ceph health``. - -Upgrading from pre-Luminous releases (like Jewel) -------------------------------------------------- - -You *must* first upgrade to Luminous (12.2.z) before attempting an -upgrade to Mimic. In addition, your cluster must have completed at -least one scrub of all PGs while running Luminous, setting the -``recovery_deletes`` and ``purged_snapdirs`` flags in the OSD map. - -Upgrade compatibility notes ---------------------------- - -These changes occurred between the Luminous and Mimic releases. - -* *core*: - - - The ``pg force-recovery`` command will not work for erasure-coded PGs when a - Luminous monitor is running along with a Mimic OSD. Please use the - recommended upgrade order of monitors before OSDs to avoid this issue. - - - The sample ``crush-location-hook`` script has been removed. Its output is - equivalent to the built-in default behavior, so it has been replaced with an - example in the CRUSH documentation. - - - The ``-f`` option of the rados tool now means ``--format`` instead - of ``--force``, for consistency with the ceph tool. - - - The format of the ``config diff`` output via the admin socket has changed. It - now reflects the source of each config option (e.g., default, config file, - command line) as well as the final (active) value. - - - Commands variously marked as `del`, `delete`, `remove` - etc. should now all be normalized as `rm`. Commands already - supporting alternatives to `rm` remain backward-compatible. This - changeset applies to the ``radosgw-admin`` tool as well. - - - Monitors will now prune on-disk full maps if the number of maps grows above - a certain number (mon_osdmap_full_prune_min, default: 10000), thus - preventing unbounded growth of the monitor data store. This feature is - enabled by default, and can be disabled by setting - `mon_osdmap_full_prune_enabled` to false. - - - *rados list-inconsistent-obj format changes:* - - + Various error strings have been improved. For example, the "oi" - or "oi_attr" in errors which stands for object info is now - "info" (e.g. oi_attr_missing is now info_missing). - - + The object's "selected_object_info" is now in json format - instead of string. - - + The attribute errors (attr_value_mismatch, attr_name_mismatch) - only apply to user attributes. Only user attributes are output - and have the internal leading underscore stripped. - - + If there are hash information errors (hinfo_missing, hinfo_corrupted, - hinfo_inconsistency) then "hashinfo" is added with the json format of the - information. If the information is corrupt then "hashinfo" is a string - containing the value. - - + If there are snapset errors (snapset_missing, snapset_corrupted, - snapset_inconsistency) then "snapset" is added with the json format of the - information. If the information is corrupt then "snapset" is a string - containing the value. - - + If there are object information errors (info_missing, info_corrupted, - obj_size_info_mismatch, object_info_inconsistency) then "object_info" is - added with the json format of the information instead of a string. If the - information is corrupt then "object_info" is a string containing the - value. - - - *rados list-inconsistent-snapset format changes:* - - + Various error strings have been improved. For example, the "ss_attr" in - errors which stands for snapset info is now "snapset" (e.g. - ss_attr_missing is now snapset_missing). The error snapset_mismatch has - been renamed to snapset_error to better reflect what it means. - - + The head snapset information is output in json format as "snapset." This - means that even when there are no head errors, the head object will be - output when any shard has an error. This head object is there to show the - snapset that was used in determining errors. - - - The `osd_mon_report_interval_min` option has been renamed to - `osd_mon_report_interval`, and the `osd_mon_report_interval_max` - (unused) has been eliminated. If this value has been customized on your - cluster then your configuration should be adjusted in order to avoid - reverting to the default value. - - - The config-key interface can store arbitrary binary blobs but JSON can only - express printable strings. If binary blobs are present, the 'ceph config-key - dump' command will show them as something like `<<< binary blob of length N - >>>`. - - - Bootstrap auth keys will now be generated automatically on a fresh - deployment; these keys will also be generated, if missing, during upgrade. - - - The ``osd force-create-pg`` command now requires a force option to proceed - because the command is dangerous: it declares that data loss is permanent - and instructs the cluster to proceed with an empty PG in its place, without - making any further efforts to find the missing data. - - *CephFS*: - - - Upgrading an MDS cluster to 12.2.3+ will result in all active MDS - exiting due to feature incompatibilities once an upgraded MDS comes online - (even as standby). Operators may ignore the error messages and continue - upgrading/restarting or follow this upgrade sequence: - - After upgrading the monitors to Mimic, reduce the number of ranks to 1 - (`ceph fs set <fs_name> max_mds 1`), wait for all other MDS to deactivate, - leaving the one active MDS, stop all standbys, upgrade the single active - MDS, then upgrade/start standbys. Finally, restore the previous max_mds. - - !! NOTE: see release notes on snapshots in CephFS if you have ever enabled - snapshots on your file system. - - See also: https://tracker.ceph.com/issues/23172 - - - Several ``ceph mds ...`` commands have been obsoleted and replaced by - equivalent ``ceph fs ...`` commands: - - + ``mds dump`` -> ``fs dump`` - + ``mds getmap`` -> ``fs dump`` - + ``mds stop`` -> ``mds deactivate`` - + ``mds set_max_mds`` -> ``fs set max_mds`` - + ``mds set`` -> ``fs set`` - + ``mds cluster_down`` -> ``fs set cluster_down true`` - + ``mds cluster_up`` -> ``fs set cluster_down false`` - + ``mds add_data_pool`` -> ``fs add_data_pool`` - + ``mds remove_data_pool`` -> ``fs rm_data_pool`` - + ``mds rm_data_pool`` -> ``fs rm_data_pool`` - - - New CephFS file system attributes session_timeout and - session_autoclose are configurable via ``ceph fs set``. The MDS - config options `mds_session_timeout`, `mds_session_autoclose`, and - `mds_max_file_size` are now obsolete. - - - As the multiple MDS feature is now standard, it is now enabled by - default. ``ceph fs set allow_multimds`` is now deprecated and will be - removed in a future release. - - - As the directory fragmentation feature is now standard, it is now - enabled by default. ``ceph fs set allow_dirfrags`` is now deprecated and - will be removed in a future release. - - - MDS daemons now activate and deactivate based on the value of - `max_mds`. Accordingly, ``ceph mds deactivate`` has been deprecated as it - is now redundant. - - - Taking a CephFS cluster down is now done by setting the down flag which - deactivates all MDS. For example: `ceph fs set cephfs down true`. - - - Preventing standbys from joining as new actives (formerly the now - deprecated cluster_down flag) on a file system is now accomplished by - setting the joinable flag. This is useful mostly for testing so that a - file system may be quickly brought down and deleted. - - - New CephFS file system attributes session_timeout and session_autoclose - are configurable via `ceph fs set`. The MDS config options - mds_session_timeout, mds_session_autoclose, and mds_max_file_size are now - obsolete. - - - Each mds rank now maintains a table that tracks open files and their - ancestor directories. Recovering MDS can quickly get open files' paths, - significantly reducing the time of loading inodes for open files. MDS - creates the table automatically if it does not exist. - - - CephFS snapshot is now stable and enabled by default on new filesystems. - To enable snapshot on existing filesystems, use the command:: - - ceph fs set <fs_name> allow_new_snaps - - The on-disk format of snapshot metadata has changed. The old format - metadata can not be properly handled in multiple active MDS configuration. - To guarantee all snapshot metadata on existing filesystems get updated, - perform the sequence of upgrading the MDS cluster strictly. - - See http://docs.ceph.com/docs/mimic/cephfs/upgrading/ - - For filesystems that have ever enabled snapshots, the multiple-active MDS - feature is disabled by the mimic monitor daemon. This will cause the "restore - previous max_mds" step in above URL to fail. To re-enable the feature, - either delete all old snapshots or scrub the whole filesystem: - - - ``ceph daemon <mds of rank 0> scrub_path / force recursive repair`` - - ``ceph daemon <mds of rank 0> scrub_path '~mdsdir' force recursive repair`` - - - Support has been added in Mimic for quotas in the Linux kernel client as of v4.17. - - See http://docs.ceph.com/docs/mimic/cephfs/quota/ - - - Many fixes have been made to the MDS metadata balancer which distributes - load across MDS. It is expected that the automatic balancing should work - well for most use-cases. In Luminous, subtree pinning was advised as a - manual workaround for poor balancer behavior. This may no longer be - necessary so it is recommended to try experimentally disabling pinning as a - form of load balancing to see if the built-in balancer adequately works for - you. Please report any poor behavior post-upgrade. - - - NFS-Ganesha is an NFS userspace server that can export shares from multiple - file systems, including CephFS. Support for this CephFS client has improved - significantly in Mimic. In particular, delegations are now supported through - the libcephfs library so that Ganesha may issue delegations to its NFS clients - allowing for safe write buffering and coherent read caching. Documentation - is also now available: http://docs.ceph.com/docs/mimic/cephfs/nfs/ - - - MDS uptime is now available in the output of the MDS admin socket ``status`` command. - - - MDS performance counters for client requests now include average latency as well as the count. - - -* *RBD* - - - The RBD C API's `rbd_discard` method now enforces a maximum length of - 2GB to match the C++ API's `Image::discard` method. This restriction - prevents overflow of the result code. - - - The rbd CLI's ``lock list`` JSON and XML output has changed. - - - The rbd CLI's ``showmapped`` JSON and XML output has changed. - - - RBD now optionally supports simplified image clone semantics where - non-protected snapshots can be cloned; and snapshots with linked clones - can be removed and the space automatically reclaimed once all remaining - linked clones are detached. This feature is enabled by default if - the OSD "require-min-compat-client" flag is set to mimic or later; or can be - overridden via the "rbd_default_clone_format" configuration option. - - - RBD now supports deep copy of images that preserves snapshot history. - -* *RGW* - - - The RGW Beast frontend is now declared stable and ready for production use. - :ref:`rgw_frontends` for details. - - - Civetweb frontend has been updated to the latest 1.10 release. - - - The S3 API now has support for multi-factor authentication. Refer to - :ref:`rgw_mfa` for details. - - - RGW now has a sync plugin to sync to AWS and clouds with S3-like APIs. - -* *MGR* - - - The (read-only) Ceph manager dashboard introduced in Ceph Luminous has been - replaced with a new implementation, providing a drop-in replacement offering - a number of additional management features. To access the new dashboard, you - first need to define a username and password and create an SSL certificate. - See the :ref:`mgr-dashboard` for a feature overview and installation - instructions. - - - The ``ceph-rest-api`` command-line tool (obsoleted by the MGR - `restful` module and deprecated since v12.2.5) has been dropped. - - There is a MGR module called `restful` which provides similar functionality - via a "pass through" method. See http://docs.ceph.com/docs/master/mgr/restful - for details. - - - New command to track throughput and IOPS statistics, also available in - ``ceph -s`` and previously in ``ceph -w``. To use this command, enable - the ``iostat`` Manager module and invoke it using ``ceph iostat``. See the - :ref:`iostat documentation <mgr-iostat-overview>` for details. - -* *build/packaging* - - - The ``rcceph`` script (``systemd/ceph`` in the source code tree, shipped as - ``/usr/sbin/rcceph`` in the ceph-base package for CentOS and SUSE) has been - dropped. This script was used to perform admin operations (start, stop, - restart, etc.) on all OSD and/or MON daemons running on a given machine. This - functionality is provided by the systemd target units (``ceph-osd.target``, - ``ceph-mon.target``, etc.). - - - The python-ceph-compat package is declared deprecated, and will be dropped - when all supported distros have completed the move to Python 3. It has - already been dropped from those supported distros where Python 3 is - standard and Python 2 is optional (currently only SUSE). - - - Ceph codebase has now moved to the C++-17 standard. - - - The Ceph LZ4 compression plugin is now enabled by default, and introduces a - new build dependency. - - -Detailed Changelog ------------------- - -* arch/arm: set ceph_arch_aarch64_crc32 only if the build host supports crc32cx (`issue#19705 <http://tracker.ceph.com/issues/19705>`_, `pr#17420 <https://github.com/ceph/ceph/pull/17420>`_, Kefu Chai) -* assert(false)->ceph_abort() (`pr#18072 <https://github.com/ceph/ceph/pull/18072>`_, Li Wang) -* auth: keep /dev/urandom open for get_random_bytes (`issue#21401 <http://tracker.ceph.com/issues/21401>`_, `pr#17972 <https://github.com/ceph/ceph/pull/17972>`_, Casey Bodley) -* bluestore: BlueStore::ExtentMap::dup impl (`pr#19719 <https://github.com/ceph/ceph/pull/19719>`_, Shinobu Kinjo) -* bluestore: bluestore/NVMEDevice: accurate the latency perf counter of queue latency (`pr#17435 <https://github.com/ceph/ceph/pull/17435>`_, Ziye Yang, Pan Liu) -* bluestore: bluestore/NVMEDevice: convert the legacy config opt related with SPDK (`pr#18502 <https://github.com/ceph/ceph/pull/18502>`_, Ziye Yang) -* bluestore: bluestore/NVMEDevice: do not deference a dangling pointer (`pr#19067 <https://github.com/ceph/ceph/pull/19067>`_, Kefu Chai) -* bluestore: bluestore/NVMEDevice: fix the bug in write function (`pr#17086 <https://github.com/ceph/ceph/pull/17086>`_, Ziye Yang, Pan Liu) -* bluestore: bluestore/NVMeDevice: update NVMeDevice code due to SPDK upgrade (`pr#16927 <https://github.com/ceph/ceph/pull/16927>`_, Ziye Yang) -* bluestore,build/ops: bluestore,cmake: enable building bluestore without aio (`pr#19017 <https://github.com/ceph/ceph/pull/19017>`_, Kefu Chai) -* bluestore,build/ops: Build: create a proper WITH_BLUESTORE option (`pr#18357 <https://github.com/ceph/ceph/pull/18357>`_, Alan Somers) -* bluestore,build/ops: ceph.spec.in,debian/rules: change aio-max-nr to 1048576 (`pr#17894 <https://github.com/ceph/ceph/pull/17894>`_, chenliuzhong) -* bluestore,build/ops,tests: os: add compile option to build libbluefs.so (`pr#16733 <https://github.com/ceph/ceph/pull/16733>`_, Pan Liu) -* bluestore,build/ops,tests: test/fio: fix build failure caused by sequencer replacement (`pr#20387 <https://github.com/ceph/ceph/pull/20387>`_, Igor Fedotov) -* bluestore: ceph-bluestore-tool: better fsck/repair, bluefs-bdev-{expand,sizes} (`pr#17709 <https://github.com/ceph/ceph/pull/17709>`_, Sage Weil) -* bluestore: ceph-bluestore-tool: check if bdev is empty on 'bluefs-bdev-expand' (`pr#17874 <https://github.com/ceph/ceph/pull/17874>`_, WANG Guoqin) -* bluestore: ceph-bluestore-tool: link target shouldn't ending with "\n" (`pr#18585 <https://github.com/ceph/ceph/pull/18585>`_, Yao Zongyou) -* bluestore,common: intarith: get rid of P2\* and ROUND_UP\* macros (`pr#21085 <https://github.com/ceph/ceph/pull/21085>`_, xie xingguo) -* bluestore: comp_min_blob_size init error (`pr#18318 <https://github.com/ceph/ceph/pull/18318>`_, linbing) -* bluestore: config: Change bluestore_cache_kv_max to type INT64 (`pr#20255 <https://github.com/ceph/ceph/pull/20255>`_, Zhi Zhang) -* bluestore,core: ceph-bluestore-tool: prime-osd-dir: update symlinks instead of bailing (`pr#18565 <https://github.com/ceph/ceph/pull/18565>`_, Sage Weil) -* bluestore,core: common/options: bluefs_buffered_io=true by default (`pr#20542 <https://github.com/ceph/ceph/pull/20542>`_, Sage Weil) -* bluestore,core: os/bluestore: compensate for bad freelistmanager size/blocks metadata (`issue#21089 <http://tracker.ceph.com/issues/21089>`_, `pr#17268 <https://github.com/ceph/ceph/pull/17268>`_, Sage Weil) -* bluestore,core: os/bluestore: fix data read error injection in bluestore (`pr#19866 <https://github.com/ceph/ceph/pull/19866>`_, Sage Weil) -* bluestore,core: os/bluestore: kv_max -> kv_min (`pr#20544 <https://github.com/ceph/ceph/pull/20544>`_, Sage Weil) -* bluestore,core: os/bluestore: switch default allocator to stupid; test both bitmap and stupid in qa (`pr#16906 <https://github.com/ceph/ceph/pull/16906>`_, Sage Weil) -* bluestore,core: src/bluestore/NVMEDevice: make all read use aio_submit (`pr#17655 <https://github.com/ceph/ceph/pull/17655>`_, Ziye Yang, Pan Liu) -* bluestore,core,tests: test/unittest_bluefs: check whether rmdir success (`pr#15363 <https://github.com/ceph/ceph/pull/15363>`_, shiqi) -* bluestore,core: tool: ceph-kvstore-tool doesn't umount BlueStore properly (`issue#21625 <http://tracker.ceph.com/issues/21625>`_, `pr#18083 <https://github.com/ceph/ceph/pull/18083>`_, Chang Liu) -* bluestore: define default value of LoglevelV only once (3 templates) (`pr#20727 <https://github.com/ceph/ceph/pull/20727>`_, Matt Benjamin) -* bluestore: drop unused friend class in SharedDriverQueueData (`pr#16894 <https://github.com/ceph/ceph/pull/16894>`_, Pan Liu) -* bluestore: fix aio_t::rval type (`issue#23527 <http://tracker.ceph.com/issues/23527>`_, `pr#21136 <https://github.com/ceph/ceph/pull/21136>`_, kungf) -* bluestore: fix build on armhf (`pr#20951 <https://github.com/ceph/ceph/pull/20951>`_, Kefu Chai) -* bluestore: fixed compilation error when enable spdk with gcc 4.8.5 (`pr#16945 <https://github.com/ceph/ceph/pull/16945>`_, Ziye Yang, Pan Liu) -* bluestore: kv/RocksDBStore: extract common code to a new function (`pr#16532 <https://github.com/ceph/ceph/pull/16532>`_, Pan Liu) -* bluestore/NVMEDevice: code cleanup (`pr#17284 <https://github.com/ceph/ceph/pull/17284>`_, Ziye Yang, Pan Liu) -* bluestore: os/bluestore: add bluestore_prefer_deferred_size_hdd/ssd to tracked keys (`pr#17459 <https://github.com/ceph/ceph/pull/17459>`_, xie xingguo) -* bluestore: os/bluestore: add discard method for ssd's performance (`pr#14727 <https://github.com/ceph/ceph/pull/14727>`_, Taeksang Kim) -* bluestore: os/bluestore: Add lat record of deferred_queued and deferred_aio_wait (`pr#17015 <https://github.com/ceph/ceph/pull/17015>`_, lisali) -* bluestore: os/bluestore: Add missing __func__ in dout (`pr#17903 <https://github.com/ceph/ceph/pull/17903>`_, lisali) -* bluestore: os/bluestore: add perf counter for allocator fragmentation (`pr#21377 <https://github.com/ceph/ceph/pull/21377>`_, Igor Fedotov) -* bluestore: os/bluestore: allocate entire write in one go (`pr#17698 <https://github.com/ceph/ceph/pull/17698>`_, Sage Weil) -* bluestore: os/bluestore: allow reconstruction of osd data dir from bluestore bdev label (`pr#18256 <https://github.com/ceph/ceph/pull/18256>`_, Sage Weil) -* bluestore: os/bluestore: alter the allow_eio policy regarding kernel's error list (`issue#23333 <http://tracker.ceph.com/issues/23333>`_, `pr#21306 <https://github.com/ceph/ceph/pull/21306>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: avoid excessive ops in _txc_release_alloc (`pr#18854 <https://github.com/ceph/ceph/pull/18854>`_, Igor Fedotov) -* bluestore: os/bluestore: avoid omit cache for remove-collection (`pr#18785 <https://github.com/ceph/ceph/pull/18785>`_, Jianpeng Ma) -* bluestore: os/bluestore: avoid overhead of std::function in blob_t (`pr#20294 <https://github.com/ceph/ceph/pull/20294>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: avoid unneeded BlobRefing in _do_read() (`pr#19864 <https://github.com/ceph/ceph/pull/19864>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: be more verbose when hitting unloaded shard in extent map (`pr#21245 <https://github.com/ceph/ceph/pull/21245>`_, Igor Fedotov) -* bluestore: os/bluestore/BlueFS: compact log even when sync_metadata sees no work (`pr#17354 <https://github.com/ceph/ceph/pull/17354>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: Don't call debug related code under any condition (`pr#17627 <https://github.com/ceph/ceph/pull/17627>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: don't need wait for aio when using _sync_write (`pr#16066 <https://github.com/ceph/ceph/pull/16066>`_, Haodong Tang) -* bluestore: os/bluestore/BlueFS: fix race with log flush during async log compaction (`issue#21878 <http://tracker.ceph.com/issues/21878>`_, `pr#18428 <https://github.com/ceph/ceph/pull/18428>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: move release unused extents work in _flush_and_syn_log (`pr#17684 <https://github.com/ceph/ceph/pull/17684>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: prevent _compact_log_async reentry (`issue#21250 <http://tracker.ceph.com/issues/21250>`_, `pr#17503 <https://github.com/ceph/ceph/pull/17503>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: Reduce unnecessary operations in collect_metadata (`pr#17995 <https://github.com/ceph/ceph/pull/17995>`_, Luo Kexue) -* bluestore: os/bluestore/BlueFS: sanity check that alloc->allocate() won't return 0 (`pr#18259 <https://github.com/ceph/ceph/pull/18259>`_, xie xingguo) -* bluestore: os/bluestore/BlueFS: several cleanups (`pr#17966 <https://github.com/ceph/ceph/pull/17966>`_, xie xingguo) -* bluestore: os/bluestore/bluefs_types: make block_mask 64-bit (`pr#21629 <https://github.com/ceph/ceph/pull/21629>`_, Sage Weil) -* bluestore: os/bluestore/BlueStore: ASAP wake up _kv_finalize_thread (`pr#18203 <https://github.com/ceph/ceph/pull/18203>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueStore: narrow deferred_lock in _deferred_submit_unlock (`pr#17628 <https://github.com/ceph/ceph/pull/17628>`_, Jianpeng Ma) -* bluestore: os/bluestore: bluestore repair should use interval_set::union_insert (`pr#20900 <https://github.com/ceph/ceph/pull/20900>`_, Igor Fedotov) -* bluestore: os/bluestore: cleanup around ExtentList, AllocExtent and bluestore_extent_t classes (`pr#20360 <https://github.com/ceph/ceph/pull/20360>`_, Igor Fedotov) -* bluestore: os/bluestore: clearer comments, not slower code (`pr#16872 <https://github.com/ceph/ceph/pull/16872>`_, Mark Nelson) -* bluestore: os/bluestore: correctly check all block devices to decide if journal is_rotational (`issue#23141 <http://tracker.ceph.com/issues/23141>`_, `pr#20602 <https://github.com/ceph/ceph/pull/20602>`_, Greg Farnum) -* bluestore: os/bluestore: delete redundant header file in KernelDevice.cc (`pr#18631 <https://github.com/ceph/ceph/pull/18631>`_, Jing Li) -* bluestore: os/bluestore: do not assert if BlueFS rebalance is unable to allocate sufficient space (`pr#18494 <https://github.com/ceph/ceph/pull/18494>`_, Igor Fedotov) -* bluestore: os/bluestore: do not core dump when BlueRocksEnv gets EEXIST error (`issue#20871 <http://tracker.ceph.com/issues/20871>`_, `pr#17357 <https://github.com/ceph/ceph/pull/17357>`_, liuchang0812) -* bluestore: os/bluestore: do not core dump when we try to open kvstore twice (`pr#18161 <https://github.com/ceph/ceph/pull/18161>`_, Chang Liu) -* bluestore: os/bluestore: do not release empty bluefs_extents_reclaiming (`pr#18671 <https://github.com/ceph/ceph/pull/18671>`_, Igor Fedotov) -* bluestore: os/bluestore: do not segv on kraken upgrade debug print (`issue#20977 <http://tracker.ceph.com/issues/20977>`_, `pr#16992 <https://github.com/ceph/ceph/pull/16992>`_, Sage Weil) -* bluestore: os/bluestore: don't re-initialize csum-setting for existing blobs (`issue#21175 <http://tracker.ceph.com/issues/21175>`_, `pr#17398 <https://github.com/ceph/ceph/pull/17398>`_, xie xingguo) -* bluestore: os/bluestore: do SSD discard on mkfs (`pr#20897 <https://github.com/ceph/ceph/pull/20897>`_, Igor Fedotov) -* bluestore: os/bluestore: drop deferred_submit_lock, fix aio leak (`issue#21171 <http://tracker.ceph.com/issues/21171>`_, `pr#17352 <https://github.com/ceph/ceph/pull/17352>`_, Sage Weil) -* bluestore: os/bluestore: drop unused function declaration (`pr#18075 <https://github.com/ceph/ceph/pull/18075>`_, Li Wang) -* bluestore: os/bluestore: drop unused param "what" in apply() (`pr#17251 <https://github.com/ceph/ceph/pull/17251>`_, songweibin) -* bluestore: os/bluestore: _dump_onode() don't prolongate Onode anymore (`pr#19841 <https://github.com/ceph/ceph/pull/19841>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: dynamic CF configuration; put pglog omap in separate CF (`pr#18224 <https://github.com/ceph/ceph/pull/18224>`_, Sage Weil) -* bluestore: os/bluestore: enlarege aligned_size avoid too many vector(> IOV_MAX) (`issue#21932 <http://tracker.ceph.com/issues/21932>`_, `pr#18828 <https://github.com/ceph/ceph/pull/18828>`_, Jianpeng Ma) -* bluestore: os/bluestore: ExtentMap::reshard - fix wrong shard length (`pr#17334 <https://github.com/ceph/ceph/pull/17334>`_, chenliuzhong) -* bluestore: os/bluestore: fail early on very large objects (`issue#20923 <http://tracker.ceph.com/issues/20923>`_, `pr#16924 <https://github.com/ceph/ceph/pull/16924>`_, Sage Weil) -* bluestore: os/bluestore: fix another aio stall/deadlock (`issue#21470 <http://tracker.ceph.com/issues/21470>`_, `pr#18118 <https://github.com/ceph/ceph/pull/18118>`_, Sage Weil) -* bluestore: os/bluestore: fix broken cap in _balance_bluefs_freespace() (`pr#21097 <https://github.com/ceph/ceph/pull/21097>`_, Igor Fedotov) -* bluestore: os/bluestore: fix clone dirty_range again (`issue#20983 <http://tracker.ceph.com/issues/20983>`_, `pr#16994 <https://github.com/ceph/ceph/pull/16994>`_, Sage Weil) -* bluestore: os/bluestore: fix dirty_shard off-by-one (`pr#16850 <https://github.com/ceph/ceph/pull/16850>`_, Sage Weil) -* bluestore: os/bluestore: fix exceeding the max IO queue depth in KernelDevice (`issue#23246 <http://tracker.ceph.com/issues/23246>`_, `pr#20996 <https://github.com/ceph/ceph/pull/20996>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: fix potential assert when splitting collection (`pr#19519 <https://github.com/ceph/ceph/pull/19519>`_, Igor Fedotov) -* bluestore: os/bluestore: fix SharedBlob unregistration (`issue#22039 <http://tracker.ceph.com/issues/22039>`_, `pr#18805 <https://github.com/ceph/ceph/pull/18805>`_, Sage Weil) -* bluestore: os/bluestore: fix some code formatting (`pr#21037 <https://github.com/ceph/ceph/pull/21037>`_, Gu Zhongyan) -* bluestore: os/bluestore: fix the allocate in bluefs (`pr#19030 <https://github.com/ceph/ceph/pull/19030>`_, tangwenjun) -* bluestore: os/bluestore: fix the demotion in StupidAllocator::init_rm_free (`pr#20430 <https://github.com/ceph/ceph/pull/20430>`_, Kefu Chai) -* bluestore: os/bluestore: fix the wrong usage for map_any (`pr#18939 <https://github.com/ceph/ceph/pull/18939>`_, Jianpeng Ma) -* bluestore: os/bluestore: fix wrong usage for BlueFS::_allocate (`pr#20708 <https://github.com/ceph/ceph/pull/20708>`_, Jianpeng Ma) -* bluestore: os/bluestore: free the spdk qpair resource correctly in destructor of SharedDriverQueueData (`pr#20929 <https://github.com/ceph/ceph/pull/20929>`_, Jianyu Li) -* bluestore: os/bluestore: handle small main device properly (`pr#17416 <https://github.com/ceph/ceph/pull/17416>`_, xie xingguo) -* bluestore: os/bluestore: ignore 0x2000~2000 extent oddity from luminous upgrade (`issue#21408 <http://tracker.ceph.com/issues/21408>`_, `pr#17845 <https://github.com/ceph/ceph/pull/17845>`_, Sage Weil) -* bluestore: os/bluestore: implement BlueStore repair (`pr#19843 <https://github.com/ceph/ceph/pull/19843>`_, Igor Fedotov) -* bluestore: os/bluestore: make bluefs behave better near enospc (`pr#18120 <https://github.com/ceph/ceph/pull/18120>`_, Sage Weil) -* bluestore: os/bluestore: mark derivatives of AioContext as final (`pr#20227 <https://github.com/ceph/ceph/pull/20227>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: move aio_callback{,_priv} to base class BlockDevice (`pr#17002 <https://github.com/ceph/ceph/pull/17002>`_, mychoxin) -* bluestore: os/bluestore: move assert of read/write to base class (`pr#17033 <https://github.com/ceph/ceph/pull/17033>`_, mychoxin) -* bluestore: os/bluestore: move size and block_size to the base class BlockDevice (`pr#16886 <https://github.com/ceph/ceph/pull/16886>`_, Pan Liu) -* bluestore: os/bluestore: no need to fsync when failed to write label (`pr#20092 <https://github.com/ceph/ceph/pull/20092>`_, tangwenjun) -* bluestore: os/bluestore: no trim debug noise if there is no trimming to be done (`pr#20684 <https://github.com/ceph/ceph/pull/20684>`_, Sage Weil) -* bluestore: os/bluestore/NVMEDevice: change write_bl to bl (`pr#17145 <https://github.com/ceph/ceph/pull/17145>`_, Ziye Yang, Pan Liu) -* bluestore: os/bluestore/NVMEDevice: fix the nvme queue depth issue (`pr#17200 <https://github.com/ceph/ceph/pull/17200>`_, Ziye Yang, Pan Liu) -* bluestore: os/bluestore/NVMEDevice: Remove using dpdk thread (`pr#17769 <https://github.com/ceph/ceph/pull/17769>`_, Ziye Yang, Pan Liu) -* bluestore: os/bluestore: OpSequencer: reduce kv_submitted_waiters if _is_all_kv_submitted() return true (`pr#18622 <https://github.com/ceph/ceph/pull/18622>`_, Jianpeng Ma) -* bluestore: os/bluestore: optimize _collection_list (`pr#18777 <https://github.com/ceph/ceph/pull/18777>`_, Jianpeng Ma) -* bluestore: os/bluestore: pass strict flag to bluestore_blob_use_tracker_t::equal() (`pr#15705 <https://github.com/ceph/ceph/pull/15705>`_, xie xingguo) -* bluestore: os/bluestore: Prealloc memory avoid realloc in list_collection (`pr#18804 <https://github.com/ceph/ceph/pull/18804>`_, Jianpeng Ma) -* bluestore: os/bluestore: prevent mount if osd_max_object_size >= 4G (`pr#19043 <https://github.com/ceph/ceph/pull/19043>`_, Sage Weil) -* bluestore: os/bluestore: print aio in batch (`pr#18873 <https://github.com/ceph/ceph/pull/18873>`_, Kefu Chai) -* bluestore: os/bluestore: print leaked extents to debug output (`pr#17225 <https://github.com/ceph/ceph/pull/17225>`_, Sage Weil) -* bluestore: os/bluestore: propagate read-EIO to high level callers (`pr#17744 <https://github.com/ceph/ceph/pull/17744>`_, xie xingguo) -* bluestore: os/bluestore: put cached attrs in correct mempool (`issue#21417 <http://tracker.ceph.com/issues/21417>`_, `pr#18001 <https://github.com/ceph/ceph/pull/18001>`_, Sage Weil) -* bluestore: os/bluestore: recalc_allocated() when decoding bluefs_fnode_t (`issue#23212 <http://tracker.ceph.com/issues/23212>`_, `pr#20701 <https://github.com/ceph/ceph/pull/20701>`_, Jianpeng Ma, Kefu Chai) -* bluestore: os/bluestore: reduce meaningless flush (`pr#19027 <https://github.com/ceph/ceph/pull/19027>`_, tangwenjun) -* bluestore: os/bluestore: refactor FreeListManager to get clearer view on the number (`issue#22535 <http://tracker.ceph.com/issues/22535>`_, `pr#19718 <https://github.com/ceph/ceph/pull/19718>`_, Igor Fedotov) -* bluestore: os/bluestore: release disk extents in bulky manner (`pr#17913 <https://github.com/ceph/ceph/pull/17913>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: remove ineffective BlueFS fnode extent calculation (`pr#18905 <https://github.com/ceph/ceph/pull/18905>`_, Igor Fedotov) -* bluestore: os/bluestore: remove unused parameters (`pr#18635 <https://github.com/ceph/ceph/pull/18635>`_, Jianpeng Ma) -* bluestore: os/bluestore: remove unused variable (`pr#21063 <https://github.com/ceph/ceph/pull/21063>`_, Gu Zhongyan) -* bluestore: os/bluestore: remove useless function submit (`pr#17537 <https://github.com/ceph/ceph/pull/17537>`_, mychoxin) -* bluestore: os/bluestore: reorder members of bluefs_extent_t for space efficiency (`pr#21034 <https://github.com/ceph/ceph/pull/21034>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: replace dout with ldout in StupidAllocator (`pr#17404 <https://github.com/ceph/ceph/pull/17404>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: report error and quit correctly when disk error happens (`issue#21263 <http://tracker.ceph.com/issues/21263>`_, `pr#17522 <https://github.com/ceph/ceph/pull/17522>`_, Pan Liu) -* bluestore: os/bluestore: Revert "os/bluestore: allow multiple DeferredBatches in flight at once" (`issue#20925 <http://tracker.ceph.com/issues/20925>`_, `issue#20295 <http://tracker.ceph.com/issues/20295>`_, `pr#16900 <https://github.com/ceph/ceph/pull/16900>`_, Sage Weil) -* bluestore: os/bluestore: s/bluefs_total/bluefs_free/ (`pr#21036 <https://github.com/ceph/ceph/pull/21036>`_, xie xingguo) -* bluestore: os/bluestore: separate finisher for deferred_try_submit (`issue#21207 <http://tracker.ceph.com/issues/21207>`_, `pr#17409 <https://github.com/ceph/ceph/pull/17409>`_, Sage Weil) -* bluestore: os/bluestore: set bitmap freelist resolution to min_alloc_size (`pr#17610 <https://github.com/ceph/ceph/pull/17610>`_, Sage Weil) -* bluestore: os/bluestore: shrink aio submit size to pending value (`pr#17588 <https://github.com/ceph/ceph/pull/17588>`_, kungf) -* bluestore: os/bluestore: silence -Wreturn-type warning (`pr#18286 <https://github.com/ceph/ceph/pull/18286>`_, Kefu Chai) -* bluestore: os/bluestore: support calculate cost when using spdk (`pr#17091 <https://github.com/ceph/ceph/pull/17091>`_, Ziye Yang, Pan Liu) -* bluestore: os/bluestore: synchronous on_applied completions (`pr#18196 <https://github.com/ceph/ceph/pull/18196>`_, Sage Weil) -* bluestore: os/bluestore: trim cache every 50ms (instead of 200ms) (`pr#20498 <https://github.com/ceph/ceph/pull/20498>`_, Sage Weil) -* bluestore: os/bluestore: update description for bluestore_compression\_[min|max|_blob_size options (`pr#21244 <https://github.com/ceph/ceph/pull/21244>`_, Igor Fedotov) -* bluestore: os/bluestore: using macro OBJECT_MAX_SIZE to check osd_max_object_size (`pr#19622 <https://github.com/ceph/ceph/pull/19622>`_, Jianpeng Ma) -* bluestore: osd/bluestore: delete unused variable in KernelDevice (`pr#20857 <https://github.com/ceph/ceph/pull/20857>`_, Leo Zhang) -* bluestore: osd,os/bluestore: Display current size of osd_max_object_size (`pr#19725 <https://github.com/ceph/ceph/pull/19725>`_, Shinobu Kinjo) -* bluestore: Revert "os/bluestore: pass strict flag to bluestore_blob_use_tracker_t::equal()" (`issue#21293 <http://tracker.ceph.com/issues/21293>`_, `pr#17569 <https://github.com/ceph/ceph/pull/17569>`_, Sage Weil) -* bluestore,rgw: rgw,unittest_bit_alloc: silence clang analyzer warning (`pr#17294 <https://github.com/ceph/ceph/pull/17294>`_, Kefu Chai) -* bluestore,tests: objectstore/store_test: fix lack of flush prior to collection_empty()… (`issue#22409 <http://tracker.ceph.com/issues/22409>`_, `pr#19764 <https://github.com/ceph/ceph/pull/19764>`_, Igor Fedotov) -* bluestore,tests: Revert "bluestore/fio: Fixed problem with all objects having the same hash (`pr#18352 <https://github.com/ceph/ceph/pull/18352>`_, Radoslaw Zarzynski) -* bluestore,tools: ceph-bluestore-tool: create out_dir before create full path of kvdb (`pr#18367 <https://github.com/ceph/ceph/pull/18367>`_, Leo Zhang) -* bluestore,tools: os/bluestore/bluestore_tool: add log-dump command to dump bluefs's log (`pr#18535 <https://github.com/ceph/ceph/pull/18535>`_, Yang Honggang) -* build: fix dpdk build error (`pr#18087 <https://github.com/ceph/ceph/pull/18087>`_, chunmei) -* build mimic-dev1 with gcc 7 (`issue#22438 <http://tracker.ceph.com/issues/22438>`_, `pr#19548 <https://github.com/ceph/ceph/pull/19548>`_, Kefu Chai) -* build/ops: automake: remove files required by automake (`pr#17937 <https://github.com/ceph/ceph/pull/17937>`_, Kefu Chai) -* build/ops: blkin: link against lttng-ust-fork (`pr#17673 <https://github.com/ceph/ceph/pull/17673>`_, Mohamad Gebai) -* build/ops: boost: remove boost submodule (`pr#17405 <https://github.com/ceph/ceph/pull/17405>`_, Kefu Chai) -* build/ops: build: do_cmake: allow ARGS to be overridden (`pr#19876 <https://github.com/ceph/ceph/pull/19876>`_, Abhishek Lekshmanan) -* build/ops: build: remove PGMap.cc from libcommon (`pr#18496 <https://github.com/ceph/ceph/pull/18496>`_, Sage Weil) -* build/ops: ceph-disk activate unlocks bluestore data partition (`issue#20488 <http://tracker.ceph.com/issues/20488>`_, `pr#16357 <https://github.com/ceph/ceph/pull/16357>`_, Felix Winterhalter) -* build/ops: ceph_disk: allow "no fsid" on activate (`pr#18991 <https://github.com/ceph/ceph/pull/18991>`_, Dan Mick) -* build/ops,cephfs: ceph-object-corpus: update to fix make check (`pr#21261 <https://github.com/ceph/ceph/pull/21261>`_, Patrick Donnelly) -* build/ops,cephfs: cmake, test/fs, client: fix build with clang (`pr#20392 <https://github.com/ceph/ceph/pull/20392>`_, Adam C. Emerson) -* build/ops: ceph.spec: use devtoolset-6-gcc-c++ on aarch64 (`issue#22301 <http://tracker.ceph.com/issues/22301>`_, `pr#19341 <https://github.com/ceph/ceph/pull/19341>`_, Kefu Chai) -* build/ops: ceph-volume: Require lvm2, move to osd package (`issue#22443 <http://tracker.ceph.com/issues/22443>`_, `pr#19529 <https://github.com/ceph/ceph/pull/19529>`_, Theofilos Mouratidis) -* build/ops: ceph-volume: tests add tests for the is_mounted utility (`pr#16962 <https://github.com/ceph/ceph/pull/16962>`_, Alfredo Deza) -* build/ops: change WITH_SYSTEMD default to ON (`pr#20404 <https://github.com/ceph/ceph/pull/20404>`_, Nathan Cutler) -* build/ops: cmake/BuildBoost: fixes to ready seastar (`pr#20616 <https://github.com/ceph/ceph/pull/20616>`_, Kefu Chai, Casey Bodley) -* build/ops: cmake,deb: install system units using cmake (`pr#20618 <https://github.com/ceph/ceph/pull/20618>`_, Kefu Chai) -* build/ops: cmake: link libcommon with libstdc++ statically if WITH_STATIC_LIBSTDCXX (`issue#22438 <http://tracker.ceph.com/issues/22438>`_, `pr#19515 <https://github.com/ceph/ceph/pull/19515>`_, Kefu Chai) -* build/ops: cmake,make-dist: bump up boost version to 1.67 (`pr#21572 <https://github.com/ceph/ceph/pull/21572>`_, Kefu Chai) -* build/ops: cmake,mds: detect std::map::merge() before using it (`pr#21211 <https://github.com/ceph/ceph/pull/21211>`_, Willem Jan Withagen, Kefu Chai) -* build/ops: cmake/mgr: use Python 3 virtualenv if mgr subinterpreter is Python 3 (`pr#21446 <https://github.com/ceph/ceph/pull/21446>`_, Nathan Cutler) -* build/ops,common: cmake, common: silence cmake and gcc warnings (`issue#23774 <http://tracker.ceph.com/issues/23774>`_, `pr#21484 <https://github.com/ceph/ceph/pull/21484>`_, Kefu Chai) -* build/ops: common/time: add time.h for Alpine build (`pr#19863 <https://github.com/ceph/ceph/pull/19863>`_, huanwen ren) -* build/ops,common: Update C++ standard to 14 and clean up (`pr#19490 <https://github.com/ceph/ceph/pull/19490>`_, Adam C. Emerson) -* build/ops,core: ceph-crush-location: remove (`pr#19881 <https://github.com/ceph/ceph/pull/19881>`_, Sage Weil) -* build/ops,core: ceph-volume: do not use --key during mkfs (`issue#22283 <http://tracker.ceph.com/issues/22283>`_, `pr#19276 <https://github.com/ceph/ceph/pull/19276>`_, Kefu Chai, Sage Weil) -* build/ops,core: /etc/sysconfig/ceph: remove jemalloc option (`issue#20557 <http://tracker.ceph.com/issues/20557>`_, `pr#18487 <https://github.com/ceph/ceph/pull/18487>`_, Sage Weil) -* build/ops,core: mimic: cmake,common,filestore: silence gcc-8 warnings/errors (`pr#21862 <https://github.com/ceph/ceph/pull/21862>`_, Kefu Chai) -* build/ops,core: mimic: cmake: do not check for aligned_alloc() anymore (`issue#23653 <http://tracker.ceph.com/issues/23653>`_, `pr#22048 <https://github.com/ceph/ceph/pull/22048>`_, Kefu Chai) -* build/ops,core: msg/async: update to work with dpdk shipped with spdk v17.10 (`pr#19470 <https://github.com/ceph/ceph/pull/19470>`_, Kefu Chai) -* build/ops,core: zstd: Upgrade to v1.3.2 (`pr#18407 <https://github.com/ceph/ceph/pull/18407>`_, Adam C. Emerson) -* build/ops: debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22319 <http://tracker.ceph.com/issues/22319>`_, `pr#19328 <https://github.com/ceph/ceph/pull/19328>`_, Sage Weil) -* build/ops: debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22319 <http://tracker.ceph.com/issues/22319>`_, `pr#19395 <https://github.com/ceph/ceph/pull/19395>`_, Kefu Chai, Sage Weil) -* build/ops: debian/control: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`pr#19356 <https://github.com/ceph/ceph/pull/19356>`_, Kefu Chai) -* build/ops: debian: fix package relationships after 40caf6a6 (`issue#21762 <http://tracker.ceph.com/issues/21762>`_, `pr#18474 <https://github.com/ceph/ceph/pull/18474>`_, Kefu Chai) -* build/ops: debian: lock ceph user during purge (`pr#15118 <https://github.com/ceph/ceph/pull/15118>`_, Caleb Boylan) -* build/ops: debian/rules: no more ChangeLog (`pr#18023 <https://github.com/ceph/ceph/pull/18023>`_, Sage Weil) -* build/ops: debian/rules: strip ceph-base libraries (`issue#22640 <http://tracker.ceph.com/issues/22640>`_, `pr#19870 <https://github.com/ceph/ceph/pull/19870>`_, Sage Weil) -* build/ops: do\_{cmake,freebsd}: Don't invoke nproc(1) on FreeBSD (`pr#17949 <https://github.com/ceph/ceph/pull/17949>`_, Alan Somers) -* build/ops: dpdk: remove redundant dpdk submodule (`pr#18712 <https://github.com/ceph/ceph/pull/18712>`_, chunmei) -* build/ops: EventKqueue: Clang want realloc return to be typed (`pr#21550 <https://github.com/ceph/ceph/pull/21550>`_, Willem Jan Withagen) -* build/ops: filestore,rgw: fix types/casts making clang on 32-Bit working (`pr#21055 <https://github.com/ceph/ceph/pull/21055>`_, Daniel Glaser) -* build/ops: Fix ppc64 support for ceph (`pr#16753 <https://github.com/ceph/ceph/pull/16753>`_, Boris Ranto) -* build/ops: Fix two dpdk assert happened in dpdk library (`pr#18409 <https://github.com/ceph/ceph/pull/18409>`_, chunmei) -* build/ops: FreeBSD: add new required packages to be installed (`pr#21349 <https://github.com/ceph/ceph/pull/21349>`_, Willem Jan Withagen) -* build/ops: githubmap: add some known Ceph reviewers (`pr#17507 <https://github.com/ceph/ceph/pull/17507>`_, Patrick Donnelly) -* build/ops: .githubmap: Add wjwithagen as a known Ceph reviewer (`pr#17518 <https://github.com/ceph/ceph/pull/17518>`_, Willem Jan Withagen) -* build/ops: .githubmap: Update (`pr#18230 <https://github.com/ceph/ceph/pull/18230>`_, Sage Weil) -* build/ops: .gitignore: allow debian .patch files (`pr#17577 <https://github.com/ceph/ceph/pull/17577>`_, Ken Dreyer) -* build/ops: include: compat.h, fix the return result of pthread_set_name() (`pr#20474 <https://github.com/ceph/ceph/pull/20474>`_, Willem Jan Withagen) -* build/ops: install-deps: Add support for 'opensuse-tumbleweed' (`pr#21650 <https://github.com/ceph/ceph/pull/21650>`_, Ricardo Marques) -* build/ops: install-deps.sh: avoid re-installing g++-7 (`pr#19468 <https://github.com/ceph/ceph/pull/19468>`_, Kefu Chai) -* build/ops: install-deps.sh, cmake: use GCC-7 on xenial also (`pr#19418 <https://github.com/ceph/ceph/pull/19418>`_, Kefu Chai) -* build/ops: install-deps.sh: install new gcc as the default the right way (`pr#19417 <https://github.com/ceph/ceph/pull/19417>`_, Kefu Chai) -* build/ops: install-deps.sh: pass --no-recommends to zypper (`issue#22998 <http://tracker.ceph.com/issues/22998>`_, `pr#20434 <https://github.com/ceph/ceph/pull/20434>`_, Nathan Cutler) -* build/ops: install-deps.sh: set python2 %bcond by environment (`issue#22999 <http://tracker.ceph.com/issues/22999>`_, `pr#20436 <https://github.com/ceph/ceph/pull/20436>`_, Nathan Cutler) -* build/ops: install-deps.sh: use DTS on centos if GCC is too old (`pr#19398 <https://github.com/ceph/ceph/pull/19398>`_, Kefu Chai) -* build/ops: install-deps.sh: use tee for writing a file (`pr#19516 <https://github.com/ceph/ceph/pull/19516>`_, Kefu Chai) -* build/ops: install-deps: use DTS-7 on aarch64 and only download mirrored package indexes (`pr#19645 <https://github.com/ceph/ceph/pull/19645>`_, Kefu Chai, Songbo Wang) -* build/ops: libmpem: Revert "submodule: make libmpem as a submodule." (`pr#18414 <https://github.com/ceph/ceph/pull/18414>`_, Jianpeng Ma) -* build/ops: logrotate: add systemd reload in logrotate in case of centos minimal without killall (`pr#16586 <https://github.com/ceph/ceph/pull/16586>`_, Tianshan Qu) -* build/ops: make-dist,cmake: avoid re-downloading boost (`pr#19124 <https://github.com/ceph/ceph/pull/19124>`_, Kefu Chai) -* build/ops: make-dist,cmake: move boost tarball location to download.ceph.com (`pr#17980 <https://github.com/ceph/ceph/pull/17980>`_, Sage Weil) -* build/ops: make-dist,cmake: Try multiple URLs to download boost before failing (`pr#18048 <https://github.com/ceph/ceph/pull/18048>`_, Brad Hubbard) -* build/ops: make-dist: fall back to python3 (`pr#21127 <https://github.com/ceph/ceph/pull/21127>`_, Nathan Cutler) -* build/ops,mgr: mgr/dashboard: build tweaks (`pr#20752 <https://github.com/ceph/ceph/pull/20752>`_, John Spray) -* build/ops,mgr: mgr/dashboard: remove node/npm system installation (`pr#20898 <https://github.com/ceph/ceph/pull/20898>`_, Tiago Melo) -* build/ops,mgr: packaging: explicit jinja2 dependency for dashboard (`issue#22457 <http://tracker.ceph.com/issues/22457>`_, `pr#19598 <https://github.com/ceph/ceph/pull/19598>`_, John Spray) -* build/ops,mgr,tests: mgr/dashboard: replace dashboard with dashboard_v2 (`pr#20912 <https://github.com/ceph/ceph/pull/20912>`_, Ricardo Dias) -* build/ops: mimic: cmake: use javac -h for creating JNI native headers (`issue#24012 <http://tracker.ceph.com/issues/24012>`_, `pr#21824 <https://github.com/ceph/ceph/pull/21824>`_, Kefu Chai) -* build/ops: mimic: silence various warnings to enable GCC-8 build (`pr#22081 <https://github.com/ceph/ceph/pull/22081>`_, Adam C. Emerson, Kefu Chai) -* build/ops: mon,osd: do not use crush_device_class file to initalize class for new osds (`pr#19939 <https://github.com/ceph/ceph/pull/19939>`_, Sage Weil) -* build/ops: mstart.sh: support read CLUSTERS_LIST from env var (`pr#16988 <https://github.com/ceph/ceph/pull/16988>`_, Jiaying Ren) -* build/ops: os/CMakeLists: fix link errro when enable WITH_PMEM=ON (`pr#20658 <https://github.com/ceph/ceph/pull/20658>`_, Jianpeng Ma) -* build/ops: osdc,os,osd: fix build on osx (`pr#20029 <https://github.com/ceph/ceph/pull/20029>`_, Kefu Chai) -* build/ops: python-numpy-devel build dependency for SUSE (`issue#21176 <http://tracker.ceph.com/issues/21176>`_, `pr#17366 <https://github.com/ceph/ceph/pull/17366>`_, Nathan Cutler) -* build/ops: qa/tests - added for the suites with subset be able to use 'testing' … (`pr#21454 <https://github.com/ceph/ceph/pull/21454>`_, Yuri Weinstein) -* build/ops,rbd: ceph-dencoder: moved RBD types outside of RGW preprocessor guard (`issue#22321 <http://tracker.ceph.com/issues/22321>`_, `pr#19343 <https://github.com/ceph/ceph/pull/19343>`_, Jason Dillaman) -* build/ops: rbdmap: fix umount when multiple mounts use the same RBD (`pr#17978 <https://github.com/ceph/ceph/pull/17978>`_, Alexandre Marangone) -* build/ops: Revert "make-dist: add OBS-specific release suffix on SUSE" (`pr#20813 <https://github.com/ceph/ceph/pull/20813>`_, Nathan Cutler) -* build/ops,rgw: radosgw: Make compilation with CryptoPP possible (`pr#14955 <https://github.com/ceph/ceph/pull/14955>`_, Adam Kupczyk) -* build/ops: rocksdb: do not use aligned_alloc (`issue#23653 <http://tracker.ceph.com/issues/23653>`_, `pr#21632 <https://github.com/ceph/ceph/pull/21632>`_, Kefu Chai) -* build/ops: rpm: adjust ceph-{osdomap,kvstore,monstore}-tool feature move (`issue#22558 <http://tracker.ceph.com/issues/22558>`_, `pr#19777 <https://github.com/ceph/ceph/pull/19777>`_, Kefu Chai) -* build/ops: rpm: build-depends on "cunit-devel" for suse (`pr#18997 <https://github.com/ceph/ceph/pull/18997>`_, Kefu Chai) -* build/ops: rpm: conditionalize Python 2 availability to enable Ceph build on Python 3-only system (`pr#20018 <https://github.com/ceph/ceph/pull/20018>`_, Nathan Cutler) -* build/ops: rpm,debian: Ensure all ceph-disk runtime dependencies are declared for ceph-base (`issue#23657 <http://tracker.ceph.com/issues/23657>`_, `pr#21356 <https://github.com/ceph/ceph/pull/21356>`_, Nathan Cutler) -* build/ops: rpm,deb: package ceph-kvstore-tool man page (`pr#17387 <https://github.com/ceph/ceph/pull/17387>`_, Sage Weil) -* build/ops: rpm: drop legacy librbd.so.1 symlink in /usr/lib64/qemu (`pr#17324 <https://github.com/ceph/ceph/pull/17324>`_, Nathan Cutler) -* build/ops: rpm: fix _defined_if_python2_absent conditional (`pr#20166 <https://github.com/ceph/ceph/pull/20166>`_, Nathan Cutler) -* build/ops: rpm: fix systemd macros for ceph-volume@.service (`issue#22217 <http://tracker.ceph.com/issues/22217>`_, `pr#19081 <https://github.com/ceph/ceph/pull/19081>`_, Nathan Cutler) -* build/ops: rpm: move ceph-\*-tool binaries out of ceph-test subpackage (`issue#21762 <http://tracker.ceph.com/issues/21762>`_, `pr#18289 <https://github.com/ceph/ceph/pull/18289>`_, Nathan Cutler) -* build/ops: rpm: Python 3-only ceph-disk and ceph-volume (`pr#20140 <https://github.com/ceph/ceph/pull/20140>`_, Nathan Cutler) -* build/ops: rpm: recommend chrony instead of ntp-daemon (`pr#20138 <https://github.com/ceph/ceph/pull/20138>`_, Nathan Cutler) -* build/ops: rpm: recommend python-influxdb with ceph-mgr (`pr#18511 <https://github.com/ceph/ceph/pull/18511>`_, Nathan Cutler, Tim Serong) -* build/ops: rpm: Revert "ceph.spec: work around build.opensuse.org" (`pr#21716 <https://github.com/ceph/ceph/pull/21716>`_, Nathan Cutler) -* build/ops: rpm: rip out rcceph script (`pr#19899 <https://github.com/ceph/ceph/pull/19899>`_, Nathan Cutler) -* build/ops: rpm: selinux-policy fixes (`pr#19026 <https://github.com/ceph/ceph/pull/19026>`_, Brad Hubbard) -* build/ops: rpm: set build parallelism based on available memory (`pr#19122 <https://github.com/ceph/ceph/pull/19122>`_, Nathan Cutler, Richard Brown) -* build/ops: rpm: set permissions 0755 on rbd resource agent (`issue#22362 <http://tracker.ceph.com/issues/22362>`_, `pr#19494 <https://github.com/ceph/ceph/pull/19494>`_, Nathan Cutler) -* build/ops: run-make-check.sh: fix SUSE support (`issue#22875 <http://tracker.ceph.com/issues/22875>`_, `pr#20234 <https://github.com/ceph/ceph/pull/20234>`_, Nathan Cutler) -* build/ops: run-make-check.sh: handle Python 2 absence (`issue#23035 <http://tracker.ceph.com/issues/23035>`_, `pr#20480 <https://github.com/ceph/ceph/pull/20480>`_, Nathan Cutler) -* build/ops: run-make-check.sh: run ulimit without sudo (`pr#17361 <https://github.com/ceph/ceph/pull/17361>`_, yang.wang) -* build/ops: script/build-integration-branch: print pr url list with titles (`pr#17426 <https://github.com/ceph/ceph/pull/17426>`_, Sage Weil) -* build/ops: selinux: Allow nvme devices (`issue#19200 <http://tracker.ceph.com/issues/19200>`_, `pr#15597 <https://github.com/ceph/ceph/pull/15597>`_, Boris Ranto) -* build/ops: setup-virtualenv.sh: do not hardcode python binary (`issue#23437 <http://tracker.ceph.com/issues/23437>`_, `pr#21002 <https://github.com/ceph/ceph/pull/21002>`_, Nathan Cutler) -* build/ops: spdk: update SPDK to fix the build failure on aarch64 (`pr#20134 <https://github.com/ceph/ceph/pull/20134>`_, Tone Zhang, Kefu Chai) -* build/ops: spdk: update SPDK to v17.10 (`pr#19208 <https://github.com/ceph/ceph/pull/19208>`_, Kefu Chai) -* build/ops: spdk: update submodule to more recent upstream (`pr#20077 <https://github.com/ceph/ceph/pull/20077>`_, Nathan Cutler) -* build/ops: specs: require of e2fsprogs (`pr#21345 <https://github.com/ceph/ceph/pull/21345>`_, Guillaume Abrioux) -* build/ops: src/script/build-integration-branch (`pr#17382 <https://github.com/ceph/ceph/pull/17382>`_, Sage Weil) -* build/ops: src: s/pip --use-wheel/pip/ (`pr#21159 <https://github.com/ceph/ceph/pull/21159>`_, Kefu Chai) -* build/ops: submodule: make libmpem as a submodule (`pr#17036 <https://github.com/ceph/ceph/pull/17036>`_, Jianpeng Ma) -* build/ops: sysctl.d: set kernel.pid_max=4194304 (`issue#21929 <http://tracker.ceph.com/issues/21929>`_, `pr#18544 <https://github.com/ceph/ceph/pull/18544>`_, David Disseldorp) -* build/ops: systemd: rbd-mirror does not start on reboot (`pr#17969 <https://github.com/ceph/ceph/pull/17969>`_, Sébastien Han) -* build/ops: test: delete asok directories correctly (`pr#21023 <https://github.com/ceph/ceph/pull/21023>`_, Chang Liu) -* build/ops: test/fio: enable objectstore FIO plugin building without the need to install and build FIO source code (`pr#20535 <https://github.com/ceph/ceph/pull/20535>`_, Igor Fedotov) -* build/ops,tests: common,test,cmake: various changes to re-enable build on osx (`pr#18888 <https://github.com/ceph/ceph/pull/18888>`_, Kefu Chai) -* build/ops,tests: qa/tests: Changed rhel7.4 to rhel7.5 (`pr#21336 <https://github.com/ceph/ceph/pull/21336>`_, Yuri Weinstein) -* build/ops,tests: test/fio: fix fio objectstore plugin building broken by (`pr#20514 <https://github.com/ceph/ceph/pull/20514>`_, Igor Fedotov) -* build/ops: udev: Fix typo in udev OSD rules file (`pr#18976 <https://github.com/ceph/ceph/pull/18976>`_, Mitch Birti) -* build/ops: use devtoolset-7 on centos/rhel-7 (`pr#18863 <https://github.com/ceph/ceph/pull/18863>`_, Kefu Chai) -* cephfs: Client:Fix readdir bug (`pr#18784 <https://github.com/ceph/ceph/pull/18784>`_, dongdong tao) -* cephfs: Client: setattr should drop "Fs" rather than "As" for mtime and size (`pr#18786 <https://github.com/ceph/ceph/pull/18786>`_, dongdong tao) -* cephfs,common,rbd: common/common_init: disable ms subsystem log gathering for clients (`issue#21860 <http://tracker.ceph.com/issues/21860>`_, `pr#18418 <https://github.com/ceph/ceph/pull/18418>`_, Jason Dillaman) -* cephfs,common,rbd: Various fixes for SCA issues (`pr#21708 <https://github.com/ceph/ceph/pull/21708>`_, Danny Al-Gaaf) -* cephfs,core: mon/OSDMonitor: set FLAG_SELFMANAGED_SNAPS on cephfs snap removal (`issue#23949 <http://tracker.ceph.com/issues/23949>`_, `pr#21756 <https://github.com/ceph/ceph/pull/21756>`_, Sage Weil) -* cephfs: MDS: add null check before we push_back "onfinish" (`pr#18892 <https://github.com/ceph/ceph/pull/18892>`_, dongdong tao) -* cephfs: MDS: correct the error msg when init mon client (`pr#18836 <https://github.com/ceph/ceph/pull/18836>`_, dongdong tao) -* cephfs: MDS: make popular counter decay at proper rate (`pr#18776 <https://github.com/ceph/ceph/pull/18776>`_, Jianyu Li) -* cephfs: MDS: make rebalancer evaluate the overload state of each mds with the same criterion (`pr#19255 <https://github.com/ceph/ceph/pull/19255>`_, Jianyu Li) -* cephfs: messages: Initialization of is_primary (`pr#16897 <https://github.com/ceph/ceph/pull/16897>`_, amitkuma) -* cephfs: messages: Initialization of member variables (`pr#16898 <https://github.com/ceph/ceph/pull/16898>`_, amitkuma) -* cephfs: mimic: MDSMonitor: clean up use of pending fsmap in uncommitted ops (`issue#23768 <http://tracker.ceph.com/issues/23768>`_, `pr#22005 <https://github.com/ceph/ceph/pull/22005>`_, Patrick Donnelly) -* cephfs: mon/MDSMonitor: wait for readable OSDMap before sanitizing (`issue#21945 <http://tracker.ceph.com/issues/21945>`_, `pr#18603 <https://github.com/ceph/ceph/pull/18603>`_, Patrick Donnelly) -* cephfs,mon: mon/MDSMonitor: fix a bug at preprocess_beacon (`pr#17415 <https://github.com/ceph/ceph/pull/17415>`_, wangshuguang) -* cephfs: osdc/Journaler: use new style options (`pr#17806 <https://github.com/ceph/ceph/pull/17806>`_, Kefu Chai) -* cephfs: qa: check pool full flags (`issue#22475 <http://tracker.ceph.com/issues/22475>`_, `pr#19588 <https://github.com/ceph/ceph/pull/19588>`_, Patrick Donnelly) -* cephfs: qa: fix typo in test_full (`issue#23643 <http://tracker.ceph.com/issues/23643>`_, `pr#21334 <https://github.com/ceph/ceph/pull/21334>`_, Patrick Donnelly) -* cephfs: Revert "ceph_context: re-expand admin_socket metavariables in child process" (`pr#18545 <https://github.com/ceph/ceph/pull/18545>`_, Patrick Donnelly) -* cephfs,tests: qa/suites/powercycle/osd/whitelist_health: whitelist slow trimming (`pr#17307 <https://github.com/ceph/ceph/pull/17307>`_, Sage Weil) -* cephfs,tests: qa/workunits/cephtool/test.sh: fix test_mon_mds() (`pr#21579 <https://github.com/ceph/ceph/pull/21579>`_, Kefu Chai) -* cephfs,tools: mount.fuse.ceph: Fix typo (`pr#19128 <https://github.com/ceph/ceph/pull/19128>`_, Jos Collin) -* cephfs: vstart_runner: fixes for recent cephfs changes (`pr#19533 <https://github.com/ceph/ceph/pull/19533>`_, Patrick Donnelly) -* ceph-volume: add ANSIBLE_SSH_RETRIES=5 to functional tests (`pr#20592 <https://github.com/ceph/ceph/pull/20592>`_, Andrew Schoen) -* ceph-volume add functional tests for simple, rearrange lvm tests (`pr#18882 <https://github.com/ceph/ceph/pull/18882>`_, Alfredo Deza) -* ceph-volume: Add linesep/newline at end of JSON file when writing (`pr#19458 <https://github.com/ceph/ceph/pull/19458>`_, Wido den Hollander) -* ceph-volume: adds a --destroy flag to ceph-volume lvm zap (`issue#22653 <http://tracker.ceph.com/issues/22653>`_, `pr#20010 <https://github.com/ceph/ceph/pull/20010>`_, Andrew Schoen) -* ceph-volume: adds --crush-device-class flag for lvm prepare and create (`pr#19949 <https://github.com/ceph/ceph/pull/19949>`_, Andrew Schoen) -* ceph-volume: adds custom cluster name support to simple (`pr#20367 <https://github.com/ceph/ceph/pull/20367>`_, Andrew Schoen) -* ceph-volume: adds functional CI testing (`pr#16919 <https://github.com/ceph/ceph/pull/16919>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: adds functional testing for bluestore (`pr#18656 <https://github.com/ceph/ceph/pull/18656>`_, Andrew Schoen) -* ceph-volume: adds raw device support to 'lvm list' (`issue#23140 <http://tracker.ceph.com/issues/23140>`_, `pr#20620 <https://github.com/ceph/ceph/pull/20620>`_, Andrew Schoen) -* ceph-volume: adds success messages for lvm prepare/activate/create (`issue#22307 <http://tracker.ceph.com/issues/22307>`_, `pr#19875 <https://github.com/ceph/ceph/pull/19875>`_, Andrew Schoen) -* ceph-volume: adds support to zap encrypted devices (`issue#22878 <http://tracker.ceph.com/issues/22878>`_, `pr#20537 <https://github.com/ceph/ceph/pull/20537>`_, Andrew Schoen) -* ceph-volume: adds the ceph-volume lvm zap subcommand (`pr#18513 <https://github.com/ceph/ceph/pull/18513>`_, Andrew Schoen) -* ceph-volume allow filtering by `uuid`, do not require osd id (`pr#17606 <https://github.com/ceph/ceph/pull/17606>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: allow parallel creates (`issue#23757 <http://tracker.ceph.com/issues/23757>`_, `pr#21489 <https://github.com/ceph/ceph/pull/21489>`_, Theofilos Mouratidis) -* ceph-volume: allow skipping systemd interactions on activate/create (`issue#23678 <http://tracker.ceph.com/issues/23678>`_, `pr#21496 <https://github.com/ceph/ceph/pull/21496>`_, Alfredo Deza) -* ceph-volume: allow using a device or partition for `lvm --data` (`pr#18924 <https://github.com/ceph/ceph/pull/18924>`_, Alfredo Deza) -* ceph-volume be resilient to $PATH issues (`pr#20650 <https://github.com/ceph/ceph/pull/20650>`_, Alfredo Deza) -* ceph-volume consume mount/format options from ceph.conf (`pr#20408 <https://github.com/ceph/ceph/pull/20408>`_, Alfredo Deza) -* ceph-volume: correctly fallback to bluestore when no objectstore is specified (`pr#19213 <https://github.com/ceph/ceph/pull/19213>`_, Alfredo Deza) -* ceph-volume correctly normalize mount flags (`pr#20543 <https://github.com/ceph/ceph/pull/20543>`_, Alfredo Deza) -* ceph-volume: create the ceph-volume and ceph-volume-systemd man pages (`issue#21030 <http://tracker.ceph.com/issues/21030>`_, `pr#17152 <https://github.com/ceph/ceph/pull/17152>`_, Alfredo Deza) -* ceph-volume: dmcrypt support for lvm (`issue#22619 <http://tracker.ceph.com/issues/22619>`_, `pr#20054 <https://github.com/ceph/ceph/pull/20054>`_, Alfredo Deza) -* ceph-volume dmcrypt support for simple (`issue#22620 <http://tracker.ceph.com/issues/22620>`_, `pr#20264 <https://github.com/ceph/ceph/pull/20264>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume/doc: add missing subcommand in examples (`pr#19381 <https://github.com/ceph/ceph/pull/19381>`_, Guillaume Abrioux) -* ceph-volume: ensure correct --filestore/--bluestore behavior (`pr#18518 <https://github.com/ceph/ceph/pull/18518>`_, Alfredo Deza) -* ceph-volume failed ceph-osd --mkfs command doesn't halt the OSD creation process (`issue#23874 <http://tracker.ceph.com/issues/23874>`_, `pr#21685 <https://github.com/ceph/ceph/pull/21685>`_, Alfredo Deza) -* ceph-volume: fix action plugins path in tests (`pr#20910 <https://github.com/ceph/ceph/pull/20910>`_, Guillaume Abrioux) -* ceph-volume fix filestore OSD creation after mon-config changes (`issue#23260 <http://tracker.ceph.com/issues/23260>`_, `pr#20787 <https://github.com/ceph/ceph/pull/20787>`_, Alfredo Deza) -* ceph-volume: fix typo in ceph-volume lvm prepare help (`pr#21196 <https://github.com/ceph/ceph/pull/21196>`_, Jeffrey Zhang) -* ceph-volume: fix usage of the --osd-id flag (`issue#22642 <http://tracker.ceph.com/issues/22642>`_, `issue#22836 <http://tracker.ceph.com/issues/22836>`_, `pr#20203 <https://github.com/ceph/ceph/pull/20203>`_, Andrew Schoen) -* ceph-volume Format correctly when vg/lv cannot be used (`issue#22299 <http://tracker.ceph.com/issues/22299>`_, `pr#19285 <https://github.com/ceph/ceph/pull/19285>`_, Alfredo Deza) -* ceph-volume handle inline comments in the ceph.conf file (`issue#22297 <http://tracker.ceph.com/issues/22297>`_, `pr#19319 <https://github.com/ceph/ceph/pull/19319>`_, Alfredo Deza) -* ceph-volume: handle leading whitespace/tabs in ceph.conf (`issue#22280 <http://tracker.ceph.com/issues/22280>`_, `pr#19259 <https://github.com/ceph/ceph/pull/19259>`_, Alfredo Deza) -* ceph-volume Implement an 'activate all' to help with dense servers or migrating OSDs (`pr#21130 <https://github.com/ceph/ceph/pull/21130>`_, Alfredo Deza) -* ceph-volume improve robustness when reloading vms in tests (`pr#21070 <https://github.com/ceph/ceph/pull/21070>`_, Alfredo Deza) -* ceph-volume: log the current running command for easier debugging (`issue#23004 <http://tracker.ceph.com/issues/23004>`_, `pr#20594 <https://github.com/ceph/ceph/pull/20594>`_, Andrew Schoen) -* ceph-volume lvm api refactor/move (`pr#18110 <https://github.com/ceph/ceph/pull/18110>`_, Alfredo Deza) -* ceph-volume lvm list (`pr#18095 <https://github.com/ceph/ceph/pull/18095>`_, Alfredo Deza) -* ceph-volume lvm.prepare update to use create_osd_path (`pr#18514 <https://github.com/ceph/ceph/pull/18514>`_, Alfredo Deza) -* ceph-volume: lvm zap will unmount osd paths used by zapped devices (`issue#22876 <http://tracker.ceph.com/issues/22876>`_, `pr#20265 <https://github.com/ceph/ceph/pull/20265>`_, Andrew Schoen) -* ceph-volume: Nits noticed while studying code (`pr#21455 <https://github.com/ceph/ceph/pull/21455>`_, Dan Mick) -* ceph-volume Persist non-lv devices for journals (`pr#17403 <https://github.com/ceph/ceph/pull/17403>`_, Alfredo Deza) -* ceph-volume process the abspath of the executable first (`issue#23259 <http://tracker.ceph.com/issues/23259>`_, `pr#20824 <https://github.com/ceph/ceph/pull/20824>`_, Alfredo Deza) -* ceph-volume: removed the explicit use of sudo (`issue#22282 <http://tracker.ceph.com/issues/22282>`_, `pr#19363 <https://github.com/ceph/ceph/pull/19363>`_, Andrew Schoen) -* ceph-volume: remove extra space (`pr#21140 <https://github.com/ceph/ceph/pull/21140>`_, Sébastien Han) -* ceph-volume rollback on failed OSD prepare/create (`issue#22281 <http://tracker.ceph.com/issues/22281>`_, `pr#19351 <https://github.com/ceph/ceph/pull/19351>`_, Alfredo Deza) -* ceph-volume should be able to handle multiple LVM (VG/LV) tags (`issue#22305 <http://tracker.ceph.com/issues/22305>`_, `pr#19321 <https://github.com/ceph/ceph/pull/19321>`_, Alfredo Deza) -* ceph-volume: support GPT and other deployed OSDs (`pr#18823 <https://github.com/ceph/ceph/pull/18823>`_, Alfredo Deza) -* ceph-volume tests add optional flags for vagrant (`pr#20849 <https://github.com/ceph/ceph/pull/20849>`_, Alfredo Deza) -* ceph-volume tests alleviate libvirt timeouts when reloading (`issue#23163 <http://tracker.ceph.com/issues/23163>`_, `pr#20718 <https://github.com/ceph/ceph/pull/20718>`_, Alfredo Deza) -* ceph-volume tests.devices.lvm prepare isn't bluestore specific anymore (`pr#18984 <https://github.com/ceph/ceph/pull/18984>`_, Alfredo Deza) -* ceph-volume tests remove unused import (`pr#20459 <https://github.com/ceph/ceph/pull/20459>`_, Alfredo Deza) -* ceph-volume tests use granular env vars for vagrant (`pr#20864 <https://github.com/ceph/ceph/pull/20864>`_, Alfredo Deza) -* ceph-volume: Try to cast OSD metadata to int while scanning directory (`pr#19477 <https://github.com/ceph/ceph/pull/19477>`_, Wido den Hollander) -* ceph-volume update man page for prepare/activate flags (`pr#21570 <https://github.com/ceph/ceph/pull/21570>`_, Alfredo Deza) -* ceph-volume use realpath when checking mounts (`issue#22988 <http://tracker.ceph.com/issues/22988>`_, `pr#20427 <https://github.com/ceph/ceph/pull/20427>`_, Alfredo Deza) -* ceph-volume: use unique logical volumes (`pr#17207 <https://github.com/ceph/ceph/pull/17207>`_, Alfredo Deza) -* ceph-volume: Using --readonly for {vg|pv|lv}s commands (`pr#21409 <https://github.com/ceph/ceph/pull/21409>`_, Erwan Velu) -* ceph-volume: warn on missing ceph.conf file (`issue#22326 <http://tracker.ceph.com/issues/22326>`_, `pr#19347 <https://github.com/ceph/ceph/pull/19347>`_, Alfredo Deza) -* ceph-volume warn on mix of filestore and bluestore flags (`issue#23003 <http://tracker.ceph.com/issues/23003>`_, `pr#20513 <https://github.com/ceph/ceph/pull/20513>`_, Alfredo Deza) -* cleanup: Replacing MIN,MAX with std::min,std::max (`pr#18124 <https://github.com/ceph/ceph/pull/18124>`_, Amit Kumar) -* cli: rados: support for high precision time using stat2 (`issue#21199 <http://tracker.ceph.com/issues/21199>`_, `pr#17395 <https://github.com/ceph/ceph/pull/17395>`_, Abhishek Lekshmanan) -* cls_acl/_crypto: Add modeline (`pr#19010 <https://github.com/ceph/ceph/pull/19010>`_, Shinobu Kinjo) -* cmake: add chrono to BOOST_COMPONENTS (`issue#23424 <http://tracker.ceph.com/issues/23424>`_, `pr#20977 <https://github.com/ceph/ceph/pull/20977>`_, Nathan Cutler) -* cmake: add cython_rbd as a dependency to vstart target (`pr#18382 <https://github.com/ceph/ceph/pull/18382>`_, Ali Maredia) -* cmake: bail out if GCC version is less than 5.1 (`pr#19344 <https://github.com/ceph/ceph/pull/19344>`_, Kefu Chai) -* cmake: BuildBoost.cmake: use specified compiler for building boost (`pr#19898 <https://github.com/ceph/ceph/pull/19898>`_, Kefu Chai) -* cmake: bump target jdk to 1.7 (`issue#23458 <http://tracker.ceph.com/issues/23458>`_, `pr#21082 <https://github.com/ceph/ceph/pull/21082>`_, Shengjing Zhu) -* cmake: bump up required cmake version to 2.8.12 (`pr#18285 <https://github.com/ceph/ceph/pull/18285>`_, Kefu Chai) -* cmake: changes of BuildBoost.cmake to ready seastar (`pr#21404 <https://github.com/ceph/ceph/pull/21404>`_, Kefu Chai) -* cmake: check for aligned_alloc() instead of checking tcmalloc version (`pr#18557 <https://github.com/ceph/ceph/pull/18557>`_, Kefu Chai) -* cmake: check gcc version not release date for libstdc++ saneness (`pr#18938 <https://github.com/ceph/ceph/pull/18938>`_, Kefu Chai) -* cmake: check version of boost in src/boost (`pr#19914 <https://github.com/ceph/ceph/pull/19914>`_, Kefu Chai) -* cmake: cleanups (`pr#18597 <https://github.com/ceph/ceph/pull/18597>`_, Kefu Chai) -* cmake,common: changes to port part of ceph to osx (`pr#17615 <https://github.com/ceph/ceph/pull/17615>`_, Kefu Chai) -* cmake: compile nvml as an external project (`pr#17462 <https://github.com/ceph/ceph/pull/17462>`_, Jianpeng Ma) -* cmake: define HAVE_STDLIB_MAP_SPLICING for both libstdc++ and libc++ (`pr#21284 <https://github.com/ceph/ceph/pull/21284>`_, Kefu Chai) -* cmake: disable DOWNLOAD_NO_PROGRESS if cmake ver is lower than 3.1 (`pr#20492 <https://github.com/ceph/ceph/pull/20492>`_, Kefu Chai) -* cmake: disable FAIL_ON_WARNINGS for rocksdb (`pr#19426 <https://github.com/ceph/ceph/pull/19426>`_, Kefu Chai) -* cmake: disable VTA on options.cc (`pr#17393 <https://github.com/ceph/ceph/pull/17393>`_, Kefu Chai) -* cmake: do not find bzip2/lz4 for rocksdb (`pr#19963 <https://github.com/ceph/ceph/pull/19963>`_, runsisi) -* cmake: do not link against librados.a (`pr#18576 <https://github.com/ceph/ceph/pull/18576>`_, Kefu Chai) -* cmake: do not link against unused or duplicated libraries (`pr#18092 <https://github.com/ceph/ceph/pull/18092>`_, Kefu Chai) -* cmake: enabled py3 only build (`pr#20064 <https://github.com/ceph/ceph/pull/20064>`_, Kefu Chai) -* cmake: enable LZ4 by default (`pr#21332 <https://github.com/ceph/ceph/pull/21332>`_, Grant Slater, Casey Bodley) -* cmake: enable new policies to silence cmake warnings (`pr#21662 <https://github.com/ceph/ceph/pull/21662>`_, Kefu Chai) -* cmake: fix building without mgr module (`pr#21591 <https://github.com/ceph/ceph/pull/21591>`_, Yuan Zhou) -* cmake: fix frontend cmake build (`pr#21449 <https://github.com/ceph/ceph/pull/21449>`_, Ricardo Dias) -* cmake: fix libcephfs-test.jar build failure (`issue#22828 <http://tracker.ceph.com/issues/22828>`_, `pr#20175 <https://github.com/ceph/ceph/pull/20175>`_, Tone Zhang) -* cmake: fix the include dir for building boost::python (`pr#20324 <https://github.com/ceph/ceph/pull/20324>`_, Kefu Chai) -* cmake: fix typo in status message (`pr#21464 <https://github.com/ceph/ceph/pull/21464>`_, Lenz Grimmer) -* cmake: hide symbols import from other libraries in libcls\_\* (`issue#23517 <http://tracker.ceph.com/issues/23517>`_, `pr#21571 <https://github.com/ceph/ceph/pull/21571>`_, Kefu Chai) -* cmake: identify the possible incompatibility of rocksdb and tcmalloc (`issue#21422 <http://tracker.ceph.com/issues/21422>`_, `pr#17788 <https://github.com/ceph/ceph/pull/17788>`_, Kefu Chai) -* cmake: in case of bad "ALLOCATOR" selected issue warning (`pr#17422 <https://github.com/ceph/ceph/pull/17422>`_, Adam Kupczyk) -* cmake: include frontend build in 'all' target (`pr#21466 <https://github.com/ceph/ceph/pull/21466>`_, John Spray) -* cmake: let "tests" depend on "mgr-dashboard-frontend-build" (`pr#21468 <https://github.com/ceph/ceph/pull/21468>`_, Kefu Chai) -* cmake: 'make check' builds radosgw and its cls dependencies (`pr#20422 <https://github.com/ceph/ceph/pull/20422>`_, Casey Bodley) -* cmake: mgr: exclude .gitignore (`pr#19174 <https://github.com/ceph/ceph/pull/19174>`_, Nathan Cutler) -* cmake/modules/BuildRocksDB.cmake: enable compressions for rocksdb (`issue#24025 <http://tracker.ceph.com/issues/24025>`_, `pr#22183 <https://github.com/ceph/ceph/pull/22183>`_, Kefu Chai) -* cmake: only create sysctl file on linux (`pr#19029 <https://github.com/ceph/ceph/pull/19029>`_, Kefu Chai) -* cmake: pass static linkflags to the linker who links libcommon (`pr#19763 <https://github.com/ceph/ceph/pull/19763>`_, Kefu Chai) -* cmake: s/boost_256/boost_sha256/ (`pr#21573 <https://github.com/ceph/ceph/pull/21573>`_, Kefu Chai) -* cmake: set supported language the right way (`pr#18216 <https://github.com/ceph/ceph/pull/18216>`_, Kefu Chai) -* cmake: should use the value of GPERFTOOLS_LIBRARIES as REQUIRED_VARS (`pr#18645 <https://github.com/ceph/ceph/pull/18645>`_, Kefu Chai) -* cmake: s/sysconf/sysconfig/ (`pr#20631 <https://github.com/ceph/ceph/pull/20631>`_, Kefu Chai) -* cmake: sync nvml submodule to latest code (`pr#20411 <https://github.com/ceph/ceph/pull/20411>`_, Jianpeng Ma) -* cmake: System Includes to silence warnings from submodules and libraries! (`pr#18711 <https://github.com/ceph/ceph/pull/18711>`_, Adam C. Emerson) -* cmake: typo fix when npm is not found (`pr#20801 <https://github.com/ceph/ceph/pull/20801>`_, Abhishek Lekshmanan) -* cmake: update minimum boost version to 1.66 (`issue#20048 <http://tracker.ceph.com/issues/20048>`_, `issue#22600 <http://tracker.ceph.com/issues/22600>`_, `pr#19808 <https://github.com/ceph/ceph/pull/19808>`_, Casey Bodley) -* cmake: update the error message for gperftools bug (`pr#17901 <https://github.com/ceph/ceph/pull/17901>`_, Kefu Chai) -* cmake: warn if libstdc++ older than 5.1.0 is used (`pr#18837 <https://github.com/ceph/ceph/pull/18837>`_, Kefu Chai) -* cmake: WITH_SPDK=ON by default (`pr#18944 <https://github.com/ceph/ceph/pull/18944>`_, Liu-Chunmei, Kefu Chai, wanjun.lp, Ziye Yang) -* common: adding line break at end of some cli results (`issue#21019 <http://tracker.ceph.com/issues/21019>`_, `pr#16687 <https://github.com/ceph/ceph/pull/16687>`_, songweibin) -* common: add line break for "ceph daemon TYPE.ID version" (`pr#17146 <https://github.com/ceph/ceph/pull/17146>`_, Zhu Shangzhong) -* common: Add metadata with only Ceph version number and release (`pr#21095 <https://github.com/ceph/ceph/pull/21095>`_, Wido den Hollander) -* common: Add min/max of ms_async_op_threads (`pr#19942 <https://github.com/ceph/ceph/pull/19942>`_, Shinobu Kinjo) -* common: Add noreturn attribute to silence uninitialized warning (`pr#19348 <https://github.com/ceph/ceph/pull/19348>`_, Adam C. Emerson) -* common: auth: add err reason for log info in load function (`pr#17256 <https://github.com/ceph/ceph/pull/17256>`_, Luo Kexue) -* common: bench test fall into dead loop when <seconds>=0 (`pr#16382 <https://github.com/ceph/ceph/pull/16382>`_, PC) -* common: buffer: avoid changing bufferlist ABI by removing new _mempool field (`issue#21573 <http://tracker.ceph.com/issues/21573>`_, `pr#18408 <https://github.com/ceph/ceph/pull/18408>`_, Sage Weil) -* common: by default, do not assert on leaks in the shared_cache code (`issue#21737 <http://tracker.ceph.com/issues/21737>`_, `pr#18201 <https://github.com/ceph/ceph/pull/18201>`_, Greg Farnum) -* common: ceph: add the right bracket to watch-channel argument in the help message (`pr#19698 <https://github.com/ceph/ceph/pull/19698>`_, Chang Liu) -* common: ceph.in: execv using the same python (`pr#17713 <https://github.com/ceph/ceph/pull/17713>`_, Kefu Chai) -* common: ceph_release: s/rc/stable/ (`pr#22264 <https://github.com/ceph/ceph/pull/22264>`_, Sage Weil) -* common: change routines to public access (`pr#20003 <https://github.com/ceph/ceph/pull/20003>`_, Willem Jan Withagen) -* common: Check this->data.op_size before use (`pr#18816 <https://github.com/ceph/ceph/pull/18816>`_, Amit Kumar) -* common: cleanup address_helper (`pr#19643 <https://github.com/ceph/ceph/pull/19643>`_, Shinobu Kinjo) -* common: cmake,common/RWLock: check for libpthread extensions (`pr#19202 <https://github.com/ceph/ceph/pull/19202>`_, Kefu Chai) -* common: common: add for_each_substr() for cheap string split (`pr#18798 <https://github.com/ceph/ceph/pull/18798>`_, Casey Bodley) -* common: common: add streaming interfaces for json/xml escaping (`pr#19806 <https://github.com/ceph/ceph/pull/19806>`_, Casey Bodley) -* common: common/admin_socket: validate command json before feeding it to hook (`pr#20437 <https://github.com/ceph/ceph/pull/20437>`_, Kefu Chai) -* common: common/blkdev: fix build in FreeBSD environment (`pr#19316 <https://github.com/ceph/ceph/pull/19316>`_, Mykola Golub) -* common: common/buffer: cleanups (`pr#18312 <https://github.com/ceph/ceph/pull/18312>`_, Shinobu Kinjo) -* common: common/buffer: switch crc cache to single pair instead of map (`pr#18906 <https://github.com/ceph/ceph/pull/18906>`_, Piotr Dałek) -* common: common/config: add units to options (`issue#22747 <http://tracker.ceph.com/issues/22747>`_, `pr#20419 <https://github.com/ceph/ceph/pull/20419>`_, Kefu Chai) -* common: common/config: limit calls to normalize_key_name (`pr#20318 <https://github.com/ceph/ceph/pull/20318>`_, Piotr Dałek) -* common: common/config: make internal_safe_to_start_threads internal (`pr#18884 <https://github.com/ceph/ceph/pull/18884>`_, Sage Weil) -* common: common/ConfUtils: check key before actually normalizing (`pr#20370 <https://github.com/ceph/ceph/pull/20370>`_, Piotr Dałek) -* common: common/dns_resolv.cc: Query for AAAA-record if ms_bind_ipv6 is True (`issue#23078 <http://tracker.ceph.com/issues/23078>`_, `pr#20530 <https://github.com/ceph/ceph/pull/20530>`_, Wido den Hollander) -* common: common/dns_resolve: fix memory leak (`pr#19649 <https://github.com/ceph/ceph/pull/19649>`_, Yao Zongyou) -* common: common/event_socket.h: include <errno.h> to use errno (`pr#18351 <https://github.com/ceph/ceph/pull/18351>`_, Kefu Chai) -* common: common/Formatter: fix string_view usage for {json,xml}_stream_escaper (`issue#23622 <http://tracker.ceph.com/issues/23622>`_, `pr#21317 <https://github.com/ceph/ceph/pull/21317>`_, Sage Weil) -* common: common/hobject: compare two objects' key directly (`pr#21062 <https://github.com/ceph/ceph/pull/21062>`_, xie xingguo) -* common: common/hobject: preserve the order of hobject (`pr#21217 <https://github.com/ceph/ceph/pull/21217>`_, Kefu Chai) -* common: common/ipaddr: Do not select link-local IPv6 addresses (`issue#21813 <http://tracker.ceph.com/issues/21813>`_, `pr#20862 <https://github.com/ceph/ceph/pull/20862>`_, Wido den Hollander) -* common: common/lockdep: drop hash<pthread_t> specialization (`pr#20574 <https://github.com/ceph/ceph/pull/20574>`_, Kefu Chai) -* common: common/LogClient: assign seq and queue atomically (`issue#18209 <http://tracker.ceph.com/issues/18209>`_, `pr#16828 <https://github.com/ceph/ceph/pull/16828>`_, Sage Weil) -* common: common/log: Speed improvement for log (`pr#19100 <https://github.com/ceph/ceph/pull/19100>`_, Adam Kupczyk, Kefu Chai) -* common: common/OpHistory: move insert/cleanup into separate thread (`pr#20540 <https://github.com/ceph/ceph/pull/20540>`_, Piotr Dałek) -* common: common/options: drop unused options (`pr#20895 <https://github.com/ceph/ceph/pull/20895>`_, Kefu Chai) -* common: common/options: long description for log_stderr_prefix (`pr#19869 <https://github.com/ceph/ceph/pull/19869>`_, Sage Weil) -* common: common/options: pass by reference and use user-literals for size (`pr#18034 <https://github.com/ceph/ceph/pull/18034>`_, Kefu Chai) -* common: common/options: use user-defined literals for default values (`pr#17180 <https://github.com/ceph/ceph/pull/17180>`_, Kefu Chai) -* common: common/perf_counters: remove unused parameter (`pr#19805 <https://github.com/ceph/ceph/pull/19805>`_, Kefu Chai) -* common: common/pick_address.cc: Cleanup (`pr#19707 <https://github.com/ceph/ceph/pull/19707>`_, Shinobu Kinjo) -* common: common/pick_address: wrong prefix_len in pick_iface() (`pr#20128 <https://github.com/ceph/ceph/pull/20128>`_, Gu Zhongyan) -* common: common/str_list: s/boost::string_view/std::string_view (`pr#20475 <https://github.com/ceph/ceph/pull/20475>`_, Kefu Chai) -* common: common/strtol: fix strict_strtoll() so it accepts hex starting with 0x (`pr#21521 <https://github.com/ceph/ceph/pull/21521>`_, Kefu Chai) -* common: common/strtoll: remove superfluous const modifier (`pr#21560 <https://github.com/ceph/ceph/pull/21560>`_, Jan Fajerski) -* common: common/throttle: start using 64-bit values (`issue#22539 <http://tracker.ceph.com/issues/22539>`_, `pr#19759 <https://github.com/ceph/ceph/pull/19759>`_, Igor Fedotov) -* common: common/types: make numbers a bit nicer when displaying space usage (`pr#17126 <https://github.com/ceph/ceph/pull/17126>`_, xie xingguo) -* common: common/util: do not print error if VERSION_ID is missing (`pr#17787 <https://github.com/ceph/ceph/pull/17787>`_, Kefu Chai) -* common: compressor: use generate_random_number() for type="random" (`pr#18272 <https://github.com/ceph/ceph/pull/18272>`_, Casey Bodley) -* common: compressor/zstd: improvements (`pr#18879 <https://github.com/ceph/ceph/pull/18879>`_, Sage Weil) -* common: compute SimpleLRU's size with contents.size() instead of lru.size() (`issue#22613 <http://tracker.ceph.com/issues/22613>`_, `pr#19813 <https://github.com/ceph/ceph/pull/19813>`_, Xuehan Xu) -* common: config: expand tilde for ~/.ceph/$cluster.conf (`issue#23215 <http://tracker.ceph.com/issues/23215>`_, `pr#20774 <https://github.com/ceph/ceph/pull/20774>`_, Rishabh Dave) -* common: config: notify config observers on set_mon_vals() (`pr#21161 <https://github.com/ceph/ceph/pull/21161>`_, Casey Bodley) -* common: config: Remove _get_val (`pr#18222 <https://github.com/ceph/ceph/pull/18222>`_, Adam C. Emerson) -* common/config: use with_val() for better performance (`pr#19056 <https://github.com/ceph/ceph/pull/19056>`_, Adam C. Emerson) -* common: consolidate spinlocks (`pr#15816 <https://github.com/ceph/ceph/pull/15816>`_, Jesse Williamson) -* common,core: common, osd: various cleanups (`pr#18149 <https://github.com/ceph/ceph/pull/18149>`_, Kefu Chai) -* common,core: common/pick_address: add {public,cluster}_network_interface option (`pr#18028 <https://github.com/ceph/ceph/pull/18028>`_, Sage Weil) -* common,core: common/Throttle: Clean up (`pr#16618 <https://github.com/ceph/ceph/pull/16618>`_, Adam C. Emerson) -* common,core: fix broken use of streamstream::rdbuf() (`issue#22715 <http://tracker.ceph.com/issues/22715>`_, `pr#19998 <https://github.com/ceph/ceph/pull/19998>`_, Sage Weil) -* common,core: include/ceph_features: deprecate a bunch of features (`pr#18546 <https://github.com/ceph/ceph/pull/18546>`_, Sage Weil) -* common,core: include,messages,rbd: Initialize counter,group_pool (`pr#17774 <https://github.com/ceph/ceph/pull/17774>`_, Amit Kumar) -* common,core: options: Do not use linked lists of pointers! (`pr#17984 <https://github.com/ceph/ceph/pull/17984>`_, Adam C. Emerson) -* common,core: osdc/Objecter: take budgets across a LingerOp instead of on child Ops (`issue#22882 <http://tracker.ceph.com/issues/22882>`_, `pr#20519 <https://github.com/ceph/ceph/pull/20519>`_, Greg Farnum) -* common,core: osd/OpRequest: reduce overhead when disabling tracking (`pr#18470 <https://github.com/ceph/ceph/pull/18470>`_, Haomai Wang) -* common,core: rados: Prefer templates to macros (`pr#19913 <https://github.com/ceph/ceph/pull/19913>`_, Adam C. Emerson) -* common,core,rbd,rgw: common,osd,rgw: Fixes for issues found during SCA (`pr#21419 <https://github.com/ceph/ceph/pull/21419>`_, Danny Al-Gaaf) -* common,core,rbd,tests,tools: common,mds,mgr,mon,osd: store event only if it's added (`pr#16312 <https://github.com/ceph/ceph/pull/16312>`_, Kefu Chai) -* common,core: Revert "msg/async/AsyncConnection: unregister connection when racing happened" (`issue#22231 <http://tracker.ceph.com/issues/22231>`_, `pr#19586 <https://github.com/ceph/ceph/pull/19586>`_, Sage Weil) -* common,core: Revert "osd/OSDMap: allow bidirectional swap of pg-upmap-items" (`issue#21410 <http://tracker.ceph.com/issues/21410>`_, `pr#17760 <https://github.com/ceph/ceph/pull/17760>`_, Sage Weil) -* common: Coverity and SCA fixes (`pr#17431 <https://github.com/ceph/ceph/pull/17431>`_, Danny Al-Gaaf) -* common/crc/aarch64: Added cpu feature pmull and make aarch64 specific… (`pr#22184 <https://github.com/ceph/ceph/pull/22184>`_, Adam Kupczyk) -* common: crush/CrushWrapper: fix out of bounds access (`issue#20926 <http://tracker.ceph.com/issues/20926>`_, `pr#16869 <https://github.com/ceph/ceph/pull/16869>`_, Sage Weil) -* common: crypto: remove cryptopp library (`pr#20015 <https://github.com/ceph/ceph/pull/20015>`_, Casey Bodley) -* common: denc cleanups and other fixes (`pr#19877 <https://github.com/ceph/ceph/pull/19877>`_, Adam C. Emerson) -* common: denc: support enum with underlying type (`pr#18701 <https://github.com/ceph/ceph/pull/18701>`_, Kefu Chai) -* common: Destroy attr of RWLock after initialized (`pr#17103 <https://github.com/ceph/ceph/pull/17103>`_, Wen Zhang) -* common: dmclock: update mClockPriorityQueue with changes in subtree (`pr#20992 <https://github.com/ceph/ceph/pull/20992>`_, Casey Bodley) -* common: dout: DoutPrefixProvider operates directly on stream (`pr#21608 <https://github.com/ceph/ceph/pull/21608>`_, Casey Bodley) -* common: drop namespace using directives for std (`pr#19159 <https://github.com/ceph/ceph/pull/19159>`_, Shinobu Kinjo) -* common: drop unused variables "bluestore_csum\_\*_block" in opts (`pr#17394 <https://github.com/ceph/ceph/pull/17394>`_, songweibin) -* common: encoding: reset optional<> if it is uninitialized (`pr#17599 <https://github.com/ceph/ceph/pull/17599>`_, Kefu Chai) -* common: Extends random.h: numeric types relaxed to compatible types (with (`pr#20670 <https://github.com/ceph/ceph/pull/20670>`_, Jesse Williamson) -* common: fix BoundedKeyCounter const_pointer_iterator (`issue#22139 <http://tracker.ceph.com/issues/22139>`_, `pr#18953 <https://github.com/ceph/ceph/pull/18953>`_, Casey Bodley) -* common: fix daemon abnormal exit at parsing invalid arguments (`issue#21365 <http://tracker.ceph.com/issues/21365>`_, `issue#21338 <http://tracker.ceph.com/issues/21338>`_, `pr#17664 <https://github.com/ceph/ceph/pull/17664>`_, Yan Jun) -* common: fix potential memory leak in HTMLFormatter (`pr#20699 <https://github.com/ceph/ceph/pull/20699>`_, Yao Zongyou) -* common: fix typo deamon in comments (`pr#17687 <https://github.com/ceph/ceph/pull/17687>`_, yonghengdexin735) -* common: fix typo in options.cc (`pr#20549 <https://github.com/ceph/ceph/pull/20549>`_, songweibin) -* common: FreeBSD wants the correct struct selection for ipv6 (`issue#21813 <http://tracker.ceph.com/issues/21813>`_, `pr#21143 <https://github.com/ceph/ceph/pull/21143>`_, Willem Jan Withagen) -* common: global: output usage on -h, --help, or no args before contacting mons (`pr#20812 <https://github.com/ceph/ceph/pull/20812>`_, Sage Weil) -* common: hint the main branch of dout() accordingly to default verbosity (`pr#21259 <https://github.com/ceph/ceph/pull/21259>`_, Radoslaw Zarzynski) -* common: implement random number generator (following N3551) (`issue#18873 <http://tracker.ceph.com/issues/18873>`_, `pr#15341 <https://github.com/ceph/ceph/pull/15341>`_, Jesse Williamson) -* common: Improving message sent to user when getting signals (`issue#23320 <http://tracker.ceph.com/issues/23320>`_, `pr#21000 <https://github.com/ceph/ceph/pull/21000>`_, Erwan Velu) -* common: include/encoding: fix compat version error message (`pr#19660 <https://github.com/ceph/ceph/pull/19660>`_, Xinying Song) -* common: include/interval_set: parameterize by map type and kill btree_interval_set.h (`pr#18611 <https://github.com/ceph/ceph/pull/18611>`_, Sage Weil) -* common: include/rados: fix typo in librados.h (`pr#17988 <https://github.com/ceph/ceph/pull/17988>`_, wumingqiao) -* common: include: Remove unused header, ciso646 (`pr#18320 <https://github.com/ceph/ceph/pull/18320>`_, Shinobu Kinjo) -* common: include/types: format decimal numbers with decimal factor (`issue#22095 <http://tracker.ceph.com/issues/22095>`_, `pr#19117 <https://github.com/ceph/ceph/pull/19117>`_, Jan Fajerski) -* common: include: xlist: Fix Clang error for missing string (`pr#19367 <https://github.com/ceph/ceph/pull/19367>`_, Willem Jan Withagen) -* common: interval_set: kill subset_of() (`pr#21108 <https://github.com/ceph/ceph/pull/21108>`_, xie xingguo) -* common: interval_set: optimize intersect_of insert operations (`issue#21229 <http://tracker.ceph.com/issues/21229>`_, `pr#17265 <https://github.com/ceph/ceph/pull/17265>`_, Zac Medico) -* common: introduce md_config_cacher_t (`pr#20320 <https://github.com/ceph/ceph/pull/20320>`_, Radoslaw Zarzynski) -* common: kick off mimic (`pr#16993 <https://github.com/ceph/ceph/pull/16993>`_, Sage Weil) -* common: lockdep fixes (`issue#20988 <http://tracker.ceph.com/issues/20988>`_, `pr#17738 <https://github.com/ceph/ceph/pull/17738>`_, Jeff Layton) -* common: log: clear thread-local stream's ios flags on reuse (`pr#20174 <https://github.com/ceph/ceph/pull/20174>`_, Casey Bodley) -* common: logically dead code inside shunique_lock.h (`pr#17341 <https://github.com/ceph/ceph/pull/17341>`_, Amit Kumar) -* common: make ceph_clock_now() inlineable (`pr#20443 <https://github.com/ceph/ceph/pull/20443>`_, Radoslaw Zarzynski) -* common: Make code to invoke assert() smaller (`pr#20445 <https://github.com/ceph/ceph/pull/20445>`_, Adam Kupczyk) -* common: make some message informative, instead of error (`pr#16594 <https://github.com/ceph/ceph/pull/16594>`_, Willem Jan Withagen) -* common: mark events of TrackedOp outside its constructor (`issue#22608 <http://tracker.ceph.com/issues/22608>`_, `pr#19828 <https://github.com/ceph/ceph/pull/19828>`_, Xuehan Xu) -* common: mgr/dashboard_v2: Fix test_cluster_configuration test (`issue#23265 <http://tracker.ceph.com/issues/23265>`_, `pr#20782 <https://github.com/ceph/ceph/pull/20782>`_, Sebastian Wagner) -* common: mimic: include/types: space between number and units (`pr#22107 <https://github.com/ceph/ceph/pull/22107>`_, Sage Weil) -* common,mon: crush,mon: fix weight-set vs crush device classes (`issue#20939 <http://tracker.ceph.com/issues/20939>`_, `pr#16883 <https://github.com/ceph/ceph/pull/16883>`_, Sage Weil) -* common,mon,osd,pybind: silence warning and remove executable mode bit (`pr#17512 <https://github.com/ceph/ceph/pull/17512>`_, Kefu Chai) -* common: msg/async/AsyncConnection: less noisy debug (`pr#20600 <https://github.com/ceph/ceph/pull/20600>`_, Sage Weil) -* common: msg/async: execute on core specified by core_id not its index (`pr#20659 <https://github.com/ceph/ceph/pull/20659>`_, Kefu Chai) -* common: msg/msg_types: fix the entity_addr_t's decoder (`pr#17699 <https://github.com/ceph/ceph/pull/17699>`_, Kefu Chai) -* common: msg/simple: s/ceph::size/std::size/ (`pr#19896 <https://github.com/ceph/ceph/pull/19896>`_, Kefu Chai) -* common/options.cc: cleanup readable literals for default sizes (`pr#18425 <https://github.com/ceph/ceph/pull/18425>`_, Enming Zhang) -* common/options.cc: Set Filestore rocksdb compaction readahead option (`issue#21505 <http://tracker.ceph.com/issues/21505>`_, `pr#17900 <https://github.com/ceph/ceph/pull/17900>`_, Mark Nelson) -* common: OpTracker doesn't visit TrackedOp when nref == 0 (`issue#24037 <http://tracker.ceph.com/issues/24037>`_, `pr#22160 <https://github.com/ceph/ceph/pull/22160>`_, Radoslaw Zarzynski) -* common: osdc/Objecter: fix warning (`pr#21757 <https://github.com/ceph/ceph/pull/21757>`_, Sage Weil) -* common: osdc/Objecter: record correctly value for l_osdc_op_send_bytes (`issue#21982 <http://tracker.ceph.com/issues/21982>`_, `pr#18810 <https://github.com/ceph/ceph/pull/18810>`_, Jianpeng Ma) -* common: osd/PrimaryLogPG: send requests to primary on cache miss (`issue#20919 <http://tracker.ceph.com/issues/20919>`_, `pr#16884 <https://github.com/ceph/ceph/pull/16884>`_, Sage Weil) -* common: osd_types: define max in eversion_t::max() to static (`pr#17453 <https://github.com/ceph/ceph/pull/17453>`_, yang.wang) -* common,os: initialize commit_data,cmount,iocb (`pr#17766 <https://github.com/ceph/ceph/pull/17766>`_, Amit Kumar) -* common: posix_fallocate on ZFS returns EINVAL (`pr#20398 <https://github.com/ceph/ceph/pull/20398>`_, Willem Jan Withagen) -* common: rados: clean up rados_getxattrs() and rados_striper_getxattrs() (`pr#20259 <https://github.com/ceph/ceph/pull/20259>`_, Gu Zhongyan) -* common: RAII-styled mechanism for updating PerfCounters (`pr#19149 <https://github.com/ceph/ceph/pull/19149>`_, Radoslaw Zarzynski) -* common: random: revert change from boost::optional to std::optional (`issue#23778 <http://tracker.ceph.com/issues/23778>`_, `pr#21567 <https://github.com/ceph/ceph/pull/21567>`_, Casey Bodley) -* common: Remove ceph_clock_gettime, extern keyword (`pr#19353 <https://github.com/ceph/ceph/pull/19353>`_, Shinobu Kinjo) -* common: retry_sys_call no need take address of a function pointer (`pr#21281 <https://github.com/ceph/ceph/pull/21281>`_, Leo Zhang) -* common: Revert "common/config: return const reference instead of a copy" (`pr#18934 <https://github.com/ceph/ceph/pull/18934>`_, Kefu Chai) -* common: Revert "core: hint the dout()'s message crafting as a cold code." (`issue#23169 <http://tracker.ceph.com/issues/23169>`_, `pr#20636 <https://github.com/ceph/ceph/pull/20636>`_, Kefu Chai) -* common,rgw: rgw,common,rbd: s/boost::regex/std::regex/ (`pr#19393 <https://github.com/ceph/ceph/pull/19393>`_, Kefu Chai) -* common,rgw: rgw,common: remove already included header files (`pr#19390 <https://github.com/ceph/ceph/pull/19390>`_, Yao Zongyou) -* common: silence jenkins's buiding warning in obj_bencher.cc (`pr#17272 <https://github.com/ceph/ceph/pull/17272>`_, Luo Kexue) -* common: src/common: update some ms\_\* options to be more consistent (`pr#20652 <https://github.com/ceph/ceph/pull/20652>`_, shangfufei) -* common: src/msg/async/rdma: decrease cpu usage by rdtsc instruction (`pr#16965 <https://github.com/ceph/ceph/pull/16965>`_, Jin Cai) -* common: Static Pointer (`pr#19079 <https://github.com/ceph/ceph/pull/19079>`_, Adam C. Emerson) -* common: strict_strtol INT_MAX and INT_MIN is valid (`pr#18574 <https://github.com/ceph/ceph/pull/18574>`_, Shasha Lu) -* common: s/unique_lock/lock_guard/, if manual lock/unlock are not necessary (`pr#19770 <https://github.com/ceph/ceph/pull/19770>`_, Shinobu Kinjo) -* common: Switch singletons to use immobile_any and cleanups (`pr#20273 <https://github.com/ceph/ceph/pull/20273>`_, Adam C. Emerson) -* common: test: fix unittest memory leak to silence valgrind (`pr#19654 <https://github.com/ceph/ceph/pull/19654>`_, Yao Zongyou) -* common,tests: test/common: unittest_mclock_priority_queue builds with "make" command (`pr#17582 <https://github.com/ceph/ceph/pull/17582>`_, J. Eric Ivancich) -* common,tests: test/librados: create unique lock names (`issue#20798 <http://tracker.ceph.com/issues/20798>`_, `pr#16953 <https://github.com/ceph/ceph/pull/16953>`_, Neha Ojha) -* common: tools/crushtool: skip device id if no name exists (`issue#22117 <http://tracker.ceph.com/issues/22117>`_, `pr#18901 <https://github.com/ceph/ceph/pull/18901>`_, Jan Fajerski) -* common: use mono clock for HeartbeatMap (`pr#17827 <https://github.com/ceph/ceph/pull/17827>`_, Xinze Chi, Kefu Chai) -* common: use move instead of copy in build_options() (`pr#18003 <https://github.com/ceph/ceph/pull/18003>`_, Casey Bodley) -* common: utime: fix __32u sec time overflow (`pr#21113 <https://github.com/ceph/ceph/pull/21113>`_, kungf) -* compressor: add zstd back (`pr#21106 <https://github.com/ceph/ceph/pull/21106>`_, Kefu Chai) -* compressor: conditionalize on HAVE_LZ4 (`pr#17059 <https://github.com/ceph/ceph/pull/17059>`_, Kefu Chai) -* compressor: kill AsyncCompressor which is broken (`pr#18472 <https://github.com/ceph/ceph/pull/18472>`_, Haomai Wang) -* core: blkin: Fix unconditional tracing in OSD (`pr#19156 <https://github.com/ceph/ceph/pull/19156>`_, Yingxin) -* core: ceph-debug-docker.sh: add ceph-osd-dbg package (`pr#17947 <https://github.com/ceph/ceph/pull/17947>`_, Patrick Donnelly) -* core: ceph.in: Add blocking mode for scrub and deep-scrub (`pr#19793 <https://github.com/ceph/ceph/pull/19793>`_, Brad Hubbard) -* core: ceph.in: do not panic at control+d in interactive mode (`pr#18374 <https://github.com/ceph/ceph/pull/18374>`_, Kefu Chai) -* core: ceph.in: print all matched commands if arg missing (`issue#22344 <http://tracker.ceph.com/issues/22344>`_, `pr#19547 <https://github.com/ceph/ceph/pull/19547>`_, Kefu Chai) -* core: ceph.in: use a different variable for holding thrown exception (`pr#20663 <https://github.com/ceph/ceph/pull/20663>`_, Kefu Chai) -* core: ceph-kvstore-tool: copy to different store type and cleanup properly (`pr#18029 <https://github.com/ceph/ceph/pull/18029>`_, Josh Durgin) -* core: ceph-mgr: exit after usage (`issue#23482 <http://tracker.ceph.com/issues/23482>`_, `pr#21401 <https://github.com/ceph/ceph/pull/21401>`_, Sage Weil) -* core: ceph_osd.cc: Drop legacy or redundant code (`pr#18718 <https://github.com/ceph/ceph/pull/18718>`_, Shinobu Kinjo) -* core: ceph-osd: some flags are not documented in the help output (`issue#20057 <http://tracker.ceph.com/issues/20057>`_, `pr#15565 <https://github.com/ceph/ceph/pull/15565>`_, Yanhu Cao) -* core: ceph: print output of "status" as string not as bytes (`pr#21297 <https://github.com/ceph/ceph/pull/21297>`_, Kefu Chai) -* core: ceph-rest-api: when port=0 use the DEFAULT_PORT instead (`pr#17443 <https://github.com/ceph/ceph/pull/17443>`_, You Ji) -* core: ceph_test_objectstore: disable filestore_fiemap for tests (`issue#21880 <http://tracker.ceph.com/issues/21880>`_, `pr#18452 <https://github.com/ceph/ceph/pull/18452>`_, Sage Weil) -* core: ceph_test_objectstore: do not change model for 0-length zero (`issue#21712 <http://tracker.ceph.com/issues/21712>`_, `pr#18519 <https://github.com/ceph/ceph/pull/18519>`_, Sage Weil) -* core: ceph_test_rados_api_aio: fix race with full pool and osdmap (`issue#23916 <http://tracker.ceph.com/issues/23916>`_, `issue#23917 <http://tracker.ceph.com/issues/23917>`_, `pr#21709 <https://github.com/ceph/ceph/pull/21709>`_, Sage Weil) -* core: ceph_test_rados_api_tier: add ListSnap test (`pr#17706 <https://github.com/ceph/ceph/pull/17706>`_, Xuehan Xu) -* core: client,osd,test: Initialize fuse_req_key,snap,who,seq (`pr#17772 <https://github.com/ceph/ceph/pull/17772>`_, Amit Kumar) -* core: common/admin_socket: various cleanups (`pr#20274 <https://github.com/ceph/ceph/pull/20274>`_, Adam C. Emerson) -* core: common/config: cleanup remove some unused macros (`pr#19599 <https://github.com/ceph/ceph/pull/19599>`_, Yao Zongyou) -* core: common,mds,osd: Explicitly delete copy ctor if noncopyable (`pr#19465 <https://github.com/ceph/ceph/pull/19465>`_, Shinobu Kinjo) -* core: common/options: enable multiple rocksdb compaction threads for filestore (`pr#18232 <https://github.com/ceph/ceph/pull/18232>`_, Josh Durgin) -* core: common, osd: duplicated "start" event in OpTracker, improve OpTracker::dump_ops (`pr#21119 <https://github.com/ceph/ceph/pull/21119>`_, Chang Liu) -* core: compressor: Add Brotli Compressor (`pr#19549 <https://github.com/ceph/ceph/pull/19549>`_, BI SHUN KE) -* core: config: lower default omap entries recovered at once (`issue#21897 <http://tracker.ceph.com/issues/21897>`_, `pr#19910 <https://github.com/ceph/ceph/pull/19910>`_, Josh Durgin) -* core: crush/CrushWrapper: fix potential invalid use of iterator (`pr#21325 <https://github.com/ceph/ceph/pull/21325>`_, xie xingguo) -* core: dmclock: Delivery of the dmclock delta, rho and phase parameter + Enabling the client service tracker (`pr#16369 <https://github.com/ceph/ceph/pull/16369>`_, Byungsu Park, Taewoong Kim) -* core: erasure-code: refactor the interfaces to hide internals from public (`pr#18683 <https://github.com/ceph/ceph/pull/18683>`_, Kefu Chai) -* core: erasure-code: use jerasure_free_schedule to properly free a schedule (`pr#19650 <https://github.com/ceph/ceph/pull/19650>`_, Yao Zongyou) -* core: erasure-code: use std::count() instead (`pr#19428 <https://github.com/ceph/ceph/pull/19428>`_, Kefu Chai) -* core: etc/default/ceph: remove jemalloc option (`issue#20557 <http://tracker.ceph.com/issues/20557>`_, `pr#18486 <https://github.com/ceph/ceph/pull/18486>`_, Sage Weil) -* core: filestore: include <linux/falloc.h> (`pr#20415 <https://github.com/ceph/ceph/pull/20415>`_, wumingqiao) -* core: Fix a dead lock when doing rdma performance test by fio (`pr#17016 <https://github.com/ceph/ceph/pull/17016>`_, Wang Chuanhong) -* core: Fix asserts caused by DNE pgs left behind after lots of OSD restarts (`issue#21833 <http://tracker.ceph.com/issues/21833>`_, `pr#20571 <https://github.com/ceph/ceph/pull/20571>`_, David Zafman) -* core: include: kill MIN and MAX macros (`pr#20886 <https://github.com/ceph/ceph/pull/20886>`_, Sage Weil) -* core: interval_set: optimize intersection_of (`pr#17088 <https://github.com/ceph/ceph/pull/17088>`_, Zac Medico) -* core: kv/KeyValueDB: add column family (`pr#18049 <https://github.com/ceph/ceph/pull/18049>`_, Jianjian Huo, Adam C. Emerson, Sage Weil) -* core: kv/RocksDB: get index and filter blocks memory usage (`pr#19934 <https://github.com/ceph/ceph/pull/19934>`_, Zhi Zhang) -* core: kv/RocksDBStore: fix rocksdb error when block cache is disabled (`issue#23816 <http://tracker.ceph.com/issues/23816>`_, `pr#21583 <https://github.com/ceph/ceph/pull/21583>`_, Yang Honggang) -* core: librados: add OPERATION_ORDERSNAP flag and yet another aio_operate method (`pr#20343 <https://github.com/ceph/ceph/pull/20343>`_, Mykola Golub) -* core: librados.h: add LIBRADOS_SUPPORTS_APP_METADATA (`pr#16542 <https://github.com/ceph/ceph/pull/16542>`_, Matt Benjamin) -* core: libradosstriper: fix the function declaration of rados_striper_trunc (`pr#20301 <https://github.com/ceph/ceph/pull/20301>`_, yuelongguang) -* core: libradosstriper: silence warning from -Wreorder (`pr#16890 <https://github.com/ceph/ceph/pull/16890>`_, songweibin) -* core: make the main dout() paths faster and more maintanable (`pr#20290 <https://github.com/ceph/ceph/pull/20290>`_, Radoslaw Zarzynski) -* core: messages: Initialization of variable beat (`pr#17641 <https://github.com/ceph/ceph/pull/17641>`_, Amit Kumar) -* core: messages: Initialize member variables (`pr#16846 <https://github.com/ceph/ceph/pull/16846>`_, amitkuma) -* core: messages: initialize variable tid in MMDSFindIno (`pr#16793 <https://github.com/ceph/ceph/pull/16793>`_, amitkuma) -* core: messages: Initializing members in MOSDPGUpdateLogMissing (`pr#16928 <https://github.com/ceph/ceph/pull/16928>`_, amitkuma) -* core: messages: Initializing variable ceph_mds_reply_head (`pr#17090 <https://github.com/ceph/ceph/pull/17090>`_, amitkuma) -* core: messages,journal: Initialization of stats_period,m_active_set (`pr#17792 <https://github.com/ceph/ceph/pull/17792>`_, Amit Kumar) -* core: messages/MOSDMap: do compat reencode of crush map, too (`issue#21882 <http://tracker.ceph.com/issues/21882>`_, `pr#18454 <https://github.com/ceph/ceph/pull/18454>`_, Sage Weil) -* core: messages/MOSDOp: a fixes of encode_payload (`pr#16836 <https://github.com/ceph/ceph/pull/16836>`_, Ying He) -* core: messages: Silence uninitialized member warnings (`pr#17596 <https://github.com/ceph/ceph/pull/17596>`_, Amit Kumar) -* core: mgr/DaemonServer.cc: add 'is_valid=false' when decode caps error (`issue#20990 <http://tracker.ceph.com/issues/20990>`_, `pr#16978 <https://github.com/ceph/ceph/pull/16978>`_, Yanhu Cao) -* core,mgr: mgr/balancer: improve error message (`issue#22814 <http://tracker.ceph.com/issues/22814>`_, `pr#21427 <https://github.com/ceph/ceph/pull/21427>`_, Sage Weil) -* core,mgr: osd,mgrclient: pass daemon_status by rvalue ref and other cleanups (`pr#18509 <https://github.com/ceph/ceph/pull/18509>`_, Kefu Chai) -* core,mgr: osd,mgr: report slow requests and pending creating pgs to mgr (`pr#18614 <https://github.com/ceph/ceph/pull/18614>`_, Kefu Chai) -* core: mimic: crush: update choose_args on bucket removal (`issue#24167 <http://tracker.ceph.com/issues/24167>`_, `pr#22120 <https://github.com/ceph/ceph/pull/22120>`_, Sage Weil) -* core: mimic: osdc: guard op->on_notify_finish with lock (`issue#23966 <http://tracker.ceph.com/issues/23966>`_, `pr#21834 <https://github.com/ceph/ceph/pull/21834>`_, Kefu Chai) -* core: mimic: osd: clean up smart probe (`issue#23899 <http://tracker.ceph.com/issues/23899>`_, `issue#24104 <http://tracker.ceph.com/issues/24104>`_, `pr#21959 <https://github.com/ceph/ceph/pull/21959>`_, Sage Weil, Gu Zhongyan) -* core: mimic: osd: Don't evict even when preemption has restarted with smaller chunk (`pr#22041 <https://github.com/ceph/ceph/pull/22041>`_, David Zafman) -* core: mimic: osd/PrimaryLogPG: fix try_flush_mark_clean write contention case (`issue#24200 <http://tracker.ceph.com/issues/24200>`_, `issue#24174 <http://tracker.ceph.com/issues/24174>`_, `pr#22113 <https://github.com/ceph/ceph/pull/22113>`_, Sage Weil) -* core: mon/ConfigKeyService: dump: print placeholder value for binary blobs (`issue#23622 <http://tracker.ceph.com/issues/23622>`_, `pr#21329 <https://github.com/ceph/ceph/pull/21329>`_, Sage Weil) -* core,mon: crush, mon: bump up map version only if we truly created a weight-set (`pr#20178 <https://github.com/ceph/ceph/pull/20178>`_, xie xingguo) -* core: mon/LogMonitor: separate out summary by channel (`pr#21395 <https://github.com/ceph/ceph/pull/21395>`_, Sage Weil) -* core,mon: mon/AuthMonitor: create bootstrap keys on create_initial() (`pr#21236 <https://github.com/ceph/ceph/pull/21236>`_, Joao Eduardo Luis) -* core,mon: mon/LogMonitor: do not crash on log sub w/ no messages (`pr#21469 <https://github.com/ceph/ceph/pull/21469>`_, Sage Weil) -* core,mon: mon,osd,crush: misc cleanup (`pr#20687 <https://github.com/ceph/ceph/pull/20687>`_, songweibin) -* core,mon: mon/OSDMonitor: Comment out unused function (`pr#20275 <https://github.com/ceph/ceph/pull/20275>`_, Brad Hubbard) -* core,mon: mon/OSDMonitor: don't create pgs if pool was deleted (`issue#21309 <http://tracker.ceph.com/issues/21309>`_, `pr#17600 <https://github.com/ceph/ceph/pull/17600>`_, Joao Eduardo Luis) -* core,mon: mon/OSDMonitor: implement cluster pg limit (`pr#17427 <https://github.com/ceph/ceph/pull/17427>`_, Sage Weil) -* core,mon: mon/OSDMonitor: list osd tree in named bucket (`pr#19564 <https://github.com/ceph/ceph/pull/19564>`_, kungf) -* core: mon, osd: add create-time for pool (`pr#21690 <https://github.com/ceph/ceph/pull/21690>`_, xie xingguo) -* core: mon, osd: fix potential collided \*Up Set\* after PG remapping (`issue#23118 <http://tracker.ceph.com/issues/23118>`_, `pr#20653 <https://github.com/ceph/ceph/pull/20653>`_, xie xingguo) -* core,mon: osd,mon: add max-pg-per-osd limit (`pr#18358 <https://github.com/ceph/ceph/pull/18358>`_, Kefu Chai) -* core: mon/OSDMonitor: filter out pgs that shouldn't exist from force-create-pg (`pr#20267 <https://github.com/ceph/ceph/pull/20267>`_, Sage Weil) -* core: mon/OSDMonitor: fix min_size default for replicated pools (`pr#20555 <https://github.com/ceph/ceph/pull/20555>`_, Josh Durgin) -* core: mon/OSDMonitor: Fix OSDMonitor error message outputs (`issue#22351 <http://tracker.ceph.com/issues/22351>`_, `pr#20022 <https://github.com/ceph/ceph/pull/20022>`_, Brad Hubbard) -* core: mon/OSDMonitor: make 'osd crush class rename' idempotent (`pr#17330 <https://github.com/ceph/ceph/pull/17330>`_, xie xingguo) -* core: mon/OSDMonitor: rename outer name declaration to avoid shadowing (`pr#20032 <https://github.com/ceph/ceph/pull/20032>`_, Sage Weil) -* core: mon/OSDMonitor: require --yes-i-really-mean-it for force-create-pg (`pr#21619 <https://github.com/ceph/ceph/pull/21619>`_, Sage Weil) -* core: mon,osd,osdc: refactor snap trimming (phase 1) (`pr#18276 <https://github.com/ceph/ceph/pull/18276>`_, Sage Weil) -* core: mon, osd: per pool space-full flag support (`pr#17371 <https://github.com/ceph/ceph/pull/17371>`_, xie xingguo) -* core: mon, osd: turn down non-error scrub message severity (`issue#20947 <http://tracker.ceph.com/issues/20947>`_, `pr#16916 <https://github.com/ceph/ceph/pull/16916>`_, John Spray) -* core: mon/PGMap: fix PGMapDigest decode (`pr#22099 <https://github.com/ceph/ceph/pull/22099>`_, Sage Weil) -* core: mon/PGMap: Fix %USED calculation bug (`issue#22247 <http://tracker.ceph.com/issues/22247>`_, `pr#19165 <https://github.com/ceph/ceph/pull/19165>`_, Xiaoxi Chen) -* core: mon/PGMap: remove or narrow columns 'pg ls' output (`pr#20945 <https://github.com/ceph/ceph/pull/20945>`_, Sage Weil) -* core: mon/PGMap: 'unclean' does not imply damaged (`pr#18493 <https://github.com/ceph/ceph/pull/18493>`_, Sage Weil) -* core: MOSDPGRecoveryDelete[Reply]: bump header version (`pr#17585 <https://github.com/ceph/ceph/pull/17585>`_, Josh Durgin) -* core: msg/asyc/rmda: fix the bug of assert when Infiniband::recv_msg receives disconnect message (`pr#17688 <https://github.com/ceph/ceph/pull/17688>`_, Jin Cai) -* core: msg/async/AsyncConnection: combine multi alloc into one (`pr#18833 <https://github.com/ceph/ceph/pull/18833>`_, Haomai Wang) -* core: msg/async/AsyncConnection: Fix FPE in process_connection (`issue#23618 <http://tracker.ceph.com/issues/23618>`_, `pr#21314 <https://github.com/ceph/ceph/pull/21314>`_, Brad Hubbard) -* core: msg/async/AsyncConnection: state will be NONE if replacing by another one (`issue#21883 <http://tracker.ceph.com/issues/21883>`_, `pr#18467 <https://github.com/ceph/ceph/pull/18467>`_, Haomai Wang) -* core: msg/async/AsyncConnection: unregister connection when racing happened (`pr#19013 <https://github.com/ceph/ceph/pull/19013>`_, Haomai Wang) -* core: msg/async: batch handle numevents (`pr#18321 <https://github.com/ceph/ceph/pull/18321>`_, Jianpeng Ma) -* core: msg/async: don't kill connection if replacing (`issue#21143 <http://tracker.ceph.com/issues/21143>`_, `pr#17288 <https://github.com/ceph/ceph/pull/17288>`_, Haomai Wang) -* core: msg/async: don't stuck into resetsession/retrysession loop (`pr#17276 <https://github.com/ceph/ceph/pull/17276>`_, Haomai Wang) -* core: msg/async: fix bug of data type conversion when uint64_t -> int -> uint64_t (`pr#18210 <https://github.com/ceph/ceph/pull/18210>`_, shangfufei) -* core: msg/async: print error log if add_event fail (`pr#17102 <https://github.com/ceph/ceph/pull/17102>`_, mychoxin) -* core: msg/async/rdma: fix multi cephcontext confllicting (`pr#16893 <https://github.com/ceph/ceph/pull/16893>`_, Haomai Wang) -* core: msg/async/rdma: fix the bug that rdma polling thread uses the same thread name with msg worker (`pr#16936 <https://github.com/ceph/ceph/pull/16936>`_, Jin Cai) -* core: msg/async/rdma: improves RX buffer management (`pr#16693 <https://github.com/ceph/ceph/pull/16693>`_, Alex Mikheev) -* core: msg/async/rdma: uninitialized variable fix (`pr#18091 <https://github.com/ceph/ceph/pull/18091>`_, Vasily Philipov) -* core: msg/DispatchQueue: clear queue after wait() (`issue#18351 <http://tracker.ceph.com/issues/18351>`_, `pr#20374 <https://github.com/ceph/ceph/pull/20374>`_, Sage Weil) -* core: msgr/simple: set Pipe::out_seq to in_seq of the connecting side (`issue#23807 <http://tracker.ceph.com/issues/23807>`_, `pr#21585 <https://github.com/ceph/ceph/pull/21585>`_, Xuehan Xu) -* core: os/bluestore: debug bluestore cache shutdown (`issue#21259 <http://tracker.ceph.com/issues/21259>`_, `pr#17844 <https://github.com/ceph/ceph/pull/17844>`_, Sage Weil) -* core: os/bluestore: disable on_applied sync_complete (`issue#22668 <http://tracker.ceph.com/issues/22668>`_, `pr#20169 <https://github.com/ceph/ceph/pull/20169>`_, Sage Weil) -* core: os/bluestore: make bdev label parsing error more meaningful and less noisy (`pr#20090 <https://github.com/ceph/ceph/pull/20090>`_, Sage Weil) -* core: os/bluestore: make BlueStore opened by start_kv_only umountable (`issue#21624 <http://tracker.ceph.com/issues/21624>`_, `pr#18082 <https://github.com/ceph/ceph/pull/18082>`_, Chang Liu) -* core: os/bluestore: use db->rm_range_keys to delete range of keys (`pr#18279 <https://github.com/ceph/ceph/pull/18279>`_, Xiaoyan Li) -* core: OSD/admin_socket: add get_mapped_pools command (`pr#19112 <https://github.com/ceph/ceph/pull/19112>`_, Xiaoxi Chen) -* core: osdc, class_api: kill implicit string conversions (`pr#16648 <https://github.com/ceph/ceph/pull/16648>`_, Piotr Dałek) -* core: osdc: dec num_in_flight for pool_dne case (`pr#21110 <https://github.com/ceph/ceph/pull/21110>`_, Jianpeng Ma) -* core: osdc: Do not use lock_guard as unique_lock (`pr#19756 <https://github.com/ceph/ceph/pull/19756>`_, Shinobu Kinjo) -* core: osdc: invoke notify finish context on linger commit failure (`issue#23966 <http://tracker.ceph.com/issues/23966>`_, `pr#21786 <https://github.com/ceph/ceph/pull/21786>`_, Jason Dillaman) -* core: osdc/Objecter: add ignore overlay flag if got redirect reply (`pr#21275 <https://github.com/ceph/ceph/pull/21275>`_, Ting Yi Lin) -* core: osdc/Objecter: delay initialization of hobject_t in _send_op (`issue#21845 <http://tracker.ceph.com/issues/21845>`_, `pr#18427 <https://github.com/ceph/ceph/pull/18427>`_, Jason Dillaman) -* core: osdc/Objecter: fix recursive locking in _finish_command (`issue#23940 <http://tracker.ceph.com/issues/23940>`_, `pr#21742 <https://github.com/ceph/ceph/pull/21742>`_, Sage Weil) -* core: osdc/Objecter: misc cleanups (`pr#18476 <https://github.com/ceph/ceph/pull/18476>`_, Jianpeng Ma) -* core: osdc/Objecter: prevent double-invocation of linger op callback (`issue#23872 <http://tracker.ceph.com/issues/23872>`_, `pr#21649 <https://github.com/ceph/ceph/pull/21649>`_, Jason Dillaman) -* core: osdc/Objecter: skip sparse-read result decode if bufferlist is empty (`issue#21844 <http://tracker.ceph.com/issues/21844>`_, `pr#18400 <https://github.com/ceph/ceph/pull/18400>`_, Jason Dillaman) -* core: osd,compressor: Expose compression algorithms via MOSDBoot (`issue#22420 <http://tracker.ceph.com/issues/22420>`_, `pr#20558 <https://github.com/ceph/ceph/pull/20558>`_, Jesse Williamson) -* core: osdc: remove unused function (`pr#21081 <https://github.com/ceph/ceph/pull/21081>`_, Jianpeng Ma) -* core: osd,dmclock: use pointer to ClientInfo instead of a copy of it (`pr#18387 <https://github.com/ceph/ceph/pull/18387>`_, Kefu Chai) -* core: osd: do not forget pg_stat acks which failed to send (`pr#16702 <https://github.com/ceph/ceph/pull/16702>`_, huangjun) -* core: OSD: drop unsed parameter passed to check_osdmap_features (`pr#18466 <https://github.com/ceph/ceph/pull/18466>`_, Leo Zhang) -* core: osd/ECBackend: inject sleep during deep scrub (`pr#20531 <https://github.com/ceph/ceph/pull/20531>`_, xie xingguo) -* core: osd/ECBackend: only check required shards when finishing recovery reads (`issue#23195 <http://tracker.ceph.com/issues/23195>`_, `pr#21273 <https://github.com/ceph/ceph/pull/21273>`_, Josh Durgin) -* core: osd/ECBackend: update misleading comment about EIO handling (`pr#21686 <https://github.com/ceph/ceph/pull/21686>`_, Josh Durgin) -* core: osd/ECBackend: wait for apply for luminous peers (`pr#21604 <https://github.com/ceph/ceph/pull/21604>`_, Sage Weil) -* core: osd/ECMsgTypes: fix ECSubRead compat decode (`pr#20948 <https://github.com/ceph/ceph/pull/20948>`_, Sage Weil) -* core: osd, librados: add a rados op (TIER_PROMOTE) (`pr#19362 <https://github.com/ceph/ceph/pull/19362>`_, Myoungwon Oh) -* core: osd,librados: add manifest, operations for chunked object (`pr#15482 <https://github.com/ceph/ceph/pull/15482>`_, Myoungwon Oh) -* core: osd,messages: Initialize read_length,options,send_reply (`pr#17799 <https://github.com/ceph/ceph/pull/17799>`_, Amit Kumar) -* core: osd/OSD: batch-list objects to reduce memory consumption (`pr#20767 <https://github.com/ceph/ceph/pull/20767>`_, xie xingguo) -* core: osd/OSD.cc: add 'isvalid=false' when failed to parse caps (`pr#16888 <https://github.com/ceph/ceph/pull/16888>`_, Yanhu Cao) -* core: osd/OSD.cc: use option 'osd_scrub_cost' instead (`pr#18479 <https://github.com/ceph/ceph/pull/18479>`_, Liao Weizhong) -* core: osd/OSDMap: add osdmap epoch info when printing info summary (`pr#20184 <https://github.com/ceph/ceph/pull/20184>`_, shun-s) -* core: osd/OSDMap: fix HAVE_FEATURE logic in encode() (`pr#20922 <https://github.com/ceph/ceph/pull/20922>`_, Ilya Dryomov) -* core: osd/OSDMap: ignore PGs from pools of failure-domain OSD (`pr#20703 <https://github.com/ceph/ceph/pull/20703>`_, xie xingguo) -* core: osd/OSDMap: misleading message in print_oneline_summary() (`issue#22350 <http://tracker.ceph.com/issues/22350>`_, `pr#20313 <https://github.com/ceph/ceph/pull/20313>`_, Gu Zhongyan) -* core: osd/OSDMap: more pg upmap fixes (`issue#23878 <http://tracker.ceph.com/issues/23878>`_, `pr#21670 <https://github.com/ceph/ceph/pull/21670>`_, xiexingguo) -* core: osd/OSDMap: remove the unnecessary checks for null (`pr#18636 <https://github.com/ceph/ceph/pull/18636>`_, Kefu Chai) -* core: osd/OSDMap: skip out/crush-out osds (`pr#20655 <https://github.com/ceph/ceph/pull/20655>`_, xie xingguo) -* core: osd/OSDMap: upmap should respect the osd reweights (`issue#21538 <http://tracker.ceph.com/issues/21538>`_, `pr#17944 <https://github.com/ceph/ceph/pull/17944>`_, Theofilos Mouratidis) -* core: osd/osd_type: get_clone_bytes - inline size() for overlapping size (`pr#17823 <https://github.com/ceph/ceph/pull/17823>`_, xie xingguo) -* core: osd/osd_types.cc: copy extents map too while making clone (`pr#18396 <https://github.com/ceph/ceph/pull/18396>`_, xie xingguo) -* core: osd/osd_types: fix ideal lower bound object-id of pg (`pr#21235 <https://github.com/ceph/ceph/pull/21235>`_, xie xingguo) -* core: osd/osd_types: fix object_stat_sum_t decode (`pr#18551 <https://github.com/ceph/ceph/pull/18551>`_, Sage Weil) -* core: osd/osd_types: fix pg_pool_t encoding for hammer (`pr#21282 <https://github.com/ceph/ceph/pull/21282>`_, Sage Weil) -* core: osd/osd_types: kill preferred field in pg_t (`pr#20567 <https://github.com/ceph/ceph/pull/20567>`_, Sage Weil) -* core: osd/osd_types: object_info_t: remove unused function (`pr#17905 <https://github.com/ceph/ceph/pull/17905>`_, Kefu Chai) -* core: osd/osd_types: pg_pool_t: remove crash_replay_interval member (`pr#18379 <https://github.com/ceph/ceph/pull/18379>`_, Sage Weil) -* core: osd/osd_types: remove backlog type for pg_log_entry_t (`pr#20887 <https://github.com/ceph/ceph/pull/20887>`_, Sage Weil) -* core: osd/OSD: Using Wait rather than WaitInterval to wait queue.is_empty() (`pr#17659 <https://github.com/ceph/ceph/pull/17659>`_, Jianpeng Ma) -* core: osd/PG: allow scrub preemption (`pr#18971 <https://github.com/ceph/ceph/pull/18971>`_, Sage Weil) -* core: osd/PGBackend: delete reply if fails to complete delete request (`issue#20913 <http://tracker.ceph.com/issues/20913>`_, `pr#17183 <https://github.com/ceph/ceph/pull/17183>`_, Kefu Chai) -* core: osd/PGBackend: drop input "snapid_t" from objects_list_range() (`pr#21151 <https://github.com/ceph/ceph/pull/21151>`_, xie xingguo) -* core: osd/PGBackend: fix large_omap_objects checking (`pr#21150 <https://github.com/ceph/ceph/pull/21150>`_, xie xingguo) -* core: osd/PGBackend: release a msg using msg->put() not delete (`issue#20913 <http://tracker.ceph.com/issues/20913>`_, `pr#17246 <https://github.com/ceph/ceph/pull/17246>`_, Kefu Chai) -* core: osd/PG: const cleanup for recoverable/readable predicates (`pr#18982 <https://github.com/ceph/ceph/pull/18982>`_, Neha Ojha) -* core: osd/PG: decay scrub_chunk_max too if scrub is preempted (`pr#20552 <https://github.com/ceph/ceph/pull/20552>`_, xie xingguo) -* core: osd/PG: discard msgs from down peers (`issue#19605 <http://tracker.ceph.com/issues/19605>`_, `pr#17217 <https://github.com/ceph/ceph/pull/17217>`_, Kefu Chai) -* core: osd/PG: drop unused variable "oldest_update" in PG.h (`pr#17142 <https://github.com/ceph/ceph/pull/17142>`_, songweibin) -* core: osd/PG: extend pg state bits to fix pg ls commands error (`issue#21609 <http://tracker.ceph.com/issues/21609>`_, `pr#18058 <https://github.com/ceph/ceph/pull/18058>`_, Yan Jun) -* core: osd/PG: fix calc of misplaced objects (`pr#18528 <https://github.com/ceph/ceph/pull/18528>`_, Kefu Chai) -* core: osd/PG: fix DeferRecovery vs AllReplicasRecovered race (`issue#23860 <http://tracker.ceph.com/issues/23860>`_, `pr#21706 <https://github.com/ceph/ceph/pull/21706>`_, Sage Weil) -* core: osd/PG: fix objects degraded higher than 100% (`issue#21803 <http://tracker.ceph.com/issues/21803>`_, `issue#21898 <http://tracker.ceph.com/issues/21898>`_, `pr#18297 <https://github.com/ceph/ceph/pull/18297>`_, Sage Weil, David Zafman) -* core: osd/PG: fix out of order priority for PG deletion (`pr#21613 <https://github.com/ceph/ceph/pull/21613>`_, xie xingguo) -* core: osd/PG: fix recovery op leak (`pr#18524 <https://github.com/ceph/ceph/pull/18524>`_, Sage Weil) -* core: osd/PG: fix uninit read in Incomplete::react(AdvMap&) (`issue#23980 <http://tracker.ceph.com/issues/23980>`_, `pr#21798 <https://github.com/ceph/ceph/pull/21798>`_, Sage Weil) -* core: osd/PG: force rebuild of missing set on jewel upgrade (`issue#20958 <http://tracker.ceph.com/issues/20958>`_, `pr#16950 <https://github.com/ceph/ceph/pull/16950>`_, Sage Weil) -* core: osd/PG: include primary in PG operator<< for ec pools (`pr#19453 <https://github.com/ceph/ceph/pull/19453>`_, Sage Weil) -* core: osd/PGLog: assert out on performing overflowed log trimming (`pr#21580 <https://github.com/ceph/ceph/pull/21580>`_, xie xingguo) -* core: osd/PGLog: cleanup unused function revise_have (`pr#19329 <https://github.com/ceph/ceph/pull/19329>`_, Enming Zhang) -* core: osd/PGLog: fix sanity check against \*\*complete-to\*\* iter (`pr#21612 <https://github.com/ceph/ceph/pull/21612>`_, songweibin) -* core: osd/PGLog: get rid of ineffective container operations (`pr#19161 <https://github.com/ceph/ceph/pull/19161>`_, xie xingguo) -* core: osd/PGLog: write only changed dup entries (`issue#21026 <http://tracker.ceph.com/issues/21026>`_, `pr#17245 <https://github.com/ceph/ceph/pull/17245>`_, Josh Durgin) -* core: osd, pg, mgr: make snap trim queue problems visible (`issue#22448 <http://tracker.ceph.com/issues/22448>`_, `pr#19520 <https://github.com/ceph/ceph/pull/19520>`_, Piotr Dałek) -* core: osd/PG: misc cleanups (`pr#18340 <https://github.com/ceph/ceph/pull/18340>`_, Yan Jun) -* core: osd/PG: miscellaneous choose acting changes and cleanups (`pr#18481 <https://github.com/ceph/ceph/pull/18481>`_, xie xingguo) -* core: osd/PG: pass scrub priority to replica (`pr#20317 <https://github.com/ceph/ceph/pull/20317>`_, Sage Weil) -* core: osd/PG: perfer async_recovery_targets in reverse order of cost (`pr#21578 <https://github.com/ceph/ceph/pull/21578>`_, xie xingguo) -* core: osd/PG: perfer EC async_recovery_targets in reverse order of cost (`pr#21588 <https://github.com/ceph/ceph/pull/21588>`_, xie xingguo) -* core: osd/PG: PGPool::update: avoid expensive union_of (`pr#17239 <https://github.com/ceph/ceph/pull/17239>`_, Zac Medico) -* core: osd/PGPool::update: optimize with subset_of (`pr#17820 <https://github.com/ceph/ceph/pull/17820>`_, Zac Medico) -* core: osd/PG: reduce some overhead on operating MissingLoc (`pr#18186 <https://github.com/ceph/ceph/pull/18186>`_, xie xingguo) -* core: osd/PG: remote recovery preemption, and new feature bit to condition it on (`pr#18553 <https://github.com/ceph/ceph/pull/18553>`_, Sage Weil) -* core: osd/PG: remove unused parameter in calc_ec_acting (`pr#17304 <https://github.com/ceph/ceph/pull/17304>`_, yang.wang) -* core: osd/PG: restart recovery if NotRecovering and unfound found (`issue#22145 <http://tracker.ceph.com/issues/22145>`_, `pr#18974 <https://github.com/ceph/ceph/pull/18974>`_, Sage Weil) -* core: osd/PG: revert approx size (`issue#22654 <http://tracker.ceph.com/issues/22654>`_, `pr#18755 <https://github.com/ceph/ceph/pull/18755>`_, Adam Kupczyk) -* core: osd/PG: re-write of _update_calc_stats and improve pg degraded state (`issue#20059 <http://tracker.ceph.com/issues/20059>`_, `pr#19850 <https://github.com/ceph/ceph/pull/19850>`_, David Zafman) -* core: osd/PG: some cleanups && add should_gather filter for loop logging (`pr#19546 <https://github.com/ceph/ceph/pull/19546>`_, Enming Zhang) -* core: osd/PG: two cleanups (`pr#17171 <https://github.com/ceph/ceph/pull/17171>`_, xie xingguo) -* core: osd/PG: use osd_backfill_retry_interval for schedule_backfill_retry() (`pr#18686 <https://github.com/ceph/ceph/pull/18686>`_, xie xingguo) -* core: osd/PrimaryLogPG: add condition "is_chunky_scrub_active" to check object in chunky_scrub (`pr#18506 <https://github.com/ceph/ceph/pull/18506>`_, Jianpeng Ma) -* core: osd/PrimaryLogPG: arrange recovery order by number of missing objects (`pr#18292 <https://github.com/ceph/ceph/pull/18292>`_, xie xingguo) -* core: osd/PrimaryLogPG: avoid infinite loop when flush collides with write lock (`pr#21653 <https://github.com/ceph/ceph/pull/21653>`_, Sage Weil) -* core: osd/PrimaryLogPG: calc clone_overlap size in a more efficient and concise way (`pr#17928 <https://github.com/ceph/ceph/pull/17928>`_, xie xingguo) -* core: osd/PrimaryLogPG: cleanup do_sub_op && do_sub_op_reply and define soid in prepare_transaction more appropriate (`pr#19495 <https://github.com/ceph/ceph/pull/19495>`_, Enming Zhang) -* core: osd/PrimaryLogPG: clear data digest on WRITEFULL if skip_data_digest (`pr#21676 <https://github.com/ceph/ceph/pull/21676>`_, Sage Weil) -* core: osd/PrimaryLogPG: clear pin_stats_invalid bit properly on scrub-repair completion (`pr#18052 <https://github.com/ceph/ceph/pull/18052>`_, xie xingguo) -* core: osd/PrimaryLogPG: defer evict if head \*or\* object intersect scrub interval (`issue#23646 <http://tracker.ceph.com/issues/23646>`_, `pr#21628 <https://github.com/ceph/ceph/pull/21628>`_, Sage Weil) -* core: osd/PrimaryLogPG: do not pull-up snapc to snapset (`pr#18713 <https://github.com/ceph/ceph/pull/18713>`_, Sage Weil) -* core: osd/PrimaryLogPG: do not set data digest for bluestore (`pr#17515 <https://github.com/ceph/ceph/pull/17515>`_, xie xingguo) -* core: osd/PrimaryLogPG: do not set data/omap digest blindly (`pr#18061 <https://github.com/ceph/ceph/pull/18061>`_, xie xingguo) -* core: osd/PrimaryLogPG: do not use approx_size() for log trimming (`pr#18338 <https://github.com/ceph/ceph/pull/18338>`_, xie xingguo) -* core: osd/PrimaryLogPG: do_osd_ops - propagate EAGAIN/EINPROGRESS on failok (`pr#17222 <https://github.com/ceph/ceph/pull/17222>`_, xie xingguo) -* core: osd/PrimaryLogPG: drop unused parameters (`pr#18581 <https://github.com/ceph/ceph/pull/18581>`_, Liao Weizhong) -* core: osd/PrimaryLogPG: fix dup stat for async read (`pr#18693 <https://github.com/ceph/ceph/pull/18693>`_, Xinze Chi) -* core: osd/PrimaryLogPG: Fix log messages (`pr#21639 <https://github.com/ceph/ceph/pull/21639>`_, Gu Zhongyan) -* core: osd/PrimaryLogPG: fix sparse read won't trigger repair correctly (`pr#17221 <https://github.com/ceph/ceph/pull/17221>`_, xie xingguo) -* core: osd/PrimaryLogPG: fix the oi size mismatch with real object size (`issue#23701 <http://tracker.ceph.com/issues/23701>`_, `pr#21408 <https://github.com/ceph/ceph/pull/21408>`_, Peng Xie) -* core: osd/PrimaryLogPG: kick off recovery on backoffing a degraded object (`pr#17987 <https://github.com/ceph/ceph/pull/17987>`_, xie xingguo) -* core: osd/PrimaryLogPG: kill add_interval_usage (`pr#17807 <https://github.com/ceph/ceph/pull/17807>`_, xie xingguo) -* core: osd/PrimaryLogPG: maybe_handle_manifest_detail - sanity check obc existence (`pr#17298 <https://github.com/ceph/ceph/pull/17298>`_, xie xingguo) -* core: osd/PrimaryLogPG: misc cleanups (`pr#17830 <https://github.com/ceph/ceph/pull/17830>`_, Yan Jun) -* core: osd/PrimaryLogPG: more oi.extents fixes (`pr#18616 <https://github.com/ceph/ceph/pull/18616>`_, xie xingguo) -* core: osd/PrimaryLogPG: prepare_transaction - fix EDQUOT vs ENOSPC (`pr#17808 <https://github.com/ceph/ceph/pull/17808>`_, xie xingguo) -* core: osd/PrimaryLogPG: request osdmap update in the right block (`issue#21428 <http://tracker.ceph.com/issues/21428>`_, `pr#17828 <https://github.com/ceph/ceph/pull/17828>`_, Josh Durgin) -* core: osd/PrimaryLogPG: several oi.extents fixes (`pr#18527 <https://github.com/ceph/ceph/pull/18527>`_, xie xingguo) -* core: osd/PrimaryLogPG: trigger auto-repair on full-object-size CRC error (`pr#18353 <https://github.com/ceph/ceph/pull/18353>`_, xie xingguo) -* core: osd/ReplicatedBackend: clean up code (`pr#20127 <https://github.com/ceph/ceph/pull/20127>`_, Jianpeng Ma) -* core: osd/ReplicatedBackend: 'osd_deep_scrub_keys' doesn't work (`pr#20221 <https://github.com/ceph/ceph/pull/20221>`_, fang yuxiang) -* core: osd/ReplicatedPG: add omap write bytes to delta_stats (`pr#18471 <https://github.com/ceph/ceph/pull/18471>`_, Haomai Wang) -* core: osd_types.cc: reorder fields in serialized pg_stat_t (`pr#19965 <https://github.com/ceph/ceph/pull/19965>`_, Piotr Dałek) -* core: os/filestore: disable rocksdb compression (`pr#18707 <https://github.com/ceph/ceph/pull/18707>`_, Sage Weil) -* core: os/filestore/FileStore: Initialized by nullptr, NULL or 0 instead (`pr#18980 <https://github.com/ceph/ceph/pull/18980>`_, Shinobu Kinjo) -* core: os/filestore: fix device/partition metadata detection (`issue#20944 <http://tracker.ceph.com/issues/20944>`_, `pr#16913 <https://github.com/ceph/ceph/pull/16913>`_, Sage Weil) -* core: os/filestore: fix do_copy_range replay bug (`issue#23298 <http://tracker.ceph.com/issues/23298>`_, `pr#20832 <https://github.com/ceph/ceph/pull/20832>`_, Sage Weil) -* core: os/Filestore: fix wbthrottle assert (`pr#14213 <https://github.com/ceph/ceph/pull/14213>`_, Xiaoxi Chen) -* core: os/filestore: print out the error if do_read_entry() fails (`pr#18346 <https://github.com/ceph/ceph/pull/18346>`_, Kefu Chai) -* core: os: FileStore, Using stl min | max, MIN | MAX macros instead (`pr#19832 <https://github.com/ceph/ceph/pull/19832>`_, Shinobu Kinjo) -* core: os: fix 0-length zero semantics, add tests (`issue#21712 <http://tracker.ceph.com/issues/21712>`_, `pr#18159 <https://github.com/ceph/ceph/pull/18159>`_, Sage Weil) -* core: os/FuseStore: fix incorrect used space statistics for fuse's statfs interface (`pr#19033 <https://github.com/ceph/ceph/pull/19033>`_, Zhi Zhang) -* core: os/kstore: Drop unused function declaration (`pr#18077 <https://github.com/ceph/ceph/pull/18077>`_, Jos Collin) -* core: os/kstore: fix statfs problem and add vstart.sh support (`issue#23590 <http://tracker.ceph.com/issues/23590>`_, `pr#21287 <https://github.com/ceph/ceph/pull/21287>`_, Yang Honggang) -* core: os/memstore: Fix wrong use of lock_guard (`pr#20914 <https://github.com/ceph/ceph/pull/20914>`_, Shen-Ta Hsieh) -* core: os/ObjectStore: fix get_data_alignment return -1 causing problem in msg header (`pr#18475 <https://github.com/ceph/ceph/pull/18475>`_, Haomai Wang) -* core: os/ObjectStore.h: fix mistake in comment TRANSACTION ISOLATION (`pr#16840 <https://github.com/ceph/ceph/pull/16840>`_, mychoxin) -* core: os,osd: initial work to drop onreadable/onapplied callbacks (`issue#23029 <http://tracker.ceph.com/issues/23029>`_, `pr#20177 <https://github.com/ceph/ceph/pull/20177>`_, Sage Weil) -* core: os: unify Sequencer and CollectionHandle (`pr#20173 <https://github.com/ceph/ceph/pull/20173>`_, Sage Weil) -* core: PG: fix name of WaitActingChange (`pr#18768 <https://github.com/ceph/ceph/pull/18768>`_, wumingqiao) -* core: pg: handle MNotifyRec event in down state (`pr#20959 <https://github.com/ceph/ceph/pull/20959>`_, Mingxin Liu) -* core: PGPool::update: optimize removed_snaps comparison when possible (`pr#17410 <https://github.com/ceph/ceph/pull/17410>`_, Zac Medico) -* core: PGPool::update: optimize with interval_set.swap (`pr#17121 <https://github.com/ceph/ceph/pull/17121>`_, Zac Medico) -* core: PG: primary should not be in the peer_info, skip if it is (`pr#20189 <https://github.com/ceph/ceph/pull/20189>`_, Neha Ojha) -* core: ptl-tool: checkout branch after creation (`pr#18157 <https://github.com/ceph/ceph/pull/18157>`_, Patrick Donnelly) -* core: ptl-tool: load labeled PRs (`pr#18231 <https://github.com/ceph/ceph/pull/18231>`_, Patrick Donnelly) -* core: ptl-tool: make branch name configurable (`pr#18499 <https://github.com/ceph/ceph/pull/18499>`_, Patrick Donnelly) -* core: ptl-tool: print bzs/tickets cited in commit msgs/comments (`pr#18547 <https://github.com/ceph/ceph/pull/18547>`_, Patrick Donnelly) -* core: pybind/ceph_argparse: fix cli output info (`pr#17667 <https://github.com/ceph/ceph/pull/17667>`_, Luo Kexue) -* core: pybind/ceph_argparse: Fix UnboundLocalError if command doesn't validate (`pr#21342 <https://github.com/ceph/ceph/pull/21342>`_, Tim Serong) -* core: pybind/ceph_argparse.py:'timeout' must in kwargs when call run_in_thread (`pr#21659 <https://github.com/ceph/ceph/pull/21659>`_, yangdeliu) -* core,pybind: pybind/ceph_argparse: accept flexible req (`pr#20791 <https://github.com/ceph/ceph/pull/20791>`_, Gu Zhongyan) -* core,pybind: pybind/rados: add alignment getter to IoCtx (`pr#21222 <https://github.com/ceph/ceph/pull/21222>`_, Bruce Flynn) -* core,pybind: pybind/rados: add rados_service\_\*() (`pr#18812 <https://github.com/ceph/ceph/pull/18812>`_, Kefu Chai) -* core,pybind: pybind/rados: add support open_ioctx2 API (`pr#17710 <https://github.com/ceph/ceph/pull/17710>`_, songweibin) -* core,pybind: rados: support python API of "set_osdmap_full_try" (`pr#17418 <https://github.com/ceph/ceph/pull/17418>`_, songweibin) -* core: qa: fix the potential delay of pg state change (`pr#17253 <https://github.com/ceph/ceph/pull/17253>`_, huangjun) -* core: qa/standalone/osd/repro_long_log: no-mon-config for cot (`pr#20919 <https://github.com/ceph/ceph/pull/20919>`_, Sage Weil) -* core: qa/standalone/scrub/osd-scrub-repair: no -y to diff (`issue#21618 <http://tracker.ceph.com/issues/21618>`_, `pr#18079 <https://github.com/ceph/ceph/pull/18079>`_, Sage Weil) -* core: qa/suite/rados: fix balancer vs firefly tunables failures (`pr#18826 <https://github.com/ceph/ceph/pull/18826>`_, Sage Weil) -* core: qa/suites/rados: fewer msgr failures (`pr#20918 <https://github.com/ceph/ceph/pull/20918>`_, Sage Weil) -* core: qa/suites/rados/perf: whitelist health warnings (`pr#18878 <https://github.com/ceph/ceph/pull/18878>`_, Sage Weil) -* core: qa/suites/rados/rest/mgr: provision openstack volumes (`pr#20573 <https://github.com/ceph/ceph/pull/20573>`_, Sage Weil) -* core: qa/suites/rados/singleton/all/mon-seesaw: whitelist MON_DOWN (`pr#18246 <https://github.com/ceph/ceph/pull/18246>`_, Sage Weil) -* core: qa/suites/rados/singleton/all/recover-preemption: handle slow starting osd (`pr#18078 <https://github.com/ceph/ceph/pull/18078>`_, Sage Weil) -* core: qa/suites/rados/singleton/all/recovery_preemption: whitelist SLOW_OPS (`pr#21250 <https://github.com/ceph/ceph/pull/21250>`_, Sage Weil) -* core: qa/suites/rados/singleton/diverget_priors\*: broaden whitelist (`pr#17379 <https://github.com/ceph/ceph/pull/17379>`_, Sage Weil) -* core: qa/suites/rados/thrash: extend mgr beacon grace when many msgr failures injected (`issue#21147 <http://tracker.ceph.com/issues/21147>`_, `pr#19242 <https://github.com/ceph/ceph/pull/19242>`_, Sage Weil) -* core: qa/suites/rados/verify/tasks/rados_api_tests: whitelist OBJECT_MISPLACED (`pr#21646 <https://github.com/ceph/ceph/pull/21646>`_, Sage Weil) -* core: qa/workunits/rest/test.py: stop trying to test obsolte cluster_up/down (`pr#18552 <https://github.com/ceph/ceph/pull/18552>`_, Sage Weil) -* core: rados/objclass.h: fix build define CEPH_CLS_API in all cases (`pr#21606 <https://github.com/ceph/ceph/pull/21606>`_, Danny Al-Gaaf) -* core: rados: use WaitInterval()'s return value instead of manual timing (`pr#20028 <https://github.com/ceph/ceph/pull/20028>`_, Mohamad Gebai) -* core,rbd: common,rbd-nbd: fix up prefork behavior vs AsyncMessenger singletons (`issue#23143 <http://tracker.ceph.com/issues/23143>`_, `pr#20681 <https://github.com/ceph/ceph/pull/20681>`_, Sage Weil) -* core,rbd: librbd,os: address coverity false positives (`pr#17793 <https://github.com/ceph/ceph/pull/17793>`_, Amit Kumar) -* core,rbd: mgr,osd,kv: Fix various warnings for Clang and GCC7 (`pr#17976 <https://github.com/ceph/ceph/pull/17976>`_, Adam C. Emerson) -* core,rbd: vstart.sh: fix mstart variables (`pr#20826 <https://github.com/ceph/ceph/pull/20826>`_, Sage Weil) -* core: rdma: Assign instead of compare (`pr#16664 <https://github.com/ceph/ceph/pull/16664>`_, amitkuma) -* core: remove startsync (`issue#20604 <http://tracker.ceph.com/issues/20604>`_, `pr#16396 <https://github.com/ceph/ceph/pull/16396>`_, Amit Kumar) -* core: rocksdb: sync with upstream (`issue#20529 <http://tracker.ceph.com/issues/20529>`_, `pr#17388 <https://github.com/ceph/ceph/pull/17388>`_, Kefu Chai) -* core: rocksdb: sync with upstream (`pr#21320 <https://github.com/ceph/ceph/pull/21320>`_, Kefu Chai) -* core: scrub errors not cleared on replicas can cause inconsistent pg state when replica takes over primary (`issue#23267 <http://tracker.ceph.com/issues/23267>`_, `pr#21101 <https://github.com/ceph/ceph/pull/21101>`_, David Zafman) -* core: Snapset inconsistency is detected with its own error (`issue#22996 <http://tracker.ceph.com/issues/22996>`_, `pr#20450 <https://github.com/ceph/ceph/pull/20450>`_, David Zafman) -* core: src/messages/MOSDMap: reencode OSDMap for older clients (`issue#21660 <http://tracker.ceph.com/issues/21660>`_, `pr#18134 <https://github.com/ceph/ceph/pull/18134>`_, Sage Weil) -* core: src/osd/PG.cc: 6455: FAILED assert(0 == "we got a bad state machine event") (`pr#20933 <https://github.com/ceph/ceph/pull/20933>`_, David Zafman) -* core: src/test/osd: add two pool test for manifest objects (`pr#20096 <https://github.com/ceph/ceph/pull/20096>`_, Myoungwon Oh) -* core: test/cli/osdmaptool/test-map-pgs.t: remove nondetermimistic test (`pr#20872 <https://github.com/ceph/ceph/pull/20872>`_, Sage Weil) -* core: test/objectstore_bench: Don't forget judging whether call usage (`pr#21369 <https://github.com/ceph/ceph/pull/21369>`_, Jianpeng Ma) -* core,tests: ceph_test_filestore_idempotent_sequence: many fixes (`issue#22920 <http://tracker.ceph.com/issues/22920>`_, `pr#20279 <https://github.com/ceph/ceph/pull/20279>`_, Sage Weil) -* core,tests: ceph_test_objectstore: drop expect regex (`pr#16968 <https://github.com/ceph/ceph/pull/16968>`_, Sage Weil) -* core,tests: Erasure code read test and code cleanup (`issue#14513 <http://tracker.ceph.com/issues/14513>`_, `pr#17703 <https://github.com/ceph/ceph/pull/17703>`_, David Zafman) -* core,tests: Erasure code recovery should send additional reads if necessary (`issue#21382 <http://tracker.ceph.com/issues/21382>`_, `pr#17920 <https://github.com/ceph/ceph/pull/17920>`_, David Zafman) -* core,tests: osd,dmclock: fix dmclock test simulator change (`pr#20270 <https://github.com/ceph/ceph/pull/20270>`_, J. Eric Ivancich) -* core,tests: os: kstore fix unittest for FiemapHole (`pr#17313 <https://github.com/ceph/ceph/pull/17313>`_, Ning Yao) -* core,tests: os/memstore: memstore_page_set=false (`issue#20738 <http://tracker.ceph.com/issues/20738>`_, `pr#16995 <https://github.com/ceph/ceph/pull/16995>`_, Sage Weil) -* core,tests: qa/ceph_manager: check pg state again before timedout (`issue#21294 <http://tracker.ceph.com/issues/21294>`_, `pr#17810 <https://github.com/ceph/ceph/pull/17810>`_, huangjun) -* core,tests: qa/clusters/fixed-[23]: 4 osds per node, not 3 (`pr#16799 <https://github.com/ceph/ceph/pull/16799>`_, Sage Weil) -* core,tests: qa: modify rgw default pool names (`pr#21630 <https://github.com/ceph/ceph/pull/21630>`_, Neha Ojha) -* core,tests: qa/objectstore/bluestore\*: less debug output (`issue#20910 <http://tracker.ceph.com/issues/20910>`_, `pr#17505 <https://github.com/ceph/ceph/pull/17505>`_, Sage Weil) -* core,tests: qa/overrides/2-size-2-min-size: whitelist REQUEST_STUCK (`pr#17243 <https://github.com/ceph/ceph/pull/17243>`_, Sage Weil) -* core,tests: qa/standalone/ceph-helpers: pass --verbose to ceph-disk (`pr#19456 <https://github.com/ceph/ceph/pull/19456>`_, Sage Weil) -* core,tests: qa/standalone/scrub/osd-scrub-repair: fix grep pattern (`issue#21127 <http://tracker.ceph.com/issues/21127>`_, `pr#17258 <https://github.com/ceph/ceph/pull/17258>`_, Sage Weil) -* core,tests: qa/standalone/scrub/osd-scrub-snaps: adjust test for lack of snapdir objects (`pr#17927 <https://github.com/ceph/ceph/pull/17927>`_, Sage Weil) -* core,tests: qa/suites/rados/monthrash: tolerate PG_AVAILABILITY during mon thrashing (`pr#18122 <https://github.com/ceph/ceph/pull/18122>`_, Sage Weil) -* core,tests: qa/suites/rados/monthrash: whitelist SLOW_OPS (`pr#21331 <https://github.com/ceph/ceph/pull/21331>`_, Sage Weil) -* core,tests: qa/suites/rados/objectstore: logs (`issue#20738 <http://tracker.ceph.com/issues/20738>`_, `pr#16923 <https://github.com/ceph/ceph/pull/16923>`_, Sage Weil) -* core,tests: qa/suites/rados/perf: create pool with lower pg_num (`pr#17819 <https://github.com/ceph/ceph/pull/17819>`_, Neha Ojha) -* core,tests: qa/suites/rados/rest/mgr-restful: whitelist more health (`pr#18457 <https://github.com/ceph/ceph/pull/18457>`_, Sage Weil) -* core,tests: qa/suites/rados/rest: move rest_test from qa/suites/rest/ (`pr#19175 <https://github.com/ceph/ceph/pull/19175>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash: fix thrashing with ec vs map discon (`pr#16842 <https://github.com/ceph/ceph/pull/16842>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: add hammer clients (`pr#21703 <https://github.com/ceph/ceph/pull/21703>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: add rbd tests (`pr#21704 <https://github.com/ceph/ceph/pull/21704>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: do some thrashing with jewel and luminous clients (`pr#21679 <https://github.com/ceph/ceph/pull/21679>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: only centos and 16.04 (`pr#22125 <https://github.com/ceph/ceph/pull/22125>`_, Sage Weil) -* core,tests: qa/suites/upgrade/jewel-x/stress-split: tolerate sloppy past_intervals (`pr#17226 <https://github.com/ceph/ceph/pull/17226>`_, Sage Weil) -* core,tests: qa/suites/upgrade/luminous-x/stress-split: avoid enospc (`pr#21753 <https://github.com/ceph/ceph/pull/21753>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: revive osds before doing final rerr reset (`issue#21206 <http://tracker.ceph.com/issues/21206>`_, `pr#17406 <https://github.com/ceph/ceph/pull/17406>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: tolerate tell osd.\* error (`pr#19365 <https://github.com/ceph/ceph/pull/19365>`_, Sage Weil) -* core,tests: qa/tasks/ceph.py: tolerate flush pg stats exception (`pr#16905 <https://github.com/ceph/ceph/pull/16905>`_, Sage Weil) -* core,tests: qa/tasks/filestore_idempotent: shorter test (`pr#20509 <https://github.com/ceph/ceph/pull/20509>`_, Sage Weil) -* core,tests: qa/tasks/thrashosds: set min_in default to 4 (`issue#21997 <http://tracker.ceph.com/issues/21997>`_, `pr#18670 <https://github.com/ceph/ceph/pull/18670>`_, Sage Weil) -* core,tests: qa/tests: run ceph-ansible task on installer.0 role/node (`pr#19605 <https://github.com/ceph/ceph/pull/19605>`_, Yuri Weinstein) -* core,tests: qa: tolerate failure to force backfill (`issue#22614 <http://tracker.ceph.com/issues/22614>`_, `pr#19765 <https://github.com/ceph/ceph/pull/19765>`_, Sage Weil) -* core,tests: qa/workunits/rados/test_rados_tool: fix stray ``|``, race (`issue#22676 <http://tracker.ceph.com/issues/22676>`_, `pr#19946 <https://github.com/ceph/ceph/pull/19946>`_, Sage Weil) -* core,tests: qa/workunits/rados/test.sh: ensure tee output is valid filename (`pr#21507 <https://github.com/ceph/ceph/pull/21507>`_, Sage Weil) -* core,tests: rados: Initialization of alignment (`pr#17723 <https://github.com/ceph/ceph/pull/17723>`_, Amit Kumar) -* core,tests: rados: Initializing members of librados/TestCase.h (`pr#16896 <https://github.com/ceph/ceph/pull/16896>`_, amitkuma) -* core,tests: test: Checking fd for negative before closing (`pr#17190 <https://github.com/ceph/ceph/pull/17190>`_, amitkuma) -* core,tests: test: Check to avoid divide by zero (`pr#17220 <https://github.com/ceph/ceph/pull/17220>`_, amitkuma) -* core: tool: change default objectstore from filestore to bluestore (`pr#18066 <https://github.com/ceph/ceph/pull/18066>`_, Song Shun) -* core: tool: misc cleanup of ceph-kvstore-tool (`issue#22092 <http://tracker.ceph.com/issues/22092>`_, `pr#18815 <https://github.com/ceph/ceph/pull/18815>`_, Chang Liu) -* core,tools: Add export and remove ceph-objectstore-tool command option (`issue#21272 <http://tracker.ceph.com/issues/21272>`_, `pr#17538 <https://github.com/ceph/ceph/pull/17538>`_, David Zafman) -* core,tools: ceph-objectstore-tool: fix import of post-split pg from pre-split ancestor (`issue#21753 <http://tracker.ceph.com/issues/21753>`_, `pr#18229 <https://github.com/ceph/ceph/pull/18229>`_, Sage Weil) -* core: tools/ceph-objectstore-tool: split filestore directories offline to target hash level (`issue#21366 <http://tracker.ceph.com/issues/21366>`_, `pr#17666 <https://github.com/ceph/ceph/pull/17666>`_, Zhi Zhang) -* core,tools: common, tool: update kvstore-tool to repair key/value database (`issue#17730 <http://tracker.ceph.com/issues/17730>`_, `issue#21744 <http://tracker.ceph.com/issues/21744>`_, `pr#16745 <https://github.com/ceph/ceph/pull/16745>`_, liuchang0812, Chang Liu) -* core,tools: osd,os/bluestore: kill clang analyzer warnings (`pr#18015 <https://github.com/ceph/ceph/pull/18015>`_, Kefu Chai) -* core: tools/rados: add touch command to change object modification time (`pr#18913 <https://github.com/ceph/ceph/pull/18913>`_, Yao Zongyou) -* core,tools: scripts: add ptl-tool for scripting merges (`pr#17926 <https://github.com/ceph/ceph/pull/17926>`_, Patrick Donnelly) -* core: vstart.sh: drop .ceph_port and use randomly selected available port (`pr#19268 <https://github.com/ceph/ceph/pull/19268>`_, Shinobu Kinjo) -* core: vstart.sh: drop --{mon,osd,mds,rgw,mgr}_num options (`pr#18648 <https://github.com/ceph/ceph/pull/18648>`_, Kefu Chai) -* core: vstart.sh: Remove duplicate global section (`pr#17543 <https://github.com/ceph/ceph/pull/17543>`_, iliul) -* crush: cleanup update_device_class() log messages (`pr#21174 <https://github.com/ceph/ceph/pull/21174>`_, Gu Zhongyan) -* crush: fix CrushCompiler won't compile maps with empty shadow tree (`pr#17058 <https://github.com/ceph/ceph/pull/17058>`_, xie xingguo) -* crush: fix device_class_clone for unpopulated/empty weight-sets (`issue#23386 <http://tracker.ceph.com/issues/23386>`_, `pr#22169 <https://github.com/ceph/ceph/pull/22169>`_, Sage Weil) -* crush: fix fast rule lookup when uniform (`pr#17510 <https://github.com/ceph/ceph/pull/17510>`_, Sage Weil) -* crush: force rebuilding shadow hierarchy after swapping buckets (`pr#17083 <https://github.com/ceph/ceph/pull/17083>`_, xie xingguo) -* crush: improve straw2 algorithm's readability (`pr#20196 <https://github.com/ceph/ceph/pull/20196>`_, Yao Zongyou) -* crush: "osd crush class rename" support (`pr#16961 <https://github.com/ceph/ceph/pull/16961>`_, xie xingguo) -* crush, osd: handle multiple parents properly when applying pg upmaps (`issue#23921 <http://tracker.ceph.com/issues/23921>`_, `pr#21835 <https://github.com/ceph/ceph/pull/21835>`_, xiexingguo) -* crush: safe check for 'ceph osd crush swap-bucket' (`pr#17335 <https://github.com/ceph/ceph/pull/17335>`_, Carudy) -* crush: various CrushWrapper cleanups (`pr#17360 <https://github.com/ceph/ceph/pull/17360>`_, Kefu Chai) -* crush: various weight-set fixes (`pr#17014 <https://github.com/ceph/ceph/pull/17014>`_, xie xingguo) -* denc: should check element's type not 'size_t' (`pr#19986 <https://github.com/ceph/ceph/pull/19986>`_, Kefu Chai) -* denc: use constexpr-if to replace some SFINAE impls (`pr#19662 <https://github.com/ceph/ceph/pull/19662>`_, Kefu Chai) -* doc: 12.1.3 release notes (`pr#16975 <https://github.com/ceph/ceph/pull/16975>`_, Abhishek Lekshmanan) -* doc: 12.2.0 major release announcements (`pr#16915 <https://github.com/ceph/ceph/pull/16915>`_, Abhishek Lekshmanan) -* doc: 12.2.1 release notes (`pr#18014 <https://github.com/ceph/ceph/pull/18014>`_, Abhishek Lekshmanan) -* doc: 12.2.4 release notes (`pr#20619 <https://github.com/ceph/ceph/pull/20619>`_, Abhishek Lekshmanan) -* doc: add 12.2.2 release notes (`pr#19264 <https://github.com/ceph/ceph/pull/19264>`_, Abhishek Lekshmanan) -* doc: add allow_multimds and fs_name parameter (`pr#15847 <https://github.com/ceph/ceph/pull/15847>`_, Jan Fajerski) -* doc: add ceph-kvstore-tool's man (`pr#17092 <https://github.com/ceph/ceph/pull/17092>`_, liuchang0812) -* doc: add changelog for 12.2.1 (`pr#18020 <https://github.com/ceph/ceph/pull/18020>`_, Abhishek Lekshmanan) -* doc: add changelog for v11.2.1 (`pr#16956 <https://github.com/ceph/ceph/pull/16956>`_, Abhishek Lekshmanan) -* doc: add changelog for v12.2.2 (`pr#19284 <https://github.com/ceph/ceph/pull/19284>`_, Abhishek Lekshmanan) -* doc: Added CHAP configuration instructions for iSCSI (`pr#18423 <https://github.com/ceph/ceph/pull/18423>`_, Ashish Singh) -* doc: add example of setting pool in cephfs layout (`pr#17372 <https://github.com/ceph/ceph/pull/17372>`_, John Spray) -* doc: Adding changelog for 10.2.10 (`pr#18151 <https://github.com/ceph/ceph/pull/18151>`_, Abhishek Lekshmanan) -* doc: Add introduction about different way to run rbd-mirror (`pr#19692 <https://github.com/ceph/ceph/pull/19692>`_, Yu Shengzuo) -* doc: add --max-buckets to radosgw-admin(8) (`pr#17439 <https://github.com/ceph/ceph/pull/17439>`_, Clément Pellegrini) -* doc: add missing blank line (`pr#18724 <https://github.com/ceph/ceph/pull/18724>`_, iliul) -* doc: Add missing pg states from doc (`pr#20504 <https://github.com/ceph/ceph/pull/20504>`_, David Zafman) -* doc: add mount.fuse.ceph to index (`issue#22595 <http://tracker.ceph.com/issues/22595>`_, `pr#19792 <https://github.com/ceph/ceph/pull/19792>`_, Jos Collin) -* doc: Add newbie-friendly updates to Helm start doc (`pr#18886 <https://github.com/ceph/ceph/pull/18886>`_, Blaine Gardner) -* doc: add osd_max_object_size in osd configuration (`pr#18115 <https://github.com/ceph/ceph/pull/18115>`_, Mohamad Gebai) -* doc: build-doc: Upgrade ceph python libraries (`pr#20726 <https://github.com/ceph/ceph/pull/20726>`_, Boris Ranto) -* doc: ceph-disk: create deprecation warnings (`issue#22154 <http://tracker.ceph.com/issues/22154>`_, `pr#18988 <https://github.com/ceph/ceph/pull/18988>`_, Alfredo Deza) -* doc: ceph-volume: automatic VDO detection (`issue#23581 <http://tracker.ceph.com/issues/23581>`_, `pr#21451 <https://github.com/ceph/ceph/pull/21451>`_, Alfredo Deza) -* doc: ceph-volume docs (`pr#17068 <https://github.com/ceph/ceph/pull/17068>`_, Alfredo Deza) -* doc: ceph-volume document multipath support (`pr#20878 <https://github.com/ceph/ceph/pull/20878>`_, Alfredo Deza) -* doc: ceph-volume doc updates (`pr#20758 <https://github.com/ceph/ceph/pull/20758>`_, Alfredo Deza) -* doc: ceph-volume include physical devices associated with an LV when listing (`pr#21645 <https://github.com/ceph/ceph/pull/21645>`_, Alfredo Deza) -* doc: ceph-volume lvm bluestore support (`pr#18448 <https://github.com/ceph/ceph/pull/18448>`_, Alfredo Deza) -* doc/ceph-volume OSD use the fsid file, not the osd_fsid (`issue#22427 <http://tracker.ceph.com/issues/22427>`_, `pr#20059 <https://github.com/ceph/ceph/pull/20059>`_, Alfredo Deza) -* doc: change boolean option default value from zero to false (`pr#17733 <https://github.com/ceph/ceph/pull/17733>`_, Yao Zongyou) -* doc: change cn mirror to ustc domain (`pr#18081 <https://github.com/ceph/ceph/pull/18081>`_, Shengjing Zhu) -* doc: changelog for v12.2.3 (`pr#20503 <https://github.com/ceph/ceph/pull/20503>`_, Abhishek Lekshmanan) -* doc: cleanup erasure coded pool doc on cephfs use (`pr#20572 <https://github.com/ceph/ceph/pull/20572>`_, Patrick Donnelly) -* doc: CodingStyle: add python and javascript/typescript (`pr#20186 <https://github.com/ceph/ceph/pull/20186>`_, Joao Eduardo Luis) -* doc: common/options: document filestore and filejournal options (`pr#17739 <https://github.com/ceph/ceph/pull/17739>`_, Sage Weil) -* doc: common/options: document objecter, filer, and journal options (`pr#17740 <https://github.com/ceph/ceph/pull/17740>`_, Sage Weil) -* doc: complete and update the subsystem logging level info table (`pr#18500 <https://github.com/ceph/ceph/pull/18500>`_, Luo Kexue) -* doc: correcting typos in bluestore-config-ref and bluestore-migration (`pr#19154 <https://github.com/ceph/ceph/pull/19154>`_, Katie Holly) -* doc: correct wrong bluestore config types (`pr#18205 <https://github.com/ceph/ceph/pull/18205>`_, Yao Zongyou) -* doc: delete duplicate words (`pr#17104 <https://github.com/ceph/ceph/pull/17104>`_, iliul) -* doc: dev description of async recovery (`pr#21051 <https://github.com/ceph/ceph/pull/21051>`_, Neha Ojha, Josh Durgin) -* doc: doc/bluestore: add SPDK usage for bluestore (`pr#17654 <https://github.com/ceph/ceph/pull/17654>`_, Haomai Wang) -* doc: doc/cephfs/experimental-features: kernel client snapshots limit (`pr#18579 <https://github.com/ceph/ceph/pull/18579>`_, Ilya Dryomov) -* doc: doc/cephfs/posix: remove stale information for seekdir (`pr#17658 <https://github.com/ceph/ceph/pull/17658>`_, "Yan, Zheng") -* doc: doc/conf.py: do not set html_use_smartypants explicitly (`pr#17127 <https://github.com/ceph/ceph/pull/17127>`_, Kefu Chai) -* doc: doc/dev: add a brief guide to serialization (`pr#20131 <https://github.com/ceph/ceph/pull/20131>`_, John Spray) -* doc: doc/dev/cxx: add C++11 ABI related doc (`pr#20030 <https://github.com/ceph/ceph/pull/20030>`_, Kefu Chai) -* doc: doc/dev/iana: document our official IANA numbers (`pr#16910 <https://github.com/ceph/ceph/pull/16910>`_, Sage Weil) -* doc: doc/dev/index: update rados lead (`pr#16911 <https://github.com/ceph/ceph/pull/16911>`_, Sage Weil) -* doc: doc/dev/macos: add doc for building on MacOS (`pr#20031 <https://github.com/ceph/ceph/pull/20031>`_, Kefu Chai) -* doc: doc/dev/msgr2.rst: a few notes on protocol goals (`pr#20083 <https://github.com/ceph/ceph/pull/20083>`_, Sage Weil) -* doc: doc/dev/perf: add doc on disabling -fomit-frame-pointer (`pr#17358 <https://github.com/ceph/ceph/pull/17358>`_, Kefu Chai) -* doc: doc for mount.fuse.ceph (`issue#21539 <http://tracker.ceph.com/issues/21539>`_, `pr#19172 <https://github.com/ceph/ceph/pull/19172>`_, Jos Collin) -* doc: doc/man remove deprecation of ceph-disk man page title (`pr#19325 <https://github.com/ceph/ceph/pull/19325>`_, Alfredo Deza) -* doc: doc/mgr: Add limitations section to plugin guide (`pr#21347 <https://github.com/ceph/ceph/pull/21347>`_, Tim Serong) -* doc: doc/mgr: add "local pool" plugin to toc (`pr#17961 <https://github.com/ceph/ceph/pull/17961>`_, Kefu Chai) -* doc: doc/mgr/balancer: document (`issue#22789 <http://tracker.ceph.com/issues/22789>`_, `pr#21421 <https://github.com/ceph/ceph/pull/21421>`_, Sage Weil) -* doc: doc/mgr: document facilities methods using `automethod` directive (`pr#18680 <https://github.com/ceph/ceph/pull/18680>`_, Kefu Chai) -* doc: doc/mgr/plugins: add note about distinction between config and kv store (`pr#21671 <https://github.com/ceph/ceph/pull/21671>`_, Jan Fajerski) -* doc: doc/mgr: remove non user-facing code from doc (`pr#20372 <https://github.com/ceph/ceph/pull/20372>`_, Kefu Chai) -* doc: doc,os,osdc: drop and modify comments (`pr#17732 <https://github.com/ceph/ceph/pull/17732>`_, songweibin) -* doc: doc/rados: Add explanation of straw2 (`pr#19247 <https://github.com/ceph/ceph/pull/19247>`_, Shinobu Kinjo) -* doc: doc/rados/operations/bluestore-migration: document bluestore migration process (`pr#16918 <https://github.com/ceph/ceph/pull/16918>`_, Sage Weil) -* doc: doc/rados/operations/bluestore-migration: update docs a bit (`pr#17011 <https://github.com/ceph/ceph/pull/17011>`_, Sage Weil) -* doc: doc raise exceptions with a base class (`pr#18152 <https://github.com/ceph/ceph/pull/18152>`_, Alfredo Deza) -* doc: doc/rbd: add info for rbd group (`pr#17633 <https://github.com/ceph/ceph/pull/17633>`_, yonghengdexin735) -* doc: doc/rbd: add missing several commands in rbd CLI man page (`issue#14539 <http://tracker.ceph.com/issues/14539>`_, `issue#16999 <http://tracker.ceph.com/issues/16999>`_, `pr#19659 <https://github.com/ceph/ceph/pull/19659>`_, songweibin) -* doc: doc/rbd: correct the path of librbd python APIs (`pr#19690 <https://github.com/ceph/ceph/pull/19690>`_, songweibin) -* doc: doc/rbd: fix typo s/morror/mirror (`pr#19997 <https://github.com/ceph/ceph/pull/19997>`_, songweibin) -* doc: doc/rbd: iSCSI Gateway Documentation (`issue#20437 <http://tracker.ceph.com/issues/20437>`_, `pr#17376 <https://github.com/ceph/ceph/pull/17376>`_, Aron Gunn, Jason Dillaman) -* doc: doc/rbd: specify additional ESX prerequisites (`pr#18517 <https://github.com/ceph/ceph/pull/18517>`_, Jason Dillaman) -* doc: doc/rbd: tweaks for the LIO iSCSI gateway (`issue#21763 <http://tracker.ceph.com/issues/21763>`_, `pr#18250 <https://github.com/ceph/ceph/pull/18250>`_, Jason Dillaman) -* doc: doc/rbd: tweaks to the Windows iSCSI initiator directions (`pr#18704 <https://github.com/ceph/ceph/pull/18704>`_, Jason Dillaman) -* doc: doc/release-notes: add jewel->kraken notes (`pr#18482 <https://github.com/ceph/ceph/pull/18482>`_, Sage Weil) -* doc: doc/release-notes: clarify purpose of require-osd-release (`pr#17270 <https://github.com/ceph/ceph/pull/17270>`_, Sage Weil) -* doc: doc/release-notes: clarify that you need to keep your existing OSD caps (`pr#18825 <https://github.com/ceph/ceph/pull/18825>`_, Jason Dillaman) -* doc: doc/release-notes: ensure RBD users can blacklist prior to upgrade (`issue#21353 <http://tracker.ceph.com/issues/21353>`_, `pr#17755 <https://github.com/ceph/ceph/pull/17755>`_, Jason Dillaman) -* doc: doc/release-notes: fix typo 'psd' to 'osd' (`pr#18695 <https://github.com/ceph/ceph/pull/18695>`_, wangsongbo) -* doc: doc/releases: the Kraken sleepeth, faintest sunlights flee (`pr#17424 <https://github.com/ceph/ceph/pull/17424>`_, Abhishek Lekshmanan) -* doc: doc/releases: update release cycle docs (`pr#18117 <https://github.com/ceph/ceph/pull/18117>`_, Sage Weil) -* doc: doc/rgw: add page for http frontend configuration (`issue#13523 <http://tracker.ceph.com/issues/13523>`_, `pr#20058 <https://github.com/ceph/ceph/pull/20058>`_, Casey Bodley) -* doc: doc/scripts: py3 compatible (`pr#17640 <https://github.com/ceph/ceph/pull/17640>`_, Kefu Chai) -* doc: docs: Do not use "min size = 1" as an example (`pr#17912 <https://github.com/ceph/ceph/pull/17912>`_, Alfredo Deza) -* doc: docs fix ceph-volume missing sub-commands (`issue#23148 <http://tracker.ceph.com/issues/23148>`_, `pr#20673 <https://github.com/ceph/ceph/pull/20673>`_, Alfredo Deza) -* doc: doc/start/os-recommendations.rst: bump krbd kernels (`pr#21478 <https://github.com/ceph/ceph/pull/21478>`_, Ilya Dryomov) -* doc: docs update ceph-deploy reference to reflect ceph-volume API (`pr#20510 <https://github.com/ceph/ceph/pull/20510>`_, Alfredo Deza) -* doc: document ceph-disk prepare class hierarchy (`pr#17019 <https://github.com/ceph/ceph/pull/17019>`_, Loic Dachary) -* doc: document include/ipaddr.h (`issue#12056 <http://tracker.ceph.com/issues/12056>`_, `pr#17613 <https://github.com/ceph/ceph/pull/17613>`_, Nathan Cutler) -* doc: drop duplicate line in ceph-bluestore-tool man page (`pr#19169 <https://github.com/ceph/ceph/pull/19169>`_, Xiaojun Liao) -* doc: eliminate useless cat statement (`pr#17154 <https://github.com/ceph/ceph/pull/17154>`_, Ken Dreyer) -* doc: examples: add new librbd example (`pr#18314 <https://github.com/ceph/ceph/pull/18314>`_, Mahati Chamarthy) -* doc: expand developer documentation of unit tests (`pr#19594 <https://github.com/ceph/ceph/pull/19594>`_, Nathan Cutler) -* doc: Fix a grammar error in rbd-snapshot.rst (`pr#21470 <https://github.com/ceph/ceph/pull/21470>`_, Zeqing Tyler Qi) -* doc: fix CFLAGS in doc/dev/cpu-profiler.rst (`pr#19752 <https://github.com/ceph/ceph/pull/19752>`_, Chang Liu) -* doc: fix desc of option "mon cluster log file" (`pr#18770 <https://github.com/ceph/ceph/pull/18770>`_, Kefu Chai) -* doc: fix doc/radosgw/admin.rst typos (`pr#17397 <https://github.com/ceph/ceph/pull/17397>`_, Enming Zhang) -* doc: Fix dynamic resharding doc formatting (`pr#20970 <https://github.com/ceph/ceph/pull/20970>`_, Ashish Singh) -* doc: fix error in osd scrub load threshold (`pr#21678 <https://github.com/ceph/ceph/pull/21678>`_, Dirk Sarpe) -* doc: Fixes a spelling error and a broken hyperlink (`pr#20442 <https://github.com/ceph/ceph/pull/20442>`_, Jordan Hus) -* doc: Fixes rbd snapshot flatten example (`issue#17723 <http://tracker.ceph.com/issues/17723>`_, `pr#17436 <https://github.com/ceph/ceph/pull/17436>`_, Ashish Singh) -* doc: fixes syntax in osd-config-ref (`issue#21733 <http://tracker.ceph.com/issues/21733>`_, `pr#18188 <https://github.com/ceph/ceph/pull/18188>`_, Joshua Schmid) -* doc: Fixes the name of the CephFS snapshot directory (`pr#18710 <https://github.com/ceph/ceph/pull/18710>`_, Jordan Rodgers) -* doc: fix hyper link to radosgw/config-ref (`pr#17986 <https://github.com/ceph/ceph/pull/17986>`_, Kefu Chai) -* doc: fix librbdpy example (`pr#20019 <https://github.com/ceph/ceph/pull/20019>`_, Yuan Zhou) -* doc: fix order of options in osd new (`issue#21023 <http://tracker.ceph.com/issues/21023>`_, `pr#17326 <https://github.com/ceph/ceph/pull/17326>`_, Neha Ojha) -* doc: fix sphinx build warnings and errors (`pr#17025 <https://github.com/ceph/ceph/pull/17025>`_, Alfredo Deza) -* doc: fix the desc of "osd max pg per osd hard ratio" (`pr#18373 <https://github.com/ceph/ceph/pull/18373>`_, Kefu Chai) -* doc: Fix typo and URL (`pr#18040 <https://github.com/ceph/ceph/pull/18040>`_, Jos Collin) -* doc: fix typo e.g,. => e.g (`pr#18607 <https://github.com/ceph/ceph/pull/18607>`_, Yao Zongyou) -* doc: fix typo in bluestore-migration.rst (`pr#18389 <https://github.com/ceph/ceph/pull/18389>`_, Yao Zongyou) -* doc: Fix typo in mount.fuse.ceph (`pr#19215 <https://github.com/ceph/ceph/pull/19215>`_, Jos Collin) -* doc: fix typo in php.rst (`pr#17762 <https://github.com/ceph/ceph/pull/17762>`_, Yao Zongyou) -* doc: fix typo in radosgw/dynamicresharding.rst (`pr#18651 <https://github.com/ceph/ceph/pull/18651>`_, Alexander Ermolaev) -* doc: fix typo on specify db block device (`pr#17590 <https://github.com/ceph/ceph/pull/17590>`_, Xiaoxi Chen) -* doc: Fix typo s/applicatoin/application/ (`pr#20720 <https://github.com/ceph/ceph/pull/20720>`_, Francois Deppierraz) -* doc: Fix typos in placement-groups.rst (`pr#17973 <https://github.com/ceph/ceph/pull/17973>`_, Matt Boyle) -* doc: Fix typos in release notes (`pr#18950 <https://github.com/ceph/ceph/pull/18950>`_, Stefan Knorr) -* doc: .githubmap: Add cbodley (`pr#18946 <https://github.com/ceph/ceph/pull/18946>`_, Jos Collin) -* doc: githubmap: add map for GitHub contributor lookup (`pr#17457 <https://github.com/ceph/ceph/pull/17457>`_, Patrick Donnelly) -* doc: .githubmap, .mailmap, .organizationmap, .peoplemap: update Igor (`pr#19314 <https://github.com/ceph/ceph/pull/19314>`_, Igor Fedotov) -* doc: globally change CRUSH ruleset to CRUSH rule (`issue#20559 <http://tracker.ceph.com/issues/20559>`_, `pr#19435 <https://github.com/ceph/ceph/pull/19435>`_, Nathan Cutler) -* doc: Improved dashboard documentation (`pr#21443 <https://github.com/ceph/ceph/pull/21443>`_, Lenz Grimmer) -* doc: Improved hitset parameters description (`pr#19691 <https://github.com/ceph/ceph/pull/19691>`_, Alexey Stupnikov) -* doc: improve links in doc/releases.rst (`pr#18155 <https://github.com/ceph/ceph/pull/18155>`_, Nathan Cutler) -* doc: Improve mgr/restful module documentation (`pr#20717 <https://github.com/ceph/ceph/pull/20717>`_, Boris Ranto) -* doc: Improve the ceph fs set max_mds command (`issue#21007 <http://tracker.ceph.com/issues/21007>`_, `pr#17044 <https://github.com/ceph/ceph/pull/17044>`_, Bara Ancincova) -* doc: include ceph-disk and ceph-disk-volume man pages in index (`pr#17168 <https://github.com/ceph/ceph/pull/17168>`_, Alfredo Deza) -* doc: init flags to 0 in rados example (`pr#20671 <https://github.com/ceph/ceph/pull/20671>`_, Patrick Donnelly) -* doc: Kube + Helm installation (`pr#18520 <https://github.com/ceph/ceph/pull/18520>`_, Alexandre Marangone) -* doc: legal: remove doc license ambiguity (`issue#23336 <http://tracker.ceph.com/issues/23336>`_, `pr#20876 <https://github.com/ceph/ceph/pull/20876>`_, Nathan Cutler) -* doc: lock_timeout is a per mapping option (`pr#21563 <https://github.com/ceph/ceph/pull/21563>`_, Ilya Dryomov) -* doc: log-and-debug: fix default value of "log max recent" (`pr#20316 <https://github.com/ceph/ceph/pull/20316>`_, Nathan Cutler) -* doc: mailmap: Add Sibei, XueYu Affiliation (`pr#18395 <https://github.com/ceph/ceph/pull/18395>`_, Sibei Gao) -* doc: mailmap: Fixed maintenance guide URL (`pr#18076 <https://github.com/ceph/ceph/pull/18076>`_, Jos Collin) -* doc: mailmap, organizationmap: add Dongsheng, Liuzhong, Pengcheng, Yang Affiliation (`pr#17548 <https://github.com/ceph/ceph/pull/17548>`_, Dongsheng Yang) -* doc: .mailmap, .organizationmap: add Fufei, Mingqiao and Ying Affiliation (`pr#17540 <https://github.com/ceph/ceph/pull/17540>`_, Ying He) -* doc: .mailmap, .organizationmap: Add Liu Lei's mailmap and affiliation (`pr#17105 <https://github.com/ceph/ceph/pull/17105>`_, iliul) -* doc: .mailmap, .organizationmap: update JingChen, ZongyouYao, ShanchunLv's… (`pr#18960 <https://github.com/ceph/ceph/pull/18960>`_, Chang Liu) -* doc: mailmap: update affiliation for Mykola Golub (`pr#18069 <https://github.com/ceph/ceph/pull/18069>`_, Mykola Golub) -* doc: mailmap: update affiliation for Mykola Golub (`pr#19667 <https://github.com/ceph/ceph/pull/19667>`_, Mykola Golub) -* doc: mailmap: Update umcloud affiliation (`pr#17441 <https://github.com/ceph/ceph/pull/17441>`_, Yixing Yan) -* doc: make the commands in README.md properly aligned (`pr#18639 <https://github.com/ceph/ceph/pull/18639>`_, Yao Zongyou) -* doc/man: add "ls" to "ceph osd" command's subcommands list (`pr#19382 <https://github.com/ceph/ceph/pull/19382>`_, Rishabh Dave) -* doc: "mds blacklist interval" vs manually blacklisting (`pr#18195 <https://github.com/ceph/ceph/pull/18195>`_, Ken Dreyer) -* doc: mgr/dashboard.rst: mention ceph.conf and ceph mgr services (`pr#20961 <https://github.com/ceph/ceph/pull/20961>`_, Nathan Cutler) -* doc/mgr/plugins: mgr accessor during init causes exception (`pr#16973 <https://github.com/ceph/ceph/pull/16973>`_, Jan Fajerski) -* doc: mimic: doc: Updated dashboard documentation (features, SSL config) (`pr#22079 <https://github.com/ceph/ceph/pull/22079>`_, Lenz Grimmer) -* doc: misc fix spell errors in osd/OSD and doc (`pr#17107 <https://github.com/ceph/ceph/pull/17107>`_, songweibin) -* doc: misc: fix various spelling errors (`pr#20831 <https://github.com/ceph/ceph/pull/20831>`_, Shengjing Zhu) -* doc: Misc iSCSI doc updates (`pr#19931 <https://github.com/ceph/ceph/pull/19931>`_, Mike Christie) -* doc: move glance_api_version option to the right place (`pr#17337 <https://github.com/ceph/ceph/pull/17337>`_, Luo Kexue) -* doc: options.cc: document rgw config options (`pr#18007 <https://github.com/ceph/ceph/pull/18007>`_, Yehuda Sadeh) -* doc: organizationmap: Add Adam Wolfe Gordon's affiliation (`pr#18295 <https://github.com/ceph/ceph/pull/18295>`_, Adam Wolfe Gordon) -* doc: organizationmap: Add Ashish Singh affiliation (`pr#17109 <https://github.com/ceph/ceph/pull/17109>`_, Ashish Singh) -* doc: .organizationmap: add Xin Yuan and Yichao Li's affiliation (`pr#21170 <https://github.com/ceph/ceph/pull/21170>`_, Li Wang) -* doc: PendingReleaseNotes: Added note about Dashboard v2, fixed typo (`pr#21597 <https://github.com/ceph/ceph/pull/21597>`_, Lenz Grimmer) -* doc: PendingReleaseNotes:Announce FreeBSD availability (`pr#16782 <https://github.com/ceph/ceph/pull/16782>`_, Willem Jan Withagen) -* doc: PendingReleaseNotes: mention some monitor changes (`pr#21474 <https://github.com/ceph/ceph/pull/21474>`_, Joao Eduardo Luis) -* doc: PendingReleaseNotes: note about upmap mapping change in luminous release notes (`pr#17813 <https://github.com/ceph/ceph/pull/17813>`_, Sage Weil) -* doc: qa,doc: drop support of ubuntu trusty (`pr#19307 <https://github.com/ceph/ceph/pull/19307>`_, Kefu Chai) -* doc/rados/operations/bluestore-migration: typos and whitespace (`pr#16991 <https://github.com/ceph/ceph/pull/16991>`_, Sage Weil) -* doc/rados/operations/bluestore-migration: typos (`pr#17581 <https://github.com/ceph/ceph/pull/17581>`_, Sage Weil) -* doc: README: Improve vstart.sh usage (`pr#17644 <https://github.com/ceph/ceph/pull/17644>`_, Fabian Vogt) -* doc: README.md: bump up cmake to 2.8.12 (`pr#18348 <https://github.com/ceph/ceph/pull/18348>`_, Yan Jun) -* doc: redundant "cephfs" when set the "allow_multimds" (`pr#20045 <https://github.com/ceph/ceph/pull/20045>`_, Shangzhong Zhu) -* doc: release notes: fix grammar/style nits (`pr#18876 <https://github.com/ceph/ceph/pull/18876>`_, Nathan Cutler) -* doc: release notes for 12.2.3 (`pr#20500 <https://github.com/ceph/ceph/pull/20500>`_, Abhishek Lekshmanan) -* doc: release notes for v12.1.4 Luminous (`pr#17037 <https://github.com/ceph/ceph/pull/17037>`_, Abhishek Lekshmanan) -* doc/release-notes: remove mention of crush weight optimization (`pr#16974 <https://github.com/ceph/ceph/pull/16974>`_, Sage Weil) -* doc: release-notes.rst: add Kraken v11.2.1 and update releases.rst (`pr#16879 <https://github.com/ceph/ceph/pull/16879>`_, Nathan Cutler) -* doc: release notes update for 10.2.10 (`pr#18148 <https://github.com/ceph/ceph/pull/18148>`_, Abhishek Lekshmanan) -* doc/releases: drop LTS/stable line from second chart (`pr#18153 <https://github.com/ceph/ceph/pull/18153>`_, Sage Weil) -* doc: Remove additional arguments when replacing OSD (`pr#18345 <https://github.com/ceph/ceph/pull/18345>`_, Wido den Hollander) -* doc: remove duplicated --max-buckets option desc (`pr#19737 <https://github.com/ceph/ceph/pull/19737>`_, Kefu Chai) -* doc: remove references to unversioned repository addresses (`pr#21357 <https://github.com/ceph/ceph/pull/21357>`_, Greg Farnum) -* doc: remove unused config: "osd op threads" (`pr#21319 <https://github.com/ceph/ceph/pull/21319>`_, Jianpeng Ma) -* doc: rename changelog with a .txt extension (`pr#18156 <https://github.com/ceph/ceph/pull/18156>`_, Abhishek Lekshmanan) -* doc: reorganize releases (`pr#20784 <https://github.com/ceph/ceph/pull/20784>`_, Abhishek Lekshmanan) -* doc: replace injectargs usage with "config set" (`pr#18789 <https://github.com/ceph/ceph/pull/18789>`_, John Spray) -* doc: replace region with zonegroup in configure bucket sharding section (`issue#21610 <http://tracker.ceph.com/issues/21610>`_, `pr#18063 <https://github.com/ceph/ceph/pull/18063>`_, Orit Wasserman) -* doc: restructure bluestore migration insructions (`pr#17603 <https://github.com/ceph/ceph/pull/17603>`_, Sage Weil) -* doc: Revise the Example of Bucket Policy (`pr#17362 <https://github.com/ceph/ceph/pull/17362>`_, zhangwen) -* doc: rgw: add a note for resharding in 12.2.1 docs (`pr#17675 <https://github.com/ceph/ceph/pull/17675>`_, Abhishek Lekshmanan) -* doc: rgw add some basic documentation for sync plugins & ES (`pr#15849 <https://github.com/ceph/ceph/pull/15849>`_, Abhishek Lekshmanan) -* doc: rgw adminops binding libraries (`pr#19164 <https://github.com/ceph/ceph/pull/19164>`_, hrchu) -* doc: rgw mention about tagging & bucket policies in s3api (`pr#16907 <https://github.com/ceph/ceph/pull/16907>`_, Abhishek Lekshmanan) -* doc: rgw: mention the civetweb support for binding to multiple ports (`issue#20942 <http://tracker.ceph.com/issues/20942>`_, `pr#17141 <https://github.com/ceph/ceph/pull/17141>`_, Abhishek Lekshmanan) -* doc: rm stray ")" character from mds config ref (`pr#18228 <https://github.com/ceph/ceph/pull/18228>`_, Ken Dreyer) -* docs: ceph-volume CLI updates (`pr#17425 <https://github.com/ceph/ceph/pull/17425>`_, Alfredo Deza) -* doc: s/deamon/daemon/ (`pr#20931 <https://github.com/ceph/ceph/pull/20931>`_, ashitakasam) -* doc: some improvements to ceph-conf.rst (`pr#21268 <https://github.com/ceph/ceph/pull/21268>`_, Nathan Cutler) -* doc: Specify mount details in ceph-fuse (`pr#20071 <https://github.com/ceph/ceph/pull/20071>`_, Jos Collin) -* doc: SubmittingPatches: clarify PR title section (`pr#17143 <https://github.com/ceph/ceph/pull/17143>`_, Nathan Cutler) -* doc/templates update toctree call to include hidden entries (`pr#17076 <https://github.com/ceph/ceph/pull/17076>`_, Alfredo Deza) -* doc: the client inputs the pool name instead of pool ID (`pr#17672 <https://github.com/ceph/ceph/pull/17672>`_, Frank Yu) -* doc: typo fix (`pr#21077 <https://github.com/ceph/ceph/pull/21077>`_, Ashita Dashottar) -* doc: update Blacklisting and OSD epoch barrier (`issue#22542 <http://tracker.ceph.com/issues/22542>`_, `pr#19701 <https://github.com/ceph/ceph/pull/19701>`_, Jos Collin) -* doc: update ceph-disk with a state-transition diagram (`pr#17639 <https://github.com/ceph/ceph/pull/17639>`_, Kefu Chai) -* doc: update ceph iscsi kernel and package info (`pr#20020 <https://github.com/ceph/ceph/pull/20020>`_, Mike Christie) -* doc: Update commands and options in radosgw-admin (`pr#18267 <https://github.com/ceph/ceph/pull/18267>`_, Jos Collin) -* doc: update Component Technical Leads and maintainers to canonical location (`pr#18376 <https://github.com/ceph/ceph/pull/18376>`_, Patrick McGarry) -* doc: Update config file search paths to reflect reality (`pr#19882 <https://github.com/ceph/ceph/pull/19882>`_, Adam Wolfe Gordon) -* doc: updated add primary storage documentation for latest CloudStack release (4.11) (`pr#21050 <https://github.com/ceph/ceph/pull/21050>`_, James McClune, John Wilkins) -* doc: Update dashboard feature list (added RGW management) (`pr#21781 <https://github.com/ceph/ceph/pull/21781>`_, Lenz Grimmer) -* doc: updated dashboard feature list (added new RGW details, Pools) (`pr#21562 <https://github.com/ceph/ceph/pull/21562>`_, Lenz Grimmer) -* doc: Updated dashboard feature list (`pr#21693 <https://github.com/ceph/ceph/pull/21693>`_, Lenz Grimmer) -* doc: Updated dashboard v2 feature list (`pr#20755 <https://github.com/ceph/ceph/pull/20755>`_, Lenz Grimmer) -* doc: Updated documentation for Zabbix Mgr module (`pr#18356 <https://github.com/ceph/ceph/pull/18356>`_, Wido den Hollander) -* doc: update default value of option mon_sync_timeout (`pr#17802 <https://github.com/ceph/ceph/pull/17802>`_, Yao Guotao) -* doc: update default value of parameter mon_subscribe_interval (`pr#17669 <https://github.com/ceph/ceph/pull/17669>`_, yaoguotao) -* doc: Update docs to remove gitbuilder and add shaman references (`pr#17022 <https://github.com/ceph/ceph/pull/17022>`_, Alfredo Deza) -* doc: updated the dashboard feature list (`pr#21531 <https://github.com/ceph/ceph/pull/21531>`_, Lenz Grimmer) -* doc: Updated the get-packages.rst to luminous (`pr#20815 <https://github.com/ceph/ceph/pull/20815>`_, Kai Wagner) -* doc: update firewall doc to mention ceph-mgr (`pr#17974 <https://github.com/ceph/ceph/pull/17974>`_, John Spray) -* doc: update iSCSI upstream kernel to 4.16 (`pr#20695 <https://github.com/ceph/ceph/pull/20695>`_, Mike Christie) -* doc: update link to placing-different-pools (`pr#17833 <https://github.com/ceph/ceph/pull/17833>`_, Mohamad Gebai) -* doc: update Li Wang Affiliation (`pr#18060 <https://github.com/ceph/ceph/pull/18060>`_, Li Wang) -* doc: update man page to explain ceph-volume support bluestore (`issue#22663 <http://tracker.ceph.com/issues/22663>`_, `pr#19960 <https://github.com/ceph/ceph/pull/19960>`_, lijing) -* doc: Update manual deployment (`issue#20309 <http://tracker.ceph.com/issues/20309>`_, `pr#15811 <https://github.com/ceph/ceph/pull/15811>`_, Jens Rosenboom) -* doc: update mgr/dashboard doc about standbys (`pr#19879 <https://github.com/ceph/ceph/pull/19879>`_, John Spray) -* doc: Update mgr doc on how to enable Zabbix module (`pr#16861 <https://github.com/ceph/ceph/pull/16861>`_, Wido den Hollander) -* doc: update mgr related auth settings (`pr#20126 <https://github.com/ceph/ceph/pull/20126>`_, Kefu Chai) -* doc: Update monitoring.rst (`pr#20630 <https://github.com/ceph/ceph/pull/20630>`_, Jos Collin) -* doc: update rbd-mirroring documentation (`issue#20701 <http://tracker.ceph.com/issues/20701>`_, `pr#16908 <https://github.com/ceph/ceph/pull/16908>`_, Jason Dillaman) -* doc: update references to use ceph-volume (`pr#19241 <https://github.com/ceph/ceph/pull/19241>`_, Alfredo Deza) -* doc: update releases to the current state (`pr#17364 <https://github.com/ceph/ceph/pull/17364>`_, Abhishek Lekshmanan) -* doc: Updates to bluestore migration doc (`pr#17602 <https://github.com/ceph/ceph/pull/17602>`_, David Galloway) -* doc: v12.2.5 luminous release notes (`pr#21621 <https://github.com/ceph/ceph/pull/21621>`_, Abhishek Lekshmanan) -* doc: various cleanups (`pr#18480 <https://github.com/ceph/ceph/pull/18480>`_, Kefu Chai) -* examples: fix link order in librados example Makefile (`pr#17842 <https://github.com/ceph/ceph/pull/17842>`_, Mahati Chamarthy) -* Fix ceph-mgr restarts (`pr#22051 <https://github.com/ceph/ceph/pull/22051>`_, Boris Ranto) -* follow-up fixups for atomic_t spinlocks (`pr#17611 <https://github.com/ceph/ceph/pull/17611>`_, Jesse Williamson) -* githubmap: Add ktdreyer (`pr#19209 <https://github.com/ceph/ceph/pull/19209>`_, Jos Collin) -* include/buffer.h: fix typo in comment (`pr#17489 <https://github.com/ceph/ceph/pull/17489>`_, mychoxin) -* include/ceph_features: fix OS_PERF_STAT_NS's incarnation (`pr#21467 <https://github.com/ceph/ceph/pull/21467>`_, Kefu Chai) -* install-deps.sh: fix an error condition expression (`pr#20819 <https://github.com/ceph/ceph/pull/20819>`_, Yao Guotao) -* java/native: fix milliseconds to mtime/atime conversion (`pr#17460 <https://github.com/ceph/ceph/pull/17460>`_, dengquan) -* java/native: s/jni: lstat/jni: stat in native_ceph_stat (`pr#20142 <https://github.com/ceph/ceph/pull/20142>`_, Shangzhong Zhu) -* KStore: statfs needs extra includes on FreeBSD (`pr#21429 <https://github.com/ceph/ceph/pull/21429>`_, Willem Jan Withagen) -* kv/leveldb: fix deadlock when close db (`pr#16643 <https://github.com/ceph/ceph/pull/16643>`_, Zengran) -* kv: unify {create_and\_,}open() methods (`pr#18177 <https://github.com/ceph/ceph/pull/18177>`_, Kefu Chai) -* librados: add async interfaces for use with Networking TS (`pr#19054 <https://github.com/ceph/ceph/pull/19054>`_, Casey Bodley) -* librados: block MgrClient::start_command until mgrmap (`pr#21832 <https://github.com/ceph/ceph/pull/21832>`_, John Spray, Kefu Chai) -* librados: extend C API for so it accepts keys with NUL chars (`pr#20314 <https://github.com/ceph/ceph/pull/20314>`_, Piotr Dałek) -* librados: Fix a potential risk of buffer::list::claim_prepend(list& b… (`issue#21338 <http://tracker.ceph.com/issues/21338>`_, `pr#17661 <https://github.com/ceph/ceph/pull/17661>`_, Guan yunfei) -* librados: fix potential race condition if notify immediately fails (`issue#23966 <http://tracker.ceph.com/issues/23966>`_, `pr#21859 <https://github.com/ceph/ceph/pull/21859>`_, Jason Dillaman) -* librados: getter for min compatible client versions (`pr#20080 <https://github.com/ceph/ceph/pull/20080>`_, Jason Dillaman) -* librados: invalid free() in rados_getxattrs_next() (`issue#22042 <http://tracker.ceph.com/issues/22042>`_, `pr#20260 <https://github.com/ceph/ceph/pull/20260>`_, Gu Zhongyan) -* librados: make OPERATION_FULL_FORCE the default for rados_remove() (`issue#22413 <http://tracker.ceph.com/issues/22413>`_, `pr#20534 <https://github.com/ceph/ceph/pull/20534>`_, Kefu Chai) -* librbd: abstract hard-coded journal and cache hooks on IO path (`pr#20682 <https://github.com/ceph/ceph/pull/20682>`_, Jason Dillaman) -* librbd: Add a function to list image watchers (`pr#19188 <https://github.com/ceph/ceph/pull/19188>`_, Adam Wolfe Gordon) -* librbd: add API function to get image name (`pr#20935 <https://github.com/ceph/ceph/pull/20935>`_, Mykola Golub) -* librbd: added preprocessor macro for detecting compare-and-write support (`issue#22036 <http://tracker.ceph.com/issues/22036>`_, `pr#18708 <https://github.com/ceph/ceph/pull/18708>`_, Jason Dillaman) -* librbd: add eventtrace support (`pr#19251 <https://github.com/ceph/ceph/pull/19251>`_, Mahati Chamarthy) -* librbd: add preliminary support for new operation feature bit (`pr#19903 <https://github.com/ceph/ceph/pull/19903>`_, Jason Dillaman) -* librbd: address coverity false positives (`pr#17696 <https://github.com/ceph/ceph/pull/17696>`_, Amit Kumar) -* librbd: address coverity false positives (`pr#17721 <https://github.com/ceph/ceph/pull/17721>`_, Amit Kumar) -* librbd: auto-remove trash snapshots when image is deleted (`issue#22873 <http://tracker.ceph.com/issues/22873>`_, `pr#20376 <https://github.com/ceph/ceph/pull/20376>`_, Jason Dillaman) -* librbd: by default use new format for deep copy destination (`pr#20222 <https://github.com/ceph/ceph/pull/20222>`_, Mykola Golub) -* librbd: cache last index position to accelerate snap create/rm (`issue#22716 <http://tracker.ceph.com/issues/22716>`_, `pr#19974 <https://github.com/ceph/ceph/pull/19974>`_, Song Shun) -* librbd: cannot clone all image-metas if we have more than 64 key/value pairs (`pr#18327 <https://github.com/ceph/ceph/pull/18327>`_, PCzhangPC) -* librbd: cannot copy all image-metas if we have more than 64 key/value pairs (`pr#18328 <https://github.com/ceph/ceph/pull/18328>`_, PCzhangPC) -* librbd: clean up ManagedLock log prefix (`pr#20159 <https://github.com/ceph/ceph/pull/20159>`_, shun-s) -* librbd: compare and write against a clone can result in failure (`issue#20789 <http://tracker.ceph.com/issues/20789>`_, `pr#18887 <https://github.com/ceph/ceph/pull/18887>`_, Jason Dillaman) -* librbd: deep_copy: don't create snapshots above snap_id_end (`pr#19383 <https://github.com/ceph/ceph/pull/19383>`_, Mykola Golub) -* librbd: default localize parent reads to false (`issue#20941 <http://tracker.ceph.com/issues/20941>`_, `pr#16882 <https://github.com/ceph/ceph/pull/16882>`_, Jason Dillaman) -* librbd: default to sparse-reads for any IO operation over 64K (`issue#21849 <http://tracker.ceph.com/issues/21849>`_, `pr#18405 <https://github.com/ceph/ceph/pull/18405>`_, Jason Dillaman) -* librbd: disable ENOENT tracking within the object cacher (`issue#23597 <http://tracker.ceph.com/issues/23597>`_, `pr#21308 <https://github.com/ceph/ceph/pull/21308>`_, Jason Dillaman) -* librbd: disallow creation of v1 image format (`pr#20460 <https://github.com/ceph/ceph/pull/20460>`_, Julien COLLET, Julien Collet) -* librbd: don't read metadata twice on image open (`pr#18542 <https://github.com/ceph/ceph/pull/18542>`_, Mykola Golub) -* librbd: drop redundant check for null ImageCtx (`pr#18265 <https://github.com/ceph/ceph/pull/18265>`_, Jianpeng Ma) -* librbd: filter out potential race with image rename (`issue#18435 <http://tracker.ceph.com/issues/18435>`_, `pr#19618 <https://github.com/ceph/ceph/pull/19618>`_, Jason Dillaman) -* librbd: fix coverity warning for uninitialized member (`pr#18129 <https://github.com/ceph/ceph/pull/18129>`_, Li Wang) -* librbd: fix deep copy a child-image (`pr#20099 <https://github.com/ceph/ceph/pull/20099>`_, songweibin) -* librbd: fix don't send get_stripe_unit_count if striping is not enabled (`issue#21360 <http://tracker.ceph.com/issues/21360>`_, `pr#17660 <https://github.com/ceph/ceph/pull/17660>`_, Yanhu Cao) -* librbd: fix issues discovered in clone v2 during upgrade tests (`issue#22979 <http://tracker.ceph.com/issues/22979>`_, `pr#20406 <https://github.com/ceph/ceph/pull/20406>`_, Jason Dillaman) -* librbd: fix missing return in NotifyMessage::get_notify_op (`pr#20656 <https://github.com/ceph/ceph/pull/20656>`_, Yao Zongyou) -* librbd: fix rbd close race with rewatch (`pr#21141 <https://github.com/ceph/ceph/pull/21141>`_, Song Shun) -* librbd: fix refuse to release lock when cookie is the same at rewatch (`pr#20868 <https://github.com/ceph/ceph/pull/20868>`_, Song Shun) -* librbd: fix structure size check in rbd_mirror_image_get_info/status (`pr#20478 <https://github.com/ceph/ceph/pull/20478>`_, Mykola Golub) -* librbd: force removal of a snapshot cannot ignore dependent children (`issue#22791 <http://tracker.ceph.com/issues/22791>`_, `pr#20105 <https://github.com/ceph/ceph/pull/20105>`_, Jason Dillaman) -* librbd: generalized deep copy function (`pr#16238 <https://github.com/ceph/ceph/pull/16238>`_, Mykola Golub) -* librbd: group and snapshot cleanup (`pr#19990 <https://github.com/ceph/ceph/pull/19990>`_, Jason Dillaman) -* librbd: group snapshots (`pr#11544 <https://github.com/ceph/ceph/pull/11544>`_, Victor Denisov, Jason Dillaman) -* librbd: hold cache_lock while clearing cache nonexistence flags (`issue#21558 <http://tracker.ceph.com/issues/21558>`_, `pr#17992 <https://github.com/ceph/ceph/pull/17992>`_, Jason Dillaman) -* librbd: image-meta config overrides should be dynamically refreshed (`issue#21529 <http://tracker.ceph.com/issues/21529>`_, `pr#18042 <https://github.com/ceph/ceph/pull/18042>`_, Dongsheng Yang, Jason Dillaman) -* librbd: initial hooks for clone v2 support (`pr#20176 <https://github.com/ceph/ceph/pull/20176>`_, Jason Dillaman) -* librbd: initialization of state member variables (`pr#16866 <https://github.com/ceph/ceph/pull/16866>`_, amitkuma) -* librbd: Initializing members image,operation,journal (`pr#16934 <https://github.com/ceph/ceph/pull/16934>`_, amitkuma) -* librbd: Initializing member variables (`pr#16867 <https://github.com/ceph/ceph/pull/16867>`_, amitkuma) -* librbd: journal should ignore -EILSEQ errors from compare-and-write (`issue#21628 <http://tracker.ceph.com/issues/21628>`_, `pr#18099 <https://github.com/ceph/ceph/pull/18099>`_, Jason Dillaman) -* librbd,librados: do not include stdbool.h in C++ headers (`pr#19945 <https://github.com/ceph/ceph/pull/19945>`_, Kefu Chai) -* librbd: list_children should not attempt to refresh image (`issue#21670 <http://tracker.ceph.com/issues/21670>`_, `pr#18114 <https://github.com/ceph/ceph/pull/18114>`_, Jason Dillaman) -* librbd: minor cleanup of the IO pathway (`pr#20560 <https://github.com/ceph/ceph/pull/20560>`_, Jason Dillaman) -* librbd: minor code cleanup (`pr#21165 <https://github.com/ceph/ceph/pull/21165>`_, songweibin) -* librbd: missing 'return' in deep_copy::ObjectCopyRequest::send_read_object (`pr#21493 <https://github.com/ceph/ceph/pull/21493>`_, Mykola Golub) -* librbd: new tag should use on-disk committed position (`issue#22945 <http://tracker.ceph.com/issues/22945>`_, `pr#20423 <https://github.com/ceph/ceph/pull/20423>`_, Jason Dillaman) -* librbd: object map batch update might cause OSD suicide timeout (`issue#21797 <http://tracker.ceph.com/issues/21797>`_, `pr#18315 <https://github.com/ceph/ceph/pull/18315>`_, Jason Dillaman) -* librbd: possible deadlock with synchronous maintenance operations (`issue#22120 <http://tracker.ceph.com/issues/22120>`_, `pr#18909 <https://github.com/ceph/ceph/pull/18909>`_, Jason Dillaman) -* librbd: potential crash if object map check encounters error (`issue#22819 <http://tracker.ceph.com/issues/22819>`_, `pr#20214 <https://github.com/ceph/ceph/pull/20214>`_, Jason Dillaman) -* librbd: potential race between discard and writeback (`pr#21248 <https://github.com/ceph/ceph/pull/21248>`_, Jason Dillaman) -* librbd: potential race in RewatchRequest when resetting watch_handle (`pr#20420 <https://github.com/ceph/ceph/pull/20420>`_, Mykola Golub) -* librbd: prefer templates to macros (`pr#19912 <https://github.com/ceph/ceph/pull/19912>`_, Adam C. Emerson) -* librbd: prevent overflow of discard API result code (`issue#21966 <http://tracker.ceph.com/issues/21966>`_, `pr#18923 <https://github.com/ceph/ceph/pull/18923>`_, Jason Dillaman) -* librbd: prevent watcher from unregistering with in-flight actions (`issue#23955 <http://tracker.ceph.com/issues/23955>`_, `pr#21763 <https://github.com/ceph/ceph/pull/21763>`_, Jason Dillaman) -* librbd: refresh image after applying new metadata (`issue#21711 <http://tracker.ceph.com/issues/21711>`_, `pr#18158 <https://github.com/ceph/ceph/pull/18158>`_, Jason Dillaman) -* librbd: release lock executing deep copy progress callback (`issue#23929 <http://tracker.ceph.com/issues/23929>`_, `pr#21727 <https://github.com/ceph/ceph/pull/21727>`_, Mykola Golub) -* librbd: remove unused member in FlattenRequest (`pr#19416 <https://github.com/ceph/ceph/pull/19416>`_, Mykola Golub) -* librbd: remove unused variables from ReadResult refactor (`pr#18277 <https://github.com/ceph/ceph/pull/18277>`_, Jason Dillaman) -* librbd: rename of non-existent image results in seg fault (`issue#21248 <http://tracker.ceph.com/issues/21248>`_, `pr#17502 <https://github.com/ceph/ceph/pull/17502>`_, Jason Dillaman) -* librbd: set deleted parent pointer to null (`issue#22158 <http://tracker.ceph.com/issues/22158>`_, `pr#19003 <https://github.com/ceph/ceph/pull/19003>`_, Jason Dillaman) -* librbd: should not set self as remote peer (`pr#17300 <https://github.com/ceph/ceph/pull/17300>`_, songweibin) -* librbd: small cleanup for recently merged code (`pr#20578 <https://github.com/ceph/ceph/pull/20578>`_, Mykola Golub) -* librbd: snapshots should be created/removed against data pool (`issue#21567 <http://tracker.ceph.com/issues/21567>`_, `pr#18043 <https://github.com/ceph/ceph/pull/18043>`_, Jason Dillaman) -* librbd: speed up object map disk usage and resize (`pr#20218 <https://github.com/ceph/ceph/pull/20218>`_, shun-s) -* librbd: speed up sparse copy when object map is available (`pr#18967 <https://github.com/ceph/ceph/pull/18967>`_, Song Shun) -* librbd: update mirror::EnableRequest diagram according to code (`pr#19130 <https://github.com/ceph/ceph/pull/19130>`_, Mykola Golub) -* librbd: use steady clock to measure elapsed time in AioCompletion (`pr#20007 <https://github.com/ceph/ceph/pull/20007>`_, Mohamad Gebai) -* librbd: validate if dst group snap name is the same with src (`pr#20395 <https://github.com/ceph/ceph/pull/20395>`_, songweibin) -* log: Fix AddressSanitizer: new-delete-type-mismatch (`issue#23324 <http://tracker.ceph.com/issues/23324>`_, `pr#20930 <https://github.com/ceph/ceph/pull/20930>`_, Brad Hubbard) -* log: fix build on osx (`pr#18213 <https://github.com/ceph/ceph/pull/18213>`_, Kefu Chai) -* log: silence warning from -Wsign-compare (`pr#18326 <https://github.com/ceph/ceph/pull/18326>`_, Jos Collin) -* log: Use the coarse real time clock in log timestamps (`pr#18141 <https://github.com/ceph/ceph/pull/18141>`_, Adam C. Emerson) -* mds: check metadata pool not cluster is full (`issue#22483 <http://tracker.ceph.com/issues/22483>`_, `pr#19602 <https://github.com/ceph/ceph/pull/19602>`_, Patrick Donnelly) -* mds: fix CEPH_STAT_RSTAT definition (`pr#21633 <https://github.com/ceph/ceph/pull/21633>`_, "Yan, Zheng") -* mds: get rid of the "if" check which is unnecessary inside a loop (`pr#18904 <https://github.com/ceph/ceph/pull/18904>`_, dongdong tao) -* mds: Remove redundant null pointer check (`pr#19750 <https://github.com/ceph/ceph/pull/19750>`_, Brad Hubbard) -* mds: simplify the code logic in replay_alloc_ids (`pr#18893 <https://github.com/ceph/ceph/pull/18893>`_, dongdong tao) -* mempool: fix lack of pool names in mempool:dump output for JSON format (`pr#18329 <https://github.com/ceph/ceph/pull/18329>`_, Igor Fedotov) -* messages: Initialization of uninitialized members various classes (`pr#16848 <https://github.com/ceph/ceph/pull/16848>`_, amitkuma) -* messages/MDentryLink: add const to member function (`pr#15479 <https://github.com/ceph/ceph/pull/15479>`_, yonghengdexin735) -* messages,test,msg: initialize h,reply_type,owner (`pr#17767 <https://github.com/ceph/ceph/pull/17767>`_, Amit Kumar) -* mgr: add mgr daemon to DaemonStateIndex with metadata (hostname) (`issue#23286 <http://tracker.ceph.com/issues/23286>`_, `pr#20875 <https://github.com/ceph/ceph/pull/20875>`_, Jan Fajerski) -* mgr: add missing call to pick_addresses (`issue#20955 <http://tracker.ceph.com/issues/20955>`_, `pr#16940 <https://github.com/ceph/ceph/pull/16940>`_, John Spray) -* mgr: add the ip addr of standbys (`pr#16476 <https://github.com/ceph/ceph/pull/16476>`_, huanwen ren) -* mgr: add units to performance counters (`issue#22747 <http://tracker.ceph.com/issues/22747>`_, `pr#20152 <https://github.com/ceph/ceph/pull/20152>`_, Rubab Syed) -* mgr: allow service daemons to unregister from ServiceMap (`pr#20761 <https://github.com/ceph/ceph/pull/20761>`_, Sage Weil) -* mgr: apply a threshold to perf counter prios (`pr#16699 <https://github.com/ceph/ceph/pull/16699>`_, John Spray) -* mgr: balancer: fixed mistype "AttributeError: 'Logger' object has no attribute 'err'" (`pr#20130 <https://github.com/ceph/ceph/pull/20130>`_, Konstantin Shalygin) -* mgr: centralized setting/getting of mgr configs (`pr#21442 <https://github.com/ceph/ceph/pull/21442>`_, John Spray, Rubab Syed) -* mgr: ceph-mgr: can not change prometheus port for mgr (`pr#17746 <https://github.com/ceph/ceph/pull/17746>`_, wujian) -* mgr: common interface for TSDB modules (`pr#17735 <https://github.com/ceph/ceph/pull/17735>`_, Jan Fajerski, John Spray, My Do) -* mgr/dashboard: Adapt help text if server_addr is not set (`pr#21640 <https://github.com/ceph/ceph/pull/21640>`_, Volker Theile) -* mgr/dashboard: Adapt RBD form to new application_metadata type (`pr#21602 <https://github.com/ceph/ceph/pull/21602>`_, Volker Theile) -* mgr/dashboard: Add Api module (`pr#21126 <https://github.com/ceph/ceph/pull/21126>`_, Tiago Melo) -* mgr/dashboard: Add 'autofocus' directive (`pr#21559 <https://github.com/ceph/ceph/pull/21559>`_, Volker Theile) -* mgr/dashboard: Add CdDatePipe (`pr#21087 <https://github.com/ceph/ceph/pull/21087>`_, Ricardo Marques) -* mgr/dashboard: Add 'cd-error-panel' component to display error messages (`pr#21558 <https://github.com/ceph/ceph/pull/21558>`_, Volker Theile) -* mgr/dashboard: Add 'cd-loading-panel' component (`pr#21618 <https://github.com/ceph/ceph/pull/21618>`_, Volker Theile) -* mgr/dashboard: Add custom validators (`pr#21041 <https://github.com/ceph/ceph/pull/21041>`_, Volker Theile) -* mgr/dashboard: Add DimlessBinaryDirective (`pr#20972 <https://github.com/ceph/ceph/pull/20972>`_, Ricardo Marques) -* mgr/dashboard: Add ErasureCodeProfile controller (`issue#23345 <http://tracker.ceph.com/issues/23345>`_, `pr#20920 <https://github.com/ceph/ceph/pull/20920>`_, Sebastian Wagner, Stephan Müller) -* mgr/dashboard: Add 'forceIdentifier' attribute to datatable (`pr#21497 <https://github.com/ceph/ceph/pull/21497>`_, Volker Theile) -* mgr/dashboard: Add helper component (`pr#20971 <https://github.com/ceph/ceph/pull/20971>`_, Ricardo Marques) -* mgr/dashboard: additional fixes to block pages (`pr#20941 <https://github.com/ceph/ceph/pull/20941>`_, Jason Dillaman) -* mgr/dashboard: Add minimalistic browsable API (`pr#20873 <https://github.com/ceph/ceph/pull/20873>`_, Sebastian Wagner) -* mgr/dashboard: Add notification service/component (`pr#21078 <https://github.com/ceph/ceph/pull/21078>`_, Tiago Melo) -* mgr/dashboard: Add Pool-create to the backend (`issue#23345 <http://tracker.ceph.com/issues/23345>`_, `pr#20865 <https://github.com/ceph/ceph/pull/20865>`_, Sebastian Wagner) -* mgr/dashboard: Add RGW user and bucket management features (`pr#21351 <https://github.com/ceph/ceph/pull/21351>`_, Volker Theile) -* mgr/dashboard: Adds reusable deletion dialog (`pr#20899 <https://github.com/ceph/ceph/pull/20899>`_, Stephan Müller, Tiago Melo) -* mgr/dashboard: Add submit button component (`pr#21011 <https://github.com/ceph/ceph/pull/21011>`_, Tiago Melo) -* mgr/dashboard: Add usage bar component (`pr#21128 <https://github.com/ceph/ceph/pull/21128>`_, Ricardo Marques) -* mgr/dashboard: Angular modules cleanup (`pr#21402 <https://github.com/ceph/ceph/pull/21402>`_, Tiago Melo) -* mgr/dashboard: Asynchronous tasks (frontend) (`pr#20962 <https://github.com/ceph/ceph/pull/20962>`_, Ricardo Marques) -* mgr/dashboard: awsauth: fix python3 string decode problem (`pr#21875 <https://github.com/ceph/ceph/pull/21875>`_, Ricardo Dias) -* mgr/dashboard: Change font-family of checkbox (`pr#21787 <https://github.com/ceph/ceph/pull/21787>`_, Tiago Melo) -* mgr/dashboard: Clean up Pylint warnings (`pr#21694 <https://github.com/ceph/ceph/pull/21694>`_, Sebastian Wagner) -* mgr/dashboard: Convert floating values to bytes (`pr#21677 <https://github.com/ceph/ceph/pull/21677>`_, Stephan Müller) -* mgr/dashboard: Convert the RBD feature names to a list of strings (`pr#21024 <https://github.com/ceph/ceph/pull/21024>`_, Tatjana Dehler) -* mgr/dashboard: Deletion dialog falsely executes deletion when pressing 'Cancel' (`pr#22032 <https://github.com/ceph/ceph/pull/22032>`_, Volker Theile) -* mgr/dashboard: Display notification if RGW is not configured (`pr#21977 <https://github.com/ceph/ceph/pull/21977>`_, Volker Theile) -* mgr/dashboard: Display RBD form errors on submission (`pr#21529 <https://github.com/ceph/ceph/pull/21529>`_, Ricardo Marques) -* mgr/dashboard: Enable object rendering in KV-table (`pr#21701 <https://github.com/ceph/ceph/pull/21701>`_, Stephan Müller) -* mgr/dashboard: fix 500 error on block device iSCSI status page (`pr#20928 <https://github.com/ceph/ceph/pull/20928>`_, Jason Dillaman) -* mgr/dashboard: fix dashboard python 3 support (`pr#21007 <https://github.com/ceph/ceph/pull/21007>`_, Ricardo Dias) -* mgr/dashboard: Fix data race and use-before-assignment (`pr#21590 <https://github.com/ceph/ceph/pull/21590>`_, Sebastian Wagner) -* mgr/dashboard: fixed password generation in Auth controller (`issue#23404 <http://tracker.ceph.com/issues/23404>`_, `pr#21006 <https://github.com/ceph/ceph/pull/21006>`_, Ricardo Dias) -* mgr/dashboard: Fixes documentation link- to open in new tab (`pr#22262 <https://github.com/ceph/ceph/pull/22262>`_, Kanika Murarka) -* mgr/dashboard: Fixes type error in RBD form (`pr#21681 <https://github.com/ceph/ceph/pull/21681>`_, Stephan Müller) -* mgr/dashboard: fix frontend e2e tests (`pr#20943 <https://github.com/ceph/ceph/pull/20943>`_, Tiago Melo) -* mgr/dashboard: fix FS status on old MDS daemons (`issue#20692 <http://tracker.ceph.com/issues/20692>`_, `pr#16960 <https://github.com/ceph/ceph/pull/16960>`_, John Spray) -* mgr/dashboard: fix linting problem (`pr#22277 <https://github.com/ceph/ceph/pull/22277>`_, Tiago Melo) -* mgr/dashboard: Fix missing $event on deletion modal (`pr#21667 <https://github.com/ceph/ceph/pull/21667>`_, Ricardo Marques) -* mgr/dashboard: Fix moment.js deprecation warning (`pr#22052 <https://github.com/ceph/ceph/pull/22052>`_, Tiago Melo) -* mgr/dashboard: Fix objects named `default` are inaccessible (`pr#20976 <https://github.com/ceph/ceph/pull/20976>`_, Sebastian Wagner) -* mgr/dashboard: Fix RBD task metadata (`pr#22152 <https://github.com/ceph/ceph/pull/22152>`_, Tiago Melo) -* mgr/dashboard: Fix table without fetchData (`pr#21086 <https://github.com/ceph/ceph/pull/21086>`_, Ricardo Marques) -* mgr/dashboard: Fix the data table action selector (`pr#21270 <https://github.com/ceph/ceph/pull/21270>`_, Stephan Müller) -* mgr/dashboard: fix two type errors found by mypy (`pr#21774 <https://github.com/ceph/ceph/pull/21774>`_, Sebastian Wagner) -* mgr/dashboard: Handle errors during deletion (`pr#22029 <https://github.com/ceph/ceph/pull/22029>`_, Volker Theile) -* mgr/dashboard: Implement a RGW proxy (`pr#21258 <https://github.com/ceph/ceph/pull/21258>`_, Volker Theile, Patrick Nawracay) -* mgr/dashboard: Improve background tasks style (`pr#21462 <https://github.com/ceph/ceph/pull/21462>`_, Ricardo Marques) -* mgr/dashboard: improve error handling (`pr#18182 <https://github.com/ceph/ceph/pull/18182>`_, Nick Erdmann) -* mgr/dashboard: Improve error panel (`pr#21978 <https://github.com/ceph/ceph/pull/21978>`_, Volker Theile) -* mgr/dashboard: Improve `npm start` script (`pr#20989 <https://github.com/ceph/ceph/pull/20989>`_, Ricardo Marques) -* mgr/dashboard: Improve table search (`pr#20807 <https://github.com/ceph/ceph/pull/20807>`_, Stephan Müller) -* mgr/dashboard: Load the datatable content on component initialization (`pr#21595 <https://github.com/ceph/ceph/pull/21595>`_, Volker Theile) -* mgr/dashboard: Navbar dropdown button does not respond for mobile browsers (`pr#21979 <https://github.com/ceph/ceph/pull/21979>`_, Volker Theile) -* mgr/dashboard: Notification improvements (`pr#21350 <https://github.com/ceph/ceph/pull/21350>`_, Tiago Melo) -* mgr/dashboard: pool: fix python3 dict_keys error (`pr#21636 <https://github.com/ceph/ceph/pull/21636>`_, Ricardo Dias) -* mgr/dashboard: Pool listing (`pr#21353 <https://github.com/ceph/ceph/pull/21353>`_, Stephan Müller) -* mgr/dashboard: rbd: add @AuthRequired to snapshots controller (`pr#21517 <https://github.com/ceph/ceph/pull/21517>`_, Ricardo Dias) -* mgr/dashboard: RBD copy, RBD flatten and snapshot clone (frontend) (`pr#21526 <https://github.com/ceph/ceph/pull/21526>`_, Ricardo Marques, Ricardo Dias) -* mgr/dashboard: RBD management (frontend) (`pr#21385 <https://github.com/ceph/ceph/pull/21385>`_, Ricardo Marques) -* mgr/dashboard: Refactor multiple duplicates of `get_rate()` (`pr#21022 <https://github.com/ceph/ceph/pull/21022>`_, Sebastian Wagner) -* mgr/dashboard: Refactor RGW backend (`pr#21855 <https://github.com/ceph/ceph/pull/21855>`_, Volker Theile) -* mgr/dashboard: Rename and refactor ApiInterceptorService class (`pr#21386 <https://github.com/ceph/ceph/pull/21386>`_, Volker Theile) -* mgr/dashboard: Replace font-awesome with fork-awesome (`pr#21327 <https://github.com/ceph/ceph/pull/21327>`_, Lenz Grimmer) -* mgr/dashboard: restcontroller: fix detection of id args in element requests (`pr#21290 <https://github.com/ceph/ceph/pull/21290>`_, Ricardo Dias) -* mgr/dashboard: RESTController improvements (`pr#21516 <https://github.com/ceph/ceph/pull/21516>`_, Ricardo Dias) -* mgr/dashboard: run-tox: pass CEPH_BUILD_DIR value into tox script (`pr#21445 <https://github.com/ceph/ceph/pull/21445>`_, Ricardo Dias) -* mgr: dashboard: show per pool IOPS on health page (#22495) (`issue#22495 <http://tracker.ceph.com/issues/22495>`_, `pr#19981 <https://github.com/ceph/ceph/pull/19981>`_, Konstantin Shalygin) -* mgr/dashboard: Support aditional info on 'cd-view-cache' (`pr#21060 <https://github.com/ceph/ceph/pull/21060>`_, Ricardo Marques) -* mgr/dashboard: TaskManager bug fixes (`pr#21240 <https://github.com/ceph/ceph/pull/21240>`_, Ricardo Dias) -* mgr/dashboard: Update selected items on table refresh (`pr#21099 <https://github.com/ceph/ceph/pull/21099>`_, Ricardo Marques) -* mgr/dashboard: Use Bootstrap CSS (`pr#21780 <https://github.com/ceph/ceph/pull/21780>`_, Volker Theile) -* mgr/dashboard: using RoutesDispatcher as HTTP request dispatcher (`pr#21239 <https://github.com/ceph/ceph/pull/21239>`_, Ricardo Dias) -* mgr/dashboard_v2: add mgr to the list of perf counters (`pr#20783 <https://github.com/ceph/ceph/pull/20783>`_, Tiago Melo) -* mgr/dashboard_v2: add mocked service provider for TcmuIscsiService (`pr#20775 <https://github.com/ceph/ceph/pull/20775>`_, Tiago Melo) -* mgr/dashboard_v2: Add toggle able columns (`pr#20806 <https://github.com/ceph/ceph/pull/20806>`_, Stephan Müller) -* mgr/dashboard_v2: Configuration settings support (`pr#20743 <https://github.com/ceph/ceph/pull/20743>`_, Ricardo Dias) -* mgr/dashboard_v2: fix and improve table details (`pr#20811 <https://github.com/ceph/ceph/pull/20811>`_, Tiago Melo) -* mgr/dashboard_v2: Fix cephfs template table usage (`pr#20804 <https://github.com/ceph/ceph/pull/20804>`_, Stephan Müller) -* mgr/dashboard_v2: fix cluster configuration page (`pr#20821 <https://github.com/ceph/ceph/pull/20821>`_, Tiago Melo) -* mgr/dashboard_v2: Improve charts tooltips (`pr#20757 <https://github.com/ceph/ceph/pull/20757>`_, Tiago Melo) -* mgr/dashboard_v2: Pool controller (`pr#20823 <https://github.com/ceph/ceph/pull/20823>`_, Ricardo Dias) -* mgr/dashboard_v2: Rotate the refresh icon on load (`pr#20805 <https://github.com/ceph/ceph/pull/20805>`_, Stephan Müller) -* mgr: die on bind() failure (`pr#20595 <https://github.com/ceph/ceph/pull/20595>`_, John Spray) -* mgr: disconnect unregistered service daemon when report received (`issue#22286 <http://tracker.ceph.com/issues/22286>`_, `pr#19261 <https://github.com/ceph/ceph/pull/19261>`_, Jason Dillaman) -* mgr: emit cluster log message on serve() exception (`issue#21999 <http://tracker.ceph.com/issues/21999>`_, `pr#18672 <https://github.com/ceph/ceph/pull/18672>`_, John Spray) -* mgr: Expose rgw perf counters (`pr#21269 <https://github.com/ceph/ceph/pull/21269>`_, Boris Ranto) -* mgr: fix "access denied" message (`pr#19518 <https://github.com/ceph/ceph/pull/19518>`_, John Spray) -* mgr: fix crashable DaemonStateIndex::get calls (`issue#17737 <http://tracker.ceph.com/issues/17737>`_, `pr#17933 <https://github.com/ceph/ceph/pull/17933>`_, John Spray) -* mgr: fix crash in MonCommandCompletion (`issue#21157 <http://tracker.ceph.com/issues/21157>`_, `pr#17308 <https://github.com/ceph/ceph/pull/17308>`_, John Spray) -* mgr: fixes python error handling (`issue#23406 <http://tracker.ceph.com/issues/23406>`_, `pr#21005 <https://github.com/ceph/ceph/pull/21005>`_, Ricardo Dias) -* mgr: fix MSG_MGR_MAP handling (`pr#20892 <https://github.com/ceph/ceph/pull/20892>`_, Gu Zhongyan) -* mgr: fix "osd status" command exception if OSD not in pgmap stats (`issue#21707 <http://tracker.ceph.com/issues/21707>`_, `pr#18173 <https://github.com/ceph/ceph/pull/18173>`_, Yanhu Cao) -* mgr: fix py3 support (`issue#22880 <http://tracker.ceph.com/issues/22880>`_, `pr#20362 <https://github.com/ceph/ceph/pull/20362>`_, Kefu Chai) -* mgr: fix py calls for dne service perf counters (`issue#21253 <http://tracker.ceph.com/issues/21253>`_, `pr#17605 <https://github.com/ceph/ceph/pull/17605>`_, John Spray) -* mgr: implement completion of osd MetadataUpdate (`issue#21159 <http://tracker.ceph.com/issues/21159>`_, `pr#16925 <https://github.com/ceph/ceph/pull/16925>`_, Yanhu Cao) -* mgr: implement 'osd safe-to-destroy' and 'osd ok-to-stop' commands (`pr#16976 <https://github.com/ceph/ceph/pull/16976>`_, Sage Weil) -* mgr: improved module loading for error reporting etc (`issue#21999 <http://tracker.ceph.com/issues/21999>`_, `issue#21683 <http://tracker.ceph.com/issues/21683>`_, `issue#21502 <http://tracker.ceph.com/issues/21502>`_, `pr#19235 <https://github.com/ceph/ceph/pull/19235>`_, John Spray) -* mgr: improve reporting on unloadable modules (`issue#23358 <http://tracker.ceph.com/issues/23358>`_, `pr#20921 <https://github.com/ceph/ceph/pull/20921>`_, John Spray) -* mgr: increase time resolution of Commit/Apply OSD latencies (`pr#19232 <https://github.com/ceph/ceph/pull/19232>`_, Коренберг Марк) -* mgr: initialize PyModuleRegistry sooner (`issue#22918 <http://tracker.ceph.com/issues/22918>`_, `pr#20321 <https://github.com/ceph/ceph/pull/20321>`_, John Spray) -* mgr: In plugins 'module' classes need not to be called "Module" anymore (`issue#17454 <http://tracker.ceph.com/issues/17454>`_, `pr#18526 <https://github.com/ceph/ceph/pull/18526>`_, Kefu Chai, bhavishyagopesh) -* mgr: locking fixes (`issue#21158 <http://tracker.ceph.com/issues/21158>`_, `pr#17309 <https://github.com/ceph/ceph/pull/17309>`_, John Spray) -* mgr: mgr/balancer: cast config vals to int or float (`issue#22429 <http://tracker.ceph.com/issues/22429>`_, `pr#19493 <https://github.com/ceph/ceph/pull/19493>`_, Dan van der Ster) -* mgr: mgr/balancer: don't use 'foo' tags on commands (`issue#22361 <http://tracker.ceph.com/issues/22361>`_, `pr#19482 <https://github.com/ceph/ceph/pull/19482>`_, John Spray) -* mgr: mgr/balancer: fix KeyError in balancer rm (`issue#22470 <http://tracker.ceph.com/issues/22470>`_, `pr#19578 <https://github.com/ceph/ceph/pull/19578>`_, Dan van der Ster) -* mgr: mgr/balancer: fix OPTIONS definition (`pr#21620 <https://github.com/ceph/ceph/pull/21620>`_, John Spray) -* mgr: mgr/balancer: fix upmap; default balancer module enabled (`pr#18691 <https://github.com/ceph/ceph/pull/18691>`_, Sage Weil) -* mgr: mgr/balancer: make crush-compat mode work (`pr#17983 <https://github.com/ceph/ceph/pull/17983>`_, Sage Weil) -* mgr: mgr/balancer: mgr module to automatically balance PGs across OSDs (`pr#16272 <https://github.com/ceph/ceph/pull/16272>`_, Spandan Kumar Sahu, Sage Weil) -* mgr: mgr/balancer: more pool-specific enhancements (`pr#20225 <https://github.com/ceph/ceph/pull/20225>`_, xie xingguo) -* mgr: mgr/balancer: pool-specific optimization support and bug fixes (`pr#20154 <https://github.com/ceph/ceph/pull/20154>`_, xie xingguo) -* mgr: mgr/balancer: replace magic value of -1 for DEFAULT_CHOOSE_ARGS (`pr#20258 <https://github.com/ceph/ceph/pull/20258>`_, Kefu Chai) -* mgr: mgr/balancer: skip CRUSH_ITEM_NONE (`pr#18894 <https://github.com/ceph/ceph/pull/18894>`_, Sage Weil) -* mgr: mgr/balancer: two more fixes (`pr#20180 <https://github.com/ceph/ceph/pull/20180>`_, xie xingguo) -* mgr: mgrc: free MMgrClose in handle_mgr_close (`issue#23846 <http://tracker.ceph.com/issues/23846>`_, `pr#21626 <https://github.com/ceph/ceph/pull/21626>`_, Casey Bodley) -* mgr: mgr/DaemonServer: add overrides value to 'config show' (`pr#21093 <https://github.com/ceph/ceph/pull/21093>`_, Gu Zhongyan) -* mgr: mgr/DaemonServer.cc: [Cleanup] Change to using get_val template function (`pr#18717 <https://github.com/ceph/ceph/pull/18717>`_, Shinobu Kinjo) -* mgr: mgr/DaemonServer: [Cleanup] Remove redundant code (`pr#18716 <https://github.com/ceph/ceph/pull/18716>`_, Shinobu Kinjo) -* mgr: mgr/dashboard: add configuration setting browser (`issue#22522 <http://tracker.ceph.com/issues/22522>`_, `pr#20043 <https://github.com/ceph/ceph/pull/20043>`_, Rubab Syed) -* mgr: mgr/dashboard: add image id to mgr rbd info instead of block_name_prefix (`pr#20884 <https://github.com/ceph/ceph/pull/20884>`_, zouaiguo) -* mgr: mgr/dashboard: Add monitor list (`pr#19632 <https://github.com/ceph/ceph/pull/19632>`_, Rubab Syed) -* mgr: mgr/dashboard: Add RGW user and bucket lists (read-only) (`pr#20869 <https://github.com/ceph/ceph/pull/20869>`_, Volker Theile) -* mgr: mgr/dashboard: add TLS (`pr#21627 <https://github.com/ceph/ceph/pull/21627>`_, John Spray) -* mgr: mgr/dashboard: Add toBytes() method to FormatterService (`pr#20978 <https://github.com/ceph/ceph/pull/20978>`_, Volker Theile) -* mgr: mgr/dashboard: asynchronous task support (`pr#20870 <https://github.com/ceph/ceph/pull/20870>`_, Ricardo Dias) -* mgr: mgr/dashboard: change raw usage chart's color depending on usage (`pr#17421 <https://github.com/ceph/ceph/pull/17421>`_, Nick Erdmann) -* mgr: mgr/dashboard: fix audit log loading (`pr#18848 <https://github.com/ceph/ceph/pull/18848>`_, John Spray) -* mgr: mgr/dashboard: Fix backend tests for newer CherryPy versions (`pr#20778 <https://github.com/ceph/ceph/pull/20778>`_, Patrick Nawracay) -* mgr: mgr/dashboard: Fix PG status coloring (`pr#19431 <https://github.com/ceph/ceph/pull/19431>`_, Wido den Hollander) -* mgr: mgr/dashboard: format tooltip's label as user friendly string (`pr#18769 <https://github.com/ceph/ceph/pull/18769>`_, Yao Zongyou) -* mgr: mgr/dashboard: handle null in format_number (`issue#21570 <http://tracker.ceph.com/issues/21570>`_, `pr#17991 <https://github.com/ceph/ceph/pull/17991>`_, John Spray) -* mgr: mgr/dashboard: HTTP request logging (`pr#20797 <https://github.com/ceph/ceph/pull/20797>`_, Ricardo Dias) -* mgr: mgr/dashboard: Improve auth interceptor (`pr#20847 <https://github.com/ceph/ceph/pull/20847>`_, Volker Theile) -* mgr: mgr/dashboard: performance counter browsers (`issue#22521 <http://tracker.ceph.com/issues/22521>`_, `pr#19922 <https://github.com/ceph/ceph/pull/19922>`_, Rubab-Syed) -* mgr: mgr/dashboard: RBD management (backend) (`pr#21360 <https://github.com/ceph/ceph/pull/21360>`_, Ricardo Dias) -* mgr: mgr/dashboard: Remove unused code (`pr#21045 <https://github.com/ceph/ceph/pull/21045>`_, Volker Theile) -* mgr: mgr/dashboard: Remove useless code (`pr#20958 <https://github.com/ceph/ceph/pull/20958>`_, Volker Theile) -* mgr: mgr/dashboard: show warnings if data is out of date or mons are down (`pr#18847 <https://github.com/ceph/ceph/pull/18847>`_, John Spray) -* mgr: mgr/dashboard: sort servers and OSDs in OSD list (`issue#21572 <http://tracker.ceph.com/issues/21572>`_, `pr#17993 <https://github.com/ceph/ceph/pull/17993>`_, John Spray) -* mgr: mgr/dashboard: use rel="icon" for favicon (`pr#18013 <https://github.com/ceph/ceph/pull/18013>`_, Kefu Chai) -* mgr: mgr/dashboard v2: Add CSS class for required form fields (`pr#20747 <https://github.com/ceph/ceph/pull/20747>`_, Volker Theile) -* mgr: mgr/dashboard_v2: Add RBD create functionality to the Python backend (`pr#20751 <https://github.com/ceph/ceph/pull/20751>`_, Tatjana Dehler) -* mgr: mgr/dashboard v2: Add units to performance counters (`pr#20742 <https://github.com/ceph/ceph/pull/20742>`_, Volker Theile) -* mgr: mgr/dashboard v2: Display loading indicator in datatables during first load (`pr#20744 <https://github.com/ceph/ceph/pull/20744>`_, Volker Theile) -* mgr: mgr/dashboard v2: Don't show details if multiple OSDs are selected (`pr#20772 <https://github.com/ceph/ceph/pull/20772>`_, Volker Theile) -* mgr: mgr/dashboard v2: implement can_run method (`pr#20728 <https://github.com/ceph/ceph/pull/20728>`_, John Spray) -* mgr: mgr/dashboard_v2: Initial submission of a web-based management UI (replacement for the existing dashboard) (`pr#20103 <https://github.com/ceph/ceph/pull/20103>`_, Stephan Müller, Lenz Grimmer, Tiago Melo, Ricardo Marques, Sebastian Wagner, Patrick Nawracay, Ricardo Dias, Volker Theile, Kai Wagner, Tatjana Dehler) -* mgr: mgr/dashboard v2: Introduce CdTableSelection model (`pr#20746 <https://github.com/ceph/ceph/pull/20746>`_, Volker Theile) -* mgr: mgr/dashboard_v2: Removed unused `tools.detail_route()` (`pr#20765 <https://github.com/ceph/ceph/pull/20765>`_, Sebastian Wagner) -* mgr: mgr/influx: Added Additional Stats (`pr#21424 <https://github.com/ceph/ceph/pull/21424>`_, mhdo2) -* mgr: mgr/influx: Add InfluxDB SSL Option (`pr#19374 <https://github.com/ceph/ceph/pull/19374>`_, Tobias Gall) -* mgr: mgr/influx: Only split string on first occurence of dot (.) (`issue#23996 <http://tracker.ceph.com/issues/23996>`_, `pr#21795 <https://github.com/ceph/ceph/pull/21795>`_, Wido den Hollander) -* mgr: mgr/influx: PEP-8 and other fixes to Influx module (`pr#19229 <https://github.com/ceph/ceph/pull/19229>`_, Wido den Hollander) -* mgr: mgr/influx: Various fixes and improvements (`pr#20187 <https://github.com/ceph/ceph/pull/20187>`_, Wido den Hollander) -* mgr: mgr/influx: Various time fixes (`pr#20494 <https://github.com/ceph/ceph/pull/20494>`_, Wido den Hollander) -* mgr: mgr/localpool: default to 3x; allow min_size adjustment (`pr#18089 <https://github.com/ceph/ceph/pull/18089>`_, Sage Weil) -* mgr: mgr/MgrClient: guard send_pgstats() with lock (`issue#23370 <http://tracker.ceph.com/issues/23370>`_, `pr#20909 <https://github.com/ceph/ceph/pull/20909>`_, Kefu Chai) -* mgr: mgr/MgrClient: service registration filtered by service name instead of daemon name (`pr#21459 <https://github.com/ceph/ceph/pull/21459>`_, runsisi) -* mgr: mgr/PGMap: drop REQUEST\_{SLOW,STUCK} HEALTH_WARNs (`pr#19114 <https://github.com/ceph/ceph/pull/19114>`_, Kefu Chai) -* mgr: mgr/prometheus: add ceph_disk_occupation series (`issue#21594 <http://tracker.ceph.com/issues/21594>`_, `pr#18021 <https://github.com/ceph/ceph/pull/18021>`_, John Spray) -* mgr: mgr/prometheus: add missing 'deep' state to PG_STATES in ceph-mgr prometheus plugin (`issue#22116 <http://tracker.ceph.com/issues/22116>`_, `pr#18890 <https://github.com/ceph/ceph/pull/18890>`_, Peter Woodman) -* mgr: mgr/prometheus: Fix for MDS metrics (`issue#20899 <http://tracker.ceph.com/issues/20899>`_, `pr#17318 <https://github.com/ceph/ceph/pull/17318>`_, John Spray, Jeremy H Austin) -* mgr: mgr/prometheus: fix PG state names (`pr#21288 <https://github.com/ceph/ceph/pull/21288>`_, John Spray) -* mgr: mgr/prometheus: Skip bogus entries (`pr#20456 <https://github.com/ceph/ceph/pull/20456>`_, Boris Ranto) -* mgr: mgr/prometheus: skip OSD output if missing from CRUSH devices (`pr#20644 <https://github.com/ceph/ceph/pull/20644>`_, John Spray) -* mgr: mgr/restful: A couple of restful fixes (`pr#18649 <https://github.com/ceph/ceph/pull/18649>`_, Boris Ranto) -* mgr: mgr/restful: cleaner message when not configured (`issue#21292 <http://tracker.ceph.com/issues/21292>`_, `pr#17573 <https://github.com/ceph/ceph/pull/17573>`_, John Spray) -* mgr: mgr/smart: fix python3 module loading (`pr#21047 <https://github.com/ceph/ceph/pull/21047>`_, Ricardo Dias) -* mgr: mgr/status: fix ceph fs status returns error (`issue#21752 <http://tracker.ceph.com/issues/21752>`_, `pr#18233 <https://github.com/ceph/ceph/pull/18233>`_, Yanhu Cao) -* mgr: mgr/status: format byte quantities in base 2 multiples (`issue#21189 <http://tracker.ceph.com/issues/21189>`_, `pr#17380 <https://github.com/ceph/ceph/pull/17380>`_, John Spray) -* mgr: mgr/telemetry: Add Ceph Telemetry module to send reports back to project (`pr#21970 <https://github.com/ceph/ceph/pull/21970>`_, Wido den Hollander) -* mgr: mgr/zabbix: fix div by zero (`issue#21518 <http://tracker.ceph.com/issues/21518>`_, `pr#17931 <https://github.com/ceph/ceph/pull/17931>`_, John Spray) -* mgr: mgr/zabbix: ignore osd with 0 kb capacity (`issue#21904 <http://tracker.ceph.com/issues/21904>`_, `pr#18809 <https://github.com/ceph/ceph/pull/18809>`_, Ilja Slepnev) -* mgr: mgr/zabbix: Implement health checks (`pr#20198 <https://github.com/ceph/ceph/pull/20198>`_, Wido den Hollander) -* mgr: mgr/zabbix: Send max, min and avg PGs of OSDs to Zabbix (`pr#21043 <https://github.com/ceph/ceph/pull/21043>`_, Wido den Hollander) -* mgr: mgr/Zabbix: Various fixes to Zabbix module (`pr#19452 <https://github.com/ceph/ceph/pull/19452>`_, Wido den Hollander) -* mgr: mimic: mgr/telegraf: Telegraf module for Ceph Mgr (`pr#22013 <https://github.com/ceph/ceph/pull/22013>`_, Wido den Hollander) -* mgr: Modify mgr-influx module database check to not require admin privileges (`pr#18102 <https://github.com/ceph/ceph/pull/18102>`_, Benjeman Meekhof) -* mgr: mon,mgr: improve 'mgr module disable' cmd (`pr#21188 <https://github.com/ceph/ceph/pull/21188>`_, Gu Zhongyan) -* mgr: mon, mgr: move "osd pool stats" command to mgr and mgr python module (`pr#19985 <https://github.com/ceph/ceph/pull/19985>`_, Chang Liu) -* mgr: mon/MgrStatMonitor: fix formatting of pending_digest (`issue#22991 <http://tracker.ceph.com/issues/22991>`_, `pr#20426 <https://github.com/ceph/ceph/pull/20426>`_, Patrick Donnelly) -* mgr,mon: mon/MgrMonitor: read cmd descs if empty on update_from_paxos() (`issue#21300 <http://tracker.ceph.com/issues/21300>`_, `pr#17846 <https://github.com/ceph/ceph/pull/17846>`_, Joao Eduardo Luis) -* mgr,mon: mon,mgr: remove single wildcard '\*' from ceph comand line description (`pr#21139 <https://github.com/ceph/ceph/pull/21139>`_, Gu Zhongyan) -* mgr,mon: mon/mgr: sync "mgr_command_descs","osd_metadata" and "mgr_metadata" prefixes to new mons (`issue#21527 <http://tracker.ceph.com/issues/21527>`_, `pr#17929 <https://github.com/ceph/ceph/pull/17929>`_, huanwen ren) -* mgr,mon: mon/MonCommands: mgr metadata - improve parameter naming consistency (`issue#23330 <http://tracker.ceph.com/issues/23330>`_, `pr#20866 <https://github.com/ceph/ceph/pull/20866>`_, Jan Fajerski) -* mgr: preventing blank hostname in DaemonState (`issue#20887 <http://tracker.ceph.com/issues/20887>`_, `issue#21060 <http://tracker.ceph.com/issues/21060>`_, `pr#17138 <https://github.com/ceph/ceph/pull/17138>`_, liuchang0812) -* mgr: prometheus: added osd commit/apply latency metrics (#22718) (`issue#22718 <http://tracker.ceph.com/issues/22718>`_, `pr#19980 <https://github.com/ceph/ceph/pull/19980>`_, Konstantin Shalygin) -* mgr: prometheus: Don't crash on OSDs without metadata (`pr#20539 <https://github.com/ceph/ceph/pull/20539>`_, Christopher Blum) -* mgr: prometheus fix metadata labels (`pr#21557 <https://github.com/ceph/ceph/pull/21557>`_, Jan Fajerski) -* mgr: prometheus: set metadata metrics value to '1' (#22717) (`issue#22717 <http://tracker.ceph.com/issues/22717>`_, `pr#19979 <https://github.com/ceph/ceph/pull/19979>`_, Konstantin Shalygin) -* mgr: pybind/mgr/balancer: add sanity check against empty adjusted_map (`pr#20836 <https://github.com/ceph/ceph/pull/20836>`_, xie xingguo) -* mgr: pybind/mgr/balancer: fix pool-deletion vs auto-optimization race (`pr#20706 <https://github.com/ceph/ceph/pull/20706>`_, xie xingguo) -* mgr: pybind/mgr/balancer: fix sanity check against empty weight-set (`pr#20278 <https://github.com/ceph/ceph/pull/20278>`_, xie xingguo) -* mgr: pybind/mgr/balancer: increase bad_steps properly (`pr#20194 <https://github.com/ceph/ceph/pull/20194>`_, xie xingguo) -* mgr: pybind/mgr/balancer: load weight-set from ms (`pr#20197 <https://github.com/ceph/ceph/pull/20197>`_, xie xingguo) -* mgr: pybind/mgr/balancer: more specific command outputs (`pr#20305 <https://github.com/ceph/ceph/pull/20305>`_, xie xingguo) -* mgr: pybind/mgr/balancer: remove optimization plan properly (`pr#20224 <https://github.com/ceph/ceph/pull/20224>`_, xie xingguo) -* mgr: pybind/mgr/balancer: two more fixes (`pr#20788 <https://github.com/ceph/ceph/pull/20788>`_, xie xingguo) -* mgr: pybind/mgr/dashboard: add url_prefix (`issue#20568 <http://tracker.ceph.com/issues/20568>`_, `pr#17119 <https://github.com/ceph/ceph/pull/17119>`_, Nick Erdmann) -* mgr: pybind/mgr/dashboard: fix duplicated slash in html href (`issue#22851 <http://tracker.ceph.com/issues/22851>`_, `pr#20229 <https://github.com/ceph/ceph/pull/20229>`_, Shengjing Zhu) -* mgr,pybind: mgr/dashboard: fix pool size base conversion (`pr#16771 <https://github.com/ceph/ceph/pull/16771>`_, Yixing Yan) -* mgr: pybind/mgr/dashboard: fix reverse proxy support (`issue#22557 <http://tracker.ceph.com/issues/22557>`_, `pr#19758 <https://github.com/ceph/ceph/pull/19758>`_, Nick Erdmann) -* mgr,pybind: mgr/iostat: print output as a table (`pr#21338 <https://github.com/ceph/ceph/pull/21338>`_, Mohamad Gebai) -* mgr: pybind/mgr/localpool: module to automagically create localized pools (`pr#17528 <https://github.com/ceph/ceph/pull/17528>`_, Sage Weil) -* mgr: pybind/mgr/mgr_module: add default param for MgrStandbyModule.get_con… (`pr#19948 <https://github.com/ceph/ceph/pull/19948>`_, Kefu Chai) -* mgr: pybind/mgr/mgr_module: make rados handle available to all modules (`pr#19972 <https://github.com/ceph/ceph/pull/19972>`_, Sage Weil) -* mgr: pybind/mgr_module: move PRIO\_\* and PERFCOUNTER\_\* to MgrModule class (`pr#18251 <https://github.com/ceph/ceph/pull/18251>`_, Jan Fajerski) -* mgr: pybind/mgr: new 'hello world' mgr module skeleton (`pr#19491 <https://github.com/ceph/ceph/pull/19491>`_, Yaarit Hatuka) -* mgr: pybind/mgr/prometheus: add file_sd_config command (`pr#21061 <https://github.com/ceph/ceph/pull/21061>`_, Jan Fajerski) -* mgr: pybind/mgr/prometheus: add osd_in/out metric; make osd_weight a metric (`pr#18243 <https://github.com/ceph/ceph/pull/18243>`_, Jan Fajerski) -* mgr: pybind/mgr/prometheus: add StandbyModule and handle failed MON cluster (`pr#19744 <https://github.com/ceph/ceph/pull/19744>`_, Jan Fajerski) -* mgr: pybind/mgr/prometheus: don't crash when encountering an unknown PG state (`pr#18903 <https://github.com/ceph/ceph/pull/18903>`_, Jan Fajerski) -* mgr: pybind/mgr/prometheus: don't export metrics for dead daemon; new metrics (`pr#20506 <https://github.com/ceph/ceph/pull/20506>`_, Jan Fajerski) -* mgr: pybind/mgr/prometheus: fix creation of osd_metadata metric (`pr#21530 <https://github.com/ceph/ceph/pull/21530>`_, Jan Fajerski) -* mgr: pybind/mgr/prometheus: fix metric type undef -> untyped (`issue#22313 <http://tracker.ceph.com/issues/22313>`_, `pr#19524 <https://github.com/ceph/ceph/pull/19524>`_, Ilya Margolin) -* mgr: pybind/mgr/prometheus: fix metric type undef -> untyped (`pr#18208 <https://github.com/ceph/ceph/pull/18208>`_, Jan Fajerski) -* mgr,pybind: pybing/mgr/prometheus: return default port if config-key get returns … (`pr#21696 <https://github.com/ceph/ceph/pull/21696>`_, Jan Fajerski) -* mgr: python interface rework + enable modules to run in standby mode (`issue#21593 <http://tracker.ceph.com/issues/21593>`_, `issue#17460 <http://tracker.ceph.com/issues/17460>`_, `pr#16651 <https://github.com/ceph/ceph/pull/16651>`_, John Spray, Sage Weil) -* mgr: quieten logging on missing OSD stats (`pr#20485 <https://github.com/ceph/ceph/pull/20485>`_, John Spray) -* mgr,rbd: mgr/dashboard: added iSCSI IOPS/throughput metrics (`issue#21391 <http://tracker.ceph.com/issues/21391>`_, `pr#18653 <https://github.com/ceph/ceph/pull/18653>`_, Jason Dillaman) -* mgr,rbd: mgr/dashboard: fix duplicate images listed on iSCSI status page (`issue#21017 <http://tracker.ceph.com/issues/21017>`_, `pr#17055 <https://github.com/ceph/ceph/pull/17055>`_, Jason Dillaman) -* mgr: reconcile can_run checks and selftest (`pr#21607 <https://github.com/ceph/ceph/pull/21607>`_, John Spray, Kefu Chai) -* mgr: remove a few junk lines (`pr#20005 <https://github.com/ceph/ceph/pull/20005>`_, John Spray) -* mgr: remove unused static files from dashboard module (`pr#16762 <https://github.com/ceph/ceph/pull/16762>`_, John Spray) -* mgr: request daemon's metadata when receiving a report from an unknown server (`issue#21687 <http://tracker.ceph.com/issues/21687>`_, `pr#18484 <https://github.com/ceph/ceph/pull/18484>`_, Chang Liu) -* mgr,rgw: mgr/dashboard: RGW page (`pr#19512 <https://github.com/ceph/ceph/pull/19512>`_, Chang Liu) -* mgr,rgw: prometheus: Implement rgw_metadata metric (`pr#21383 <https://github.com/ceph/ceph/pull/21383>`_, Boris Ranto) -* mgr: safety checks on pyThreadState usage (`pr#18093 <https://github.com/ceph/ceph/pull/18093>`_, John Spray) -* mgr: set explicit thread name (`issue#21404 <http://tracker.ceph.com/issues/21404>`_, `pr#17756 <https://github.com/ceph/ceph/pull/17756>`_, John Spray) -* mgr: silence warning from -Wsign-compare (`pr#17881 <https://github.com/ceph/ceph/pull/17881>`_, Jos Collin) -* mgr: skip first non-zero incremental in PGMap::apply_incremental() (`issue#21773 <http://tracker.ceph.com/issues/21773>`_, `pr#18347 <https://github.com/ceph/ceph/pull/18347>`_, Aleksei Gutikov) -* mgr/status: output to stdout, not stderr (`issue#24175 <http://tracker.ceph.com/issues/24175>`_, `pr#22135 <https://github.com/ceph/ceph/pull/22135>`_, John Spray) -* mgr: store declared_types in MgrSession (`issue#21197 <http://tracker.ceph.com/issues/21197>`_, `pr#17932 <https://github.com/ceph/ceph/pull/17932>`_, John Spray) -* mgr: systemd: Wait 10 seconds before restarting ceph-mgr (`issue#23083 <http://tracker.ceph.com/issues/23083>`_, `pr#20533 <https://github.com/ceph/ceph/pull/20533>`_, Wido den Hollander) -* mgr,tests: mgr/dashboard: skip data pool testcase for none-bluestore clusters (`pr#21004 <https://github.com/ceph/ceph/pull/21004>`_, Tatjana Dehler) -* mgr,tests: mgr/dashboard_v2: fix test_perf_counters_mgr_get (`pr#20916 <https://github.com/ceph/ceph/pull/20916>`_, Tiago Melo) -* mgr,tests: qa: add new prometheus test to rados/mgr suite (`pr#20047 <https://github.com/ceph/ceph/pull/20047>`_, John Spray) -* mgr,tests: qa: configure zabbix properly before selftest (`issue#22514 <http://tracker.ceph.com/issues/22514>`_, `pr#19634 <https://github.com/ceph/ceph/pull/19634>`_, John Spray) -* mgr,tests: qa: fix mgr _load_module helper (`pr#18685 <https://github.com/ceph/ceph/pull/18685>`_, John Spray) -* mgr,tools: mgr/iostat: implement 'ceph iostat' as a mgr plugin (`pr#20100 <https://github.com/ceph/ceph/pull/20100>`_, Mohamad Gebai) -* mgr: use new style config opts + add metadata (`pr#17374 <https://github.com/ceph/ceph/pull/17374>`_, John Spray) -* mgr/zabbix: Fix wrong log message (`pr#21237 <https://github.com/ceph/ceph/pull/21237>`_, Gu Zhongyan) -* mgr/zabbix: monitoring template improvements (`pr#19901 <https://github.com/ceph/ceph/pull/19901>`_, Marc Schoechlin) -* mon: Add `ceph osd get-require-min-compat-client` command (`pr#19015 <https://github.com/ceph/ceph/pull/19015>`_, hansbogert) -* mon: add 'ceph osd pool get erasure allow_ec_overwrites' command (`pr#21102 <https://github.com/ceph/ceph/pull/21102>`_, Mykola Golub) -* mon: add MMonHealth back (`issue#22462 <http://tracker.ceph.com/issues/22462>`_, `pr#20528 <https://github.com/ceph/ceph/pull/20528>`_, Kefu Chai) -* mon: add mon_health_preluminous_compat_warning (`pr#16902 <https://github.com/ceph/ceph/pull/16902>`_, Sage Weil) -* mon: a few conversions to monotonic clock (`pr#18595 <https://github.com/ceph/ceph/pull/18595>`_, Patrick Donnelly) -* mon: align lspools output (`pr#19597 <https://github.com/ceph/ceph/pull/19597>`_, Jos Collin) -* mon: allow cluter and debug logs to go to stderr, with appropriate prefix (`pr#19385 <https://github.com/ceph/ceph/pull/19385>`_, Sage Weil) -* mon: cache reencoded osdmaps (`issue#23713 <http://tracker.ceph.com/issues/23713>`_, `pr#21605 <https://github.com/ceph/ceph/pull/21605>`_, Sage Weil, Xiaoxi CHEN) -* mon: centralized config (`pr#20172 <https://github.com/ceph/ceph/pull/20172>`_, Sage Weil) -* mon: "ceph osd crush rule rename" support (`pr#17029 <https://github.com/ceph/ceph/pull/17029>`_, xie xingguo) -* mon: check monitor address configuration (`pr#18073 <https://github.com/ceph/ceph/pull/18073>`_, Li Wang) -* mon: clean up cluster logging on mon events (`issue#22082 <http://tracker.ceph.com/issues/22082>`_, `pr#18822 <https://github.com/ceph/ceph/pull/18822>`_, John Spray) -* mon: cleanups to optracker code (`pr#21371 <https://github.com/ceph/ceph/pull/21371>`_, John Spray) -* mon: cleanup unused option mon_health_data_update_interval (`pr#17728 <https://github.com/ceph/ceph/pull/17728>`_, Yao Guotao) -* mon: common/options: set max_background_jobs instead of max_background_compactions (`pr#18397 <https://github.com/ceph/ceph/pull/18397>`_, Kefu Chai) -* mon: Compress the warnings of pgs not scrubbed or deep-scrubbed (`pr#17295 <https://github.com/ceph/ceph/pull/17295>`_, Zhi Zhang) -* mon: do not use per_pool_sum_delta to show recovery summary (`issue#22727 <http://tracker.ceph.com/issues/22727>`_, `pr#20009 <https://github.com/ceph/ceph/pull/20009>`_, Chang Liu) -* mon: don't blow away bootstrap-mgr on upgrades (`issue#20950 <http://tracker.ceph.com/issues/20950>`_, `pr#18399 <https://github.com/ceph/ceph/pull/18399>`_, John Spray) -* mon: double mon_mgr_mkfs_grace from 60s -> 120s (`pr#20955 <https://github.com/ceph/ceph/pull/20955>`_, Sage Weil) -* mon: Drop redundant access specifier, etc (cleanup) (`pr#19028 <https://github.com/ceph/ceph/pull/19028>`_, Shinobu Kinjo) -* mon: dump percent_used PGMap field as float (`pr#20439 <https://github.com/ceph/ceph/pull/20439>`_, John Spray) -* mon: dump servicemap along with MgrStatMonitor dump info (`pr#18760 <https://github.com/ceph/ceph/pull/18760>`_, Zhi Zhang) -* mon: expand cap validity check for mgr, osd, mds (`issue#22525 <http://tracker.ceph.com/issues/22525>`_, `pr#21311 <https://github.com/ceph/ceph/pull/21311>`_, Jing Li, Sage Weil) -* mon: final luminous compatset feature and osdmap flag (`pr#17333 <https://github.com/ceph/ceph/pull/17333>`_, Sage Weil) -* mon: fix commands advertised during mon cluster upgrade (`pr#16871 <https://github.com/ceph/ceph/pull/16871>`_, Sage Weil) -* mon: fix dropping mgr metadata for active mgr (#21260) (`issue#21260 <http://tracker.ceph.com/issues/21260>`_, `pr#17571 <https://github.com/ceph/ceph/pull/17571>`_, John Spray) -* mon: fix "fs new" pool metadata update, tests (`issue#20959 <http://tracker.ceph.com/issues/20959>`_, `pr#16954 <https://github.com/ceph/ceph/pull/16954>`_, Greg Farnum) -* mon: fix legacy health checks in 'ceph status' during upgrade; fix jewel-x upgrade combo (`pr#16967 <https://github.com/ceph/ceph/pull/16967>`_, Sage Weil) -* mon: fix mgr using auth_client_required policy (`pr#20048 <https://github.com/ceph/ceph/pull/20048>`_, John Spray) -* mon: fix `osd out` clog message (`issue#21249 <http://tracker.ceph.com/issues/21249>`_, `pr#17525 <https://github.com/ceph/ceph/pull/17525>`_, John Spray) -* mon: fix slow op warning on mon, improve slow op warnings (`issue#23769 <http://tracker.ceph.com/issues/23769>`_, `pr#21684 <https://github.com/ceph/ceph/pull/21684>`_, Sage Weil) -* mon: fix structure of 'features' command (`pr#20115 <https://github.com/ceph/ceph/pull/20115>`_, Sage Weil) -* mon: fix two stray legacy get_health() callers (`pr#17269 <https://github.com/ceph/ceph/pull/17269>`_, Sage Weil) -* mon: fix wrong mon-num counting logic of 'ceph features' command (`pr#16887 <https://github.com/ceph/ceph/pull/16887>`_, xie xingguo) -* mon: handle bad snapshot removal reqs gracefully (`issue#18746 <http://tracker.ceph.com/issues/18746>`_, `pr#20835 <https://github.com/ceph/ceph/pull/20835>`_, Paul Emmerich) -* mon: handle monitor lag when killing mgrs (`issue#20629 <http://tracker.ceph.com/issues/20629>`_, `pr#18268 <https://github.com/ceph/ceph/pull/18268>`_, John Spray) -* mon: incorrect MAX AVAIL in "ceph df" (`issue#21243 <http://tracker.ceph.com/issues/21243>`_, `pr#17513 <https://github.com/ceph/ceph/pull/17513>`_, liuchang0812) -* mon: invalid JSON returned when querying pool parameters (`issue#23200 <http://tracker.ceph.com/issues/23200>`_, `pr#20745 <https://github.com/ceph/ceph/pull/20745>`_, Chang Liu) -* mon/LogMonitor: call no_reply() on ignored log message (`pr#22104 <https://github.com/ceph/ceph/pull/22104>`_, Sage Weil) -* mon: mark mgr reports as no_reply (`issue#22114 <http://tracker.ceph.com/issues/22114>`_, `pr#21057 <https://github.com/ceph/ceph/pull/21057>`_, Kefu Chai) -* mon: mark mon_allow_pool_delete as observed (`pr#18125 <https://github.com/ceph/ceph/pull/18125>`_, Dan van der Ster) -* mon: mark OSD beacons and pg_create messages as no_reply (`issue#22114 <http://tracker.ceph.com/issues/22114>`_, `pr#20517 <https://github.com/ceph/ceph/pull/20517>`_, Greg Farnum) -* mon: mon/AuthMonitor: don't validate `fs authorize` caps with `valid_caps()` (`pr#21418 <https://github.com/ceph/ceph/pull/21418>`_, Joao Eduardo Luis) -* mon: mon/ConfigMonitor: clean up prepare_command() (`pr#20911 <https://github.com/ceph/ceph/pull/20911>`_, Gu Zhongyan) -* mon: mon/Elector: force election epoch bump on start (`issue#20949 <http://tracker.ceph.com/issues/20949>`_, `pr#16944 <https://github.com/ceph/ceph/pull/16944>`_, Sage Weil) -* mon: mon/Elector: remove unused member fields start_stamp and ack_stamp (`pr#21091 <https://github.com/ceph/ceph/pull/21091>`_, runsisi) -* mon: mon/LogMonitor: "log last" should return up to n entries (`pr#18759 <https://github.com/ceph/ceph/pull/18759>`_, Kefu Chai) -* mon: mon/MDSMonitor: fix clang build failure (`pr#20637 <https://github.com/ceph/ceph/pull/20637>`_, Willem Jan Withagen) -* mon: mon,mgr: make osd_metric more popular and report slow ops to mgr (`issue#23045 <http://tracker.ceph.com/issues/23045>`_, `pr#20660 <https://github.com/ceph/ceph/pull/20660>`_, lvshanchun) -* mon: mon/MgrMonitor: limit mgrmap history (`issue#22257 <http://tracker.ceph.com/issues/22257>`_, `pr#19185 <https://github.com/ceph/ceph/pull/19185>`_, Sage Weil) -* mon: mon/MonCommands: fix copy-and-paste error (`pr#17271 <https://github.com/ceph/ceph/pull/17271>`_, xie xingguo) -* mon: mon,option: set default value for mon_dns_srv_name (`issue#21204 <http://tracker.ceph.com/issues/21204>`_, `pr#17539 <https://github.com/ceph/ceph/pull/17539>`_, Kefu Chai) -* mon: mon/OSDMonitor: add location option for "crush add-bucket" command (`pr#17125 <https://github.com/ceph/ceph/pull/17125>`_, xie xingguo) -* mon: mon/OSDMonitor: add 'osd crush set-all-straw-buckets-to-straw2' (`pr#18460 <https://github.com/ceph/ceph/pull/18460>`_, Sage Weil) -* mon: mon/OSDMonitor: add plain output for "crush class ls-osd" command (`pr#17034 <https://github.com/ceph/ceph/pull/17034>`_, xie xingguo) -* mon: mon/OSDMonitor: add space after __func__ in log msg (`pr#19127 <https://github.com/ceph/ceph/pull/19127>`_, Kefu Chai) -* mon: mon/OSDMonitor: Better prepare_command_pool_set E2BIG error message (`pr#19944 <https://github.com/ceph/ceph/pull/19944>`_, Brad Hubbard) -* mon: mon/OSDMonitor.cc: fix expected_num_objects interpret error (`issue#22530 <http://tracker.ceph.com/issues/22530>`_, `pr#19651 <https://github.com/ceph/ceph/pull/19651>`_, Yang Honggang) -* mon: mon/OSDMonitor.cc : set erasure-code-profile to "" when create replicated pools (`pr#19673 <https://github.com/ceph/ceph/pull/19673>`_, zouaiguo) -* mon: mon/OSDMonitor: check last_scan_epoch instead when sending creates (`issue#20785 <http://tracker.ceph.com/issues/20785>`_, `pr#17248 <https://github.com/ceph/ceph/pull/17248>`_, Kefu Chai) -* mon: mon/OSDMonitor: clean up cmd 'osd tree-from' (`pr#20839 <https://github.com/ceph/ceph/pull/20839>`_, Gu Zhongyan) -* mon: mon/OSDMonitor: do not send_pg_creates with stale info (`issue#20785 <http://tracker.ceph.com/issues/20785>`_, `pr#17065 <https://github.com/ceph/ceph/pull/17065>`_, Kefu Chai) -* mon: mon/OSDMonitor: error out if setting ruleset-\* ec profile property (`pr#17848 <https://github.com/ceph/ceph/pull/17848>`_, Sage Weil) -* mon: mon/OSDMonitor: fix improper input/testing range of crush somke testing (`pr#17179 <https://github.com/ceph/ceph/pull/17179>`_, xie xingguo) -* mon: mon/OSDMonitor: fix 'osd pg temp' unable to cleanup pg-temp (`pr#16892 <https://github.com/ceph/ceph/pull/16892>`_, xie xingguo) -* mon: mon/OSDMonitor: implement 'osd crush ls <node>' (`pr#16920 <https://github.com/ceph/ceph/pull/16920>`_, Sage Weil) -* mon: mon/OSDMonitor: kill pending upmap changes too if pool is gone (`pr#20704 <https://github.com/ceph/ceph/pull/20704>`_, xie xingguo) -* mon: mon/OSDMonitor: logging non-active osd id when handling osd beacon (`pr#21092 <https://github.com/ceph/ceph/pull/21092>`_, runsisi) -* mon: mon/OSDMonitor: make 'osd crush rule rename' idempotent (`issue#21162 <http://tracker.ceph.com/issues/21162>`_, `pr#17329 <https://github.com/ceph/ceph/pull/17329>`_, xie xingguo) -* mon: mon/OSDMonitor: "osd pool application get" support (`issue#20976 <http://tracker.ceph.com/issues/20976>`_, `pr#16955 <https://github.com/ceph/ceph/pull/16955>`_, xie xingguo) -* mon: mon/OSDMonitor: txsize should be greater or eq to prune_interval - 1 (`pr#21430 <https://github.com/ceph/ceph/pull/21430>`_, Kefu Chai) -* mon: mon/PGMap: drop DISK LOG column (`pr#17617 <https://github.com/ceph/ceph/pull/17617>`_, Sage Weil) -* mon: mon/PGMap: fix "0 stuck requests are blocked > 4096 sec" warn (`pr#17099 <https://github.com/ceph/ceph/pull/17099>`_, xie xingguo) -* mon: mon/PGMap: nice numbers for 'data' section of 'ceph df' command (`pr#17368 <https://github.com/ceph/ceph/pull/17368>`_, xie xingguo) -* mon: mon/PGMap: Remove unnecessary header (`pr#18343 <https://github.com/ceph/ceph/pull/18343>`_, Shinobu Kinjo) -* mon: mon/PGMap: reweight::by_utilization - skip DNE osds (`issue#20970 <http://tracker.ceph.com/issues/20970>`_, `pr#17064 <https://github.com/ceph/ceph/pull/17064>`_, xie xingguo) -* mon: mon/pgmap: update pool nearfull display (`pr#17043 <https://github.com/ceph/ceph/pull/17043>`_, huanwen ren) -* mon: more aggressively convert crush rulesets -> distinct rules (`pr#17508 <https://github.com/ceph/ceph/pull/17508>`_, John Spray, Sage Weil) -* mon: more constness (`pr#17748 <https://github.com/ceph/ceph/pull/17748>`_, Kefu Chai) -* mon: node ls improvement (`pr#20820 <https://github.com/ceph/ceph/pull/20820>`_, Gu Zhongyan) -* mon: 'node ls' mgr support (`pr#20711 <https://github.com/ceph/ceph/pull/20711>`_, Gu Zhongyan) -* mon: NULL check of logger before use (`pr#18788 <https://github.com/ceph/ceph/pull/18788>`_, Amit Kumar) -* mon,osd: dump "compression_algorithms" in "mon metadata" (`issue#24135 <http://tracker.ceph.com/issues/24135>`_, `issue#22420 <http://tracker.ceph.com/issues/22420>`_, `pr#22004 <https://github.com/ceph/ceph/pull/22004>`_, Kefu Chai, Casey Bodley) -* mon: osd feature checks with 0 up osds (`issue#21471 <http://tracker.ceph.com/issues/21471>`_, `issue#20751 <http://tracker.ceph.com/issues/20751>`_, `pr#17831 <https://github.com/ceph/ceph/pull/17831>`_, Brad Hubbard, Sage Weil) -* mon: osdmap prune (`pr#19331 <https://github.com/ceph/ceph/pull/19331>`_, Joao Eduardo Luis) -* mon/OSDMonitor: cleanup: move bufferlist before use (`pr#18258 <https://github.com/ceph/ceph/pull/18258>`_, Shinobu Kinjo) -* mon/OSDMonitor: use new style options (`pr#18209 <https://github.com/ceph/ceph/pull/18209>`_, Kefu Chai) -* mon: osd/OSDMap.h: toss osd out if it has no more pending states (`pr#19642 <https://github.com/ceph/ceph/pull/19642>`_, xie xingguo) -* mon: paxos cleanup (`pr#20078 <https://github.com/ceph/ceph/pull/20078>`_, huanwen ren) -* mon/PGMap: let pg_string_state() return boost::optional<> (`issue#21609 <http://tracker.ceph.com/issues/21609>`_, `pr#18218 <https://github.com/ceph/ceph/pull/18218>`_, Kefu Chai) -* mon/PGMap: use new-style options and cleanup (`pr#18647 <https://github.com/ceph/ceph/pull/18647>`_, Kefu Chai) -* mon: post-luminous cleanup (part 3 of ?) (`pr#17607 <https://github.com/ceph/ceph/pull/17607>`_, Sage Weil) -* mon: rate limit on health check update logging (`issue#20888 <http://tracker.ceph.com/issues/20888>`_, `pr#16942 <https://github.com/ceph/ceph/pull/16942>`_, John Spray) -* mon: reenable timer to send digest when paxos is temporarily inactive (`issue#22142 <http://tracker.ceph.com/issues/22142>`_, `pr#19404 <https://github.com/ceph/ceph/pull/19404>`_, Jan Fajerski) -* mon: remove health service (`pr#20119 <https://github.com/ceph/ceph/pull/20119>`_, Chang Liu) -* mon: remove_is_write_ready() (`pr#19191 <https://github.com/ceph/ceph/pull/19191>`_, Kefu Chai) -* mon: remove pre-luminous compat cruft (2 of many) (`pr#17322 <https://github.com/ceph/ceph/pull/17322>`_, Sage Weil) -* mon: remove unused waiting_for_commit (`pr#18617 <https://github.com/ceph/ceph/pull/18617>`_, Kefu Chai) -* mon: return directly after health_events_cleanup (`pr#16964 <https://github.com/ceph/ceph/pull/16964>`_, wang yang) -* mon: revert mds metadata argument name change (`issue#22527 <http://tracker.ceph.com/issues/22527>`_, `pr#19926 <https://github.com/ceph/ceph/pull/19926>`_, Patrick Donnelly) -* mon: show feature flags when printing MonSession (`pr#17535 <https://github.com/ceph/ceph/pull/17535>`_, Paul Emmerich) -* mon: some cleanup (`pr#17067 <https://github.com/ceph/ceph/pull/17067>`_, huanwen ren) -* mon,tests: vstart: set osd_pool_default_erasure_code_profile in initial ceph.conf (`pr#21008 <https://github.com/ceph/ceph/pull/21008>`_, Mykola Golub) -* mon: update get_store_prefixes implementations (`issue#21534 <http://tracker.ceph.com/issues/21534>`_, `pr#17940 <https://github.com/ceph/ceph/pull/17940>`_, John Spray, huanwen ren) -* mon: update PaxosService::cached_first_committed in PaxosService::maybe_trim() (`issue#11332 <http://tracker.ceph.com/issues/11332>`_, `pr#19397 <https://github.com/ceph/ceph/pull/19397>`_, Xuehan Xu, yupeng chen) -* mon: use ceph_clock_now if message is self-generated (`pr#17311 <https://github.com/ceph/ceph/pull/17311>`_, huangjun) -* mon: warn about using osd new instead of osd create (`issue#21023 <http://tracker.ceph.com/issues/21023>`_, `pr#17242 <https://github.com/ceph/ceph/pull/17242>`_, Neha Ojha) -* msg/async/AsyncConnection: remove legacy feature case handle (`pr#18469 <https://github.com/ceph/ceph/pull/18469>`_, Haomai Wang) -* msg/async: avoid referencing the temporary string (`pr#20640 <https://github.com/ceph/ceph/pull/20640>`_, Kefu Chai) -* msg/async: batch handle msg_iovlen (`pr#18415 <https://github.com/ceph/ceph/pull/18415>`_, Jianpeng Ma) -* msg/async/dpdk: remove xsky copyright and LGPL copying (`pr#21121 <https://github.com/ceph/ceph/pull/21121>`_, Kefu Chai) -* msg/async/EventKqueue: assert on OOM (`pr#21488 <https://github.com/ceph/ceph/pull/21488>`_, Kefu Chai) -* msg/async: fix ms_dpdk_coremask and ms_dpdk_coremask conflict (`pr#18678 <https://github.com/ceph/ceph/pull/18678>`_, chunmei) -* msg/async:fix the incoming parameter type of EventCenter::process_events() (`pr#20607 <https://github.com/ceph/ceph/pull/20607>`_, shangfufei) -* msg/async misc cleanup (`pr#18531 <https://github.com/ceph/ceph/pull/18531>`_, Jianpeng Ma) -* msg/async: misc cleanup (`pr#18575 <https://github.com/ceph/ceph/pull/18575>`_, Jianpeng Ma) -* msg/async/rdma: a tiny typo fix (`pr#18660 <https://github.com/ceph/ceph/pull/18660>`_, Yan Lei) -* msg/async/rdma: fix a coredump introduced by PR #18053 (`pr#18204 <https://github.com/ceph/ceph/pull/18204>`_, Yan Lei) -* msg/async/rdma: fix a potential coredump when handling tx_buffers under heavy RDMA (`pr#18036 <https://github.com/ceph/ceph/pull/18036>`_, Yan Lei) -* msg/async/rdma: fixes crash for multi rados client within one process (`pr#16981 <https://github.com/ceph/ceph/pull/16981>`_, Alex Mikheev, Haomai Wang, Adir Lev) -* msg/async/rdma: fix Tx buffer leakage that can introduce "heartbeat no reply" (`pr#18053 <https://github.com/ceph/ceph/pull/18053>`_, Yan Lei) -* msg/async/rdma: refactor rx buffer pool allocator (`pr#17018 <https://github.com/ceph/ceph/pull/17018>`_, Alex Mikheev) -* msg/async/rdma: unnecessary reinitiliazation of an iterator (`pr#18190 <https://github.com/ceph/ceph/pull/18190>`_, JustL) -* msg/async: size of EventCenter::file_events should be greater than fd (`issue#23253 <http://tracker.ceph.com/issues/23253>`_, `pr#20764 <https://github.com/ceph/ceph/pull/20764>`_, Yupeng Chen) -* msg/async: use bitset<> to do the popcnt (`pr#18681 <https://github.com/ceph/ceph/pull/18681>`_, Kefu Chai) -* msg/async: use device before checking (`pr#19738 <https://github.com/ceph/ceph/pull/19738>`_, Xiaoyan Li) -* msg: drop duplicate include (`pr#19623 <https://github.com/ceph/ceph/pull/19623>`_, /bin/bash) -* msg: drop the unnecessary polling_stop() (`pr#17079 <https://github.com/ceph/ceph/pull/17079>`_, Jos Collin) -* msg: Initialize lkey,bound,port_cnt,num_chunk,gid_idx (`pr#17797 <https://github.com/ceph/ceph/pull/17797>`_, Amit Kumar) -* msg: Initializing class members in module msg (`pr#17568 <https://github.com/ceph/ceph/pull/17568>`_, Amit Kumar) -* msg: reimplement sigpipe blocking (`pr#18105 <https://github.com/ceph/ceph/pull/18105>`_, Greg Farnum) -* msg: remove the ),it's redundant (`pr#17544 <https://github.com/ceph/ceph/pull/17544>`_, linxuhua) -* msg: resurrect support for !CEPH_FEATURE_MSG_AUTH (`pr#19044 <https://github.com/ceph/ceph/pull/19044>`_, Ilya Dryomov) -* msgr: Optimization for connection establishment (`pr#16006 <https://github.com/ceph/ceph/pull/16006>`_, shangfufei) -* msg/simple: pass a char for reading from shutdown_rd_fd (`pr#19094 <https://github.com/ceph/ceph/pull/19094>`_, Kefu Chai) -* NVMDevice: fix issued caused by #17002 (`pr#17112 <https://github.com/ceph/ceph/pull/17112>`_, Ziye Yang) -* objclass-sdk: expose __cls_init() to the world (`pr#21581 <https://github.com/ceph/ceph/pull/21581>`_, Kefu Chai) -* objecter: minor cleanups (`pr#19994 <https://github.com/ceph/ceph/pull/19994>`_, runsisi) -* os/bluestore/bluestore_tool: Move redundant code into one method (`pr#19160 <https://github.com/ceph/ceph/pull/19160>`_, Shinobu Kinjo) -* os/bluestore: implement BlueRocksEnv::AreFilesSame() (`issue#21842 <http://tracker.ceph.com/issues/21842>`_, `pr#18392 <https://github.com/ceph/ceph/pull/18392>`_, Kefu Chai) -* os/bluestore: simplify and fix SharedBlob::put() (`issue#24211 <http://tracker.ceph.com/issues/24211>`_, `pr#22170 <https://github.com/ceph/ceph/pull/22170>`_, Sage Weil) -* osd: additional protection for out-of-bounds EC reads (`issue#21629 <http://tracker.ceph.com/issues/21629>`_, `pr#18088 <https://github.com/ceph/ceph/pull/18088>`_, Jason Dillaman) -* osd: add multiple objecter finishers (`pr#16521 <https://github.com/ceph/ceph/pull/16521>`_, Myoungwon Oh) -* osd: add num_object_manifest (`pr#20690 <https://github.com/ceph/ceph/pull/20690>`_, Myoungwon Oh) -* osd: add numpg_removing metric (`pr#18450 <https://github.com/ceph/ceph/pull/18450>`_, Sage Weil) -* osd: add processed_subop_count for cls_cxx_subop_version() (`issue#21964 <http://tracker.ceph.com/issues/21964>`_, `pr#18610 <https://github.com/ceph/ceph/pull/18610>`_, Casey Bodley) -* osd: add scrub week day constraint (`pr#18368 <https://github.com/ceph/ceph/pull/18368>`_, kungf) -* osd: adjust osd_min_pg_log_entries (`issue#21026 <http://tracker.ceph.com/issues/21026>`_, `pr#17075 <https://github.com/ceph/ceph/pull/17075>`_, J. Eric Ivancich) -* osd: allow FULL_TRY after failsafe (`pr#17177 <https://github.com/ceph/ceph/pull/17177>`_, Pan Liu) -* osd: allow PG recovery scheduling preemption (`pr#17839 <https://github.com/ceph/ceph/pull/17839>`_, Sage Weil) -* osd: async recovery (`pr#19811 <https://github.com/ceph/ceph/pull/19811>`_, Neha Ojha) -* osd: avoid encoding the same log entries repeatedly for different peers (`pr#20201 <https://github.com/ceph/ceph/pull/20201>`_, Jianpeng Ma) -* osd: avoid the config's get_val() overhead on the read path (`pr#20217 <https://github.com/ceph/ceph/pull/20217>`_, Radoslaw Zarzynski) -* osd: avoid unnecessary ref-counting across PrimaryLogPG::get_rw_locks (`pr#21028 <https://github.com/ceph/ceph/pull/21028>`_, Radoslaw Zarzynski) -* osd: be more precise about our asserts and cases when rebuilding missing sets (`issue#20985 <http://tracker.ceph.com/issues/20985>`_, `pr#17000 <https://github.com/ceph/ceph/pull/17000>`_, Greg Farnum) -* osd: bring in dmclock library changes (`pr#16755 <https://github.com/ceph/ceph/pull/16755>`_, J. Eric Ivancich) -* osd: bring in latest dmclock library updates (`pr#17997 <https://github.com/ceph/ceph/pull/17997>`_, J. Eric Ivancich) -* osd: cap snaptrimq_len at 2^32 (`pr#21107 <https://github.com/ceph/ceph/pull/21107>`_, Kefu Chai) -* osd: change log level when withholding pg creation (`issue#22440 <http://tracker.ceph.com/issues/22440>`_, `pr#20167 <https://github.com/ceph/ceph/pull/20167>`_, Dan van der Ster) -* osd: change op delayed state to 'waiting for scrub' (`pr#19295 <https://github.com/ceph/ceph/pull/19295>`_, kungf) -* osd: Change shard digests to hex like object info digests (`pr#21362 <https://github.com/ceph/ceph/pull/21362>`_, David Zafman) -* osd: change the conditional in _update_calc_stats (`pr#13383 <https://github.com/ceph/ceph/pull/13383>`_, Zhiqiang Wang) -* osd: check feature bits when encoding objectstore_perf_stat_t (`pr#20378 <https://github.com/ceph/ceph/pull/20378>`_, Kefu Chai) -* osd: clean up dup index logic; maintain index flag logic in fewer places (`pr#16829 <https://github.com/ceph/ceph/pull/16829>`_, J. Eric Ivancich) -* osd: clean up pre-luminous compat cruft (part 1 of many) (`pr#17247 <https://github.com/ceph/ceph/pull/17247>`_, Sage Weil) -* osd: cleanups (`pr#17753 <https://github.com/ceph/ceph/pull/17753>`_, Kefu Chai) -* osdc/Objecter: using coarse_mono instead (`pr#18473 <https://github.com/ceph/ceph/pull/18473>`_, Haomai Wang) -* osdc/Objector: use std::shared_mutex instead of boost::shared_mutex (`issue#23910 <http://tracker.ceph.com/issues/23910>`_, `pr#21702 <https://github.com/ceph/ceph/pull/21702>`_, Abhishek Lekshmanan) -* osd: correct several spell errors in comments (`pr#21064 <https://github.com/ceph/ceph/pull/21064>`_, songweibin) -* osdc: Remove a bit too redundant public label (`pr#19466 <https://github.com/ceph/ceph/pull/19466>`_, Shinobu Kinjo) -* osdc: self-managed snapshot helper should catch decode exception (`issue#24103 <http://tracker.ceph.com/issues/24103>`_, `issue#24000 <http://tracker.ceph.com/issues/24000>`_, `pr#21958 <https://github.com/ceph/ceph/pull/21958>`_, Jason Dillaman) -* osd: debug dispatch_context cases where queries not sent (`pr#20917 <https://github.com/ceph/ceph/pull/20917>`_, Sage Weil) -* osd: Deleting dead code PrimaryLogPG.cc (`pr#17339 <https://github.com/ceph/ceph/pull/17339>`_, Amit Kumar) -* osd: don't crash on empty snapset (`issue#23851 <http://tracker.ceph.com/issues/23851>`_, `pr#21058 <https://github.com/ceph/ceph/pull/21058>`_, Mykola Golub, Igor Fedotov) -* osd: Don't include same header twice (`pr#18319 <https://github.com/ceph/ceph/pull/18319>`_, Shinobu Kinjo) -* osd: Don't initialze pointers by NULL or 0 (`pr#18311 <https://github.com/ceph/ceph/pull/18311>`_, Shinobu Kinjo) -* osd: don't memcpy hobject_t in PrimaryLogPG::close_op_ctx() (`pr#21029 <https://github.com/ceph/ceph/pull/21029>`_, Radoslaw Zarzynski) -* osd: don't process ostream strings when not debugging (`pr#20298 <https://github.com/ceph/ceph/pull/20298>`_, Mark Nelson) -* osd: drop redundant comment (`pr#20347 <https://github.com/ceph/ceph/pull/20347>`_, songweibin) -* osd: Drop the unused code in OSD::_collect_metadata (`pr#17131 <https://github.com/ceph/ceph/pull/17131>`_, Luo Kexue) -* osd: drop unused osd_disk_tp related options (`pr#21339 <https://github.com/ceph/ceph/pull/21339>`_, Gu Zhongyan) -* osd: eliminate ineffective container operations (`pr#19099 <https://github.com/ceph/ceph/pull/19099>`_, Igor Fedotov) -* osd: enumerate device names in a simple way (`pr#18453 <https://github.com/ceph/ceph/pull/18453>`_, Sage Weil) -* osd: exit(1) directly without lock if init fails (`pr#16647 <https://github.com/ceph/ceph/pull/16647>`_, Kefu Chai) -* osd: fast dispatch of peering events and pg_map + osd sharded wq refactor (`pr#19973 <https://github.com/ceph/ceph/pull/19973>`_, Sage Weil) -* osd: fine-grained statistics of logical object space usage (`pr#15199 <https://github.com/ceph/ceph/pull/15199>`_, xie xingguo) -* osd: Fix assert when checking missing version (`issue#21218 <http://tracker.ceph.com/issues/21218>`_, `pr#20410 <https://github.com/ceph/ceph/pull/20410>`_, David Zafman) -* osd: fix a valgrind issue (conditional jump depends on uninitialized value) (`issue#22641 <http://tracker.ceph.com/issues/22641>`_, `pr#19874 <https://github.com/ceph/ceph/pull/19874>`_, Myoungwon Oh) -* osd: fix bug which cause can't erase OSDShardPGSlot (`pr#21771 <https://github.com/ceph/ceph/pull/21771>`_, Jianpeng Ma) -* osd: fix build_initial_pg_history (`issue#21203 <http://tracker.ceph.com/issues/21203>`_, `pr#17423 <https://github.com/ceph/ceph/pull/17423>`_, w11979, Sage Weil) -* osd: fix crash caused by divide by zero in heartbeat code (`pr#21373 <https://github.com/ceph/ceph/pull/21373>`_, Piotr Dałek) -* osd: fix dpdk memzon mz_name setting issue (`pr#19809 <https://github.com/ceph/ceph/pull/19809>`_, chunmei Liu) -* osd: fix dpdk runtime issue based on spdk/dpdk libarary (`pr#19559 <https://github.com/ceph/ceph/pull/19559>`_, chunmei Liu) -* osd: fix dpdk worker references issue (`pr#19886 <https://github.com/ceph/ceph/pull/19886>`_, chunmei Liu) -* osd: Fixes for osd_scrub_during_recovery handling (`issue#18206 <http://tracker.ceph.com/issues/18206>`_, `pr#17039 <https://github.com/ceph/ceph/pull/17039>`_, David Zafman) -* osd: fix out of order caused by letting old msg from down osd be processed (`issue#22570 <http://tracker.ceph.com/issues/22570>`_, `pr#19796 <https://github.com/ceph/ceph/pull/19796>`_, Mingxin Liu) -* osd: fix _process handling for pg vs slot race (`pr#21745 <https://github.com/ceph/ceph/pull/21745>`_, Sage Weil) -* osd: fix recovery reservation bugs, and implement remote reservation preemption (`pr#18485 <https://github.com/ceph/ceph/pull/18485>`_, Sage Weil) -* osd: fix replica/backfill target handling of REJECT (`issue#21613 <http://tracker.ceph.com/issues/21613>`_, `pr#18070 <https://github.com/ceph/ceph/pull/18070>`_, Sage Weil) -* osd: fix reqid assignment for reply messages in OpRequest (`pr#17060 <https://github.com/ceph/ceph/pull/17060>`_, Yingxin Cheng) -* osd: fix s390x build failure (`issue#23238 <http://tracker.ceph.com/issues/23238>`_, `pr#20969 <https://github.com/ceph/ceph/pull/20969>`_, Nathan Cutler) -* osd: fix typos and some cleanups (`pr#19211 <https://github.com/ceph/ceph/pull/19211>`_, Enming Zhang) -* osd: fix unordered read bug (for chunked object) (`issue#22369 <http://tracker.ceph.com/issues/22369>`_, `pr#19464 <https://github.com/ceph/ceph/pull/19464>`_, Myoungwon Oh) -* osd: fix waiting_for_peered vs flushing (`issue#21407 <http://tracker.ceph.com/issues/21407>`_, `pr#17759 <https://github.com/ceph/ceph/pull/17759>`_, Sage Weil) -* osd: flush operations for chunked objects (`pr#19294 <https://github.com/ceph/ceph/pull/19294>`_, Myoungwon Oh) -* osd: generalize queueing and lock interface for OpWq (`pr#16030 <https://github.com/ceph/ceph/pull/16030>`_, Myoungwon Oh, Kefu Chai, Samuel Just) -* osd: get loadavg per cpu for scrub load threshold check (`pr#17718 <https://github.com/ceph/ceph/pull/17718>`_, kungf) -* osd: get rid off extent map in object_info (`pr#19616 <https://github.com/ceph/ceph/pull/19616>`_, Igor Fedotov) -* osd: hold lock while accessing recovery_needs_sleep (`issue#21566 <http://tracker.ceph.com/issues/21566>`_, `pr#18022 <https://github.com/ceph/ceph/pull/18022>`_, Neha Ojha) -* osd: Improve recovery stat handling by using peer_missing and missing_loc info (`issue#22837 <http://tracker.ceph.com/issues/22837>`_, `pr#20220 <https://github.com/ceph/ceph/pull/20220>`_, Sage Weil, David Zafman) -* osd: Improve size scrub error handling and ignore system attrs in xattr checking (`issue#20243 <http://tracker.ceph.com/issues/20243>`_, `issue#18836 <http://tracker.ceph.com/issues/18836>`_, `pr#16407 <https://github.com/ceph/ceph/pull/16407>`_, David Zafman) -* osd: include front_iface+back_iface in metadata (`issue#20956 <http://tracker.ceph.com/issues/20956>`_, `pr#16941 <https://github.com/ceph/ceph/pull/16941>`_, John Spray) -* osd: Initialization of data members (`pr#17691 <https://github.com/ceph/ceph/pull/17691>`_, Amit Kumar) -* osd: Initialization of pointer cls (`pr#17115 <https://github.com/ceph/ceph/pull/17115>`_, amitkuma) -* osd: Initializing start_offset,last_offset,offset (`pr#19333 <https://github.com/ceph/ceph/pull/19333>`_, Amit Kumar) -* osd: initial minimal efforts to clean up PG interface (`pr#17708 <https://github.com/ceph/ceph/pull/17708>`_, Sage Weil) -* osd: introduce sub-chunks to erasure code plugin interface (`issue#19278 <http://tracker.ceph.com/issues/19278>`_, `pr#15193 <https://github.com/ceph/ceph/pull/15193>`_, Myna Vajha) -* osd: kill snapdirs (`pr#17579 <https://github.com/ceph/ceph/pull/17579>`_, Sage Weil) -* osd: Make dmclock's anticipation timeout be configurable (`pr#18827 <https://github.com/ceph/ceph/pull/18827>`_, Taewoong Kim) -* osd: make operations on ReplicatedBackend::in_progress_ops more effective (`pr#19035 <https://github.com/ceph/ceph/pull/19035>`_, Igor Fedotov) -* osd: make PG::\*Force\* event structs public (`pr#21312 <https://github.com/ceph/ceph/pull/21312>`_, Willem Jan Withagen) -* osd: make scrub no deadline when max interval is zero (`pr#18354 <https://github.com/ceph/ceph/pull/18354>`_, kungf) -* osd: make scrub right now when pg stats_invalid is true (`pr#17884 <https://github.com/ceph/ceph/pull/17884>`_, kungf) -* osd: make scrub wait for ec read/modify/writes to apply (`issue#23339 <http://tracker.ceph.com/issues/23339>`_, `pr#20944 <https://github.com/ceph/ceph/pull/20944>`_, Sage Weil) -* osd: make snapmapper warn+clean up instead of assert (`issue#22752 <http://tracker.ceph.com/issues/22752>`_, `pr#20040 <https://github.com/ceph/ceph/pull/20040>`_, Sage Weil) -* osd: make stat_bytes and stat_bytes_used counters PRIO_USEFUL (`issue#21981 <http://tracker.ceph.com/issues/21981>`_, `pr#18637 <https://github.com/ceph/ceph/pull/18637>`_, Yao Zongyou) -* osd: make the PG's SORTBITWISE assert a more generous shutdown (`issue#20416 <http://tracker.ceph.com/issues/20416>`_, `pr#18047 <https://github.com/ceph/ceph/pull/18047>`_, Greg Farnum) -* osd: Making use of find to reduce computational complexity (`pr#19732 <https://github.com/ceph/ceph/pull/19732>`_, Shinobu Kinjo) -* osd: migrate PGLOG\_\* macros to constexpr (`issue#20811 <http://tracker.ceph.com/issues/20811>`_, `pr#19352 <https://github.com/ceph/ceph/pull/19352>`_, Jesse Williamson) -* osd: minor optimizations for op wq (`pr#17704 <https://github.com/ceph/ceph/pull/17704>`_, Sage Weil, J. Eric Ivancich) -* osd: min_pg_log_entries == max == pg_log_dups_tracked (`pr#20394 <https://github.com/ceph/ceph/pull/20394>`_, Sage Weil) -* osd: misc cleanups (`pr#17430 <https://github.com/ceph/ceph/pull/17430>`_, songweibin) -* osd: miscellaneous cleanups (`pr#21431 <https://github.com/ceph/ceph/pull/21431>`_, songweibin) -* osd: more debugging for snapmapper bug (`issue#21557 <http://tracker.ceph.com/issues/21557>`_, `pr#19366 <https://github.com/ceph/ceph/pull/19366>`_, Sage Weil) -* osd: object added to missing set for backfill, but is not in recovering, error! (`issue#18162 <http://tracker.ceph.com/issues/18162>`_, `pr#18145 <https://github.com/ceph/ceph/pull/18145>`_, David Zafman) -* osd: only exit if \*latest\* map(s) say we are destroyed (`issue#22673 <http://tracker.ceph.com/issues/22673>`_, `pr#19988 <https://github.com/ceph/ceph/pull/19988>`_, Sage Weil) -* osd: Only scan for omap corruption once (`issue#21328 <http://tracker.ceph.com/issues/21328>`_, `pr#17705 <https://github.com/ceph/ceph/pull/17705>`_, David Zafman) -* osd,os,io: Initializing C_ProxyChunkRead members,queue,request (`pr#19336 <https://github.com/ceph/ceph/pull/19336>`_, amitkuma) -* osd: pass ops_blocked_by_scrub() to requeue_scrub() (`pr#20319 <https://github.com/ceph/ceph/pull/20319>`_, Kefu Chai) -* osd: pass pool options to ObjectStore on pg create (`issue#22419 <http://tracker.ceph.com/issues/22419>`_, `pr#19486 <https://github.com/ceph/ceph/pull/19486>`_, Sage Weil) -* osd/PG: fix clang build vs private state events (`pr#18217 <https://github.com/ceph/ceph/pull/18217>`_, Sage Weil) -* osd/PG: handle flushed event directly (`pr#19441 <https://github.com/ceph/ceph/pull/19441>`_, wumingqiao) -* osd/PrimaryLogPG: derr when object size becomes over osd_max_object_size (`pr#19049 <https://github.com/ceph/ceph/pull/19049>`_, Shinobu Kinjo) -* osd: process _scan_snaps() with all snapshots with head (`issue#22881 <http://tracker.ceph.com/issues/22881>`_, `issue#23909 <http://tracker.ceph.com/issues/23909>`_, `pr#21546 <https://github.com/ceph/ceph/pull/21546>`_, David Zafman) -* osd: publish osdmap to OSDService before starting wq threads (`issue#21977 <http://tracker.ceph.com/issues/21977>`_, `pr#21623 <https://github.com/ceph/ceph/pull/21623>`_, Sage Weil) -* osd: pull latest dmclock subtree (`pr#19345 <https://github.com/ceph/ceph/pull/19345>`_, J. Eric Ivancich) -* osd: put peering events in main sharded wq (`pr#18752 <https://github.com/ceph/ceph/pull/18752>`_, Sage Weil) -* osd: put pg removal in op_wq (`pr#19433 <https://github.com/ceph/ceph/pull/19433>`_, Sage Weil) -* osd: reduce all_info map find to get primary (`pr#19425 <https://github.com/ceph/ceph/pull/19425>`_, kungf) -* osd: refcount for manifest object (redirect, chunked) (`pr#19935 <https://github.com/ceph/ceph/pull/19935>`_, Myoungwon Oh) -* osd: remove cost from mclock op queues; cost not handled well in dmclock (`pr#21428 <https://github.com/ceph/ceph/pull/21428>`_, J. Eric Ivancich) -* osd: Remove double space (`pr#19296 <https://github.com/ceph/ceph/pull/19296>`_, Shinobu Kinjo) -* osd: remove duplicated "commit_queued_for_journal_write" in OpTracker (`issue#23440 <http://tracker.ceph.com/issues/23440>`_, `pr#21018 <https://github.com/ceph/ceph/pull/21018>`_, ashitakasam) -* osd: remove duplicated function ec_pool in pg_pool_t (`pr#18059 <https://github.com/ceph/ceph/pull/18059>`_, Chang Liu) -* osd: Remove redundant local variable declaration (`pr#19812 <https://github.com/ceph/ceph/pull/19812>`_, Shinobu Kinjo) -* osd: Remove unnecessary headers (`pr#19735 <https://github.com/ceph/ceph/pull/19735>`_, Shinobu Kinjo) -* osd: remove unused ReplicatedBackend::objects_read_async() (`pr#18779 <https://github.com/ceph/ceph/pull/18779>`_, Kefu Chai) -* osd: remove unused variable in do_proxy_write (`pr#17391 <https://github.com/ceph/ceph/pull/17391>`_, Myoungwon Oh) -* osd: replace mclock subop opclass w/ rep_op opclass; combine duplicated code (`pr#18194 <https://github.com/ceph/ceph/pull/18194>`_, J. Eric Ivancich) -* osd: replace vectors_equal() with operator==(vector<>, vector<>) (`pr#18064 <https://github.com/ceph/ceph/pull/18064>`_, Kefu Chai) -* osd: request new map from PG when needed (`issue#21428 <http://tracker.ceph.com/issues/21428>`_, `pr#17795 <https://github.com/ceph/ceph/pull/17795>`_, Josh Durgin) -* osd: resend osd_pgtemp if it's not acked (`issue#23610 <http://tracker.ceph.com/issues/23610>`_, `pr#21310 <https://github.com/ceph/ceph/pull/21310>`_, Kefu Chai) -* osd: Revert use of dmclock message feature bit since not yet finalized (`pr#21398 <https://github.com/ceph/ceph/pull/21398>`_, J. Eric Ivancich) -* osd,rgw,librbd: SCA fixes (`pr#18495 <https://github.com/ceph/ceph/pull/18495>`_, Danny Al-Gaaf) -* osd: set min_version to newest version in maybe_force_recovery (`pr#17752 <https://github.com/ceph/ceph/pull/17752>`_, Xinze Chi) -* osd: Sign in early SIGHUP signal (`issue#22746 <http://tracker.ceph.com/issues/22746>`_, `pr#19958 <https://github.com/ceph/ceph/pull/19958>`_, huanwen ren) -* osd: silence maybe-uninitialized false positives (`pr#19820 <https://github.com/ceph/ceph/pull/19820>`_, Yao Zongyou) -* osd: silence warnings from -Wsign-compare (`pr#17872 <https://github.com/ceph/ceph/pull/17872>`_, Jos Collin) -* osd: skip dumping logical devices (`pr#20740 <https://github.com/ceph/ceph/pull/20740>`_, songweibin) -* osd: speed up get_key_name (`issue#21026 <http://tracker.ceph.com/issues/21026>`_, `pr#17071 <https://github.com/ceph/ceph/pull/17071>`_, J. Eric Ivancich) -* osd: s/random_shuffle()/shuffle()/ (`pr#19872 <https://github.com/ceph/ceph/pull/19872>`_, Willem Jan Withagen, Kefu Chai, Greg Farnum) -* osd: subscribe osdmaps if any pending pgs (`issue#22113 <http://tracker.ceph.com/issues/22113>`_, `pr#18916 <https://github.com/ceph/ceph/pull/18916>`_, Kefu Chai) -* osd: subscribe to new osdmap while waiting_for_healthy (`issue#21121 <http://tracker.ceph.com/issues/21121>`_, `pr#17244 <https://github.com/ceph/ceph/pull/17244>`_, Sage Weil) -* osd: support class method whitelisting within caps (`pr#19786 <https://github.com/ceph/ceph/pull/19786>`_, Jason Dillaman) -* osd: treat successful and erroroneous writes the same for log trimming (`issue#22050 <http://tracker.ceph.com/issues/22050>`_, `pr#20827 <https://github.com/ceph/ceph/pull/20827>`_, Josh Durgin) -* osd: two cleanups (`pr#20830 <https://github.com/ceph/ceph/pull/20830>`_, songweibin) -* osd: update dmclock library w git subtree pull (`pr#17737 <https://github.com/ceph/ceph/pull/17737>`_, J. Eric Ivancich) -* osd: update info only if new_interval (`pr#17437 <https://github.com/ceph/ceph/pull/17437>`_, Kefu Chai) -* osd: update store with options after pg is created (`issue#22419 <http://tracker.ceph.com/issues/22419>`_, `pr#20044 <https://github.com/ceph/ceph/pull/20044>`_, Kefu Chai) -* osd: use dmclock library client_info_f function dynamically (`pr#17063 <https://github.com/ceph/ceph/pull/17063>`_, bspark) -* osd: use existing osd_required variable for messenger policy (`pr#20223 <https://github.com/ceph/ceph/pull/20223>`_, Yan Jun) -* osd: use prefix increment for non trivial iterator (`pr#19097 <https://github.com/ceph/ceph/pull/19097>`_, Kefu Chai) -* osd: Use specializations, typedefs instead (`pr#19354 <https://github.com/ceph/ceph/pull/19354>`_, Shinobu Kinjo) -* osd: Warn about objects with too many omap entries (`pr#16332 <https://github.com/ceph/ceph/pull/16332>`_, Brad Hubbard) -* os/filestore/HashIndex.h: fixed a typo in comment (`pr#17685 <https://github.com/ceph/ceph/pull/17685>`_, yaoguotao) -* os: Initializing uninitialized members aio_info (`pr#17066 <https://github.com/ceph/ceph/pull/17066>`_, amitkuma) -* os: Removing dead code from LFNIndex.cc (`pr#17297 <https://github.com/ceph/ceph/pull/17297>`_, Amit Kumar) -* prometheus: Handle the TIME perf counter type metrics (`pr#21749 <https://github.com/ceph/ceph/pull/21749>`_, Boris Ranto) -* pybind: add return note in rbd.pyx (`pr#21768 <https://github.com/ceph/ceph/pull/21768>`_, Zheng Yin) -* pybind/ceph_daemon: expand the order of magnitude of (`issue#23962 <http://tracker.ceph.com/issues/23962>`_, `pr#21836 <https://github.com/ceph/ceph/pull/21836>`_, Guan yunfei) -* pybind: fix chart size become bigger when refresh (`issue#20746 <http://tracker.ceph.com/issues/20746>`_, `pr#16857 <https://github.com/ceph/ceph/pull/16857>`_, Yixing Yan) -* pybind: mgr/dashboard: fix rbd's pool sub menu (`pr#16774 <https://github.com/ceph/ceph/pull/16774>`_, yanyx) -* pybind,rbd: pybind/rbd: support open the image by image_id (`pr#19361 <https://github.com/ceph/ceph/pull/19361>`_, songweibin) -* pybind: remove unused get_ceph_version() (`pr#17727 <https://github.com/ceph/ceph/pull/17727>`_, Kefu Chai) -* qa: add cbt repo parameter (`pr#18543 <https://github.com/ceph/ceph/pull/18543>`_, Neha Ojha) -* qa: Add cephmetrics suite (`pr#18451 <https://github.com/ceph/ceph/pull/18451>`_, Zack Cerza) -* qa: add upgrade/luminous-x suite (`pr#17160 <https://github.com/ceph/ceph/pull/17160>`_, Yuri Weinstein) -* qa/crontab: run the perf-basic suite every day (`pr#21252 <https://github.com/ceph/ceph/pull/21252>`_, Neha Ojha) -* qa: Decreased amount of jobs on master, kraken, luminous runs (`pr#17069 <https://github.com/ceph/ceph/pull/17069>`_, Yuri Weinstein) -* qa: install collectl with cbt task (`pr#19324 <https://github.com/ceph/ceph/pull/19324>`_, Neha Ojha) -* qa: mimic-dev1 backports to avoid trusty nodes (`pr#19600 <https://github.com/ceph/ceph/pull/19600>`_, Kefu Chai) -* qa: preserve cbt task results (`pr#19364 <https://github.com/ceph/ceph/pull/19364>`_, Neha Ojha) -* qa: qa/ceph-disk: enlarge the simulated SCSI disk (`issue#22136 <http://tracker.ceph.com/issues/22136>`_, `pr#19199 <https://github.com/ceph/ceph/pull/19199>`_, Kefu Chai) -* qa/suites/perf-basic: add desc regarding test machines (`pr#21183 <https://github.com/ceph/ceph/pull/21183>`_, Neha Ojha) -* qa/suites/rados/multimon/tasks/mon_lock_with_skew: whitelist PG (`pr#17004 <https://github.com/ceph/ceph/pull/17004>`_, Sage Weil) -* qa/suites/rados/perf: add optimized settings (`pr#17786 <https://github.com/ceph/ceph/pull/17786>`_, Neha Ojha) -* qa/suites/rados/perf: add workloads (`pr#18573 <https://github.com/ceph/ceph/pull/18573>`_, Neha Ojha) -* qa/suites/rados/verify/validater/valgrind: whitelist PG (`pr#17005 <https://github.com/ceph/ceph/pull/17005>`_, Sage Weil) -* qa/suites/upgrade/jewel-x/parallel: tolerate laggy mgr (`pr#17227 <https://github.com/ceph/ceph/pull/17227>`_, Sage Weil) -* qa/suites/upgrade/kraken-x: fixes (`pr#16881 <https://github.com/ceph/ceph/pull/16881>`_, Sage Weil) -* qa/suites/upgrade/luminous-x fixes (`pr#22101 <https://github.com/ceph/ceph/pull/22101>`_, Sage Weil) -* qa/tests - Added options to use both cases: mon.a and installer.0 (`pr#19745 <https://github.com/ceph/ceph/pull/19745>`_, Yuri Weinstein) -* qa/tests - Fixed typo in crontab entry (`pr#21482 <https://github.com/ceph/ceph/pull/21482>`_, Yuri Weinstein) -* qa/tests: fixed typo (`pr#21728 <https://github.com/ceph/ceph/pull/21728>`_, Yuri Weinstein) -* qa/tests - minor clean ups and made perf-suite run 3 times, so we can… (`pr#21309 <https://github.com/ceph/ceph/pull/21309>`_, Yuri Weinstein) -* qa/tests - one more typo fixed :( (`pr#21483 <https://github.com/ceph/ceph/pull/21483>`_, Yuri Weinstein) -* qa/tests: removed rest suite from the mix (`pr#21743 <https://github.com/ceph/ceph/pull/21743>`_, Yuri Weinstein) -* qa: wait longer for osd to flush pg stats (`issue#24321 <http://tracker.ceph.com/issues/24321>`_, `pr#22288 <https://github.com/ceph/ceph/pull/22288>`_, Kefu Chai) -* qa/workunits/ceph-disk: --no-mon-config (`pr#21956 <https://github.com/ceph/ceph/pull/21956>`_, Kefu Chai) -* rados: make ceph_perf_msgr_client work for multiple jobs (`issue#22103 <http://tracker.ceph.com/issues/22103>`_, `pr#18877 <https://github.com/ceph/ceph/pull/18877>`_, Jeegn Chen) -* rbd: add deep cp CLI method (`pr#19996 <https://github.com/ceph/ceph/pull/19996>`_, songweibin) -* rbd: add group rename methods (`issue#22981 <http://tracker.ceph.com/issues/22981>`_, `pr#20577 <https://github.com/ceph/ceph/pull/20577>`_, songweibin) -* rbd: add notrim option to rbd map (`pr#21056 <https://github.com/ceph/ceph/pull/21056>`_, Hitoshi Kamei) -* rbd: add parent info when moving child into trash bin (`pr#19280 <https://github.com/ceph/ceph/pull/19280>`_, songweibin) -* rbd: adjusted "lock list" JSON and XML formatted output (`pr#19900 <https://github.com/ceph/ceph/pull/19900>`_, Jason Dillaman) -* rbd: adjusted "showmapped" JSON and XML formatted output (`pr#19937 <https://github.com/ceph/ceph/pull/19937>`_, Mykola Golub) -* rbd: allow remove all unprotected snapshots (`issue#23126 <http://tracker.ceph.com/issues/23126>`_, `pr#20608 <https://github.com/ceph/ceph/pull/20608>`_, songweibin) -* rbd: allow trash rm/purge when pool quota is full used (`pr#20697 <https://github.com/ceph/ceph/pull/20697>`_, songweibin) -* rbd: backport of mimic bug fixes (`issue#24009 <http://tracker.ceph.com/issues/24009>`_, `issue#24008 <http://tracker.ceph.com/issues/24008>`_, `pr#21930 <https://github.com/ceph/ceph/pull/21930>`_, Jason Dillaman) -* rbd: check if an image is already mapped before rbd map (`issue#20580 <http://tracker.ceph.com/issues/20580>`_, `pr#16517 <https://github.com/ceph/ceph/pull/16517>`_, Jing Li) -* rbd: children list should support snapshot id optional (`issue#23399 <http://tracker.ceph.com/issues/23399>`_, `pr#20966 <https://github.com/ceph/ceph/pull/20966>`_, Jason Dillaman) -* rbd: cleanup handling of IEC byte units (`pr#21564 <https://github.com/ceph/ceph/pull/21564>`_, Jason Dillaman) -* rbd: clean up warnings when mirror commands used on non-setup pool (`issue#21319 <http://tracker.ceph.com/issues/21319>`_, `pr#17636 <https://github.com/ceph/ceph/pull/17636>`_, Jason Dillaman) -* rbd: cls/journal: ensure tags are properly expired (`issue#21960 <http://tracker.ceph.com/issues/21960>`_, `pr#18604 <https://github.com/ceph/ceph/pull/18604>`_, Jason Dillaman) -* rbd: cls/journal: fixed possible infinite loop in expire_tags (`issue#21956 <http://tracker.ceph.com/issues/21956>`_, `pr#18592 <https://github.com/ceph/ceph/pull/18592>`_, Jason Dillaman) -* rbd: cls/journal: possible infinite loop within tag_list class method (`issue#21771 <http://tracker.ceph.com/issues/21771>`_, `pr#18270 <https://github.com/ceph/ceph/pull/18270>`_, Jason Dillaman) -* rbd: cls/rbd: group_image_list incorrectly flagged as RW (`issue#23388 <http://tracker.ceph.com/issues/23388>`_, `pr#20939 <https://github.com/ceph/ceph/pull/20939>`_, Jason Dillaman) -* rbd: cls/rbd: metadata_list not honoring max_return parameter (`issue#21247 <http://tracker.ceph.com/issues/21247>`_, `pr#17499 <https://github.com/ceph/ceph/pull/17499>`_, Jason Dillaman) -* rbd: cls/rbd: Silence gcc7 maybe-uninitialized warning (`pr#18504 <https://github.com/ceph/ceph/pull/18504>`_, Brad Hubbard) -* rbd: common/options,librbd/Utils: refactor RBD feature validation (`pr#20014 <https://github.com/ceph/ceph/pull/20014>`_, Sage Weil) -* rbd: disk usage on empty pool no longer returns an error message (`issue#22200 <http://tracker.ceph.com/issues/22200>`_, `pr#19045 <https://github.com/ceph/ceph/pull/19045>`_, Jason Dillaman) -* rbd: do not show title if there is no group snapshot (`pr#20311 <https://github.com/ceph/ceph/pull/20311>`_, songweibin) -* rbd: don't overwrite the error code from the remove action (`pr#20481 <https://github.com/ceph/ceph/pull/20481>`_, Jason Dillaman) -* rbd: drop unnecessary using declaration, etc (`pr#19005 <https://github.com/ceph/ceph/pull/19005>`_, Shinobu Kinjo) -* rbd: eager-thick provisioning support (`pr#18317 <https://github.com/ceph/ceph/pull/18317>`_, Hitoshi Kamei) -* rbd: export/import image-meta when we export/import an image (`pr#17134 <https://github.com/ceph/ceph/pull/17134>`_, PCzhangPC) -* rbd: filter out UserSnapshotNamespace in do_disk_usage (`pr#20532 <https://github.com/ceph/ceph/pull/20532>`_, songweibin) -* rbd: fix crash during map when "rw" option is specified (`issue#21808 <http://tracker.ceph.com/issues/21808>`_, `pr#18313 <https://github.com/ceph/ceph/pull/18313>`_, Peter Keresztes Schmidt) -* rbd: fix logically dead code in function list_process_image (`pr#16971 <https://github.com/ceph/ceph/pull/16971>`_, Luo Kexue) -* rbd: fix rbd children listing when child is in trash (`issue#21893 <http://tracker.ceph.com/issues/21893>`_, `pr#18483 <https://github.com/ceph/ceph/pull/18483>`_, songweibin) -* rbd: fix thread_offsets calculation of rbd bench (`pr#20590 <https://github.com/ceph/ceph/pull/20590>`_, Hitoshi Kamei) -* rbd: group misc cleanup and update rbd man page (`pr#20199 <https://github.com/ceph/ceph/pull/20199>`_, songweibin) -* rbd: group snapshot rename (`pr#12431 <https://github.com/ceph/ceph/pull/12431>`_, Victor Denisov) -* rbd: implement image qos in tokenbucket algorithm (`pr#17032 <https://github.com/ceph/ceph/pull/17032>`_, Dongsheng Yang) -* rbd: import with option --export-format 2 fails to protect snapshot (`issue#23038 <http://tracker.ceph.com/issues/23038>`_, `pr#20613 <https://github.com/ceph/ceph/pull/20613>`_, songweibin) -* rbd: improve 'import-diff' corrupt input error messages (`issue#18844 <http://tracker.ceph.com/issues/18844>`_, `pr#21249 <https://github.com/ceph/ceph/pull/21249>`_, Jason Dillaman) -* rbd: Initializing m_finalize_ctx (`pr#17563 <https://github.com/ceph/ceph/pull/17563>`_, Amit Kumar) -* rbd: introduce commands of "image-meta ls/rm" (`pr#16591 <https://github.com/ceph/ceph/pull/16591>`_, PCzhangPC) -* rbd: journal: limit number of appends sent in one librados op (`issue#23526 <http://tracker.ceph.com/issues/23526>`_, `pr#21157 <https://github.com/ceph/ceph/pull/21157>`_, Mykola Golub) -* rbd: journal: trivial cleanup (`pr#19317 <https://github.com/ceph/ceph/pull/19317>`_, Shinobu Kinjo) -* rbd: krbd: include sys/sysmacros.h for major, minor and makedev (`pr#20773 <https://github.com/ceph/ceph/pull/20773>`_, Ilya Dryomov) -* rbd: krbd: rewrite "already mapped" code (`pr#17638 <https://github.com/ceph/ceph/pull/17638>`_, Ilya Dryomov) -* rbd: librados/snap_set_diff: don't assert on empty snapset (`pr#20648 <https://github.com/ceph/ceph/pull/20648>`_, Mykola Golub) -* rbd: librbd: create+truncate for whole-object layered discards (`issue#23285 <http://tracker.ceph.com/issues/23285>`_, `pr#20809 <https://github.com/ceph/ceph/pull/20809>`_, Ilya Dryomov) -* rbd: librbd: make rename request complete with filtered code (`issue#23068 <http://tracker.ceph.com/issues/23068>`_, `pr#20507 <https://github.com/ceph/ceph/pull/20507>`_, Mykola Golub) -* rbd: librbd misc cleanup (`pr#18419 <https://github.com/ceph/ceph/pull/18419>`_, Jianpeng Ma) -* rbd: librbd: skip head object map update when deep copying object beyond image size (`pr#21586 <https://github.com/ceph/ceph/pull/21586>`_, Mykola Golub) -* rbd: librbd: sync flush should re-use existing async flush logic (`pr#18403 <https://github.com/ceph/ceph/pull/18403>`_, Jason Dillaman) -* rbd: librbd,test: address coverity false positives (`pr#17825 <https://github.com/ceph/ceph/pull/17825>`_, Amit Kumar) -* rbd: mimic: librbd: deep copy optionally support flattening cloned image (`issue#22787 <http://tracker.ceph.com/issues/22787>`_, `pr#22038 <https://github.com/ceph/ceph/pull/22038>`_, Mykola Golub) -* rbd: mimic: rbd-mirror: optionally support active/active replication (`pr#22105 <https://github.com/ceph/ceph/pull/22105>`_, Jason Dillaman) -* rbd: mimic: rbd-mirror: potential deadlock when running asok 'flush' command (`issue#24141 <http://tracker.ceph.com/issues/24141>`_, `pr#22039 <https://github.com/ceph/ceph/pull/22039>`_, Mykola Golub) -* rbd-mirror: additional thrasher testing (`pr#21697 <https://github.com/ceph/ceph/pull/21697>`_, Jason Dillaman) -* rbd-mirror: clean up spurious error log messages (`issue#21961 <http://tracker.ceph.com/issues/21961>`_, `pr#18601 <https://github.com/ceph/ceph/pull/18601>`_, Jason Dillaman) -* rbd-mirror: cluster watcher should ensure it has latest OSD map (`issue#22461 <http://tracker.ceph.com/issues/22461>`_, `pr#19550 <https://github.com/ceph/ceph/pull/19550>`_, Jason Dillaman) -* rbd-mirror: ensure unique service daemon name is utilized (`pr#19492 <https://github.com/ceph/ceph/pull/19492>`_, Jason Dillaman) -* rbd-mirror: fix potential infinite loop when formatting status message (`issue#22932 <http://tracker.ceph.com/issues/22932>`_, `pr#20349 <https://github.com/ceph/ceph/pull/20349>`_, Mykola Golub) -* rbd-mirror: forced promotion can result in incorrect status (`issue#21559 <http://tracker.ceph.com/issues/21559>`_, `pr#17979 <https://github.com/ceph/ceph/pull/17979>`_, Jason Dillaman) -* rbd-mirror: ImageMap memory leak fixes (`pr#19163 <https://github.com/ceph/ceph/pull/19163>`_, Venky Shankar) -* rbd-mirror: Improve data pool selection when creating images (`pr#18006 <https://github.com/ceph/ceph/pull/18006>`_, Adam Wolfe Gordon) -* rbd-mirror: integrate image map policy as incremental step to active-active (`pr#21300 <https://github.com/ceph/ceph/pull/21300>`_, Jason Dillaman) -* rbd-mirror: introduce basic image mapping policy (`issue#18786 <http://tracker.ceph.com/issues/18786>`_, `pr#15691 <https://github.com/ceph/ceph/pull/15691>`_, Venky Shankar) -* rbd-mirror: missing lock when re-sending update_sync_point (`pr#19011 <https://github.com/ceph/ceph/pull/19011>`_, Mykola Golub) -* rbd-mirror: persist image map timestamp (`pr#19338 <https://github.com/ceph/ceph/pull/19338>`_, Venky Shankar) -* rbd-mirror: primary image should register in remote, non-primary image's journal (`issue#21561 <http://tracker.ceph.com/issues/21561>`_, `pr#18136 <https://github.com/ceph/ceph/pull/18136>`_, Jason Dillaman) -* rbd-mirror: properly translate remote tag mirror uuid for local mirror (`issue#23876 <http://tracker.ceph.com/issues/23876>`_, `pr#21657 <https://github.com/ceph/ceph/pull/21657>`_, Jason Dillaman) -* rbd-mirror: removed dedicated thread from image deleter (`issue#15322 <http://tracker.ceph.com/issues/15322>`_, `pr#19000 <https://github.com/ceph/ceph/pull/19000>`_, Jason Dillaman) -* rbd-mirror: rename asok hook to match image name when not replaying (`issue#23888 <http://tracker.ceph.com/issues/23888>`_, `pr#21682 <https://github.com/ceph/ceph/pull/21682>`_, Jason Dillaman) -* rbd-mirror: rollback state transitions in image policy (`pr#19577 <https://github.com/ceph/ceph/pull/19577>`_, Venky Shankar) -* rbd-mirror: Set the data pool correctly when creating images (`issue#20567 <http://tracker.ceph.com/issues/20567>`_, `pr#17073 <https://github.com/ceph/ceph/pull/17073>`_, Adam Wolfe Gordon) -* rbd-mirror: simplify notifications for image assignment (`issue#15764 <http://tracker.ceph.com/issues/15764>`_, `pr#16642 <https://github.com/ceph/ceph/pull/16642>`_, Jason Dillaman) -* rbd-mirror: strip environment/CLI overrides for remote cluster (`issue#21894 <http://tracker.ceph.com/issues/21894>`_, `pr#18490 <https://github.com/ceph/ceph/pull/18490>`_, Jason Dillaman) -* rbd-mirror: support deferred deletions of mirrored images (`pr#19536 <https://github.com/ceph/ceph/pull/19536>`_, Jason Dillaman) -* rbd-mirror: sync image metadata when transfering remote image (`issue#21535 <http://tracker.ceph.com/issues/21535>`_, `pr#18026 <https://github.com/ceph/ceph/pull/18026>`_, Jason Dillaman) -* rbd-mirror: track images in policy map in support of A/A (`issue#18786 <http://tracker.ceph.com/issues/18786>`_, `pr#15788 <https://github.com/ceph/ceph/pull/15788>`_, Venky Shankar) -* rbd-mirror: update asok hook name on image rename (`issue#20860 <http://tracker.ceph.com/issues/20860>`_, `pr#16998 <https://github.com/ceph/ceph/pull/16998>`_, Mykola Golub) -* rbd-mirror: use next transition state to check transition completeness (`pr#18969 <https://github.com/ceph/ceph/pull/18969>`_, Venky Shankar) -* rbd-nbd: allow to unmap by image or snap spec (`pr#19666 <https://github.com/ceph/ceph/pull/19666>`_, Mykola Golub) -* rbd-nbd: bug fix when running in container (`issue#22012 <http://tracker.ceph.com/issues/22012>`_, `issue#22011 <http://tracker.ceph.com/issues/22011>`_, `pr#18663 <https://github.com/ceph/ceph/pull/18663>`_, Li Wang) -* rbd-nbd: certain kernels may not discover resized block devices (`issue#22131 <http://tracker.ceph.com/issues/22131>`_, `pr#18947 <https://github.com/ceph/ceph/pull/18947>`_, Jason Dillaman) -* rbd-nbd: cleanup for NBDServer shut down (`pr#17283 <https://github.com/ceph/ceph/pull/17283>`_, Pan Liu) -* rbd-nbd: fix ebusy when do map (`issue#23528 <http://tracker.ceph.com/issues/23528>`_, `pr#21142 <https://github.com/ceph/ceph/pull/21142>`_, Li Wang) -* rbd-nbd: fix generic option issue (`issue#20426 <http://tracker.ceph.com/issues/20426>`_, `pr#17375 <https://github.com/ceph/ceph/pull/17375>`_, Pan Liu) -* rbd-nbd: output format support for list-mapped command (`pr#19704 <https://github.com/ceph/ceph/pull/19704>`_, Mykola Golub) -* rbd-nbd: support optionally setting device timeout (`issue#22333 <http://tracker.ceph.com/issues/22333>`_, `pr#19436 <https://github.com/ceph/ceph/pull/19436>`_, Mykola Golub) -* rbd: null check before pool_name use (`pr#18790 <https://github.com/ceph/ceph/pull/18790>`_, Amit Kumar) -* rbd: output notifyOp request name when watching (`pr#20551 <https://github.com/ceph/ceph/pull/20551>`_, shun-s) -* rbd: parallelize "rbd ls -l" (`pr#15579 <https://github.com/ceph/ceph/pull/15579>`_, Piotr Dałek) -* rbd: pool_percent_used should not divided by 100 (`pr#20795 <https://github.com/ceph/ceph/pull/20795>`_, songweibin) -* rbd: properly pass ceph global command line args to subprocess (`pr#19821 <https://github.com/ceph/ceph/pull/19821>`_, Mykola Golub) -* rbd: pybind/rbd: add deep_copy method (`pr#19406 <https://github.com/ceph/ceph/pull/19406>`_, Mykola Golub) -* rbd: pybind/rbd: fix metadata functions error handling (`issue#22306 <http://tracker.ceph.com/issues/22306>`_, `pr#19337 <https://github.com/ceph/ceph/pull/19337>`_, Mykola Golub) -* rbd: python bindings fixes and improvements (`issue#23609 <http://tracker.ceph.com/issues/23609>`_, `pr#21304 <https://github.com/ceph/ceph/pull/21304>`_, Ricardo Dias) -* rbd: rbd-ggate: fix parsing ceph global options (`pr#19822 <https://github.com/ceph/ceph/pull/19822>`_, Mykola Golub) -* rbd: rbd-ggate: fix syntax error (`pr#19919 <https://github.com/ceph/ceph/pull/19919>`_, Willem Jan Withagen) -* rbd: rbd-ggate: make list command produce valid xml format output (`pr#19823 <https://github.com/ceph/ceph/pull/19823>`_, Mykola Golub) -* rbd: rbd-ggate: small fixes and improvements (`pr#19679 <https://github.com/ceph/ceph/pull/19679>`_, Mykola Golub) -* rbd: rbd-ggate: tool to map images on FreeBSD via GEOM Gate (`pr#15339 <https://github.com/ceph/ceph/pull/15339>`_, Mykola Golub) -* rbd: rbd:introduce rbd bench rw(for read and write mix) test (`pr#17461 <https://github.com/ceph/ceph/pull/17461>`_, PCzhangPC) -* rbd: rbd: set a default value for options in `nbd map` (`pr#20529 <https://github.com/ceph/ceph/pull/20529>`_, songweibin) -* rbd: replace positional_path parameter with arg_index in get_path() (`pr#19722 <https://github.com/ceph/ceph/pull/19722>`_, songweibin) -* rbd: replace trash delay option, add rbd trash purge command (`pr#18323 <https://github.com/ceph/ceph/pull/18323>`_, Theofilos Mouratidis) -* rbd: resource agent needs to be executable (`issue#22980 <http://tracker.ceph.com/issues/22980>`_, `issue#22362 <http://tracker.ceph.com/issues/22362>`_, `pr#20397 <https://github.com/ceph/ceph/pull/20397>`_, Tim Bishop) -* rbd:rm unnecessary conversion from string to char\* in image-meta function (`pr#17184 <https://github.com/ceph/ceph/pull/17184>`_, PCzhangPC) -* rbd: show read:write proportion in the infomation of readwrite bench test (`pr#18249 <https://github.com/ceph/ceph/pull/18249>`_, PCzhangPC) -* rbd: snap limit should't be set smaller than the number of existing snaps (`pr#16597 <https://github.com/ceph/ceph/pull/16597>`_, PCzhangPC) -* rbd: support cloning an image from a non-primary snapshot (`issue#18480 <http://tracker.ceph.com/issues/18480>`_, `pr#19724 <https://github.com/ceph/ceph/pull/19724>`_, Jason Dillaman) -* rbd: support iterating over metadata items when listing (`issue#21179 <http://tracker.ceph.com/issues/21179>`_, `pr#17532 <https://github.com/ceph/ceph/pull/17532>`_, Jason Dillaman) -* rbd: support lock_timeout in rbd mapping (`pr#21344 <https://github.com/ceph/ceph/pull/21344>`_, Dongsheng Yang) -* rbd: support osd_request_timeout in rbd map command (`issue#23073 <http://tracker.ceph.com/issues/23073>`_, `pr#20792 <https://github.com/ceph/ceph/pull/20792>`_, Dongsheng Yang) -* rbd: switched from legacy to new-style configuration options (`issue#20737 <http://tracker.ceph.com/issues/20737>`_, `pr#16737 <https://github.com/ceph/ceph/pull/16737>`_, Jason Dillaman) -* rbd,tests: qa: additional krbd discard test cases (`pr#20499 <https://github.com/ceph/ceph/pull/20499>`_, Ilya Dryomov) -* rbd,tests: qa: fix POOL_APP_NOT_ENABLED warning in krbd:unmap suite (`pr#16966 <https://github.com/ceph/ceph/pull/16966>`_, Ilya Dryomov) -* rbd,tests: qa: introduce rbd-mirror thrasher to existing tests (`issue#18753 <http://tracker.ceph.com/issues/18753>`_, `pr#21541 <https://github.com/ceph/ceph/pull/21541>`_, Jason Dillaman) -* rbd,tests: qa: krbd_exclusive_option.sh: add lock_timeout test case (`pr#21522 <https://github.com/ceph/ceph/pull/21522>`_, Ilya Dryomov) -* rbd,tests: qa: krbd_fallocate.sh: add notrim test case (`pr#21513 <https://github.com/ceph/ceph/pull/21513>`_, Ilya Dryomov) -* rbd,tests: qa: krbd huge-image test (`pr#20692 <https://github.com/ceph/ceph/pull/20692>`_, Ilya Dryomov) -* rbd,tests: qa: krbd latest-osdmap-on-map test (`pr#20591 <https://github.com/ceph/ceph/pull/20591>`_, Ilya Dryomov) -* rbd,tests: qa: krbd msgr-segments test (`pr#20714 <https://github.com/ceph/ceph/pull/20714>`_, Ilya Dryomov) -* rbd,tests: qa: krbd parent-overlap test (`pr#20721 <https://github.com/ceph/ceph/pull/20721>`_, Ilya Dryomov) -* rbd,tests: qa: krbd whole-object-discard test (`pr#20750 <https://github.com/ceph/ceph/pull/20750>`_, Ilya Dryomov) -* rbd,tests: qa/suites/krbd: add krbd BLKROSET test (`pr#18652 <https://github.com/ceph/ceph/pull/18652>`_, Ilya Dryomov) -* rbd,tests: qa/suites/krbd: enable generic/050 and generic/448 (`pr#18795 <https://github.com/ceph/ceph/pull/18795>`_, Ilya Dryomov) -* rbd,tests: qa/suites/krbd: enable xfstests blockdev tests (`pr#17621 <https://github.com/ceph/ceph/pull/17621>`_, Ilya Dryomov) -* rbd,tests: qa/suites/krbd: exclude shared/298 (`pr#17971 <https://github.com/ceph/ceph/pull/17971>`_, Ilya Dryomov) -* rbd,tests: qa/suites/krbd: rbd_xfstests job overhaul (`pr#17346 <https://github.com/ceph/ceph/pull/17346>`_, Ilya Dryomov) -* rbd,tests: qa/suites/rbd: fewer socket failures (`pr#19617 <https://github.com/ceph/ceph/pull/19617>`_, Sage Weil) -* rbd,tests: qa/suites/rbd: miscellaneous test fixes (`issue#21251 <http://tracker.ceph.com/issues/21251>`_, `pr#17504 <https://github.com/ceph/ceph/pull/17504>`_, Jason Dillaman) -* rbd,tests: qa/suites/rbd: segregated v1 image format tests (`issue#22738 <http://tracker.ceph.com/issues/22738>`_, `pr#20729 <https://github.com/ceph/ceph/pull/20729>`_, Jason Dillaman) -* rbd,tests: qa/suites/rbd: set qemu task time_wait param (`pr#21131 <https://github.com/ceph/ceph/pull/21131>`_, Mykola Golub) -* rbd,tests: qa/tasks/cram: include /usr/sbin in the PATH for all commands (`pr#18793 <https://github.com/ceph/ceph/pull/18793>`_, Ilya Dryomov) -* rbd,tests: qa/tasks/rbd: run all xfstests runs to completion (`pr#18583 <https://github.com/ceph/ceph/pull/18583>`_, Ilya Dryomov) -* rbd,tests: qa/workunits/rbd: fix cli_generic test_purge for rbd default format 1 (`pr#20389 <https://github.com/ceph/ceph/pull/20389>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: fixed variable name for resync image id (`issue#21663 <http://tracker.ceph.com/issues/21663>`_, `pr#18097 <https://github.com/ceph/ceph/pull/18097>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: fix issues within permissions test (`issue#23043 <http://tracker.ceph.com/issues/23043>`_, `pr#20491 <https://github.com/ceph/ceph/pull/20491>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: pool create may fail for small cluster (`pr#18067 <https://github.com/ceph/ceph/pull/18067>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: potential race in mirror disconnect test (`issue#23938 <http://tracker.ceph.com/issues/23938>`_, `pr#21733 <https://github.com/ceph/ceph/pull/21733>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: relax greps to support upgrade formatting change (`issue#21181 <http://tracker.ceph.com/issues/21181>`_, `pr#17559 <https://github.com/ceph/ceph/pull/17559>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: remove sanity check in journal.sh test (`pr#20490 <https://github.com/ceph/ceph/pull/20490>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: remove sanity check in test_admin_socket.sh (`pr#21116 <https://github.com/ceph/ceph/pull/21116>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: remove "trash purge --threshold" test (`issue#22803 <http://tracker.ceph.com/issues/22803>`_, `pr#20170 <https://github.com/ceph/ceph/pull/20170>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: simplify split-brain test to avoid potential race (`issue#22485 <http://tracker.ceph.com/issues/22485>`_, `pr#19604 <https://github.com/ceph/ceph/pull/19604>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: switch devstack tempest to 17.2.0 tag (`issue#22961 <http://tracker.ceph.com/issues/22961>`_, `pr#20599 <https://github.com/ceph/ceph/pull/20599>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: switch devstack to pike release (`pr#20124 <https://github.com/ceph/ceph/pull/20124>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: test data pool is mirrored correctly (`pr#17062 <https://github.com/ceph/ceph/pull/17062>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: unnecessary sleep after failed remove (`pr#18619 <https://github.com/ceph/ceph/pull/18619>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: use command line option to specify watcher asok (`issue#20954 <http://tracker.ceph.com/issues/20954>`_, `pr#16917 <https://github.com/ceph/ceph/pull/16917>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: wait for demote status is propagated (`pr#19073 <https://github.com/ceph/ceph/pull/19073>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: wait for status propagated only if daemon started (`pr#19082 <https://github.com/ceph/ceph/pull/19082>`_, Mykola Golub) -* rbd,tests: rbd/test: add snap protection test for ex/import (`pr#20689 <https://github.com/ceph/ceph/pull/20689>`_, songweibin) -* rbd,tests: stop.sh: use --no-mon-config when trying to unmap rbd devices (`pr#21020 <https://github.com/ceph/ceph/pull/21020>`_, Mykola Golub) -* rbd,tests: test: address coverity false positives (`pr#17803 <https://github.com/ceph/ceph/pull/17803>`_, Amit Kumar) -* rbd,tests: test/cls_rbd: mask newer feature bits to support upgrade tests (`issue#21217 <http://tracker.ceph.com/issues/21217>`_, `pr#17509 <https://github.com/ceph/ceph/pull/17509>`_, Jason Dillaman) -* rbd,tests: test/librados_test_stub: always create copy of buffers passed to operation (`pr#21074 <https://github.com/ceph/ceph/pull/21074>`_, Mykola Golub) -* rbd,tests: test/librbd: added update_features RPC message to test_notify (`issue#21936 <http://tracker.ceph.com/issues/21936>`_, `pr#18561 <https://github.com/ceph/ceph/pull/18561>`_, Jason Dillaman) -* rbd,tests: test/librbd: clean up for several mock function tests (`pr#18952 <https://github.com/ceph/ceph/pull/18952>`_, Jason Dillaman) -* rbd,tests: test/librbd: Do not instantiate TrimRequest template class (`pr#19402 <https://github.com/ceph/ceph/pull/19402>`_, Boris Ranto) -* rbd,tests: test/librbd: ensure OutOfOrder test has enough concurrent management ops (`pr#21436 <https://github.com/ceph/ceph/pull/21436>`_, Mykola Golub) -* rbd,tests: test/librbd: fix mock method macro of set_journal_policy (`pr#17216 <https://github.com/ceph/ceph/pull/17216>`_, Yan Jun) -* rbd,tests: test/librbd: fix race condition with OSD map refresh (`issue#20918 <http://tracker.ceph.com/issues/20918>`_, `pr#16877 <https://github.com/ceph/ceph/pull/16877>`_, Jason Dillaman) -* rbd,tests: test/librbd: fix valgrind memory leak warning (`pr#17187 <https://github.com/ceph/ceph/pull/17187>`_, Mykola Golub) -* rbd,tests: test/librbd: initialize on_finish,locker,force,snap_id (`pr#17800 <https://github.com/ceph/ceph/pull/17800>`_, Amit Kumar) -* rbd,tests: test/librbd: make fsx build on non-linux platform (`pr#16939 <https://github.com/ceph/ceph/pull/16939>`_, Mykola Golub) -* rbd,tests: test/librbd: memory leak in recently added test (`pr#18478 <https://github.com/ceph/ceph/pull/18478>`_, Mykola Golub) -* rbd,tests: test/librbd: rbd-ggate mode for fsx (`pr#19315 <https://github.com/ceph/ceph/pull/19315>`_, Mykola Golub) -* rbd,tests: test/librbd: test metadata_set/remove is applied (`pr#18288 <https://github.com/ceph/ceph/pull/18288>`_, Mykola Golub) -* rbd,tests: test/librbd: TestMirroringWatcher unit tests should ignore duplicates (`issue#21029 <http://tracker.ceph.com/issues/21029>`_, `pr#17078 <https://github.com/ceph/ceph/pull/17078>`_, Jason Dillaman) -* rbd,tests: test/librbd: utilize unique pool for cache tier testing (`issue#11502 <http://tracker.ceph.com/issues/11502>`_, `pr#20486 <https://github.com/ceph/ceph/pull/20486>`_, Jason Dillaman) -* rbd,tests: test/librbd: valgrind warning in TestMockManagedLockBreakRequest.DeadLockOwner (`pr#18940 <https://github.com/ceph/ceph/pull/18940>`_, Mykola Golub) -* rbd,tests: test/pybind/rbd: skip test_deep_copy_clone if layering not enabled (`pr#20295 <https://github.com/ceph/ceph/pull/20295>`_, Mykola Golub) -* rbd,tests: test/rbd: cli_generic fails if v1 image format or deep-flatten disabled (`issue#22950 <http://tracker.ceph.com/issues/22950>`_, `pr#20364 <https://github.com/ceph/ceph/pull/20364>`_, songweibin) -* rbd,tests: test/rbd_mirror: fix valgrind warnings in unittest (`pr#19016 <https://github.com/ceph/ceph/pull/19016>`_, Mykola Golub) -* rbd,tests: test/rbd-mirror: image map policy test (`pr#19320 <https://github.com/ceph/ceph/pull/19320>`_, Venky Shankar) -* rbd,tests: test/rbd-mirror: improve coverage for dead instance handling (`pr#21403 <https://github.com/ceph/ceph/pull/21403>`_, Jason Dillaman) -* rbd,tests: test/rbd_mirror: "use of uninitialised value" valgrind warning (`pr#19437 <https://github.com/ceph/ceph/pull/19437>`_, Mykola Golub) -* rbd,tools: rbd-fuse: make sure PATH_MAX is defined (`pr#18615 <https://github.com/ceph/ceph/pull/18615>`_, Roberto Oliveira) -* rbd,tools: rbd-replay: remove boost dependency (`pr#21202 <https://github.com/ceph/ceph/pull/21202>`_, Kefu Chai) -* rbd: tools/rbd: use steady clock in bencher (`pr#20008 <https://github.com/ceph/ceph/pull/20008>`_, Mohamad Gebai) -* rbd: 'trash list --long' will return a failure on non-cloned images (`pr#19540 <https://github.com/ceph/ceph/pull/19540>`_, Jason Dillaman) -* rbd: 'trash ls -l' will display column titles if existed non-USER trash image only (`pr#21343 <https://github.com/ceph/ceph/pull/21343>`_, songweibin) -* rbd: unified way to map images using different drivers (`pr#19711 <https://github.com/ceph/ceph/pull/19711>`_, Mykola Golub) -* rbd: use different logic to disturb thread's offset in bench seq test (`pr#17218 <https://github.com/ceph/ceph/pull/17218>`_, PCzhangPC) -* Revert "ceph-fuse: Delete inode's bufferhead was in Tx state would le… (`pr#21976 <https://github.com/ceph/ceph/pull/21976>`_, "Yan, Zheng") -* Revert "msg/async/rdma: fix multi cephcontext confllicting" (`pr#16980 <https://github.com/ceph/ceph/pull/16980>`_, Haomai Wang) -* Revert "os/bluestore: compensate for bad freelistmanager size/blocks metadata" (`pr#17275 <https://github.com/ceph/ceph/pull/17275>`_, Xie Xingguo) -* rgw: ability to list bucket contents in unsorted order for efficiency (`pr#21026 <https://github.com/ceph/ceph/pull/21026>`_, J. Eric Ivancich) -* rgw: abort multipart if upload meta object doesn't exist (`pr#19918 <https://github.com/ceph/ceph/pull/19918>`_, fang yuxiang) -* rgw: Access RGWConf through RGWEnv (`pr#17432 <https://github.com/ceph/ceph/pull/17432>`_, Jos Collin) -* rgw: add "Accept-Ranges" to response header of Swift API (`issue#21554 <http://tracker.ceph.com/issues/21554>`_, `pr#17967 <https://github.com/ceph/ceph/pull/17967>`_, Tone Zhang) -* rgw: add a default redirect field for zones (`pr#9571 <https://github.com/ceph/ceph/pull/9571>`_, Yehuda Sadeh) -* rgw: add an option to clear all usage entries (`pr#19322 <https://github.com/ceph/ceph/pull/19322>`_, Abhishek Lekshmanan) -* rgw: add an option to recalculate user stats (`issue#23335 <http://tracker.ceph.com/issues/23335>`_, `pr#20853 <https://github.com/ceph/ceph/pull/20853>`_, Abhishek Lekshmanan) -* rgw: add buffering filter to compression for fetch_remote_obj (`issue#23547 <http://tracker.ceph.com/issues/23547>`_, `pr#21479 <https://github.com/ceph/ceph/pull/21479>`_, Casey Bodley) -* rgw: add cors header rule check in cors option request (`issue#22002 <http://tracker.ceph.com/issues/22002>`_, `pr#18556 <https://github.com/ceph/ceph/pull/18556>`_, yuliyang) -* rgw: Add dynamic resharding documentation (`issue#21553 <http://tracker.ceph.com/issues/21553>`_, `pr#15941 <https://github.com/ceph/ceph/pull/15941>`_, Orit Wasserman) -* rgw: add logs if get_data returns error in RGWPutObj::execute (`pr#18642 <https://github.com/ceph/ceph/pull/18642>`_, Zhang Shaowen) -* rgw: add metadata and data sync related cmd into radosgw-admin usage (`pr#18921 <https://github.com/ceph/ceph/pull/18921>`_, lvshanchun) -* rgw: add missing override in list_keys_init() (`pr#17254 <https://github.com/ceph/ceph/pull/17254>`_, Jos Collin) -* rgw: add radosgw-admin sync error trim to trim sync error log (`pr#19854 <https://github.com/ceph/ceph/pull/19854>`_, fang yuxiang) -* rgw: add reshard commands (`issue#21617 <http://tracker.ceph.com/issues/21617>`_, `pr#18180 <https://github.com/ceph/ceph/pull/18180>`_, Orit Wasserman) -* rgw: address warnings due to incorrect format code (`pr#18796 <https://github.com/ceph/ceph/pull/18796>`_, J. Eric Ivancich) - rgw: Add retry_raced_bucket_write -* rgw: add rewrite cmd and options into radosgw-admin usage and doc (`pr#18918 <https://github.com/ceph/ceph/pull/18918>`_, Enming Zhang) -* rgw: add ssl support to beast frontend (`issue#22832 <http://tracker.ceph.com/issues/22832>`_, `pr#20464 <https://github.com/ceph/ceph/pull/20464>`_, Casey Bodley) -* rgw: add support for Swift's per storage policy statistics (`issue#17932 <http://tracker.ceph.com/issues/17932>`_, `pr#12704 <https://github.com/ceph/ceph/pull/12704>`_, Radoslaw Zarzynski) -* rgw: add support for Swift's reversed account listings (`issue#21148 <http://tracker.ceph.com/issues/21148>`_, `pr#17320 <https://github.com/ceph/ceph/pull/17320>`_, Radoslaw Zarzynski) -* rgw: add support for tagging and other conditionals in policy (`pr#17094 <https://github.com/ceph/ceph/pull/17094>`_, Abhishek Lekshmanan) -* rgw: add tail tag to track tail instance (`issue#20234 <http://tracker.ceph.com/issues/20234>`_, `pr#16145 <https://github.com/ceph/ceph/pull/16145>`_, Yehuda Sadeh) -* rgw: add tenant to shard_id in RGWDeleteLC::execute() (`pr#10460 <https://github.com/ceph/ceph/pull/10460>`_, Wei Qiaomiao) -* rgw: add time skew check in function parse_v4_auth_header (`issue#22418 <http://tracker.ceph.com/issues/22418>`_, `pr#19476 <https://github.com/ceph/ceph/pull/19476>`_, Bingyin Zhang) - rgw: Add try_refresh_bucket_info function -* rgw: add xml output header in RGWCopyObj_ObjStore_S3 response msg (`issue#22416 <http://tracker.ceph.com/issues/22416>`_, `pr#19475 <https://github.com/ceph/ceph/pull/19475>`_, Enming Zhang) -* rgw: adjust log format for lifecycle (`pr#19576 <https://github.com/ceph/ceph/pull/19576>`_, Bingyin Zhang) -* rgw: admin api - add ability to sync user stats from admin api (`issue#21301 <http://tracker.ceph.com/issues/21301>`_, `pr#17589 <https://github.com/ceph/ceph/pull/17589>`_, Nathan Johnson) -* rgw: Admin API Support for bucket quota change (`issue#21811 <http://tracker.ceph.com/issues/21811>`_, `pr#18324 <https://github.com/ceph/ceph/pull/18324>`_, Jeegn Chen) -* rgw: admin rest api shouldn't return error when getting user's stats if the user hasn't create any bucket (`pr#21551 <https://github.com/ceph/ceph/pull/21551>`_, Zhang Shaowen) -* rgw: allow beast frontend to listen on specific IP address (`issue#22778 <http://tracker.ceph.com/issues/22778>`_, `pr#20000 <https://github.com/ceph/ceph/pull/20000>`_, Yuan Zhou) -* rgw: Allow swift acls to be deleted (`issue#22897 <http://tracker.ceph.com/issues/22897>`_, `pr#20471 <https://github.com/ceph/ceph/pull/20471>`_, Marcus Watts) -* rgw: avoid logging keystone revocation messages when not configured (`issue#21400 <http://tracker.ceph.com/issues/21400>`_, `pr#17775 <https://github.com/ceph/ceph/pull/17775>`_, Abhishek Lekshmanan) -* rgw: aws4 auth supports PutBucketRequestPayment (`issue#23803 <http://tracker.ceph.com/issues/23803>`_, `pr#21569 <https://github.com/ceph/ceph/pull/21569>`_, Casey Bodley) -* rgw: AWS v4 authorization work when INIT_MULTIPART is chunked (`issue#22129 <http://tracker.ceph.com/issues/22129>`_, `pr#18956 <https://github.com/ceph/ceph/pull/18956>`_, Jeegn Chen) -* rgw: beast frontend can listen on multiple endpoints (`issue#22779 <http://tracker.ceph.com/issues/22779>`_, `pr#20188 <https://github.com/ceph/ceph/pull/20188>`_, Casey Bodley) -* rgw: beast frontend no longer experimental (`pr#21272 <https://github.com/ceph/ceph/pull/21272>`_, Casey Bodley) -* rgw: Better ERANGE error message (`issue#22351 <http://tracker.ceph.com/issues/22351>`_, `pr#20023 <https://github.com/ceph/ceph/pull/20023>`_, Brad Hubbard) -* rgw: break sending data-log list infinitely (`issue#20951 <http://tracker.ceph.com/issues/20951>`_, `pr#16926 <https://github.com/ceph/ceph/pull/16926>`_, fang.yuxiang) -* rgw: bucket resharding should not update bucket ACL or user stats (`issue#22742 <http://tracker.ceph.com/issues/22742>`_, `issue#22124 <http://tracker.ceph.com/issues/22124>`_, `pr#20038 <https://github.com/ceph/ceph/pull/20038>`_, Orit Wasserman) -* rgw: Cache on the barrelhead (`issue#22517 <http://tracker.ceph.com/issues/22517>`_, `pr#19581 <https://github.com/ceph/ceph/pull/19581>`_, Adam C. Emerson) -* rgw: Cache Register! (`issue#22604 <http://tracker.ceph.com/issues/22604>`_, `issue#22603 <http://tracker.ceph.com/issues/22603>`_, `pr#20144 <https://github.com/ceph/ceph/pull/20144>`_, Adam C. Emerson) -* rgw: can't download object with range when compression enabled (`issue#22852 <http://tracker.ceph.com/issues/22852>`_, `pr#20226 <https://github.com/ceph/ceph/pull/20226>`_, fang yuxiang) -* rgw: ceph-dencoder: add missing begin_iter & end_iter item for RGWObjManifest (`pr#19509 <https://github.com/ceph/ceph/pull/19509>`_, wangsongbo) -* rgw: ceph-dencoder: add support for cls_rgw_lc_obj_head (`pr#18920 <https://github.com/ceph/ceph/pull/18920>`_, Yao Zongyou) -* rgw: ceph-dencoder: add support for RGWLifecycleConfiguration (`pr#18959 <https://github.com/ceph/ceph/pull/18959>`_, wangsongbo) -* rgw: change ObjectCache::lru from deque back to list (`issue#22560 <http://tracker.ceph.com/issues/22560>`_, `pr#19768 <https://github.com/ceph/ceph/pull/19768>`_, Casey Bodley) -* rgw: changes to support ragweed (`pr#13644 <https://github.com/ceph/ceph/pull/13644>`_, Yehuda Sadeh) -* rgw: Check bucket CORS operations in policy (`issue#21578 <http://tracker.ceph.com/issues/21578>`_, `pr#18000 <https://github.com/ceph/ceph/pull/18000>`_, Adam C. Emerson) -* rgw: Check bucket GetBucketLocation in policy (`issue#21582 <http://tracker.ceph.com/issues/21582>`_, `pr#18002 <https://github.com/ceph/ceph/pull/18002>`_, Adam C. Emerson) -* rgw: Check bucket Website operations in policy (`issue#21597 <http://tracker.ceph.com/issues/21597>`_, `pr#18024 <https://github.com/ceph/ceph/pull/18024>`_, Adam C. Emerson) -* rgw: check going_down() when lifecycle processing (`issue#22099 <http://tracker.ceph.com/issues/22099>`_, `pr#18846 <https://github.com/ceph/ceph/pull/18846>`_, Yao Zongyou) -* rgw: Check payment operations in policy (`issue#21389 <http://tracker.ceph.com/issues/21389>`_, `pr#17742 <https://github.com/ceph/ceph/pull/17742>`_, Adam C. Emerson) -* rgw: check read_op.read return value in RGWRados::copy_obj_data (`pr#18962 <https://github.com/ceph/ceph/pull/18962>`_, Enming Zhang) -* rgw: civetweb fixes for v1.1 upgrade (`pr#21123 <https://github.com/ceph/ceph/pull/21123>`_, Abhishek Lekshmanan) -* rgw: clean code with helper function dump_header_if_nonempty (`pr#18979 <https://github.com/ceph/ceph/pull/18979>`_, Xinying Song) -* rgw: clean up and fix some bugs for encryption (`issue#21581 <http://tracker.ceph.com/issues/21581>`_, `pr#17882 <https://github.com/ceph/ceph/pull/17882>`_, Enming Zhang) -* rgw: cleanup MIN macro with std::min (`pr#17546 <https://github.com/ceph/ceph/pull/17546>`_, Jiaying Ren) -* rgw: cleanup unused parameters in RGWRados::copy_obj_data (`pr#18917 <https://github.com/ceph/ceph/pull/18917>`_, Enming Zhang) -* rgw: cloud sync fixes (`pr#21648 <https://github.com/ceph/ceph/pull/21648>`_, Yehuda Sadeh) -* rgw: cls/log: cls_log_list always returns next marker (`issue#20906 <http://tracker.ceph.com/issues/20906>`_, `pr#17024 <https://github.com/ceph/ceph/pull/17024>`_, Casey Bodley) -* rgw: cls/rgw: fix bi_log_iterate_entries return wrong truncated (`issue#22737 <http://tracker.ceph.com/issues/22737>`_, `pr#20021 <https://github.com/ceph/ceph/pull/20021>`_, Tianshan Qu) -* rgw: cls/rgw: Initialization of uninitialized members (`pr#16932 <https://github.com/ceph/ceph/pull/16932>`_, amitkuma) -* rgw: cls/rgw: mtime in rgw_bucket_dir_entry_meta not really decoded (`issue#22148 <http://tracker.ceph.com/issues/22148>`_, `pr#18981 <https://github.com/ceph/ceph/pull/18981>`_, Yao Zongyou) -* rgw: cls/rgw: remove unused variable bl (`pr#19570 <https://github.com/ceph/ceph/pull/19570>`_, Yao Zongyou) -* rgw: cls/rgw: trim all usage entries in cls_rgw (`issue#22234 <http://tracker.ceph.com/issues/22234>`_, `pr#19131 <https://github.com/ceph/ceph/pull/19131>`_, Abhishek Lekshmanan) -* rgw: cls_rgw: use more effective container operations in get_obj_vals (`pr#19272 <https://github.com/ceph/ceph/pull/19272>`_, Xinying Song) -* rgw: comparison between signed and unsigned integer expressions (`pr#21105 <https://github.com/ceph/ceph/pull/21105>`_, ashitakasam) -* rgw: consolidate code that implements hashing algorithms (`pr#18248 <https://github.com/ceph/ceph/pull/18248>`_, J. Eric Ivancich) -* rgw: copy object add response error messages (`pr#18291 <https://github.com/ceph/ceph/pull/18291>`_, Enming Zhang) -* rgw: correct comment in function parse_credentials (`pr#19275 <https://github.com/ceph/ceph/pull/19275>`_, Bingyin Zhang) -* rgw: correct log output for metadata section name in RGWListBucketIndexesCR (`pr#19508 <https://github.com/ceph/ceph/pull/19508>`_, Xinying Song) -* rgw: Correct permission evaluation to allow only admin users to work with Roles (`pr#20332 <https://github.com/ceph/ceph/pull/20332>`_, Pritha Srivastava) -* rgw: correct typo refity to refit (`pr#19064 <https://github.com/ceph/ceph/pull/19064>`_, Bingyin Zhang) -* rgw: correct typo UNKOWN to UNKNOWN (`pr#19273 <https://github.com/ceph/ceph/pull/19273>`_, Bingyin Zhang) -* rgw: create sync-module instance when execute radosgw-admin data sync run (`issue#22080 <http://tracker.ceph.com/issues/22080>`_, `pr#18898 <https://github.com/ceph/ceph/pull/18898>`_, lvshanchun) -* rgw: create sync-module instance when radosgw-admin sync run (`pr#20611 <https://github.com/ceph/ceph/pull/20611>`_, lvshanchun) -* rgw: curl\* reuse and for debian, use openssl not gnutls (`pr#20635 <https://github.com/ceph/ceph/pull/20635>`_, Marcus Watts) -* rgw: Data encryption is not follow the AWS agreement (`pr#15994 <https://github.com/ceph/ceph/pull/15994>`_, hechuang) -* rgw: datalog list support --shard-id and --marker (`pr#20649 <https://github.com/ceph/ceph/pull/20649>`_, Tianshan Qu) -* rgw: data sync: set num_shards when building full maps (`issue#22083 <http://tracker.ceph.com/issues/22083>`_, `pr#18852 <https://github.com/ceph/ceph/pull/18852>`_, Abhishek Lekshmanan) -* rgw: Delete to_string functions. stringify defined in include/stringify.h can provide the same feature (`pr#18522 <https://github.com/ceph/ceph/pull/18522>`_, zhangwen) -* rgw: disable dynamic resharding in multisite environment (`issue#21725 <http://tracker.ceph.com/issues/21725>`_, `pr#18184 <https://github.com/ceph/ceph/pull/18184>`_, Orit Wasserman) -* rgw: do not reflect period if not current (`issue#22844 <http://tracker.ceph.com/issues/22844>`_, `pr#20212 <https://github.com/ceph/ceph/pull/20212>`_, Tianshan Qu) -* rgw: do not update all gateway caches upon creation of system obj w/ exclusive flag (`pr#19384 <https://github.com/ceph/ceph/pull/19384>`_, J. Eric Ivancich) -* rgw: don't change rados object's mtime when update olh (`issue#21743 <http://tracker.ceph.com/issues/21743>`_, `pr#18214 <https://github.com/ceph/ceph/pull/18214>`_, Shasha Lu) -* rgw: don't hold data_lock over frontend io (`pr#20621 <https://github.com/ceph/ceph/pull/20621>`_, Casey Bodley) -* rgw: don't leak S3 LDAPHelper (`pr#12427 <https://github.com/ceph/ceph/pull/12427>`_, Matt Benjamin) -* rgw: dont log EBUSY errors in 'sync error list' (`issue#22473 <http://tracker.ceph.com/issues/22473>`_, `pr#19580 <https://github.com/ceph/ceph/pull/19580>`_, Casey Bodley) -* rgw: dont reuse stale RGWObjectCtx for get_bucket_info() (`issue#21506 <http://tracker.ceph.com/issues/21506>`_, `pr#17916 <https://github.com/ceph/ceph/pull/17916>`_, Casey Bodley) -* rgw: don't write bucket_header when it is not changed in bucket_link/unlink (`pr#17356 <https://github.com/ceph/ceph/pull/17356>`_, Shasha Lu) -* rgw: don't write bucket_header when it is not changed in rgw_bucket_prepare_op (`pr#18763 <https://github.com/ceph/ceph/pull/18763>`_, Xinying Song) -* rgw: download object might fail for local invariable uninitialized (`issue#23146 <http://tracker.ceph.com/issues/23146>`_, `pr#20612 <https://github.com/ceph/ceph/pull/20612>`_, fang yuxiang) -* rgw: drop a repeated statement for encode_xml() (`pr#20195 <https://github.com/ceph/ceph/pull/20195>`_, luomuyao) -* rgw: drop commented functions (`pr#19671 <https://github.com/ceph/ceph/pull/19671>`_, Jos Collin) -* rgw: drop dump_uri_from_state() which isn't used anymore (`pr#19924 <https://github.com/ceph/ceph/pull/19924>`_, Radoslaw Zarzynski) -* rgw: drop iter in rgw_op.cc (`pr#19583 <https://github.com/ceph/ceph/pull/19583>`_, Bingyin Zhang) -* rgw: drop marker in RGWLC::process() (`pr#19591 <https://github.com/ceph/ceph/pull/19591>`_, Bingyin Zhang) -* rgw: drop outdated function doc (`pr#18370 <https://github.com/ceph/ceph/pull/18370>`_, Jiaying Ren) -* rgw: drop "realm remove" in radosgw-admin (`pr#18212 <https://github.com/ceph/ceph/pull/18212>`_, Shasha Lu) -* rgw: drop redundant RGW_OP_STAT_OBJ check (`pr#19933 <https://github.com/ceph/ceph/pull/19933>`_, Bingyin Zhang) -* rgw: drop the unnecessary handling of Swift's X-Storage-Policy on objects (`pr#16383 <https://github.com/ceph/ceph/pull/16383>`_, Jiaying Ren) -* rgw: drop the unused function init_anon_user() (`pr#16874 <https://github.com/ceph/ceph/pull/16874>`_, Radoslaw Zarzynski) -* rgw: Drop unnecessary return (`pr#17520 <https://github.com/ceph/ceph/pull/17520>`_, Jos Collin) -* rgw: drop unused function apply_epoch (`pr#17593 <https://github.com/ceph/ceph/pull/17593>`_, Shasha Lu) -* rgw: drop unused iter in XMLObj::find_first (`pr#19709 <https://github.com/ceph/ceph/pull/19709>`_, luomuyao) -* rgw: drop unused variable bucket_instance_ids (`pr#19708 <https://github.com/ceph/ceph/pull/19708>`_, Bingyin Zhang) -* rgw: drop unused variable in copy_obj_data() (`pr#18477 <https://github.com/ceph/ceph/pull/18477>`_, Enming Zhang) -* rgw: drop unused vector elements (`pr#19815 <https://github.com/ceph/ceph/pull/19815>`_, Bingyin Zhang) -* rgw: drop useless includes in rgw\_{main.cc, common.h} (`pr#19109 <https://github.com/ceph/ceph/pull/19109>`_, Jiaying Ren) -* rgw: drop useless lines (`pr#19817 <https://github.com/ceph/ceph/pull/19817>`_, Bingyin Zhang) -* rgw: drop useless type conversion (`pr#19824 <https://github.com/ceph/ceph/pull/19824>`_, Bingyin Zhang) -* rgw: drop variable bl in rgw_op.cc (`pr#19584 <https://github.com/ceph/ceph/pull/19584>`_, Bingyin Zhang) -* rgw: Drop #warning TODO (`issue#19851 <http://tracker.ceph.com/issues/19851>`_, `pr#17012 <https://github.com/ceph/ceph/pull/17012>`_, Jos Collin) -* rgw: dump Last-Modified in Swift's responses for GET/HEAD on container (`issue#20883 <http://tracker.ceph.com/issues/20883>`_, `pr#16757 <https://github.com/ceph/ceph/pull/16757>`_, Radoslaw Zarzynski) -* rgw: enable 'qlen' & 'qactive' performance counters (`pr#20842 <https://github.com/ceph/ceph/pull/20842>`_, Mark Kogan) -* rgw: encoding fixes (`issue#23779 <http://tracker.ceph.com/issues/23779>`_, `pr#21500 <https://github.com/ceph/ceph/pull/21500>`_, Yehuda Sadeh) -* rgw: Error check on return of read_line() (`pr#17880 <https://github.com/ceph/ceph/pull/17880>`_, Amit Kumar) -* rgw: es module: set compression type correctly (`issue#22758 <http://tracker.ceph.com/issues/22758>`_, `pr#20796 <https://github.com/ceph/ceph/pull/20796>`_, Abhishek Lekshmanan) -* rgw: evaluate the correct bucket action for GetACL bucket operation (`issue#21013 <http://tracker.ceph.com/issues/21013>`_, `pr#17050 <https://github.com/ceph/ceph/pull/17050>`_, Abhishek Lekshmanan) -* rgw: exit early if rgw_bucket_set_attrs() fails (`pr#17041 <https://github.com/ceph/ceph/pull/17041>`_, dengxiafubi) - rgw: Expire entries in bucket info cache -* rgw_file: fix write error when the write offset overlaps (`issue#21455 <http://tracker.ceph.com/issues/21455>`_, `pr#17809 <https://github.com/ceph/ceph/pull/17809>`_, Yao Zongyou) -* rgw: fix a bug in rgw cache in delete_system_obj and get_system_obj (`pr#10992 <https://github.com/ceph/ceph/pull/10992>`_, zhangshaowen) -* rgw: fix accessing expired memory in PrefixableSignatureHelper (`issue#21085 <http://tracker.ceph.com/issues/21085>`_, `pr#17206 <https://github.com/ceph/ceph/pull/17206>`_, Radoslaw Zarzynski) -* rgw: fix a typo in comment (`pr#19608 <https://github.com/ceph/ceph/pull/19608>`_, luomuyao) -* rgw: fix a typo in comment (`pr#20164 <https://github.com/ceph/ceph/pull/20164>`_, luomuyao) -* rgw: fix a typo in comment (`pr#20355 <https://github.com/ceph/ceph/pull/20355>`_, luomuyao) -* rgw: fix a typo in rgw_perms[] (`pr#20024 <https://github.com/ceph/ceph/pull/20024>`_, luomuyao) -* rgw: fix bilog entries on multipart complete (`issue#21772 <http://tracker.ceph.com/issues/21772>`_, `pr#18271 <https://github.com/ceph/ceph/pull/18271>`_, Casey Bodley) -* rgw: fix BZ 1500904, stale bucket index entry remains after obj delete (`pr#18709 <https://github.com/ceph/ceph/pull/18709>`_, J. Eric Ivancich) -* rgw: fix chained cache invalidation to prevent cache size growth (`issue#22410 <http://tracker.ceph.com/issues/22410>`_, `pr#19455 <https://github.com/ceph/ceph/pull/19455>`_, Mark Kogan) -* rgw: Fix closing tag for Prefix (`pr#17663 <https://github.com/ceph/ceph/pull/17663>`_, Shasha Lu) -* rgw: fix cls_bucket_head result order consistency (`pr#18700 <https://github.com/ceph/ceph/pull/18700>`_, Tianshan Qu) -* rgw: fix collect()'s return in coroutine (`pr#19606 <https://github.com/ceph/ceph/pull/19606>`_, Xinying Song) -* rgw: fix command argument error for radosgw-admin (`issue#21723 <http://tracker.ceph.com/issues/21723>`_, `pr#18175 <https://github.com/ceph/ceph/pull/18175>`_, Yao Zongyou) -* rgw: fix 'copy part' without 'x-amz-copy-source-range' (`issue#22729 <http://tracker.ceph.com/issues/22729>`_, `pr#20002 <https://github.com/ceph/ceph/pull/20002>`_, Malcolm Lee) -* rgw: fix 'copy part' without 'x-amz-copy-source-range' when compression enabled (`issue#23196 <http://tracker.ceph.com/issues/23196>`_, `pr#20686 <https://github.com/ceph/ceph/pull/20686>`_, fang yuxiang) -* rgw: fix crash with rgw_run_sync_thread false (`issue#20448 <http://tracker.ceph.com/issues/20448>`_, `pr#20769 <https://github.com/ceph/ceph/pull/20769>`_, Orit Wasserman) -* rgw: Fix dereference of empty optional (`issue#21962 <http://tracker.ceph.com/issues/21962>`_, `pr#18602 <https://github.com/ceph/ceph/pull/18602>`_, Adam C. Emerson) -* rgw: fix error handling for GET with ?torrent (`issue#23506 <http://tracker.ceph.com/issues/23506>`_, `pr#21576 <https://github.com/ceph/ceph/pull/21576>`_, Casey Bodley) -* rgw: fix error handling in Browser Uploads (`pr#15054 <https://github.com/ceph/ceph/pull/15054>`_, Radoslaw Zarzynski) -* rgw: fix error handling in ListBucketIndexesCR (`issue#21735 <http://tracker.ceph.com/issues/21735>`_, `pr#18198 <https://github.com/ceph/ceph/pull/18198>`_, Casey Bodley) -* rgw: fixes for multisite replication of encrypted objects (`issue#20668 <http://tracker.ceph.com/issues/20668>`_, `issue#20671 <http://tracker.ceph.com/issues/20671>`_, `pr#16612 <https://github.com/ceph/ceph/pull/16612>`_, Casey Bodley) -* rgw: fix extra_data_len handling in PutObj filters (`issue#21895 <http://tracker.ceph.com/issues/21895>`_, `pr#18489 <https://github.com/ceph/ceph/pull/18489>`_, Casey Bodley) -* rgw: fix for empty query string in beast frontend (`issue#22797 <http://tracker.ceph.com/issues/22797>`_, `pr#20120 <https://github.com/ceph/ceph/pull/20120>`_, Casey Bodley) -* rgw: fix for issue #21647 (`issue#23859 <http://tracker.ceph.com/issues/23859>`_, `pr#21647 <https://github.com/ceph/ceph/pull/21647>`_, Yehuda Sadeh) -* rgw: fix for pause in beast frontend (`issue#21831 <http://tracker.ceph.com/issues/21831>`_, `pr#18402 <https://github.com/ceph/ceph/pull/18402>`_, Casey Bodley) -* rgw: fix for usage truncated flag (`pr#20926 <https://github.com/ceph/ceph/pull/20926>`_, Yehuda Sadeh, Greg Farnum, Robin H. Johnson) -* rgw: Fix getter function names in RGWEnv (`pr#18377 <https://github.com/ceph/ceph/pull/18377>`_, Jos Collin) -* rgw: fix GET website response error code (`issue#22272 <http://tracker.ceph.com/issues/22272>`_, `pr#19236 <https://github.com/ceph/ceph/pull/19236>`_, Dmitry Plyakin) -* rgw: fix handling of ENOENT in RGWRadosGetOmapKeysCR (`pr#19878 <https://github.com/ceph/ceph/pull/19878>`_, Casey Bodley) -* rgw: fix index cancel op miss update header (`pr#20396 <https://github.com/ceph/ceph/pull/20396>`_, Tianshan Qu) -* rgw: Fix infinite call for bi list when resharding a bucket (`issue#22721 <http://tracker.ceph.com/issues/22721>`_, `pr#21584 <https://github.com/ceph/ceph/pull/21584>`_, Orit Wasserman) -* rgw: fix lc process only schdule the first item of lc objects (`issue#21022 <http://tracker.ceph.com/issues/21022>`_, `pr#17061 <https://github.com/ceph/ceph/pull/17061>`_, Shasha Lu) -* rgw:fix list objects with marker wrong result when bucket is enable versioning (`issue#21500 <http://tracker.ceph.com/issues/21500>`_, `pr#17934 <https://github.com/ceph/ceph/pull/17934>`_, yuliyang) -* rgw: fix memory fragmentation problem reading data from client (`pr#20724 <https://github.com/ceph/ceph/pull/20724>`_, Marcus Watts) -* rgw: Fix multisite Synchronization failed when read and write delete … (`issue#22804 <http://tracker.ceph.com/issues/22804>`_, `pr#20814 <https://github.com/ceph/ceph/pull/20814>`_, Niu Pengju) -* rgw: fix not responding when receiving SIGHUP signal (`pr#16854 <https://github.com/ceph/ceph/pull/16854>`_, Yao Zongyou) -* rgw: fix null pointer crush (`pr#18861 <https://github.com/ceph/ceph/pull/18861>`_, Sibei Gao) -* rgw: fix obj copied from remote gateway acl full_control issue (`issue#20658 <http://tracker.ceph.com/issues/20658>`_, `pr#16127 <https://github.com/ceph/ceph/pull/16127>`_, Enming Zhang) -* rgw: fix opslog cannot record remote_addr (`issue#20931 <http://tracker.ceph.com/issues/20931>`_, `pr#16860 <https://github.com/ceph/ceph/pull/16860>`_, Jiaying Ren) -* rgw: fix opslog can't record referrer when using curl as client (`issue#20935 <http://tracker.ceph.com/issues/20935>`_, `pr#16863 <https://github.com/ceph/ceph/pull/16863>`_, Jiaying Ren) -* rgw: fix opslog uri as per Amazon s3 (`issue#20971 <http://tracker.ceph.com/issues/20971>`_, `pr#16958 <https://github.com/ceph/ceph/pull/16958>`_, Jiaying Ren) -* rgw: fix radosgw-admin bucket rm with --purge-objects and --bypass-gc (`issue#22122 <http://tracker.ceph.com/issues/22122>`_, `issue#19959 <http://tracker.ceph.com/issues/19959>`_, `pr#18922 <https://github.com/ceph/ceph/pull/18922>`_, Aleksei Gutikov) -* rgw: fix radosgw-admin quota enable return value bug (`issue#21608 <http://tracker.ceph.com/issues/21608>`_, `pr#18057 <https://github.com/ceph/ceph/pull/18057>`_, baixueyu) -* rgw: fix radosgw linkage with WITH_RADOSGW_BEAST_FRONTEND=OFF (`issue#23680 <http://tracker.ceph.com/issues/23680>`_, `pr#21380 <https://github.com/ceph/ceph/pull/21380>`_, Casey Bodley) -* rgw: fix recursive lock (`pr#19430 <https://github.com/ceph/ceph/pull/19430>`_, Tianshan Qu) -* rgw: fix resource leak in rgw_bucket.cc and rgw_user.cc (`issue#21214 <http://tracker.ceph.com/issues/21214>`_, `pr#17353 <https://github.com/ceph/ceph/pull/17353>`_, Luo Kexue) -* rgw: fix return value of auth v2/v4 (`issue#22439 <http://tracker.ceph.com/issues/22439>`_, `pr#19310 <https://github.com/ceph/ceph/pull/19310>`_, Bingyin Zhang) -* rgw: fix rewrite a versioning object create a new object bug (`issue#21984 <http://tracker.ceph.com/issues/21984>`_, `pr#18662 <https://github.com/ceph/ceph/pull/18662>`_, Enming Zhang) -* rgw: fix rewrite options usage text (`pr#18968 <https://github.com/ceph/ceph/pull/18968>`_, Jos Collin) -* rgw: fix RGWCompletionManager get_next stuck after going down (`issue#22799 <http://tracker.ceph.com/issues/22799>`_, `pr#20095 <https://github.com/ceph/ceph/pull/20095>`_, Tianshan Qu) -* rgw: fix RGWLibIO did not init RGWEnv (`pr#19065 <https://github.com/ceph/ceph/pull/19065>`_, Tianshan Qu) -* rgw: fix s3 website redirection error (`pr#19252 <https://github.com/ceph/ceph/pull/19252>`_, yuliyang) -* rgw: fix s3website redirect location string length (`pr#19826 <https://github.com/ceph/ceph/pull/19826>`_, yuliyang) -* rgw: fix Swift container naming rules (`issue#19264 <http://tracker.ceph.com/issues/19264>`_, `pr#13992 <https://github.com/ceph/ceph/pull/13992>`_, Robin H. Johnson) -* rgw: Fix swift object expiry not deleting objects (`issue#22084 <http://tracker.ceph.com/issues/22084>`_, `pr#18821 <https://github.com/ceph/ceph/pull/18821>`_, Pavan Rallabhandi) -* rgw: fix sync status conflict with cloud sync (`pr#21425 <https://github.com/ceph/ceph/pull/21425>`_, Casey Bodley) -* rgw: fix the bug of radowgw-admin zonegroup set requires realm (`issue#21583 <http://tracker.ceph.com/issues/21583>`_, `pr#19061 <https://github.com/ceph/ceph/pull/19061>`_, lvshanchun) -* rgw: fix the max-uploads parameter not work (`issue#22825 <http://tracker.ceph.com/issues/22825>`_, `pr#20158 <https://github.com/ceph/ceph/pull/20158>`_, Xin Liao) -* rgw: fix the return type is wrong (`pr#19773 <https://github.com/ceph/ceph/pull/19773>`_, hechuang) -* rgw: fix total_time to msec as per AWS S3 (`pr#17541 <https://github.com/ceph/ceph/pull/17541>`_, Jiaying Ren) -* rgw: fix typo anynoymous to anonymous (`pr#19281 <https://github.com/ceph/ceph/pull/19281>`_, Bingyin Zhang) -* rgw: fix typo compete to complete (`pr#19675 <https://github.com/ceph/ceph/pull/19675>`_, Bingyin Zhang) -* rgw: Fix typo in comment (`pr#21032 <https://github.com/ceph/ceph/pull/21032>`_, Simran Singhal) -* rgw: fix typo in GetOmapKeysCR (`pr#19713 <https://github.com/ceph/ceph/pull/19713>`_, lvshanchun) -* rgw: fix typo signle to single (`pr#19517 <https://github.com/ceph/ceph/pull/19517>`_, Bingyin Zhang) -* rgw: fix typo woild to would (`pr#19472 <https://github.com/ceph/ceph/pull/19472>`_, Bingyin Zhang) -* rgw: Fix use after free in IAM policy parser (`pr#16823 <https://github.com/ceph/ceph/pull/16823>`_, Adam C. Emerson) -* rgw: fix use of libcurl with empty header values (`issue#23663 <http://tracker.ceph.com/issues/23663>`_, `pr#21358 <https://github.com/ceph/ceph/pull/21358>`_, Casey Bodley) -* rgw: format logs in file rgw_lc.cc (`pr#19615 <https://github.com/ceph/ceph/pull/19615>`_, Bingyin Zhang) -* rgw: format rgw_bucket_dir_header in ceph-dencoder (`pr#19753 <https://github.com/ceph/ceph/pull/19753>`_, Bingyin Zhang) -* rgw: gc use aio (`pr#20546 <https://github.com/ceph/ceph/pull/20546>`_, Yehuda Sadeh) - rgw: Handle stale bucket info in RGWDeleteBucketPolicy - rgw: Handle stale bucket info in RGWDeleteBucketWebsite - rgw: Handle stale bucket info in RGWPutBucketPolicy - rgw: Handle stale bucket info in RGWPutMetadataBucket - rgw: Handle stale bucket info in RGWSetBucketVersioning - rgw: Handle stale bucket info in RGWSetBucketWebsite -* rgw: honor the tenant part of rgw_bucket during comparisons (`issue#20897 <http://tracker.ceph.com/issues/20897>`_, `pr#16796 <https://github.com/ceph/ceph/pull/16796>`_, Radoslaw Zarzynski) -* rgw: iam policy printing cleanups (`pr#18961 <https://github.com/ceph/ceph/pull/18961>`_, Kefu Chai) -* rgw: Ignoring the returned error (`pr#17907 <https://github.com/ceph/ceph/pull/17907>`_, Amit Kumar) -* rgw: implement ipv4 aws:SourceIp condition for bucket policy (`pr#19167 <https://github.com/ceph/ceph/pull/19167>`_, yuliyang) -* rgw: improve handling of Swift's error messages and limits (`issue#17938 <http://tracker.ceph.com/issues/17938>`_, `issue#21169 <http://tracker.ceph.com/issues/21169>`_, `issue#17935 <http://tracker.ceph.com/issues/17935>`_, `issue#17934 <http://tracker.ceph.com/issues/17934>`_, `issue#17936 <http://tracker.ceph.com/issues/17936>`_, `pr#15369 <https://github.com/ceph/ceph/pull/15369>`_, Radoslaw Zarzynski) -* rgw: improve sync status: display behind bucket shards (`pr#20027 <https://github.com/ceph/ceph/pull/20027>`_, lvshanchun) -* rgw: improve sync status (`pr#19573 <https://github.com/ceph/ceph/pull/19573>`_, lvshanchun) -* rgw: include SSE-KMS headers in encrypted upload response (`issue#21576 <http://tracker.ceph.com/issues/21576>`_, `pr#17999 <https://github.com/ceph/ceph/pull/17999>`_, Casey Bodley) -* rgw: incorporate the Transfer-Encoding fix for CivetWeb (`issue#21015 <http://tracker.ceph.com/issues/21015>`_, `pr#17072 <https://github.com/ceph/ceph/pull/17072>`_, Radoslaw Zarzynski) -* rgw: Initialization of epoch,len (`pr#17722 <https://github.com/ceph/ceph/pull/17722>`_, Amit Kumar) -* rgw: Initialize is_master, max_aio, size (`pr#16933 <https://github.com/ceph/ceph/pull/16933>`_, amitkuma) -* rgw: Initializes uninitialized members (`pr#16855 <https://github.com/ceph/ceph/pull/16855>`_, Amit Kumar) -* rgw: init oldest period after setting run_sync_thread (`issue#21996 <http://tracker.ceph.com/issues/21996>`_, `pr#18664 <https://github.com/ceph/ceph/pull/18664>`_, Orit Wasserman, Casey Bodley) -* rgw: keep compression type consistent between parts of s3 Multipart (`pr#19740 <https://github.com/ceph/ceph/pull/19740>`_, fang yuxiang) -* rgw: keystone: bump up logging when error is received (`issue#22151 <http://tracker.ceph.com/issues/22151>`_, `pr#18985 <https://github.com/ceph/ceph/pull/18985>`_, Abhishek Lekshmanan) -* rgw:lc fix expiration time (`issue#21533 <http://tracker.ceph.com/issues/21533>`_, `pr#17824 <https://github.com/ceph/ceph/pull/17824>`_, Shasha Lu) -* rgw: lc support Content-MD5 request header and fix a rgw crash bug (`issue#21980 <http://tracker.ceph.com/issues/21980>`_, `pr#18534 <https://github.com/ceph/ceph/pull/18534>`_, Enming Zhang) -* rgw: lease_cr->go_down is called twice, remove the needless one (`pr#19394 <https://github.com/ceph/ceph/pull/19394>`_, Zhang Shaowen) -* rgw: librgw: export multitenancy support (`pr#19358 <https://github.com/ceph/ceph/pull/19358>`_, Tao Chen) -* rgw: librgw: fix shutdown err with resources uncleaned (`issue#22296 <http://tracker.ceph.com/issues/22296>`_, `pr#19279 <https://github.com/ceph/ceph/pull/19279>`_, Tao Chen) -* rgw: lifecycle omap entry was removed in abnormal situation (`pr#19921 <https://github.com/ceph/ceph/pull/19921>`_, fang yuxiang) -* rgw: list_objects() honors end_marker regardless of namespace (`issue#18977 <http://tracker.ceph.com/issues/18977>`_, `pr#15273 <https://github.com/ceph/ceph/pull/15273>`_, Radoslaw Zarzynski) -* rgw: loadgen fix generate random object name rgw crash issue (`issue#22006 <http://tracker.ceph.com/issues/22006>`_, `pr#18536 <https://github.com/ceph/ceph/pull/18536>`_, Enming Zhang) -* rgw: log the right http status code in civetweb frontend's access log (`issue#22538 <http://tracker.ceph.com/issues/22538>`_, `pr#19678 <https://github.com/ceph/ceph/pull/19678>`_, Yao Zongyou) -* rgw: log unlink_instance mtime as object's mtime (`issue#18885 <http://tracker.ceph.com/issues/18885>`_, `pr#20016 <https://github.com/ceph/ceph/pull/20016>`_, Yehuda Sadeh) -* rgw: lttng: Trace rgw data transfer, bi entry and object header update processes (`pr#20556 <https://github.com/ceph/ceph/pull/20556>`_, Yang Honggang) -* rgw: make init env methods return an error (`issue#23039 <http://tracker.ceph.com/issues/23039>`_, `pr#20488 <https://github.com/ceph/ceph/pull/20488>`_, Abhishek Lekshmanan) -* rgw: make radosgw object stat RGW_ATTR_COMPRESSION dump readable (`pr#19846 <https://github.com/ceph/ceph/pull/19846>`_, fang yuxiang) -* rgw: mfa support (`pr#19283 <https://github.com/ceph/ceph/pull/19283>`_, Yehuda Sadeh) -* rgw: mimic: rgw: policy: modify s3:ListBucketMultiPartUploads to s3:ListBucketMul (`issue#24062 <http://tracker.ceph.com/issues/24062>`_, `pr#21916 <https://github.com/ceph/ceph/pull/21916>`_, xiangxiang) -* rgw: modify s3 type subuser access permissions fail through admin rest api (`issue#21983 <http://tracker.ceph.com/issues/21983>`_, `pr#18641 <https://github.com/ceph/ceph/pull/18641>`_, yuliyang) -* rgw: move all pool creation into rgw_init_ioctx (`issue#23480 <http://tracker.ceph.com/issues/23480>`_, `pr#21534 <https://github.com/ceph/ceph/pull/21534>`_, Casey Bodley) -* rgw: mrgw.sh uses instance name 'client.rgw' (`pr#18404 <https://github.com/ceph/ceph/pull/18404>`_, Casey Bodley) -* rgw: multisite log tracing (`pr#16492 <https://github.com/ceph/ceph/pull/16492>`_, Yehuda Sadeh, Casey Bodley) -* rgw,nfs: Add hint to use -o sync when mouting (`pr#16210 <https://github.com/ceph/ceph/pull/16210>`_, Adam Kupczyk) -* rgw: no need to deal with md5 header in get_data (`pr#19144 <https://github.com/ceph/ceph/pull/19144>`_, Zhang Shaowen) -* rgw: optimize function abort_bucket_multiparts (`pr#19710 <https://github.com/ceph/ceph/pull/19710>`_, Bingyin Zhang) -* rgw: optimize function bucket_lc_prepare (`pr#19613 <https://github.com/ceph/ceph/pull/19613>`_, Bingyin Zhang) -* rgw: optimize function parse_raw_oid (`pr#19814 <https://github.com/ceph/ceph/pull/19814>`_, Bingyin Zhang) -* rgw: optimize function RGWHandler::do_init_permissions (`pr#19700 <https://github.com/ceph/ceph/pull/19700>`_, Bingyin Zhang) -* rgw: optimize memory usage in function rgw_bucket::get_key (`pr#19391 <https://github.com/ceph/ceph/pull/19391>`_, Bingyin Zhang) -* rgw: optimize next start time for lifecycle (`pr#19596 <https://github.com/ceph/ceph/pull/19596>`_, Bingyin Zhang) -* rgw: optimize the rgw-attr del code logic (`pr#18895 <https://github.com/ceph/ceph/pull/18895>`_, wangsongbo) -* rgw: optimize time skew check (`pr#19511 <https://github.com/ceph/ceph/pull/19511>`_, Bingyin Zhang) -* rgw: parse old rgw_obj with namespace correctly (`issue#22982 <http://tracker.ceph.com/issues/22982>`_, `pr#20425 <https://github.com/ceph/ceph/pull/20425>`_, Yehuda Sadeh) -* rgw: policy: support for s3 conditionals in ListBucket Op (`pr#16628 <https://github.com/ceph/ceph/pull/16628>`_, Abhishek Lekshmanan) -* rgw: Potential fix for possible 500 on POST (`pr#18954 <https://github.com/ceph/ceph/pull/18954>`_, Adam C. Emerson) -* rgw: Prevent overflow of cached stats values (`issue#20934 <http://tracker.ceph.com/issues/20934>`_, `pr#17116 <https://github.com/ceph/ceph/pull/17116>`_, Aleksei Gutikov) -* rgw: proper error message when tier_type does not exist (`issue#22469 <http://tracker.ceph.com/issues/22469>`_, `pr#19575 <https://github.com/ceph/ceph/pull/19575>`_, lvshanchun, Chang Liu) -* rgw: pull up beast submodule and update frontend (`pr#17923 <https://github.com/ceph/ceph/pull/17923>`_, Casey Bodley) -* rgw: put bucket policy panics RGW process (`issue#22541 <http://tracker.ceph.com/issues/22541>`_, `pr#19687 <https://github.com/ceph/ceph/pull/19687>`_, Bingyin Zhang) -* rgw: radosgw-admin abort early for user stats for empty uids (`issue#23322 <http://tracker.ceph.com/issues/23322>`_, `pr#20846 <https://github.com/ceph/ceph/pull/20846>`_, Abhishek Lekshmanan) -* rgw: radosgw-admin should not use metadata cache for readonly commands (`issue#23468 <http://tracker.ceph.com/issues/23468>`_, `pr#21129 <https://github.com/ceph/ceph/pull/21129>`_, Orit Wasserman) -* rgw: radosgw-admin zonegroup get and zone get return defaults when there is no realm (`issue#21615 <http://tracker.ceph.com/issues/21615>`_, `pr#18667 <https://github.com/ceph/ceph/pull/18667>`_, lvshanchun) -* rgw: radosgw: fix awsv4 header line sort order (`issue#21607 <http://tracker.ceph.com/issues/21607>`_, `pr#18046 <https://github.com/ceph/ceph/pull/18046>`_, Marcus Watts) -* rgw: radosgw: usage: fix bytes_sent bug (`issue#19870 <http://tracker.ceph.com/issues/19870>`_, `pr#16834 <https://github.com/ceph/ceph/pull/16834>`_, Marcus Watts) -* rgw: raise log level on coroutine shutdown errors (`issue#23974 <http://tracker.ceph.com/issues/23974>`_, `pr#21791 <https://github.com/ceph/ceph/pull/21791>`_, Casey Bodley) -* rgw: Reinstating error codes mapping for Roles (`pr#20309 <https://github.com/ceph/ceph/pull/20309>`_, Pritha Srivastava) -* rgw: reject encrypted object COPY before supported (`issue#23232 <http://tracker.ceph.com/issues/23232>`_, `pr#20739 <https://github.com/ceph/ceph/pull/20739>`_, Jeegn Chen) -* rgw: release cls lock if taken in RGWCompleteMultipart (`issue#21596 <http://tracker.ceph.com/issues/21596>`_, `pr#18104 <https://github.com/ceph/ceph/pull/18104>`_, Matt Benjamin) -* rgw: Remove assertions in IAM Policy (`pr#18225 <https://github.com/ceph/ceph/pull/18225>`_, Adam C. Emerson) -* rgw: remove get_system_obj_attrs in function RGWDeleteLC::execute and RGWDeleteCORS::execute (`pr#19582 <https://github.com/ceph/ceph/pull/19582>`_, Bingyin Zhang) -* rgw: remove placement_rule from rgw_link_bucket() (`issue#21990 <http://tracker.ceph.com/issues/21990>`_, `pr#18657 <https://github.com/ceph/ceph/pull/18657>`_, Casey Bodley) -* rgw: remove redundant parenthesis in logs (`pr#19375 <https://github.com/ceph/ceph/pull/19375>`_, Bingyin Zhang) -* rgw: remove redundant S3AnonymousEngine (`pr#19474 <https://github.com/ceph/ceph/pull/19474>`_, Bingyin Zhang) -* rgw: remove redundant signature compare in LocalEngine::authenticate (`pr#19676 <https://github.com/ceph/ceph/pull/19676>`_, Bingyin Zhang) -* rgw: Remove the useless output when list zones (`pr#17434 <https://github.com/ceph/ceph/pull/17434>`_, iliul) -* rgw: remove unused cls_user_add_bucket (`pr#19917 <https://github.com/ceph/ceph/pull/19917>`_, Yao Zongyou) -* rgw: remove unused disable_signal_fd (`pr#18875 <https://github.com/ceph/ceph/pull/18875>`_, Yao Zongyou) -* rgw: remove unused function get_system_obj_attrs (`pr#19852 <https://github.com/ceph/ceph/pull/19852>`_, Yao Zongyou) -* rgw: Remove unused Parameter in Function RGWConf::init() (`pr#17129 <https://github.com/ceph/ceph/pull/17129>`_, Wen Zhang) -* rgw: remove unused param in AWSGeneralAbstractor::get_auth_data_v4 (`pr#19250 <https://github.com/ceph/ceph/pull/19250>`_, Bingyin Zhang) -* rgw: remove unused param in get_bucket_instance_policy_from_attr (`pr#19129 <https://github.com/ceph/ceph/pull/19129>`_, Bingyin Zhang) -* rgw: remove unused variables (`pr#16649 <https://github.com/ceph/ceph/pull/16649>`_, Zhang Lei) -* rgw: remove useless lines in RGWDeleteBucket::execute (`pr#19699 <https://github.com/ceph/ceph/pull/19699>`_, Bingyin Zhang) -* rgw: reshard cancel command should clear bucket resharding flag (`issue#21619 <http://tracker.ceph.com/issues/21619>`_, `pr#21120 <https://github.com/ceph/ceph/pull/21120>`_, Orit Wasserman) -* rgw: reshard should not update stats when linking new bucket instance (`issue#22124 <http://tracker.ceph.com/issues/22124>`_, `pr#19253 <https://github.com/ceph/ceph/pull/19253>`_, Orit Wasserman) -* rgw: retry CORS put/delete operations on ECANCELLED (`issue#22517 <http://tracker.ceph.com/issues/22517>`_, `pr#19601 <https://github.com/ceph/ceph/pull/19601>`_, Adam C. Emerson) -* rgw: return 'Access-Control-Allow-Origin' header when the set and delete bucket website through XMLHttpRequest (`pr#17632 <https://github.com/ceph/ceph/pull/17632>`_, yuliyang) -* rgw: return 'Access-Control-Allow-Origin' header when the set bucket versioning through XMLHttpRequest (`pr#17631 <https://github.com/ceph/ceph/pull/17631>`_, yuliyang) -* rgw: return bucket's location no matter which zonegroup it located in (`issue#21125 <http://tracker.ceph.com/issues/21125>`_, `pr#17250 <https://github.com/ceph/ceph/pull/17250>`_, Shasha Lu) -* rgw: return EINVAL if max_keys can not convert correctly (`issue#23586 <http://tracker.ceph.com/issues/23586>`_, `pr#21285 <https://github.com/ceph/ceph/pull/21285>`_, yuliyang) -* rgw: Return Error if Bucket Policy Contians Undefined Action (`pr#17433 <https://github.com/ceph/ceph/pull/17433>`_, zhangwen) -* rgw: Returning when dst_ioctx.operate() returns error (`pr#17873 <https://github.com/ceph/ceph/pull/17873>`_, Amit Kumar) -* rgw: return valid Location element, CompleteMultipartUpload (`pr#19902 <https://github.com/ceph/ceph/pull/19902>`_, Matt Benjamin) -* rgw: revert PR #8765 (`pr#16807 <https://github.com/ceph/ceph/pull/16807>`_, fang.yuxiang) -* rgw: Revert "radosgw: fix awsv4 header line sort order." (`issue#21832 <http://tracker.ceph.com/issues/21832>`_, `pr#18381 <https://github.com/ceph/ceph/pull/18381>`_, Casey Bodley) -* rgw: Revert "rgw_file: disable FLAG_EXACT_MATCH enforcement" (`issue#22827 <http://tracker.ceph.com/issues/22827>`_, `pr#20171 <https://github.com/ceph/ceph/pull/20171>`_, Matt Benjamin) -* rgw: Revert "rgw: reshard should not update stats when linking new bucket instance" (`pr#20052 <https://github.com/ceph/ceph/pull/20052>`_, Orit Wasserman) -* rgw: rework json/xml escape usage follow #19806 (`pr#19845 <https://github.com/ceph/ceph/pull/19845>`_, fang yuxiang) -* rgw: rgw-admin: check input parameters for friendly prompt (`pr#17343 <https://github.com/ceph/ceph/pull/17343>`_, Yao Zongyou) -* rgw: rgw-admin: check the data extra pool supports omap (`pr#18978 <https://github.com/ceph/ceph/pull/18978>`_, Yao Zongyou) -* rgw: rgw-admin: properly filtering bucket stats by user_id or bucket_name (`pr#19401 <https://github.com/ceph/ceph/pull/19401>`_, Yao Zongyou) -* rgw: rgw-admin: require --yes-i-really-mean-it when using --inconsistent_index (`issue#20777 <http://tracker.ceph.com/issues/20777>`_, `pr#17185 <https://github.com/ceph/ceph/pull/17185>`_, Orit Wasserman) -* rgw: rgw-admin: support for processing all gc objects including unexpired (`pr#17482 <https://github.com/ceph/ceph/pull/17482>`_, Yao Zongyou) -* rgw: RGW: change function parameters from value to refrence (`pr#18355 <https://github.com/ceph/ceph/pull/18355>`_, Sibei Gao) -* rgw: RGWCivetWeb::read_data: fix arguments to mg_read() call (`issue#23596 <http://tracker.ceph.com/issues/23596>`_, `pr#21291 <https://github.com/ceph/ceph/pull/21291>`_, Nathan Cutler) -* rgw: rgw clean-up: remove unreferenced pure virtual class StreamObjData (`pr#18799 <https://github.com/ceph/ceph/pull/18799>`_, J. Eric Ivancich) -* rgw: rgw clean-up: remove unused var & func in RGWRados::SystemObject (`pr#18987 <https://github.com/ceph/ceph/pull/18987>`_, J. Eric Ivancich) -* rgw: rgw cleanup: some unnecessary function called and repeated assignment (`pr#18817 <https://github.com/ceph/ceph/pull/18817>`_, Enming Zhang) -* rgw: rgw cloud sync (`issue#21802 <http://tracker.ceph.com/issues/21802>`_, `pr#18932 <https://github.com/ceph/ceph/pull/18932>`_, lvshanchun, Yehuda Sadeh, Chang Liu, Abhishek Lekshmanan) -* rgw: RGWEnv::set() takes std::string (`issue#22101 <http://tracker.ceph.com/issues/22101>`_, `pr#18866 <https://github.com/ceph/ceph/pull/18866>`_, Casey Bodley) -* rgw: rgw_file: alternate fix deadlock on lru eviction (`pr#20034 <https://github.com/ceph/ceph/pull/20034>`_, Matt Benjamin) -* rgw: rgw_file: avoid evaluating nullptr for readdir offset (`pr#20145 <https://github.com/ceph/ceph/pull/20145>`_, Matt Benjamin) -* rgw: rgw_file: conditionally unlink handles when direct deleted (`issue#23299 <http://tracker.ceph.com/issues/23299>`_, `pr#20834 <https://github.com/ceph/ceph/pull/20834>`_, Matt Benjamin) -* rgw: rgw_file: explicit NFSv3 open() emulation (`pr#18365 <https://github.com/ceph/ceph/pull/18365>`_, Matt Benjamin) -* rgw: rgw_file: fix LRU lane lock in evict_block() (`issue#21141 <http://tracker.ceph.com/issues/21141>`_, `pr#17267 <https://github.com/ceph/ceph/pull/17267>`_, Matt Benjamin) -* rgw: rgw_file: implement variant offset readdir processing (`pr#18335 <https://github.com/ceph/ceph/pull/18335>`_, Matt Benjamin) -* rgw: rgw_file: introduce new fsid and rgw_mount (`pr#15330 <https://github.com/ceph/ceph/pull/15330>`_, Gui Hecheng) -* rgw: rgw_file: set s->obj_size from bytes_written (`issue#21940 <http://tracker.ceph.com/issues/21940>`_, `pr#18571 <https://github.com/ceph/ceph/pull/18571>`_, Matt Benjamin) -* rgw: rgw_file: Silence unused-function warnings (`pr#19278 <https://github.com/ceph/ceph/pull/19278>`_, Brad Hubbard) -* rgw: RGW: fix a bug about inconsistent unit of comparison (`issue#21590 <http://tracker.ceph.com/issues/21590>`_, `pr#17958 <https://github.com/ceph/ceph/pull/17958>`_, gaosibei) -* rgw: rgw.iam: change '1' to '1ULL' in function print_actions (`pr#18900 <https://github.com/ceph/ceph/pull/18900>`_, Bingyin Zhang) -* rgw: rgw_lc: add support for optional filter argument and make ID optional (`issue#19587 <http://tracker.ceph.com/issues/19587>`_, `issue#20872 <http://tracker.ceph.com/issues/20872>`_, `pr#16818 <https://github.com/ceph/ceph/pull/16818>`_, Abhishek Lekshmanan) -* rgw: rgw_lc: support for AWSv4 authentication (`pr#16734 <https://github.com/ceph/ceph/pull/16734>`_, Abhishek Lekshmanan) -* rgw: rgw_log, rgw_file: account for new required envvars (`issue#21942 <http://tracker.ceph.com/issues/21942>`_, `pr#18572 <https://github.com/ceph/ceph/pull/18572>`_, Matt Benjamin) -* rgw: Rgw master fix plus (`issue#21000 <http://tracker.ceph.com/issues/21000>`_, `issue#21003 <http://tracker.ceph.com/issues/21003>`_, `issue#20501 <http://tracker.ceph.com/issues/20501>`_, `pr#17040 <https://github.com/ceph/ceph/pull/17040>`_, Zhang Shaowen, Marcus Watts) -* rgw: rgw, mon: normalize delete/remove in admin console (cleanup 22444) (`issue#14363 <http://tracker.ceph.com/issues/14363>`_, `issue#22444 <http://tracker.ceph.com/issues/22444>`_, `pr#19439 <https://github.com/ceph/ceph/pull/19439>`_, Jesse Williamson) -* rgw: RGW: Multipart upload may double the quota (`issue#21586 <http://tracker.ceph.com/issues/21586>`_, `pr#17959 <https://github.com/ceph/ceph/pull/17959>`_, Sibei Gao) -* rgw: rgw multisite: automated trimming for bucket index logs (`issue#18229 <http://tracker.ceph.com/issues/18229>`_, `pr#17761 <https://github.com/ceph/ceph/pull/17761>`_, Casey Bodley) -* rgw: RGW NFS: mount cmdline example missing -osync (`pr#15855 <https://github.com/ceph/ceph/pull/15855>`_, Matt Benjamin) -* rgw: RGW-NFS: Use rados cluster_stat to report filesystem usage (`issue#22202 <http://tracker.ceph.com/issues/22202>`_, `pr#20093 <https://github.com/ceph/ceph/pull/20093>`_, Supriti Singh) -* rgw: rgw_op: Drop the Old LifecycleConfiguration from logs (`pr#16821 <https://github.com/ceph/ceph/pull/16821>`_, Abhishek Lekshmanan) -* rgw: rgw_op: exit early if object has no attrs in GetObjectTagging (`issue#21010 <http://tracker.ceph.com/issues/21010>`_, `pr#17048 <https://github.com/ceph/ceph/pull/17048>`_, Abhishek Lekshmanan) -* rgw: RGWPutLC return ERR_MALFORMED_XML when missing <Rule> tag in lifecycle.xml (`issue#21377 <http://tracker.ceph.com/issues/21377>`_, `pr#17683 <https://github.com/ceph/ceph/pull/17683>`_, Shasha Lu) -* rgw: rgw_put_system_obj takes bufferlist (`pr#19897 <https://github.com/ceph/ceph/pull/19897>`_, Casey Bodley) -* rgw: rgw_rados: set_attrs now sets the same time for BI & object (`issue#21200 <http://tracker.ceph.com/issues/21200>`_, `pr#17400 <https://github.com/ceph/ceph/pull/17400>`_, Abhishek Lekshmanan) -* rgw: rgw/rgw_op.cc: Fix error message in rgw_user_get_all_buckets_stats (`pr#18781 <https://github.com/ceph/ceph/pull/18781>`_, iliul) -* rgw: rgw: source data in 'default.rgw.buckets.data' may not be deleted after inter-bucket copy (`issue#21819 <http://tracker.ceph.com/issues/21819>`_, `pr#18369 <https://github.com/ceph/ceph/pull/18369>`_, baixueyu) -* rgw: RGW: support for tagging in lifecycle policies (`pr#17305 <https://github.com/ceph/ceph/pull/17305>`_, Abhishek Lekshmanan) -* rgw: RGW: update S3 POST policy handling of Content-Type (`issue#20201 <http://tracker.ceph.com/issues/20201>`_, `pr#18658 <https://github.com/ceph/ceph/pull/18658>`_, Matt Benjamin) -* rgw: rgw: use camelcase format in request headers (`pr#19210 <https://github.com/ceph/ceph/pull/19210>`_, lvshanchun, Chang Liu) -* rgw: RGWUser::init no longer overwrites user_id (`issue#21685 <http://tracker.ceph.com/issues/21685>`_, `pr#18137 <https://github.com/ceph/ceph/pull/18137>`_, Casey Bodley) -* rgw: S3 Bucket Policy Conditions IpAddress and NotIpAddress do not work (`issue#20991 <http://tracker.ceph.com/issues/20991>`_, `pr#17010 <https://github.com/ceph/ceph/pull/17010>`_, John Gibson) -* rgw: s3website error handler uses original object name (`issue#23201 <http://tracker.ceph.com/issues/23201>`_, `pr#20693 <https://github.com/ceph/ceph/pull/20693>`_, Casey Bodley) -* rgw:send x-amz-version-id header when upload files (`pr#18935 <https://github.com/ceph/ceph/pull/18935>`_, Xinying Song) -* rgw: set bucket versioninig donot change versioning status if missing status in xml (`issue#21364 <http://tracker.ceph.com/issues/21364>`_, `pr#17662 <https://github.com/ceph/ceph/pull/17662>`_, Shasha Lu) -* rgw: set num_shards on 'radosgw-admin data sync init' (`issue#22083 <http://tracker.ceph.com/issues/22083>`_, `pr#18883 <https://github.com/ceph/ceph/pull/18883>`_, Casey Bodley) -* rgw: set priority on perf counters (`pr#20006 <https://github.com/ceph/ceph/pull/20006>`_, John Spray) -* rgw: set sync_from_all as true when no value is seen (`issue#22062 <http://tracker.ceph.com/issues/22062>`_, `pr#18926 <https://github.com/ceph/ceph/pull/18926>`_, Abhishek Lekshmanan) -* rgw: setup locks for libopenssl (`issue#22951 <http://tracker.ceph.com/issues/22951>`_, `issue#23203 <http://tracker.ceph.com/issues/23203>`_, `pr#20390 <https://github.com/ceph/ceph/pull/20390>`_, Abhishek Lekshmanan, Jesse Williamson) -* rgw: share time skew check between v2 and v4 auth (`pr#20013 <https://github.com/ceph/ceph/pull/20013>`_, Casey Bodley) -* rgw: Silence maybe-uninitialized false positives (`pr#19274 <https://github.com/ceph/ceph/pull/19274>`_, Brad Hubbard) -* rgw: silence not allow register storage class specifier warning (`pr#19859 <https://github.com/ceph/ceph/pull/19859>`_, Yao Zongyou) -* rgw: simplify use of map::emplace in iam (`pr#18706 <https://github.com/ceph/ceph/pull/18706>`_, Casey Bodley) -* rgw: Small refactor and two bug fixes (`issue#21901 <http://tracker.ceph.com/issues/21901>`_, `issue#21896 <http://tracker.ceph.com/issues/21896>`_, `pr#18606 <https://github.com/ceph/ceph/pull/18606>`_, Adam C. Emerson) -* rgw: some cleanup for sync status (`pr#20894 <https://github.com/ceph/ceph/pull/20894>`_, Enming Zhang) -* rgw: stop/join TokenCache revoke thread only if started (`issue#21666 <http://tracker.ceph.com/issues/21666>`_, `pr#18106 <https://github.com/ceph/ceph/pull/18106>`_, Karol Mroz) -* rgw: stream metadata full sync init (`issue#18079 <http://tracker.ceph.com/issues/18079>`_, `pr#12429 <https://github.com/ceph/ceph/pull/12429>`_, Yehuda Sadeh) -* rgw: submodule: update Beast to ceph/ceph-master branch (`pr#19182 <https://github.com/ceph/ceph/pull/19182>`_, Casey Bodley) -* rgw: switch beast frontend back to stackful coroutine (`issue#20048 <http://tracker.ceph.com/issues/20048>`_, `pr#20449 <https://github.com/ceph/ceph/pull/20449>`_, Casey Bodley) -* rgw: sync tracing fixes (`issue#22833 <http://tracker.ceph.com/issues/22833>`_, `pr#20191 <https://github.com/ceph/ceph/pull/20191>`_, Yehuda Sadeh) -* rgw: tenant fixes for dynamic resharding (`issue#22046 <http://tracker.ceph.com/issues/22046>`_, `pr#18811 <https://github.com/ceph/ceph/pull/18811>`_, Orit Wasserman) -* rgw,tests: fix s3atests that are failing for sometime (`pr#20678 <https://github.com/ceph/ceph/pull/20678>`_, Vasu Kulkarni) -* rgw,tests: qa: fix overrides for openssl_keys task (`pr#20981 <https://github.com/ceph/ceph/pull/20981>`_, Casey Bodley) -* rgw,tests: qa: re enable LC tests (`pr#17020 <https://github.com/ceph/ceph/pull/17020>`_, Abhishek Lekshmanan) -* rgw,tests: qa/rgw: add beast frontend to some rgw suites (`pr#17977 <https://github.com/ceph/ceph/pull/17977>`_, Casey Bodley) -* rgw,tests: qa/rgw: combine swift, s3tests, ragweed into single verify task (`pr#20756 <https://github.com/ceph/ceph/pull/20756>`_, Casey Bodley) -* rgw,tests: qa/rgw: disable log trim in multisite suite (`pr#19438 <https://github.com/ceph/ceph/pull/19438>`_, Casey Bodley) -* rgw,tests: qa/rgw: hadoop-s3a suite targets centos_latest (`pr#17777 <https://github.com/ceph/ceph/pull/17777>`_, Casey Bodley) -* rgw,tests: qa/rgw: ignore errors from 'pool application enable' (`issue#21715 <http://tracker.ceph.com/issues/21715>`_, `pr#18193 <https://github.com/ceph/ceph/pull/18193>`_, Casey Bodley) -* rgw,tests: qa/rgw: remove some civetweb overrides for beast testing (`issue#23002 <http://tracker.ceph.com/issues/23002>`_, `pr#20440 <https://github.com/ceph/ceph/pull/20440>`_, Casey Bodley) -* rgw,tests: qa/rgw: renamed ssl task to openssl_keys (`pr#20863 <https://github.com/ceph/ceph/pull/20863>`_, Ricardo Dias) -* rgw,tests: qa/rgw: use 'ceph osd pool application enable' on created pools (`pr#17162 <https://github.com/ceph/ceph/pull/17162>`_, Casey Bodley) -* rgw,tests: qa/rgw: verify suite tests civetweb with ssl (`pr#20444 <https://github.com/ceph/ceph/pull/20444>`_, Casey Bodley) -* rgw,tests: qa/smoke: add rgw crypto config for s3tests (`pr#17700 <https://github.com/ceph/ceph/pull/17700>`_, Casey Bodley) -* rgw,tests: qa/tasks/swift: add support for the "force-branch" configurable (`pr#21027 <https://github.com/ceph/ceph/pull/21027>`_, Radoslaw Zarzynski) -* rgw,tests: rgw, qa: integrate Tempest to verify RadosGW's compliance with Swift API (`pr#16344 <https://github.com/ceph/ceph/pull/16344>`_, Radoslaw Zarzynski) -* rgw,tests: test/rgw: fix test_encrypted_object_sync for 3+ zones (`pr#17377 <https://github.com/ceph/ceph/pull/17377>`_, Casey Bodley) -* rgw: the metavariables in frontends-related config won't be expanded (`pr#19689 <https://github.com/ceph/ceph/pull/19689>`_, root) -* rgw,tools: tools/rgw: add script to inspect admin socket "cr dump" (`pr#15554 <https://github.com/ceph/ceph/pull/15554>`_, Casey Bodley) -* rgw: Torrents are not supported for objects encrypted using SSE-C (`issue#21720 <http://tracker.ceph.com/issues/21720>`_, `pr#17956 <https://github.com/ceph/ceph/pull/17956>`_, Zhang Shaowen) -* rgw: trim all spaces inside a metadata value (`issue#23301 <http://tracker.ceph.com/issues/23301>`_, `pr#20841 <https://github.com/ceph/ceph/pull/20841>`_, Orit Wasserman) -* rgw: udpate radosgw-admin usage with bi purge (`pr#18245 <https://github.com/ceph/ceph/pull/18245>`_, Yao Zongyou) -* rgw: unlink deleted bucket from bucket's owner (`issue#22248 <http://tracker.ceph.com/issues/22248>`_, `pr#20017 <https://github.com/ceph/ceph/pull/20017>`_, Casey Bodley) -* rgw: unreachable return in RGWRados::trim_bi_log_entries (`pr#17367 <https://github.com/ceph/ceph/pull/17367>`_, Amit Kumar) -* rgw: update life cycle related log level (`pr#18845 <https://github.com/ceph/ceph/pull/18845>`_, Yao Zongyou) -* rgw: update outdated debug func name (`pr#17440 <https://github.com/ceph/ceph/pull/17440>`_, Jiaying Ren) -* rgw: update quota is inconsistent at add/del object with compression (`issue#22568 <http://tracker.ceph.com/issues/22568>`_, `pr#19772 <https://github.com/ceph/ceph/pull/19772>`_, fang yuxiang) -* rgw: update the usage read iterator in truncated scenario (`issue#21196 <http://tracker.ceph.com/issues/21196>`_, `pr#17939 <https://github.com/ceph/ceph/pull/17939>`_, Mark Kogan) -* rgw: update usage() with status (`pr#18178 <https://github.com/ceph/ceph/pull/18178>`_, Jos Collin) -* rgw: update vstart.sh to support rgw ssl port notation : '--rgw_port 443s' (`issue#21151 <http://tracker.ceph.com/issues/21151>`_, `pr#17989 <https://github.com/ceph/ceph/pull/17989>`_, Mark Kogan) -* rgw: upldate the max-buckets when the quota is uploaded (`pr#20063 <https://github.com/ceph/ceph/pull/20063>`_, zhaokun) -* rgw: URL-decode S3 and Swift object-copy URLs (`issue#22121 <http://tracker.ceph.com/issues/22121>`_, `pr#19936 <https://github.com/ceph/ceph/pull/19936>`_, Matt Benjamin) -* rgw: url_encode key name and instance in es sync module (`pr#20707 <https://github.com/ceph/ceph/pull/20707>`_, Chang Liu) -* rgw: use explicit index pool placement (`issue#22928 <http://tracker.ceph.com/issues/22928>`_, `pr#20352 <https://github.com/ceph/ceph/pull/20352>`_, Yehuda Sadeh) -* rgw: Use namespace for lc_pool and roles_pool (`issue#20177 <http://tracker.ceph.com/issues/20177>`_, `pr#16889 <https://github.com/ceph/ceph/pull/16889>`_, Orit Wasserman) -* rgw: Various cleanups and options update in rgw_admin.cc (`pr#18302 <https://github.com/ceph/ceph/pull/18302>`_, Jos Collin) -* rgw: vstart.sh: fix mstop.sh can not stop rgw (`pr#17438 <https://github.com/ceph/ceph/pull/17438>`_, Jiaying Ren) -* rgw: 'zone placement' commands validate compression type (`issue#21775 <http://tracker.ceph.com/issues/21775>`_, `pr#18273 <https://github.com/ceph/ceph/pull/18273>`_, Casey Bodley) -* rocksdb: sync with upstream (`issue#21603 <http://tracker.ceph.com/issues/21603>`_, `pr#18262 <https://github.com/ceph/ceph/pull/18262>`_, Kefu Chai) -* rpm: rm macros in comments (`issue#22250 <http://tracker.ceph.com/issues/22250>`_, `pr#17070 <https://github.com/ceph/ceph/pull/17070>`_, Ken Dreyer) -* script/build-integration-branch: check errors (`pr#17578 <https://github.com/ceph/ceph/pull/17578>`_, Sage Weil) -* script/build-integration-branch: python3 compatible and pep8 clean (`pr#18035 <https://github.com/ceph/ceph/pull/18035>`_, Kefu Chai) -* scripts: new backport-create-issue script (`pr#21480 <https://github.com/ceph/ceph/pull/21480>`_, Nathan Cutler) -* selinux: Allow ceph to execute ldconfig (`pr#21974 <https://github.com/ceph/ceph/pull/21974>`_, Boris Ranto) -* selinux: Allow getattr on lnk sysfs files (`pr#17891 <https://github.com/ceph/ceph/pull/17891>`_, Boris Ranto) -* spdk: advance to upstream dc82989d (`pr#20713 <https://github.com/ceph/ceph/pull/20713>`_, Nathan Cutler) -* src: fix various log messages (`pr#21112 <https://github.com/ceph/ceph/pull/21112>`_, Gu Zhongyan) -* src/msg/rdma: fixes failure on assert in notify() (`pr#17007 <https://github.com/ceph/ceph/pull/17007>`_, Alex Mikheev) -* suites/cephmetrics: Add Centos 7 (`pr#18594 <https://github.com/ceph/ceph/pull/18594>`_, Zack Cerza) -* test: assert check for negative returns (`pr#17296 <https://github.com/ceph/ceph/pull/17296>`_, Amit Kumar) -* test/fio: generate db histogram to help debug rocksdb performance (`pr#16808 <https://github.com/ceph/ceph/pull/16808>`_, Pan Liu, Xiaoyan Li) -* test: fix bash path in shebangs (part 2) (`pr#17955 <https://github.com/ceph/ceph/pull/17955>`_, Alan Somers) -* test: fix CLI unit formatting tests (`pr#22260 <https://github.com/ceph/ceph/pull/22260>`_, Jason Dillaman) -* test: Incorrect conversion to double (`pr#18963 <https://github.com/ceph/ceph/pull/18963>`_, Amit Kumar) -* test/librados: reorder ASSERT_EQ() arguments (`pr#16625 <https://github.com/ceph/ceph/pull/16625>`_, Yan Jun) -* test,osd,kvstore_tool: silence warnings and prepare test buffer in the right way (`pr#18406 <https://github.com/ceph/ceph/pull/18406>`_, Adam C. Emerson) -* tests: bluestore/fio: Fixed problem with all objects having the same hash (`pr#17770 <https://github.com/ceph/ceph/pull/17770>`_, Adam Kupczyk) -* tests: CentOS 7.4 is now the latest (`pr#17776 <https://github.com/ceph/ceph/pull/17776>`_, Nathan Cutler) -* tests - ceph-ansible vars additions (`issue#21822 <http://tracker.ceph.com/issues/21822>`_, `pr#18378 <https://github.com/ceph/ceph/pull/18378>`_, Yuri Weinstein) -* tests: ceph-disk: ignore E722 in flake8 test (`issue#22207 <http://tracker.ceph.com/issues/22207>`_, `pr#19072 <https://github.com/ceph/ceph/pull/19072>`_, Nathan Cutler) -* tests: ceph-disk: mock get fsid (`pr#19254 <https://github.com/ceph/ceph/pull/19254>`_, Kefu Chai) -* tests: ceph-disk: Remove sitepackages=True (`issue#22823 <http://tracker.ceph.com/issues/22823>`_, `pr#20151 <https://github.com/ceph/ceph/pull/20151>`_, Brad Hubbard) -* tests: ceph-objectstore-tool: don't destroy SnapMapper until the txn is completed (`issue#23121 <http://tracker.ceph.com/issues/23121>`_, `pr#20593 <https://github.com/ceph/ceph/pull/20593>`_, Kefu Chai) -* tests: Changes required for teuthology's systemd support (`pr#18380 <https://github.com/ceph/ceph/pull/18380>`_, Zack Cerza) -* tests: Check for empty output in test_dump_pgstate_history (`pr#20838 <https://github.com/ceph/ceph/pull/20838>`_, Brad Hubbard) -* tests: cleanup: drop calamari tasks (`pr#17531 <https://github.com/ceph/ceph/pull/17531>`_, Nathan Cutler) -* tests: cleanup: drop upgrade/jewel-x/point-to-point-x (`issue#22888 <http://tracker.ceph.com/issues/22888>`_, `pr#20245 <https://github.com/ceph/ceph/pull/20245>`_, Nathan Cutler) -* tests: cmake,test/mgr: restructure dashboard tests and cmake related fixes (`pr#20768 <https://github.com/ceph/ceph/pull/20768>`_, Kefu Chai) -* tests: common/obj_bencher: set {min,max}_iops if runtime < 1 sec (`pr#17182 <https://github.com/ceph/ceph/pull/17182>`_, Kefu Chai) -* tests: c_read_operations.cc: Silence tautological-compare compiler warning (`pr#19953 <https://github.com/ceph/ceph/pull/19953>`_, Brad Hubbard) -* tests: fix uninitialized value found by coverity scan (`pr#17895 <https://github.com/ceph/ceph/pull/17895>`_, J. Eric Ivancich) -* tests: Increase sleep in test_pidfile.sh (`pr#17052 <https://github.com/ceph/ceph/pull/17052>`_, David Zafman) -* tests: librgw_file: remove unused `using` statement (`pr#17085 <https://github.com/ceph/ceph/pull/17085>`_, Yao Zongyou) -* tests: mark_unfound_lost fix and some other minor changes (`issue#21907 <http://tracker.ceph.com/issues/21907>`_, `pr#18449 <https://github.com/ceph/ceph/pull/18449>`_, David Zafman) -* tests: mgr/dashboard: Allow sourcing `run-backend-api-tests.sh` (`pr#20874 <https://github.com/ceph/ceph/pull/20874>`_, Sebastian Wagner) -* tests: mgr/dashboard: create venv for running tox (`pr#21490 <https://github.com/ceph/ceph/pull/21490>`_, Kefu Chai) -* tests: mgr/dashboard: notification queue: fix priority tests (`pr#21147 <https://github.com/ceph/ceph/pull/21147>`_, Ricardo Dias) -* tests: mimic: qa: fix test on "ceph fs set cephfs allow_new_snaps" (`pr#21830 <https://github.com/ceph/ceph/pull/21830>`_, Kefu Chai) -* tests: mimic: qa/workunits/rados/test_envlibrados_for_rocksdb: install g++ not g++-4.7 (`pr#22117 <https://github.com/ceph/ceph/pull/22117>`_, Kefu Chai) -* tests: mimic: test: Need to escape parens in log-whitelist for grep (`pr#22075 <https://github.com/ceph/ceph/pull/22075>`_, David Zafman) -* tests: mimic: test: wait_for_pg_stats() should do another check after last 13 secon… (`pr#22199 <https://github.com/ceph/ceph/pull/22199>`_, David Zafman) -* tests: misc: Fix bash path in shebangs (`pr#16494 <https://github.com/ceph/ceph/pull/16494>`_, Alan Somers) -* tests: mstart.sh: remove bashizm in /bin/sh script (`pr#18541 <https://github.com/ceph/ceph/pull/18541>`_, Mykola Golub) -* tests: point-to-point-x: upgrade client.1 to -x along with cluster nodes (`issue#21499 <http://tracker.ceph.com/issues/21499>`_, `pr#17910 <https://github.com/ceph/ceph/pull/17910>`_, Nathan Cutler) -* tests: qa: add cbt task for performance testing (`pr#17583 <https://github.com/ceph/ceph/pull/17583>`_, Neha Ojha) -* tests: qa: add cosbench workloads and override teuthology default settings (`pr#21710 <https://github.com/ceph/ceph/pull/21710>`_, Neha Ojha) -* tests/qa: Adding $ distro mix - rgw (`pr#22070 <https://github.com/ceph/ceph/pull/22070>`_, Yuri Weinstein) -* tests/qa: adding rados/.. dirs (`pr#22068 <https://github.com/ceph/ceph/pull/22068>`_, Yuri Weinstein) -* tests: qa: add "restful" to ceph_mgr_modules in ceph-ansible suite (`pr#18634 <https://github.com/ceph/ceph/pull/18634>`_, Kefu Chai) -* tests: qa: add simple and dirty script to find ports being used (`pr#19102 <https://github.com/ceph/ceph/pull/19102>`_, Joao Eduardo Luis) -* tests: qa: big: add openstack.yaml (`pr#16864 <https://github.com/ceph/ceph/pull/16864>`_, Nathan Cutler) -* tests: qa: clean up dnsmasq task and fix EPERM error (`pr#20680 <https://github.com/ceph/ceph/pull/20680>`_, Casey Bodley) -* tests: qa: create_cache_pool no longer runs 'pool application enable' (`issue#21155 <http://tracker.ceph.com/issues/21155>`_, `pr#17312 <https://github.com/ceph/ceph/pull/17312>`_, Casey Bodley) -* tests: qa: decrease the msg_inject_socket_failures from 1/500 to 1/1000 (`issue#22093 <http://tracker.ceph.com/issues/22093>`_, `pr#19542 <https://github.com/ceph/ceph/pull/19542>`_, Kefu Chai) -* tests: qa: disable mon-health-to-clog in upgrade test (`pr#19233 <https://github.com/ceph/ceph/pull/19233>`_, Kefu Chai) -* tests: qa: disable -Werror when compiling env_librados_test (`pr#21433 <https://github.com/ceph/ceph/pull/21433>`_, Kefu Chai) -* tests: qa: do not "ceph fs get cephfs" w/o a cephfs fs (`pr#18533 <https://github.com/ceph/ceph/pull/18533>`_, Kefu Chai) -* tests: qa: do not wait for down/out osd for pg convergence (`pr#18808 <https://github.com/ceph/ceph/pull/18808>`_, Kefu Chai) -* tests/qa - enabled `ceph-deploy` runs on `mira` nodes (`pr#21253 <https://github.com/ceph/ceph/pull/21253>`_, Yuri Weinstein) -* tests: qa: fix pool-quota related tests (`issue#21409 <http://tracker.ceph.com/issues/21409>`_, `pr#17763 <https://github.com/ceph/ceph/pull/17763>`_, xie xingguo) -* tests: qa: Fix shebangs on openstack scripts (`pr#16546 <https://github.com/ceph/ceph/pull/16546>`_, Alan Somers) -* tests: qa: reduce "mon client hunt interval max multiple" to 2 for all clients (`pr#21658 <https://github.com/ceph/ceph/pull/21658>`_, Kefu Chai) -* tests: qa: reduce mon-client-hunt-interval-max-multiple to 2 (`pr#18283 <https://github.com/ceph/ceph/pull/18283>`_, Kefu Chai) -* tests: qa: revert "qa: use config_path property instead of literal" (`pr#17850 <https://github.com/ceph/ceph/pull/17850>`_, Patrick Donnelly) -* tests: qa/run-standalone.sh: set PYTHONPATH for FreeBSD also (`pr#20646 <https://github.com/ceph/ceph/pull/20646>`_, Kefu Chai) -* tests: qa: s/backfill/backfilling/ (`pr#18235 <https://github.com/ceph/ceph/pull/18235>`_, Kefu Chai) -* tests: qa/stanalone: pass options using --<option-name>=<value> (`pr#19544 <https://github.com/ceph/ceph/pull/19544>`_, Kefu Chai) -* tests: qa/standalone: Add trap for signals to restore the kernel core pattern (`pr#17026 <https://github.com/ceph/ceph/pull/17026>`_, David Zafman) -* tests: qa/standalone/ceph-helpers.sh: provide argument to dirname (`issue#23805 <http://tracker.ceph.com/issues/23805>`_, `pr#21552 <https://github.com/ceph/ceph/pull/21552>`_, Nathan Cutler) -* tests: qa/standalone/ceph-helpers.sh: silence ceph-disk DEPRECATION_WARNING (`pr#19478 <https://github.com/ceph/ceph/pull/19478>`_, Kefu Chai) -* tests: qa/standalone: extract delete_pool() (`pr#20634 <https://github.com/ceph/ceph/pull/20634>`_, Kefu Chai) -* tests: qa/standalone: misc fixes (`issue#20465 <http://tracker.ceph.com/issues/20465>`_, `issue#20921 <http://tracker.ceph.com/issues/20921>`_, `pr#16709 <https://github.com/ceph/ceph/pull/16709>`_, David Zafman) -* tests: qa/standalone/mon/misc.sh: Add osdmap-prune tests (`issue#23621 <http://tracker.ceph.com/issues/23621>`_, `pr#21318 <https://github.com/ceph/ceph/pull/21318>`_, Brad Hubbard) -* tests: qa/standalone/osd/osd-mark-down: create pool to get updated osdmap faster (`pr#18191 <https://github.com/ceph/ceph/pull/18191>`_, huangjun) -* tests: qa/standalone: remove osd-map-max-advance related tests (`issue#22596 <http://tracker.ceph.com/issues/22596>`_, `pr#19816 <https://github.com/ceph/ceph/pull/19816>`_, Kefu Chai) -* tests: qa/standalone: respect $TEMPDIR (`pr#17747 <https://github.com/ceph/ceph/pull/17747>`_, Kefu Chai) -* tests: qa/standalone/scrub/osd-scrub-repair.sh: add extents flag into object_info_t (`issue#21618 <http://tracker.ceph.com/issues/21618>`_, `pr#18094 <https://github.com/ceph/ceph/pull/18094>`_, xie xingguo) -* tests: qa/standalone/scrub/osd-scrub-repair.sh: drop omap_digest flag (`pr#18150 <https://github.com/ceph/ceph/pull/18150>`_, xie xingguo, Sage Weil) -* tests: qa/standalone: s/delete_erasure_pool/delete_erasure_coded_pool/ (`pr#20667 <https://github.com/ceph/ceph/pull/20667>`_, Kefu Chai) -* tests: qa: stop testing deprecated "ceph osd create" (`issue#21993 <http://tracker.ceph.com/issues/21993>`_, `pr#18659 <https://github.com/ceph/ceph/pull/18659>`_, Kefu Chai) -* tests: qa/suites: add minimal performance suite (`pr#21104 <https://github.com/ceph/ceph/pull/21104>`_, Neha Ojha) -* tests: qa/suites/cephmetrics: Updates for new version (`pr#21146 <https://github.com/ceph/ceph/pull/21146>`_, Zack Cerza) -* tests: qa/suites: change fixed-2.yaml users to get 4 openstack disks (`pr#16873 <https://github.com/ceph/ceph/pull/16873>`_, Sage Weil) -* tests: qa/suites: mds.0 -> mds.a (`pr#20848 <https://github.com/ceph/ceph/pull/20848>`_, Sage Weil) -* tests: qa/suites/rados: Disable scrub backoff (`issue#23578 <http://tracker.ceph.com/issues/23578>`_, `pr#21295 <https://github.com/ceph/ceph/pull/21295>`_, Brad Hubbard) -* tests: qa/suites/rados/mgr/tasks/dashboard: add MDS_ALL_DOWN to whitelist (`pr#21549 <https://github.com/ceph/ceph/pull/21549>`_, Ricardo Dias) -* tests: qa/suites/rados/mgr/tasks/dashboard_v2: add fail_on_skip = false (`pr#20925 <https://github.com/ceph/ceph/pull/20925>`_, Ricardo Dias) -* tests: qa/suites/rados/multimon: whitelist mgr down vs clock skew test (`pr#16996 <https://github.com/ceph/ceph/pull/16996>`_, Sage Weil) -* tests: qa/suites/rados/singleton: more whitelist (`pr#19225 <https://github.com/ceph/ceph/pull/19225>`_, Kefu Chai) -* tests: qa/suites/rados/thrash-old-clients: ms_type=simple (`issue#23922 <http://tracker.ceph.com/issues/23922>`_, `pr#21739 <https://github.com/ceph/ceph/pull/21739>`_, Kefu Chai) -* tests: qa/suites/rados/upgrade/jewel-x-singleton: tolerate sloppy past_intervals (`pr#17293 <https://github.com/ceph/ceph/pull/17293>`_, Kefu Chai) -* tests: qa/suites/rest/basic/tasks/rest_test: more whitelisting (`issue#21425 <http://tracker.ceph.com/issues/21425>`_, `pr#17794 <https://github.com/ceph/ceph/pull/17794>`_, huangjun) -* tests: qa/suites/rest/basic/tasks/rest_test: whiltelist OSD_DOWN (`issue#21425 <http://tracker.ceph.com/issues/21425>`_, `pr#18144 <https://github.com/ceph/ceph/pull/18144>`_, huangjun) -* tests: qa/suites/upgarde/jewel-x/parallel: tolerate mgr warning (`pr#17203 <https://github.com/ceph/ceph/pull/17203>`_, Sage Weil) -* tests: qa/suites/upgarde/jewel-x/point-to-point-x: disable app warnings (`pr#16947 <https://github.com/ceph/ceph/pull/16947>`_, Sage Weil) -* tests: qa/suites: whitelist SLOW_OPS (`issue#23495 <http://tracker.ceph.com/issues/23495>`_, `pr#21324 <https://github.com/ceph/ceph/pull/21324>`_, Kefu Chai) -* tests: qa/tasks: Add default timeout for wait for pg clean task (`pr#21313 <https://github.com/ceph/ceph/pull/21313>`_, Vasu Kulkarni) -* tests: qa/tasks/ceph_deploy: gatherkeys before mgr deploy (`pr#17224 <https://github.com/ceph/ceph/pull/17224>`_, Sage Weil) -* tests: qa/tasks/ceph_manager: use set_config on revived osd (`pr#20901 <https://github.com/ceph/ceph/pull/20901>`_, Neha Ojha) -* tests: qa/tasks/mgr/dashboard: Fix login expires too soon (`pr#21021 <https://github.com/ceph/ceph/pull/21021>`_, Sebastian Wagner) -* tests: qa/tasks: prolong revive_osd() timeout to 6 min (`issue#21474 <http://tracker.ceph.com/issues/21474>`_, `pr#17902 <https://github.com/ceph/ceph/pull/17902>`_, Kefu Chai) -* tests: qa/tasks: prolong revive_osd() timeout to 6 min (`issue#21474 <http://tracker.ceph.com/issues/21474>`_, `pr#19024 <https://github.com/ceph/ceph/pull/19024>`_, Kefu Chai) -* tests: qa/tasks: run cosbench using the CBT task (`pr#21656 <https://github.com/ceph/ceph/pull/21656>`_, Neha Ojha) -* tests: qa/tasks: update ceph-deploy task to use newer ceph-volume syntax (`pr#19244 <https://github.com/ceph/ceph/pull/19244>`_, Vasu Kulkarni) -* tests: qa/tests: Add additional required ceph-ansible vars due to upstream changes (`pr#17757 <https://github.com/ceph/ceph/pull/17757>`_, Vasu Kulkarni) -* tests: qa/tests: add ceph-deploy upgrade tests (`issue#20950 <http://tracker.ceph.com/issues/20950>`_, `pr#16826 <https://github.com/ceph/ceph/pull/16826>`_, Vasu Kulkarni) -* tests: qa/tests: add openstack volume info + lvs for ceph-volume (`pr#20243 <https://github.com/ceph/ceph/pull/20243>`_, Vasu Kulkarni) -* tests: qa/tests: Fix get_system_type failure due to invalid remote name (`pr#17650 <https://github.com/ceph/ceph/pull/17650>`_, Vasu Kulkarni) -* tests: qa/tests: fix rbd pool creation for systemd tests (`pr#17536 <https://github.com/ceph/ceph/pull/17536>`_, Vasu Kulkarni) -* tests: [qa/tests]: misc ceph-ansible fixes and udpate (`pr#17096 <https://github.com/ceph/ceph/pull/17096>`_, Vasu Kulkarni) -* tests: qa/tests/rados: Remove unsupported 2-size-1-min-size config (`pr#17576 <https://github.com/ceph/ceph/pull/17576>`_, Vasu Kulkarni) -* tests: qa/tests: use ceph-deploy stable branch for single node tests (`pr#20979 <https://github.com/ceph/ceph/pull/20979>`_, Vasu Kulkarni) -* tests: qa/tests: Various whitelists for smoke suite (`issue#21376 <http://tracker.ceph.com/issues/21376>`_, `pr#17680 <https://github.com/ceph/ceph/pull/17680>`_, Vasu Kulkarni) -* tests: qa/tests: Wip ceph deploy upgrade (`pr#17651 <https://github.com/ceph/ceph/pull/17651>`_, Vasu Kulkarni) -* tests: qa/workunits/rados/test_large_omap_detection: Scrub pgs instead of OSDs (`pr#21410 <https://github.com/ceph/ceph/pull/21410>`_, Brad Hubbard) -* tests: qa/workunits: silence py warnings for ceph-disk tests (`issue#22154 <http://tracker.ceph.com/issues/22154>`_, `pr#19075 <https://github.com/ceph/ceph/pull/19075>`_, Kefu Chai) -* tests: rados: Copy payload in ceph_perf_msgr_client (`issue#22100 <http://tracker.ceph.com/issues/22100>`_, `pr#18862 <https://github.com/ceph/ceph/pull/18862>`_, Jeegn Chen) -* tests: rados: Intializing members class StriperTest (`pr#16843 <https://github.com/ceph/ceph/pull/16843>`_, amitkuma) -* tests: remove TestPGLog ASSERT_DEATH test (`issue#23504 <http://tracker.ceph.com/issues/23504>`_, `pr#21117 <https://github.com/ceph/ceph/pull/21117>`_, Nathan Cutler) -* tests: run-standalone.sh improve error message (`pr#17093 <https://github.com/ceph/ceph/pull/17093>`_, David Zafman) -* tests: run-standalone.sh skip core_pattern if already set (`pr#17098 <https://github.com/ceph/ceph/pull/17098>`_, David Zafman) -* tests: test/admin_socket_output: add --vstart=path/to/asok option (`pr#20371 <https://github.com/ceph/ceph/pull/20371>`_, Kefu Chai) -* tests: test/admin_socket_output: better error reporting (`pr#20409 <https://github.com/ceph/ceph/pull/20409>`_, Brad Hubbard) -* tests: test/admin_socket_output: switch to std::experimental::filesystem (`pr#20307 <https://github.com/ceph/ceph/pull/20307>`_, Kefu Chai) -* tests: test/ceph_test_objectstore: make settings update and restore less error prone (`pr#21145 <https://github.com/ceph/ceph/pull/21145>`_, Igor Fedotov) -* tests: test: checking negative returns from creat() (`pr#18090 <https://github.com/ceph/ceph/pull/18090>`_, amitkuma) -* tests: test/CMakeLists: disable test_pidfile.sh (`issue#20975 <http://tracker.ceph.com/issues/20975>`_, `pr#16977 <https://github.com/ceph/ceph/pull/16977>`_, Sage Weil) -* tests: test/CMakeLists: disable test-pidfile.sh (`pr#17401 <https://github.com/ceph/ceph/pull/17401>`_, Sage Weil) -* tests: test/coredumpctl: support freebsd (`pr#17447 <https://github.com/ceph/ceph/pull/17447>`_, Kefu Chai) -* tests: test/dashboard: hardcode .coverage path to workaround tox bugs (`pr#21485 <https://github.com/ceph/ceph/pull/21485>`_, Kefu Chai) -* tests: test/dashboard: specify workdir using tox.ini (`issue#23709 <http://tracker.ceph.com/issues/23709>`_, `pr#21416 <https://github.com/ceph/ceph/pull/21416>`_, Kefu Chai) -* tests: test: Don't dump core when using EXPECT_DEATH (`pr#17390 <https://github.com/ceph/ceph/pull/17390>`_, Kefu Chai) -* tests: test/fio: extend fio objectstore plugin to better simulate OSD behavior (`pr#19101 <https://github.com/ceph/ceph/pull/19101>`_, Igor Fedotov) -* tests: test/fio: fix building of the fio_ceph_objectstore plugin (`pr#18332 <https://github.com/ceph/ceph/pull/18332>`_, Radoslaw Zarzynski) -* tests: test: Fix and enable test_pidfile.sh (`issue#20770 <http://tracker.ceph.com/issues/20770>`_, `pr#16987 <https://github.com/ceph/ceph/pull/16987>`_, David Zafman) -* tests: test: Fix ceph-objectstore-tool usage check (`pr#17785 <https://github.com/ceph/ceph/pull/17785>`_, David Zafman) -* tests: test: fix misc fiemap testing (`issue#21716 <http://tracker.ceph.com/issues/21716>`_, `pr#18240 <https://github.com/ceph/ceph/pull/18240>`_, Kefu Chai, Ning Yao) -* tests: test: Initialization of \*comp_racing_read class CopyFromOp (`pr#17369 <https://github.com/ceph/ceph/pull/17369>`_, Amit Kumar) -* tests: test: Initializing ChunkReadOp members (`pr#19334 <https://github.com/ceph/ceph/pull/19334>`_, amitkuma) -* tests: test/journal: Initialize member variable m_work_queue (`pr#17089 <https://github.com/ceph/ceph/pull/17089>`_, amitkuma) -* tests: test/librados: be more tolerant with timed lock tests (`issue#20086 <http://tracker.ceph.com/issues/20086>`_, `pr#20161 <https://github.com/ceph/ceph/pull/20161>`_, Kefu Chai) -* tests: test/librados: increase pgp_num along with pg_num (`issue#23763 <http://tracker.ceph.com/issues/23763>`_, `pr#21555 <https://github.com/ceph/ceph/pull/21555>`_, Kefu Chai) -* tests: test/librados: s/invoke_result_t/result_of_t/ (`pr#20379 <https://github.com/ceph/ceph/pull/20379>`_, Kefu Chai) -* tests: test/librados_test_stub: pass snap context to zero op (`pr#17186 <https://github.com/ceph/ceph/pull/17186>`_, Mykola Golub) -* tests: test/log: fix for crash with libc++ (`pr#20233 <https://github.com/ceph/ceph/pull/20233>`_, Casey Bodley) -* tests: test: Make clearer by moving code out of loop (`pr#20759 <https://github.com/ceph/ceph/pull/20759>`_, David Zafman) -* tests: test/objectstore/test_bluefs: cleanups (`pr#17909 <https://github.com/ceph/ceph/pull/17909>`_, Kefu Chai) -* tests: test: only test dashboard_v2 when it is enabled (`pr#20777 <https://github.com/ceph/ceph/pull/20777>`_, Willem Jan Withagen) -* tests: test: only test enabled python bindings (`pr#21293 <https://github.com/ceph/ceph/pull/21293>`_, Kefu Chai) -* tests: test/osd: initialize Non-static class members in WeightedTestGenerator (`pr#15922 <https://github.com/ceph/ceph/pull/15922>`_, Jos Collin) -* tests: test/osd: Non-static class members not initialized in UnsetRedirectOp (`pr#15921 <https://github.com/ceph/ceph/pull/15921>`_, Jos Collin) -* tests: test/osd: silence warnings from -Wsign-compare (`pr#17027 <https://github.com/ceph/ceph/pull/17027>`_, Jos Collin) -* tests: test: put new BlueStore tests un ifdef WITH_BLUESTORE (`pr#20576 <https://github.com/ceph/ceph/pull/20576>`_, Willem Jan Withagen) -* tests: test:qa:infra - Run update daily and use bash (`pr#21218 <https://github.com/ceph/ceph/pull/21218>`_, David Galloway) -* tests: test:qa:infra - teuthology crontab items as of 3/27/18 (`pr#21075 <https://github.com/ceph/ceph/pull/21075>`_, Yuri Weinstein) -* tests: test: reduce the chance to have degraded PGs (`issue#22711 <http://tracker.ceph.com/issues/22711>`_, `pr#20046 <https://github.com/ceph/ceph/pull/20046>`_, Kefu Chai) -* tests: test: remove distro_version assert in distro detect test (`pr#21052 <https://github.com/ceph/ceph/pull/21052>`_, Shengjing Zhu) -* tests: test: Replace bc command with printf command (`pr#21013 <https://github.com/ceph/ceph/pull/21013>`_, David Zafman) -* tests: test: silence warning from -Wsign-compare (`pr#17790 <https://github.com/ceph/ceph/pull/17790>`_, Jos Collin) -* tests: test: silence warnings from -Wsign-compare (`pr#17962 <https://github.com/ceph/ceph/pull/17962>`_, Jos Collin) -* tests: tests - Replaced requests for "centos 7.3" to centos_latest (`pr#19262 <https://github.com/ceph/ceph/pull/19262>`_, Yuri Weinstein) -* tests: test/store_test: fix FTBFS as Sequencer is removed (`pr#20382 <https://github.com/ceph/ceph/pull/20382>`_, Kefu Chai) -* tests: test/store_test: update Many4KWritesTest\* test cases to finalize with… (`pr#20230 <https://github.com/ceph/ceph/pull/20230>`_, Igor Fedotov) -* tests: test/throttle: kill tests exercising dtor of Throttle classes (`pr#17442 <https://github.com/ceph/ceph/pull/17442>`_, Kefu Chai) -* tests: test/unittest_bufferlist: check retvals of syscalls (`pr#18238 <https://github.com/ceph/ceph/pull/18238>`_, Kefu Chai) -* tests: test/unittest_pg_log: silence gcc warning (`pr#17328 <https://github.com/ceph/ceph/pull/17328>`_, Kefu Chai) -* tests: test: Use jq in a compatible way and for easier diff analysis (`pr#21450 <https://github.com/ceph/ceph/pull/21450>`_, David Zafman) -* tests: test: Whitelist corrections (`pr#22167 <https://github.com/ceph/ceph/pull/22167>`_, David Zafman) -* tests,tools: crushtool: print error message to stderr not dout(1) (`issue#21758 <http://tracker.ceph.com/issues/21758>`_, `pr#18242 <https://github.com/ceph/ceph/pull/18242>`_, Kefu Chai) -* tests: unittest_crypto: Don't exceed limit for getentropy (`pr#18505 <https://github.com/ceph/ceph/pull/18505>`_, Brad Hubbard) -* tests: vstart: fix initial start when there is no ceph.conf (`pr#21019 <https://github.com/ceph/ceph/pull/21019>`_, Jianpeng Ma) -* The Day Has Come! (`pr#19657 <https://github.com/ceph/ceph/pull/19657>`_, Adam C. Emerson) -* tools: Align use of uint64_t in service_daemon::AttributeType (`pr#16938 <https://github.com/ceph/ceph/pull/16938>`_, James Page) -* tools: ceph-disk: erase 110MB for nuking existing bluestore (`issue#22354 <http://tracker.ceph.com/issues/22354>`_, `pr#20400 <https://github.com/ceph/ceph/pull/20400>`_, Kefu Chai) -* tools: ceph-disk: fix '--runtime' omission for ceph-osd service (`issue#21498 <http://tracker.ceph.com/issues/21498>`_, `pr#17904 <https://github.com/ceph/ceph/pull/17904>`_, Carl Xiong) -* tools: ceph-disk: fix signed integer is greater than maximum when call major (`pr#19196 <https://github.com/ceph/ceph/pull/19196>`_, Song Shun) -* tools: ceph-disk: include output of failed command in exception (`pr#20497 <https://github.com/ceph/ceph/pull/20497>`_, Kefu Chai) -* tools: ceph-disk: more precise error message when a disk is specified (`pr#18018 <https://github.com/ceph/ceph/pull/18018>`_, Kefu Chai) -* tools: ceph-disk: reduce the scope of activate_lock (`pr#20114 <https://github.com/ceph/ceph/pull/20114>`_, zhaokun) -* tools: ceph-disk: retry on OSError (`issue#21728 <http://tracker.ceph.com/issues/21728>`_, `pr#18162 <https://github.com/ceph/ceph/pull/18162>`_, Kefu Chai) -* tools: ceph-disk: unlock all partitions when activate (`pr#17363 <https://github.com/ceph/ceph/pull/17363>`_, Kefu Chai) -* tools: ceph-disk: write log to /var/log/ceph not to /var/run/ceph (`pr#18375 <https://github.com/ceph/ceph/pull/18375>`_, Kefu Chai) -* tools: ceph: fixes for "tell <service>.\*" command (`issue#21230 <http://tracker.ceph.com/issues/21230>`_, `pr#17463 <https://github.com/ceph/ceph/pull/17463>`_, Kefu Chai) -* tools: ceph-kvstore-tool: make it a bit more friendly (`pr#21477 <https://github.com/ceph/ceph/pull/21477>`_, Sage Weil) -* tools: ceph-kvstore-tool: use unique_ptr<> to manage the lifecycle of bluestore (`pr#18221 <https://github.com/ceph/ceph/pull/18221>`_, Kefu Chai) -* tools: ceph-objectstore-tool: Add option "dump-import" to examine an export (`issue#22086 <http://tracker.ceph.com/issues/22086>`_, `pr#19368 <https://github.com/ceph/ceph/pull/19368>`_, David Zafman) -* tools: ceph-objectstore-tool: Fix set-size to clear data_digest if changing … (`pr#18885 <https://github.com/ceph/ceph/pull/18885>`_, David Zafman) -* tools: ceph-objectstore-tool: "$OBJ get-omaphdr" and "$OBJ list-omap" scan all pgs instead of using specific pg (`issue#21327 <http://tracker.ceph.com/issues/21327>`_, `pr#17985 <https://github.com/ceph/ceph/pull/17985>`_, David Zafman) -* tools: ceph-objectstore-tool: skip object with generated version (`pr#18507 <https://github.com/ceph/ceph/pull/18507>`_, huangjun) -* tools: ceph-syn: silence clang analyzer warning (`pr#18577 <https://github.com/ceph/ceph/pull/18577>`_, Kefu Chai) -* tools: ceph-volume: Use a delimited CLI output parser instead of JSON (`pr#17097 <https://github.com/ceph/ceph/pull/17097>`_, Alfredo Deza) -* tools: cleanup: rip out ceph-rest-api (`issue#21264 <http://tracker.ceph.com/issues/21264>`_, `issue#22457 <http://tracker.ceph.com/issues/22457>`_, `pr#17530 <https://github.com/ceph/ceph/pull/17530>`_, Nathan Cutler) -* tools: correct total size formatting (`pr#21641 <https://github.com/ceph/ceph/pull/21641>`_, Zheng Yin) -* tools: crushtool: add --add-bucket and --move options (`pr#20183 <https://github.com/ceph/ceph/pull/20183>`_, Kefu Chai) -* tools: FreeBSD basic getopt does not use --options (`pr#21148 <https://github.com/ceph/ceph/pull/21148>`_, Willem Jan Withagen) -* tools: Initialization of \*server, command variables (`pr#17135 <https://github.com/ceph/ceph/pull/17135>`_, amitkuma) -* tools: make rados get/put/append command help txt clear (`issue#22958 <http://tracker.ceph.com/issues/22958>`_, `pr#20363 <https://github.com/ceph/ceph/pull/20363>`_, lvshuhua) -* tools: Modify "rados df" header's alignment (`pr#17549 <https://github.com/ceph/ceph/pull/17549>`_, iliul) -* tools: rados add a cli option to clear omap keys (`issue#22255 <http://tracker.ceph.com/issues/22255>`_, `pr#19180 <https://github.com/ceph/ceph/pull/19180>`_, Abhishek Lekshmanan) -* tools: rados/tool: fixup rados stat command hint (`pr#16983 <https://github.com/ceph/ceph/pull/16983>`_, huanwen ren) -* tools: script: build-integration-branch: avoid Unicode error (`issue#24003 <http://tracker.ceph.com/issues/24003>`_, `pr#21918 <https://github.com/ceph/ceph/pull/21918>`_, Nathan Cutler) -* tools: script: ceph-release-notes: minor fixes for split_component (`pr#16605 <https://github.com/ceph/ceph/pull/16605>`_, Abhishek Lekshmanan) -* tools: Special scrub handling of hinfo_key errors (`issue#23428 <http://tracker.ceph.com/issues/23428>`_, `issue#23364 <http://tracker.ceph.com/issues/23364>`_, `pr#20947 <https://github.com/ceph/ceph/pull/20947>`_, David Zafman) -* tools: src/vstart.sh: default os to filestore for FreeBSD (`pr#17454 <https://github.com/ceph/ceph/pull/17454>`_, xie xingguo) -* tools: stop.sh: add ceph configure file location (`pr#20888 <https://github.com/ceph/ceph/pull/20888>`_, Jianpeng Ma) -* tools: tools/ceph-conf: dump parsed config in plain text or as json (`issue#21862 <http://tracker.ceph.com/issues/21862>`_, `pr#18350 <https://github.com/ceph/ceph/pull/18350>`_, Piotr Dałek) -* tools: tools/ceph_monstore_tool: include mgrmap in initial paxos epoch (`issue#22266 <http://tracker.ceph.com/issues/22266>`_, `pr#19780 <https://github.com/ceph/ceph/pull/19780>`_, Kefu Chai) -* tools: tools/ceph_monstore_tool: rebuild initial mgrmap also (`issue#22266 <http://tracker.ceph.com/issues/22266>`_, `pr#19238 <https://github.com/ceph/ceph/pull/19238>`_, Kefu Chai) -* tools: tools/ceph-objectstore-tool: command to trim the pg log (`issue#23242 <http://tracker.ceph.com/issues/23242>`_, `pr#20786 <https://github.com/ceph/ceph/pull/20786>`_, Josh Durgin, David Zafman) -* tools: tools/ceph_objectstore_tool: fix 'dup' unable to duplicate meta PG (`pr#17572 <https://github.com/ceph/ceph/pull/17572>`_, xie xingguo) -* tools: tools/rados: improve the ls command usage (`pr#21553 <https://github.com/ceph/ceph/pull/21553>`_, Li Wang) -* tools: tools: rados: make -f be --format for consistency with ceph tool (`issue#15904 <http://tracker.ceph.com/issues/15904>`_, `pr#20147 <https://github.com/ceph/ceph/pull/20147>`_, Nathan Cutler) -* tools: tools/rados: use the monotonic clock in rados bench (`issue#21375 <http://tracker.ceph.com/issues/21375>`_, `pr#18588 <https://github.com/ceph/ceph/pull/18588>`_, Mohamad Gebai) -* tools: update monstore tool for fsmap, mgrmap (`issue#21577 <http://tracker.ceph.com/issues/21577>`_, `pr#18005 <https://github.com/ceph/ceph/pull/18005>`_, John Spray) -* tools: Use --no-mon-config so ceph_objectstore_tool.py test doesn't hang (`pr#21274 <https://github.com/ceph/ceph/pull/21274>`_, David Zafman) -* tools: vstart.sh: move rgw configuration to client.rgw section (`pr#18331 <https://github.com/ceph/ceph/pull/18331>`_, Yan Jun) -* tools: vstart.sh: use bluestore as default osd objectstore backend (`pr#17100 <https://github.com/ceph/ceph/pull/17100>`_, mychoxin) -* vstart: fix option (due to quotes) and allow disabling dashboard (`issue#23345 <http://tracker.ceph.com/issues/23345>`_, `pr#20986 <https://github.com/ceph/ceph/pull/20986>`_, Joao Eduardo Luis) -* vstart.sh: fix a typo (`pr#18729 <https://github.com/ceph/ceph/pull/18729>`_, iliul) -* vstart.sh: Fix help text in vstart.sh (`pr#21071 <https://github.com/ceph/ceph/pull/21071>`_, Marc Koderer) -* vstart.sh: quote cmd params when display executing cmd (`pr#17057 <https://github.com/ceph/ceph/pull/17057>`_, Jiaying Ren) -* vstart.sh: quote command only when necessary (`pr#18181 <https://github.com/ceph/ceph/pull/18181>`_, Kefu Chai) -* vstart.sh: should quote the parameters to get them quoted (`pr#18523 <https://github.com/ceph/ceph/pull/18523>`_, Kefu Chai) -* vstart.sh: simplify the objectstore related logic (`pr#17749 <https://github.com/ceph/ceph/pull/17749>`_, Kefu Chai) diff --git a/doc/releases/nautilus.rst b/doc/releases/nautilus.rst deleted file mode 100644 index fd27f7124..000000000 --- a/doc/releases/nautilus.rst +++ /dev/null @@ -1,5155 +0,0 @@ -======== -Nautilus -======== - -Nautilus is the 14th stable release of Ceph. It is named after the -nautilus, a family of cephalopods characterized by a whorled shell. - -v14.2.22 Nautilus -================= - -This is the 22nd and likely the last backport release in the Nautilus series. -Ultimately, we recommend all users upgrade to newer Ceph releases. - -Notable Changes ---------------- - -* This release sets ``bluefs_buffered_io`` to true by default to improve performance - for metadata heavy workloads. Enabling this option has been reported to - occasionally cause excessive kernel swapping under certain workloads. - Currently, the most consistent performing combination is to enable - bluefs_buffered_io and disable system level swap. - -* The default value of ``bluestore_cache_trim_max_skip_pinned`` has been - increased to 1000 to control memory growth due to onodes. - -* Several other bug fixes in BlueStore, including a fix for an unexpected - ENOSPC bug in Avl/Hybrid allocators. - -* The trimming logic in the monitor has been made dynamic, with the - introduction of ``paxos_service_trim_max_multiplier``, a factor by which - ``paxos_service_trim_max`` is multiplied to make trimming faster, - when required. Setting it to 0 disables the upper bound check for trimming - and makes the monitors trim at the maximum rate. - -* A ``--max <n>`` option is available with the ``osd ok-to-stop`` command to - provide up to N OSDs that can be stopped together without making PGs - unavailable. - -* OSD: the option ``osd_fast_shutdown_notify_mon`` has been introduced to allow - the OSD to notify the monitor it is shutting down even if ``osd_fast_shutdown`` - is enabled. This helps with the monitor logs on larger clusters, that may get - many 'osd.X reported immediately failed by osd.Y' messages, and confuse tools. - -* A long-standing bug that prevented 32-bit and 64-bit client/server - interoperability under msgr v2 has been fixed. In particular, mixing armv7l - (armhf) and x86_64 or aarch64 servers in the same cluster now works. - -Changelog ---------- - -* PendingReleaseNotes: note about 14.2.18 mgr fixes (`pr#40121 <https://github.com/ceph/ceph/pull/40121>`_, Josh Durgin) -* bind on loopback address if no other addresses are available (`pr#41137 <https://github.com/ceph/ceph/pull/41137>`_, Kefu Chai, Matthew Oliver) -* build python extensions using distutils (`pr#41167 <https://github.com/ceph/ceph/pull/41167>`_, Kefu Chai) -* ceph-monstore-tool: use a large enough paxos/{first,last}_committed (`issue#38219 <http://tracker.ceph.com/issues/38219>`_, `pr#41874 <https://github.com/ceph/ceph/pull/41874>`_, Kefu Chai) -* ceph-volume: disable cache for blkid calls (`pr#41114 <https://github.com/ceph/ceph/pull/41114>`_, Rafał Wądołowski) -* ceph-volume: fix batch report and respect ceph.conf config values (`pr#41716 <https://github.com/ceph/ceph/pull/41716>`_, Andrew Schoen) -* ceph-volume: fix batch report and respect ceph.conf config values (`pr#41713 <https://github.com/ceph/ceph/pull/41713>`_, Andrew Schoen) -* ceph-volume: implement bluefs volume migration (`pr#41676 <https://github.com/ceph/ceph/pull/41676>`_, Kefu Chai, Igor Fedotov) -* ceph.spec.in: Enable tcmalloc on IBM Power and Z (`pr#40283 <https://github.com/ceph/ceph/pull/40283>`_, Nathan Cutler, Yaakov Selkowitz) -* cephfs: client: add ability to lookup snapped inodes by inode number (`pr#40769 <https://github.com/ceph/ceph/pull/40769>`_, Jeff Layton, Xiubo Li) -* cephfs: client: only check pool permissions for regular files (`pr#40730 <https://github.com/ceph/ceph/pull/40730>`_, Xiubo Li) -* cephfs: client: wake up the front pos waiter (`pr#40865 <https://github.com/ceph/ceph/pull/40865>`_, Xiubo Li) -* client: Fix executeable access check for the root user (`pr#41297 <https://github.com/ceph/ceph/pull/41297>`_, Kotresh HR) -* client: fire the finish_cap_snap() after buffer being flushed (`pr#40722 <https://github.com/ceph/ceph/pull/40722>`_, Xiubo Li) -* cls/rgw: look for plain entries in non-ascii plain namespace too (`pr#41776 <https://github.com/ceph/ceph/pull/41776>`_, Mykola Golub) -* cmake,zstd,debian: allow use libzstd in system (`pr#40516 <https://github.com/ceph/ceph/pull/40516>`_, Kefu Chai, Bryan Stillwell, Dan van der Ster) -* cmake: build static libs if they are internal ones (`pr#39903 <https://github.com/ceph/ceph/pull/39903>`_, Kefu Chai) -* cmake: detect gettid() presense (`pr#40333 <https://github.com/ceph/ceph/pull/40333>`_, Igor Fedotov) -* cmake: set empty RPATH for some test executables (`pr#40619 <https://github.com/ceph/ceph/pull/40619>`_, Nathan Cutler, Kefu Chai) -* common/buffer: adjust align before calling posix_memalign() (`pr#41246 <https://github.com/ceph/ceph/pull/41246>`_, Ilya Dryomov) -* common/ipaddr: skip loopback interfaces named 'lo' and test it (`pr#40423 <https://github.com/ceph/ceph/pull/40423>`_, Dan van der Ster) -* common/mempool: only fail tests if sharding is very bad (`pr#40567 <https://github.com/ceph/ceph/pull/40567>`_, singuliere) -* common/options/global.yaml.in: increase default value of bluestore_cache_trim_max_skip_pinned (`pr#40920 <https://github.com/ceph/ceph/pull/40920>`_, Neha Ojha) -* common/options: bluefs_buffered_io=true by default (`pr#40393 <https://github.com/ceph/ceph/pull/40393>`_, Dan van der Ster) -* common: Fix assertion when disabling and re-enabling clog_to_monitors (`pr#39912 <https://github.com/ceph/ceph/pull/39912>`_, Gerald Yang) -* common: remove log_early configuration option (`pr#40549 <https://github.com/ceph/ceph/pull/40549>`_, Changcheng Liu) -* crush/CrushLocation: do not print logging message in constructor (`pr#40750 <https://github.com/ceph/ceph/pull/40750>`_, Alex Wu) -* crush/CrushWrapper: update shadow trees on update_item() (`pr#39920 <https://github.com/ceph/ceph/pull/39920>`_, Sage Weil) -* debian/ceph-common.postinst: do not chown cephadm log dirs (`pr#40698 <https://github.com/ceph/ceph/pull/40698>`_, Sage Weil) -* debian/control: add missing commas, use python3 packages for "make check" on focal (`pr#40485 <https://github.com/ceph/ceph/pull/40485>`_, Kefu Chai, Alfredo Deza) -* install-deps.sh: remove existing ceph-libboost of different version (`pr#40287 <https://github.com/ceph/ceph/pull/40287>`_, Kefu Chai) -* libcephfs: ignore restoring the open files limit (`pr#41593 <https://github.com/ceph/ceph/pull/41593>`_, Xiubo Li) -* librbd: allow interrupted trash move request to be restarted (`pr#40675 <https://github.com/ceph/ceph/pull/40675>`_, Jason Dillaman) -* librbd: don't stop at the first unremovable image when purging (`pr#41662 <https://github.com/ceph/ceph/pull/41662>`_, Ilya Dryomov) -* librbd: fix sporadic failures in TestMigration.StressLive (`pr#41788 <https://github.com/ceph/ceph/pull/41788>`_, Jason Dillaman) -* librbd: race when disabling object map with overlapping in-flight writes (`pr#41787 <https://github.com/ceph/ceph/pull/41787>`_, Jason Dillaman) -* make-dist: refuse to run if script path contains a colon (`pr#41088 <https://github.com/ceph/ceph/pull/41088>`_, Nathan Cutler) -* mds: do not trim the inodes from the lru list in standby_replay (`pr#41144 <https://github.com/ceph/ceph/pull/41144>`_, Xiubo Li) -* mds: fix race of fetching large dirfrag (`pr#40720 <https://github.com/ceph/ceph/pull/40720>`_, Erqi Chen) -* mds: send scrub status to ceph-mgr only when scrub is running (`issue#45349 <http://tracker.ceph.com/issues/45349>`_, `pr#36183 <https://github.com/ceph/ceph/pull/36183>`_, Kefu Chai, Venky Shankar) -* mds: trim cache regularly for standby-replay (`pr#40744 <https://github.com/ceph/ceph/pull/40744>`_, Patrick Donnelly) -* mgr/ActivePyModules.cc: always release GIL before attempting to acquire a lock (`pr#40047 <https://github.com/ceph/ceph/pull/40047>`_, Kefu Chai) -* mgr/Dashboard: Remove erroneous elements in hosts-overview Grafana dashboard (`pr#41650 <https://github.com/ceph/ceph/pull/41650>`_, Malcolm Holmes) -* mgr/PyModule: put mgr_module_path before Py_GetPath() (`pr#40753 <https://github.com/ceph/ceph/pull/40753>`_, Kefu Chai) -* mgr/dashboard: Fix for alert notification message being undefined (`pr#40590 <https://github.com/ceph/ceph/pull/40590>`_, Nizamudeen A) -* mgr/dashboard: Fix missing root path of each session for CephFS (`pr#39869 <https://github.com/ceph/ceph/pull/39869>`_, Yongseok Oh) -* mgr/dashboard: Monitoring alert badge includes suppressed alerts (`pr#39511 <https://github.com/ceph/ceph/pull/39511>`_, Aashish Sharma) -* mgr/dashboard: Remove username, password fields from Manager Modules/dashboard,influx (`pr#40490 <https://github.com/ceph/ceph/pull/40490>`_, Aashish Sharma) -* mgr/dashboard: Revoke read-only user's access to Manager modules (`pr#40650 <https://github.com/ceph/ceph/pull/40650>`_, Nizamudeen A) -* mgr/dashboard: debug nodeenv hangs (`pr#40818 <https://github.com/ceph/ceph/pull/40818>`_, Ernesto Puerta) -* mgr/dashboard: decouple unit tests from build artifacts (`pr#40547 <https://github.com/ceph/ceph/pull/40547>`_, Alfonso Martínez) -* mgr/dashboard: encode non-ascii string before passing it to exec_cmd() (`pr#40522 <https://github.com/ceph/ceph/pull/40522>`_, Kefu Chai) -* mgr/dashboard: filesystem pool size should use stored stat (`pr#41021 <https://github.com/ceph/ceph/pull/41021>`_, Avan Thakkar) -* mgr/dashboard: fix API docs link (`pr#41521 <https://github.com/ceph/ceph/pull/41521>`_, Avan Thakkar) -* mgr/dashboard: fix OSDs Host details/overview grafana graphs (`issue#49769 <http://tracker.ceph.com/issues/49769>`_, `pr#41531 <https://github.com/ceph/ceph/pull/41531>`_, Alfonso Martínez, Michael Wodniok) -* mgr/dashboard: fix base-href: revert it to previous approach (`pr#41253 <https://github.com/ceph/ceph/pull/41253>`_, Avan Thakkar) -* mgr/dashboard: fix bucket objects and size calculations (`pr#41648 <https://github.com/ceph/ceph/pull/41648>`_, Avan Thakkar) -* mgr/dashboard: fix dashboard instance ssl certificate functionality (`pr#40003 <https://github.com/ceph/ceph/pull/40003>`_, Avan Thakkar) -* mgr/dashboard: grafana panels for rgw multisite sync performance (`pr#41386 <https://github.com/ceph/ceph/pull/41386>`_, Alfonso Martínez) -* mgr/dashboard: python 2: fix error when non-ASCII password (`pr#40610 <https://github.com/ceph/ceph/pull/40610>`_, Alfonso Martínez) -* mgr/dashboard: report mgr fsid (`pr#39853 <https://github.com/ceph/ceph/pull/39853>`_, Ernesto Puerta) -* mgr/dashboard: show partially deleted RBDs (`pr#41738 <https://github.com/ceph/ceph/pull/41738>`_, Tatjana Dehler) -* mgr/dashboard: test prometheus rules through promtool (`pr#39984 <https://github.com/ceph/ceph/pull/39984>`_, Aashish Sharma, Kefu Chai) -* mgr/progress: ensure progress stays between [0,1] (`pr#41310 <https://github.com/ceph/ceph/pull/41310>`_, Dan van der Ster) -* mgr/telemetry: check if 'ident' channel is active (`pr#39923 <https://github.com/ceph/ceph/pull/39923>`_, Yaarit Hatuka) -* mgr/telemetry: pass leaderboard flag even w/o ident (`pr#41839 <https://github.com/ceph/ceph/pull/41839>`_, Sage Weil) -* mgr/volumes: Retain suid guid bits in clone (`pr#40270 <https://github.com/ceph/ceph/pull/40270>`_, Kotresh HR) -* mgr: add --max <n> to 'osd ok-to-stop' command (`pr#40676 <https://github.com/ceph/ceph/pull/40676>`_, Sage Weil, Xuehan Xu) -* mgr: add mon metada using type of "mon" (`pr#40359 <https://github.com/ceph/ceph/pull/40359>`_, Kefu Chai) -* mon/ConfigMap: fix stray option leak (`pr#40299 <https://github.com/ceph/ceph/pull/40299>`_, Sage Weil) -* mon/MonClient: reset authenticate_err in _reopen_session() (`pr#41016 <https://github.com/ceph/ceph/pull/41016>`_, Ilya Dryomov) -* mon/MonClient: tolerate a rotating key that is slightly out of date (`pr#41448 <https://github.com/ceph/ceph/pull/41448>`_, Ilya Dryomov) -* mon/OSDMonitor: drop stale failure_info after a grace period (`pr#41213 <https://github.com/ceph/ceph/pull/41213>`_, Kefu Chai) -* mon/OSDMonitor: drop stale failure_info even if can_mark_down() (`pr#41519 <https://github.com/ceph/ceph/pull/41519>`_, Kefu Chai) -* mon: Modifying trim logic to change paxos_service_trim_max dynamically (`pr#41099 <https://github.com/ceph/ceph/pull/41099>`_, Aishwarya Mathuria) -* mon: ensure progress is [0,1] before printing (`pr#41098 <https://github.com/ceph/ceph/pull/41098>`_, Dan van der Ster) -* mon: load stashed map before mkfs monmap (`pr#41762 <https://github.com/ceph/ceph/pull/41762>`_, Dan van der Ster) -* monmaptool: Don't call set_port on an invalid address (`pr#40700 <https://github.com/ceph/ceph/pull/40700>`_, Brad Hubbard, Kefu Chai) -* os/FileStore: don't propagate split/merge error to "create"/"remove" (`pr#40987 <https://github.com/ceph/ceph/pull/40987>`_, Mykola Golub) -* os/FileStore: fix to handle readdir error correctly (`pr#41238 <https://github.com/ceph/ceph/pull/41238>`_, Misono Tomohiro) -* os/bluestore/BlueFS: do not _flush_range deleted files (`pr#40752 <https://github.com/ceph/ceph/pull/40752>`_, weixinwei) -* os/bluestore/BlueFS: use iterator_impl::copy instead of bufferlist::c_str() to avoid bufferlist rebuild (`pr#39883 <https://github.com/ceph/ceph/pull/39883>`_, weixinwei) -* os/bluestore: be more verbose in _open_super_meta by default (`pr#41060 <https://github.com/ceph/ceph/pull/41060>`_, Igor Fedotov) -* os/bluestore: do not count pinned entries as trimmed ones (`pr#41173 <https://github.com/ceph/ceph/pull/41173>`_, Igor Fedotov) -* os/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators (`pr#41673 <https://github.com/ceph/ceph/pull/41673>`_, Igor Fedotov) -* os/bluestore: introduce multithireading sync for bluestore's repairer (`pr#41749 <https://github.com/ceph/ceph/pull/41749>`_, Igor Fedotov) -* os/bluestore: tolerate zero length for allocators' init\_[add/rm]_free() (`pr#41750 <https://github.com/ceph/ceph/pull/41750>`_, Igor Fedotov) -* osd/PG.cc: handle removal of pgmeta object (`pr#41682 <https://github.com/ceph/ceph/pull/41682>`_, Neha Ojha) -* osd/PeeringState: fix acting_set_writeable min_size check (`pr#41611 <https://github.com/ceph/ceph/pull/41611>`_, Dan van der Ster) -* osd: add osd_fast_shutdown_notify_mon option (default false) (`issue#46978 <http://tracker.ceph.com/issues/46978>`_, `pr#40014 <https://github.com/ceph/ceph/pull/40014>`_, Mauricio Faria de Oliveira) -* osd: compute OSD's space usage ratio via raw space utilization (`pr#41111 <https://github.com/ceph/ceph/pull/41111>`_, Igor Fedotov) -* osd: do not dump an osd multiple times (`pr#40747 <https://github.com/ceph/ceph/pull/40747>`_, Xue Yantao) -* pybind/ceph_daemon: do not fail if prettytable is not available (`pr#40335 <https://github.com/ceph/ceph/pull/40335>`_, Kefu Chai) -* pybind/cephfs: DT_REG and DT_LNK values are wrong (`pr#40704 <https://github.com/ceph/ceph/pull/40704>`_, Varsha Rao) -* pybind/mgr/balancer/module.py: assign weight-sets to all buckets before balancing (`pr#40128 <https://github.com/ceph/ceph/pull/40128>`_, Neha Ojha) -* pybind/mgr/volumes: deadlock on async job hangs finisher thread (`pr#41394 <https://github.com/ceph/ceph/pull/41394>`_, Patrick Donnelly) -* pybind/rados: should pass "name" to cstr() (`pr#41318 <https://github.com/ceph/ceph/pull/41318>`_, Kefu Chai) -* pybind: volume_client handle purge of directory names encoded in utf-8 (`pr#36679 <https://github.com/ceph/ceph/pull/36679>`_, Jose Castro Leon) -* qa/tasks/mgr/test_progress: fix wait_until_equal (`pr#39397 <https://github.com/ceph/ceph/pull/39397>`_, Kamoltat, Ricardo Dias) -* qa/tasks/qemu: precise repos have been archived (`pr#41641 <https://github.com/ceph/ceph/pull/41641>`_, Ilya Dryomov) -* qa/tasks/vstart_runner.py: start max required mgrs (`pr#40751 <https://github.com/ceph/ceph/pull/40751>`_, Alfonso Martínez) -* qa/tests: added client-upgrade-nautilus-pacific tests (`pr#39818 <https://github.com/ceph/ceph/pull/39818>`_, Yuri Weinstein) -* qa/tests: advanced nautilus initial version to 14.2.20 (`pr#41227 <https://github.com/ceph/ceph/pull/41227>`_, Yuri Weinstein) -* qa/upgrade: disable update_features test_notify with older client as lockowner (`pr#41513 <https://github.com/ceph/ceph/pull/41513>`_, Deepika Upadhyay) -* qa: add sleep for blocklisting to take effect (`pr#40714 <https://github.com/ceph/ceph/pull/40714>`_, Patrick Donnelly) -* qa: bump osd heartbeat grace for ffsb workload (`pr#40713 <https://github.com/ceph/ceph/pull/40713>`_, Nathan Cutler) -* qa: delete all fs during tearDown (`pr#40709 <https://github.com/ceph/ceph/pull/40709>`_, Patrick Donnelly) -* qa: krbd_blkroset.t: update for separate hw and user read-only flags (`pr#40212 <https://github.com/ceph/ceph/pull/40212>`_, Ilya Dryomov) -* qa: vstart_runner: TypeError: lstat: path should be string, bytes or os.PathLike, not NoneType (`pr#41485 <https://github.com/ceph/ceph/pull/41485>`_, Patrick Donnelly) -* rbd-mirror: image replayer stop might race with instance replayer shut down (`pr#41792 <https://github.com/ceph/ceph/pull/41792>`_, Mykola Golub, Jason Dillaman) -* rgw : catch non int exception (`pr#40356 <https://github.com/ceph/ceph/pull/40356>`_, caolei) -* rgw/http: add timeout to http client (`pr#40667 <https://github.com/ceph/ceph/pull/40667>`_, Yuval Lifshitz) -* rgw: Added caching for S3 credentials retrieved from keystone (`pr#41158 <https://github.com/ceph/ceph/pull/41158>`_, James Weaver) -* rgw: Use correct bucket info when put or get large object with swift (`pr#40106 <https://github.com/ceph/ceph/pull/40106>`_, zhiming zhang, yupeng chen) -* rgw: allow rgw-orphan-list to handle intermediate files w/ binary data (`pr#39767 <https://github.com/ceph/ceph/pull/39767>`_, J. Eric Ivancich) -* rgw: beast frontend uses 512k mprotected coroutine stacks (`pr#39947 <https://github.com/ceph/ceph/pull/39947>`_, Yaakov Selkowitz, Mauricio Faria de Oliveira, Daniel Gryniewicz, Casey Bodley) -* rgw: check object locks in multi-object delete (`issue#47586 <http://tracker.ceph.com/issues/47586>`_, `pr#41164 <https://github.com/ceph/ceph/pull/41164>`_, Mark Houghton, Matt Benjamin) -* rgw: during reshard lock contention, adjust logging (`pr#41156 <https://github.com/ceph/ceph/pull/41156>`_, J. Eric Ivancich) -* rgw: limit rgw_gc_max_objs to RGW_SHARDS_PRIME_1 (`pr#40670 <https://github.com/ceph/ceph/pull/40670>`_, Rafał Wądołowski) -* rgw: radoslist incomplete multipart parts marker (`pr#40827 <https://github.com/ceph/ceph/pull/40827>`_, J. Eric Ivancich) -* rgw: return ERR_NO_SUCH_BUCKET early while evaluating bucket policy (`issue#38420 <http://tracker.ceph.com/issues/38420>`_, `pr#40668 <https://github.com/ceph/ceph/pull/40668>`_, Abhishek Lekshmanan) -* rgw: return error when trying to copy encrypted object without key (`pr#40671 <https://github.com/ceph/ceph/pull/40671>`_, Ilsoo Byun) -* rgw: tooling to locate rgw objects with missing rados components (`pr#39771 <https://github.com/ceph/ceph/pull/39771>`_, Michael Kidd, J. Eric Ivancich) -* run-make-check.sh: let ctest generate XML output (`pr#40407 <https://github.com/ceph/ceph/pull/40407>`_, Kefu Chai) -* src/global/signal_handler.h: fix preprocessor logic for alpine (`pr#39942 <https://github.com/ceph/ceph/pull/39942>`_, Duncan Bellamy) -* test/TestOSDScrub: fix mktime() error (`pr#40621 <https://github.com/ceph/ceph/pull/40621>`_, luo rixin) -* test/pybind: s/nosetests/python3/ (`pr#40536 <https://github.com/ceph/ceph/pull/40536>`_, Kefu Chai) -* test/rgw: test_datalog_autotrim filters out new entries (`pr#40674 <https://github.com/ceph/ceph/pull/40674>`_, Casey Bodley) -* test: use std::atomic<bool> instead of volatile for cb_done var (`pr#40701 <https://github.com/ceph/ceph/pull/40701>`_, Jeff Layton) -* tests: ceph_test_rados_api_watch_notify: Allow for reconnect (`pr#40697 <https://github.com/ceph/ceph/pull/40697>`_, Brad Hubbard) -* vstart.sh: disable "auth_allow_insecure_global_id_reclaim" (`pr#40959 <https://github.com/ceph/ceph/pull/40959>`_, Kefu Chai) - - -v14.2.21 Nautilus -================= - -This is a hotfix release addressing a number of security issues and regressions. We recommend all users update to this release. - -Changelog ---------- - -* mgr/dashboard: fix base-href: revert it to previous approach (`issue#50684 <https://tracker.ceph.com/issues/50684>`_, Avan Thakkar) -* mgr/dashboard: fix cookie injection issue (:ref:`CVE-2021-3509`, Ernesto Puerta) -* rgw: RGWSwiftWebsiteHandler::is_web_dir checks empty subdir_name (:ref:`CVE-2021-3531`, Felix Huettner) -* rgw: sanitize \r in s3 CORSConfiguration's ExposeHeader (:ref:`CVE-2021-3524`, Sergey Bobrov, Casey Bodley) - - -v14.2.20 Nautilus -================= - -This is the 20th bugfix release in the Nautilus stable series. It addresses a -security vulnerability in the Ceph authentication framework. - -We recommend all Nautilus users upgrade. - -Security fixes --------------- - -* This release includes a security fix that ensures the global_id - value (a numeric value that should be unique for every authenticated - client or daemon in the cluster) is reclaimed after a network - disconnect or ticket renewal in a secure fashion. Two new health - alerts may appear during the upgrade indicating that there are - clients or daemons that are not yet patched with the appropriate - fix. - - It is possible to disable the health alerts around insecure clients:: - - ceph config set mon mon_warn_on_insecure_global_id_reclaim false - ceph config set mon mon_warn_on_insecure_global_id_reclaim_allowed false - - However, if you disable these alerts, we strongly recommend that you - follow up by removing these settings after clients have been - upgraded or after upgrading to Octopus. (Starting in Octopus, these - health alerts can be muted for a specific period of time.) - - For more information, see :ref:`CVE-2021-20288`. - - -v14.2.19 Nautilus -================= - -This is the 19th update to the Ceph Nautilus release series. This is a hotfix -release to prevent daemons from binding to loopback network interfaces. All -nautilus users are advised to upgrade to this release. - -Notable Changes ---------------- - -* This release fixes a regression introduced in v14.2.17 whereby in certain environments, OSDs will bind to 127.0.0.1. See `issue#49938 <https://tracker.ceph.com/issues/49938>`_. - -Changelog ---------- - -* common/ipaddr: also skip just `lo` (`pr#40423 <https://github.com/ceph/ceph/pull/40423>`_, Dan van der Ster) - - -v14.2.18 Nautilus -================= - -This is the 18th backport release in the Nautilus series. It fixes a regression -introduced in 14.2.17 in which the manager module tries to use a couple python -modules that do not exist in some environments. We recommend users to -update to this release. - -Notable Changes ---------------- - -* This release fixes issues loading the dashboard and volumes manager - modules in some environments. - -Changelog ---------- -* nautilus: .github: add workflow for adding labels and milestone (`pr#39926 <https://github.com/ceph/ceph/pull/39926>`_, Kefu Chai, Ernesto Puerta) -* nautilus: mgr/dashboard: Python2 Cookie module import fails on Python3 (`pr#40116 <https://github.com/ceph/ceph/pull/40116>`_, Volker Theile) -* nautilus: mgr/volumes: don't require typing (`pr#40095 <https://github.com/ceph/ceph/pull/40095>`_, Josh Durgin) -* nautilus: qa/suites/krbd: address recent issues caused by newer kernels (`pr#40064 <https://github.com/ceph/ceph/pull/40064>`_, Ilya Dryomov) - -v14.2.17 Nautilus -================= - -This is the 17th backport release in the Nautilus series. We recommend -users to update to this release. - -Notable Changes ---------------- - -* $pid expansion in config paths like ``admin_socket`` will now properly expand - to the daemon pid for commands like ``ceph-mds`` or ``ceph-osd``. Previously - only ``ceph-fuse``/``rbd-nbd`` expanded ``$pid`` with the actual daemon pid. -* RADOS: PG removal has been optimized in this release. -* RADOS: Memory allocations are tracked in finer detail in BlueStore and displayed as a part of the ``dump_mempools`` command. -* cephfs: clients which acquire capabilities too quickly are throttled to prevent instability. See new config option ``mds_session_cap_acquisition_throttle`` to control this behavior. - -Changelog ---------- - -* nautilus mgr/dashboard: fix 'ceph dashboard iscsi-gateway-add' (`pr#39175 <https://github.com/ceph/ceph/pull/39175>`_, Alfonso Martínez) -* nautilus: Do not add sensitive information in Ceph log files (`pr#38614 <https://github.com/ceph/ceph/pull/38614>`_, Neha Ojha) -* nautilus: bluestore: Add protection against bluefs log file growth (`pr#37948 <https://github.com/ceph/ceph/pull/37948>`_, Adam Kupczyk) -* nautilus: bluestore: provide a different name for fallback allocator (`pr#37793 <https://github.com/ceph/ceph/pull/37793>`_, Igor Fedotov) -* nautilus: build-integration-branch: take PRs in chronological order (`pr#37693 <https://github.com/ceph/ceph/pull/37693>`_, Nathan Cutler) -* nautilus: build/ops: install-deps.sh,deb,rpm: move python-saml deps into debian/control and ceph.spec.in (`pr#39184 <https://github.com/ceph/ceph/pull/39184>`_, Kefu Chai) -* nautilus: ceph-volume batch: reject partitions in argparser (`pr#38279 <https://github.com/ceph/ceph/pull/38279>`_, Jan Fajerski) -* nautilus: ceph-volume: Fix usage of is_lv (`pr#39221 <https://github.com/ceph/ceph/pull/39221>`_, Michał Nasiadka) -* nautilus: ceph-volume: Update batch.py (`pr#39470 <https://github.com/ceph/ceph/pull/39470>`_, shenjiatong) -* nautilus: ceph-volume: add no-systemd argument to zap (`pr#37723 <https://github.com/ceph/ceph/pull/37723>`_, wanghongxu) -* nautilus: ceph-volume: add some flexibility to bytes_to_extents (`pr#39270 <https://github.com/ceph/ceph/pull/39270>`_, Jan Fajerski) -* nautilus: ceph-volume: consume mount opt in simple activate (`pr#38015 <https://github.com/ceph/ceph/pull/38015>`_, Dimitri Savineau) -* nautilus: ceph-volume: implement the --log-level flag (`pr#38372 <https://github.com/ceph/ceph/pull/38372>`_, Andrew Schoen) -* nautilus: ceph-volume: remove mention of dmcache from docs and help text (`pr#38048 <https://github.com/ceph/ceph/pull/38048>`_, Dimitri Savineau, Andrew Schoen) -* nautilus: cephfs: client: check rdonly file handle on truncate (`pr#39129 <https://github.com/ceph/ceph/pull/39129>`_, Patrick Donnelly) -* nautilus: cephfs: client: dump which fs is used by client for multiple-fs (`pr#38552 <https://github.com/ceph/ceph/pull/38552>`_, Zhi Zhang) -* nautilus: cephfs: client: ensure we take Fs caps when fetching directory link count from cached inode (`pr#38950 <https://github.com/ceph/ceph/pull/38950>`_, Jeff Layton) -* nautilus: cephfs: client: fix inode ll_ref reference count leak (`pr#37838 <https://github.com/ceph/ceph/pull/37838>`_, sepia-liu) -* nautilus: cephfs: client: increment file position on _read_sync near eof (`pr#37991 <https://github.com/ceph/ceph/pull/37991>`_, Patrick Donnelly) -* nautilus: cephfs: client: set CEPH_STAT_RSTAT mask for dir in readdir_r_cb (`pr#38948 <https://github.com/ceph/ceph/pull/38948>`_, chencan) -* nautilus: cephfs: mds: throttle cap acquisition via readdir (`pr#38101 <https://github.com/ceph/ceph/pull/38101>`_, Kotresh HR) -* nautilus: cephfs: mount.ceph: collect v2 addresses for non-legacy ms_mode options (`pr#39133 <https://github.com/ceph/ceph/pull/39133>`_, Jeff Layton) -* nautilus: cephfs: osdc: restart read on truncate/discard (`pr#37988 <https://github.com/ceph/ceph/pull/37988>`_, Patrick Donnelly) -* nautilus: cephfs: release client dentry_lease before send caps release to mds (`pr#39127 <https://github.com/ceph/ceph/pull/39127>`_, Wei Qiaomiao) -* nautilus: client: add ceph.{cluster_fsid/client_id} vxattrs suppport (`pr#39001 <https://github.com/ceph/ceph/pull/39001>`_, Xiubo Li) -* nautilus: client: do not use g_conf().get_val<>() in libcephfs (`pr#38467 <https://github.com/ceph/ceph/pull/38467>`_, Xiubo Li) -* nautilus: cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT for Boost.Asio users (`pr#38760 <https://github.com/ceph/ceph/pull/38760>`_, Kefu Chai) -* nautilus: cmake: detect and use sigdescr_np() if available (`pr#38952 <https://github.com/ceph/ceph/pull/38952>`_, David Disseldorp) -* nautilus: common/mempool: Improve mempool shard selection (`pr#39651 <https://github.com/ceph/ceph/pull/39651>`_, Nathan Cutler, Adam Kupczyk) -* nautilus: common: fix logfile create perms (`issue#7849 <http://tracker.ceph.com/issues/7849>`_, `pr#38558 <https://github.com/ceph/ceph/pull/38558>`_, Kefu Chai, Roman Penyaev) -* nautilus: common: skip interfaces starting with "lo" in find_ipv{4,6}_in_subnet() (`pr#39342 <https://github.com/ceph/ceph/pull/39342>`_, Thomas Goirand, Jiawei Li) -* nautilus: core: osd: An empty bucket or OSD is not an error (`pr#39126 <https://github.com/ceph/ceph/pull/39126>`_, Brad Hubbard) -* nautilus: crush/CrushWrapper: rebuild reverse maps after rebuilding crush map (`pr#39197 <https://github.com/ceph/ceph/pull/39197>`_, Jason Dillaman) -* nautilus: krbd: add support for msgr2 (kernel 5.11) (`pr#39202 <https://github.com/ceph/ceph/pull/39202>`_, Ilya Dryomov) -* nautilus: librados, tests: allow to list objects with the NUL character in names (`pr#39324 <https://github.com/ceph/ceph/pull/39324>`_, Radoslaw Zarzynski) -* nautilus: librbd: clear implicitly enabled feature bits when creating images (`pr#39121 <https://github.com/ceph/ceph/pull/39121>`_, Jason Dillaman) -* nautilus: log: fix timestap precision of log can't set to millisecond (`pr#37659 <https://github.com/ceph/ceph/pull/37659>`_, Guan yunfei) -* nautilus: lvm/create.py: fix a typo in the help message (`pr#38371 <https://github.com/ceph/ceph/pull/38371>`_, ZhenLiu94) -* nautilus: mds : move start_files_to_recover() to recovery_done (`pr#37986 <https://github.com/ceph/ceph/pull/37986>`_, Simon Gao) -* nautilus: mds: account for closing sessions in hit_session (`pr#37820 <https://github.com/ceph/ceph/pull/37820>`_, Dan van der Ster) -* nautilus: mds: avoid spurious sleeps (`pr#39130 <https://github.com/ceph/ceph/pull/39130>`_, Patrick Donnelly) -* nautilus: mds: dir->mark_new() should together with dir->mark_dirty() (`pr#39128 <https://github.com/ceph/ceph/pull/39128>`_, "Yan, Zheng") -* nautilus: mds: update defaults for recall configs (`pr#39134 <https://github.com/ceph/ceph/pull/39134>`_, Patrick Donnelly) -* nautilus: mgr/PyModule: correctly remove config options (`pr#38803 <https://github.com/ceph/ceph/pull/38803>`_, Tim Serong) -* nautilus: mgr/crash: Serialize command handling (`pr#39338 <https://github.com/ceph/ceph/pull/39338>`_, Boris Ranto) -* nautilus: mgr/dashboard: CLI commands: read passwords from file (`pr#38832 <https://github.com/ceph/ceph/pull/38832>`_, Ernesto Puerta, Alfonso Martínez, Juan Miguel Olmo Martínez) -* nautilus: mgr/dashboard: Datatable catches select events from other datatables (`pr#37756 <https://github.com/ceph/ceph/pull/37756>`_, Volker Theile, Tiago Melo) -* nautilus: mgr/dashboard: Disable TLS 1.0 and 1.1 (`pr#38332 <https://github.com/ceph/ceph/pull/38332>`_, Volker Theile) -* nautilus: mgr/dashboard: Disable sso without python3-saml (`pr#38404 <https://github.com/ceph/ceph/pull/38404>`_, Kevin Meijer) -* nautilus: mgr/dashboard: Display a warning message in Dashboard when debug mode is enabled (`pr#38799 <https://github.com/ceph/ceph/pull/38799>`_, Volker Theile) -* nautilus: mgr/dashboard: Display users current bucket quota usage (`pr#38024 <https://github.com/ceph/ceph/pull/38024>`_, Avan Thakkar) -* nautilus: mgr/dashboard: Drop invalid RGW client instances, improve logging (`pr#38584 <https://github.com/ceph/ceph/pull/38584>`_, Volker Theile) -* nautilus: mgr/dashboard: Fix for datatable item not showing details after getting selected (`pr#38813 <https://github.com/ceph/ceph/pull/38813>`_, Nizamudeen A) -* nautilus: mgr/dashboard: Fix for incorrect validation in rgw user form (`pr#39117 <https://github.com/ceph/ceph/pull/39117>`_, Nizamudeen A) -* nautilus: mgr/dashboard: RGW User Form is validating disabled fields (`pr#39543 <https://github.com/ceph/ceph/pull/39543>`_, Aashish Sharma) -* nautilus: mgr/dashboard: The /rgw/status endpoint does not check for running service (`pr#38771 <https://github.com/ceph/ceph/pull/38771>`_, Volker Theile) -* nautilus: mgr/dashboard: Updating the inbuilt ssl providers error (`pr#38509 <https://github.com/ceph/ceph/pull/38509>`_, Nizamudeen A) -* nautilus: mgr/dashboard: Use secure cookies to store JWT Token (`pr#38839 <https://github.com/ceph/ceph/pull/38839>`_, Avan Thakkar, Aashish Sharma) -* nautilus: mgr/dashboard: add `--ssl` to `ng serve` (`pr#38972 <https://github.com/ceph/ceph/pull/38972>`_, Tatjana Dehler) -* nautilus: mgr/dashboard: avoid using document.write() (`pr#39526 <https://github.com/ceph/ceph/pull/39526>`_, Avan Thakkar) -* nautilus: mgr/dashboard: customize CherryPy Server Header (`pr#39419 <https://github.com/ceph/ceph/pull/39419>`_, anurag) -* nautilus: mgr/dashboard: delete EOF when reading passwords from file (`pr#39438 <https://github.com/ceph/ceph/pull/39438>`_, Alfonso Martínez) -* nautilus: mgr/dashboard: disable cluster selection in NFS export editing form (`pr#37995 <https://github.com/ceph/ceph/pull/37995>`_, Kiefer Chang) -* nautilus: mgr/dashboard: enable different URL for users of browser to Grafana (`pr#39136 <https://github.com/ceph/ceph/pull/39136>`_, Patrick Seidensal) -* nautilus: mgr/dashboard: fix MTU Mismatch alert (`pr#39518 <https://github.com/ceph/ceph/pull/39518>`_, Aashish Sharma) -* nautilus: mgr/dashboard: fix issues related with PyJWT versions >=2.0.0 (`pr#39837 <https://github.com/ceph/ceph/pull/39837>`_, Alfonso Martínez) -* nautilus: mgr/dashboard: fix security scopes of some NFS-Ganesha endpoints (`pr#37961 <https://github.com/ceph/ceph/pull/37961>`_, Kiefer Chang) -* nautilus: mgr/dashboard: fix tooltip for Provisioned/Total Provisioned fields (`pr#39646 <https://github.com/ceph/ceph/pull/39646>`_, Avan Thakkar) -* nautilus: mgr/dashboard: minimize console log traces of Ceph backend API tests (`pr#39544 <https://github.com/ceph/ceph/pull/39544>`_, Aashish Sharma) -* nautilus: mgr/dashboard: prometheus alerting: add some leeway for package drops and errors (`pr#39509 <https://github.com/ceph/ceph/pull/39509>`_, Patrick Seidensal) -* nautilus: mgr/dashboard: python 2: error when setting non-ASCII password (`pr#39441 <https://github.com/ceph/ceph/pull/39441>`_, Alfonso Martínez) -* nautilus: mgr/dashboard: remove pyOpenSSL version pinning (`pr#38504 <https://github.com/ceph/ceph/pull/38504>`_, Kiefer Chang) -* nautilus: mgr/dashboard: set security headers (`pr#39626 <https://github.com/ceph/ceph/pull/39626>`_, Avan Thakkar) -* nautilus: mgr/dashboard: test_standby\* (tasks.mgr.test_dashboard.TestDashboard) failed locally (`pr#38527 <https://github.com/ceph/ceph/pull/38527>`_, Volker Theile) -* nautilus: mgr/dashboard: trigger alert if some nodes have a MTU different than the median value (`pr#39104 <https://github.com/ceph/ceph/pull/39104>`_, Aashish Sharma) -* nautilus: mgr/insights: Test environment requires 'six' (`pr#38382 <https://github.com/ceph/ceph/pull/38382>`_, Brad Hubbard) -* nautilus: mgr/progress: delete all events over the wire (`pr#38416 <https://github.com/ceph/ceph/pull/38416>`_, Sage Weil) -* nautilus: mgr/progress: make it so progress bar does not get stuck forever (`issue#40618 <http://tracker.ceph.com/issues/40618>`_, `pr#37589 <https://github.com/ceph/ceph/pull/37589>`_, Kamoltat (Junior) Sirivadhna, Kamoltat) -* nautilus: mgr/prometheus: Add SLOW_OPS healthcheck as a metric (`pr#39747 <https://github.com/ceph/ceph/pull/39747>`_, Paul Cuzner) -* nautilus: mgr/prometheus: Fix 'pool filling up' with >50% usage (`pr#39076 <https://github.com/ceph/ceph/pull/39076>`_, Daniël Vos) -* nautilus: mgr/prometheus: Make module more stable (`pr#38334 <https://github.com/ceph/ceph/pull/38334>`_, Boris Ranto, Ken Dreyer) -* nautilus: mgr/restful: fix TypeError occurring in _gather_osds() (`issue#48488 <http://tracker.ceph.com/issues/48488>`_, `pr#39339 <https://github.com/ceph/ceph/pull/39339>`_, Jerry Pu) -* nautilus: mgr/telemetry: fix proxy usage (`pr#38816 <https://github.com/ceph/ceph/pull/38816>`_, Nathan Cutler) -* nautilus: mgr/volume: subvolume auth_id management and few bug fixes (`pr#39292 <https://github.com/ceph/ceph/pull/39292>`_, Rishabh Dave, Patrick Donnelly, Kotresh HR, Ramana Raja) -* nautilus: mgr/volumes: Make number of cloner threads configurable (`pr#37936 <https://github.com/ceph/ceph/pull/37936>`_, Kotresh HR) -* nautilus: mgr: Pin importlib_metadata version 2.1.0 (`pr#38296 <https://github.com/ceph/ceph/pull/38296>`_, Brad Hubbard) -* nautilus: mgr: don't update osd stat which is already out (`pr#38354 <https://github.com/ceph/ceph/pull/38354>`_, Zhi Zhang) -* nautilus: mgr: fix deadlock in ActivePyModules::get_osdmap() (`pr#39340 <https://github.com/ceph/ceph/pull/39340>`_, peng jiaqi) -* nautilus: mgr: update mon metadata when monmap is updated (`pr#39075 <https://github.com/ceph/ceph/pull/39075>`_, Kefu Chai) -* nautilus: mon scrub testing (`pr#38362 <https://github.com/ceph/ceph/pull/38362>`_, Brad Hubbard) -* nautilus: mon/MDSMonitor do not ignore mds's down:dne request (`pr#37822 <https://github.com/ceph/ceph/pull/37822>`_, chencan) -* nautilus: mon/MDSMonitor: divide mds identifier and mds real name with dot (`pr#37821 <https://github.com/ceph/ceph/pull/37821>`_, Zhi Zhang) -* nautilus: mon: Log "ceph health detail" periodically in cluster log (`pr#38118 <https://github.com/ceph/ceph/pull/38118>`_, Prashant Dhange) -* nautilus: mon: have 'mon stat' output json as well (`pr#37706 <https://github.com/ceph/ceph/pull/37706>`_, Joao Eduardo Luis, Sage Weil) -* nautilus: mon: paxos: Delete logger in destructor (`pr#39160 <https://github.com/ceph/ceph/pull/39160>`_, Brad Hubbard) -* nautilus: mon: validate crush-failure-domain (`pr#39124 <https://github.com/ceph/ceph/pull/39124>`_, Prashant Dhange) -* nautilus: monitoring: Use null yaxes min for OSD read latency (`pr#37959 <https://github.com/ceph/ceph/pull/37959>`_, Seena Fallah) -* nautilus: msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing, again (`pr#38268 <https://github.com/ceph/ceph/pull/38268>`_, Ilya Dryomov) -* nautilus: ocf: add support for mapping images within an RBD namespace (`pr#39047 <https://github.com/ceph/ceph/pull/39047>`_, Jason Dillaman) -* nautilus: os/bluestore: Add option to check BlueFS reads (`pr#39756 <https://github.com/ceph/ceph/pull/39756>`_, Adam Kupczyk) -* nautilus: os/bluestore: detect and fix "zombie" spanning blobs using fsck (`pr#39255 <https://github.com/ceph/ceph/pull/39255>`_, Igor Fedotov) -* nautilus: os/bluestore: fix huge read/writes in BlueFS (`pr#39698 <https://github.com/ceph/ceph/pull/39698>`_, Jianpeng Ma, Kefu Chai, Igor Fedotov) -* nautilus: os/bluestore: fix inappropriate ENOSPC from avl/hybrid allocator (`pr#38475 <https://github.com/ceph/ceph/pull/38475>`_, Igor Fedotov) -* nautilus: os/bluestore: fix segfault on out-of-bound offset provided to claim\_… (`pr#38637 <https://github.com/ceph/ceph/pull/38637>`_, Igor Fedotov) -* nautilus: os/bluestore: go beyond pinned onodes while trimming the cache (`pr#39720 <https://github.com/ceph/ceph/pull/39720>`_, Igor Fedotov) -* nautilus: os/bluestore: mempool's finer granularity + adding missed structs (`pr#38310 <https://github.com/ceph/ceph/pull/38310>`_, Deepika Upadhyay, Igor Fedotov, Adam Kupczyk) -* nautilus: osd: Check for nosrub/nodeep-scrub in between chunks, to avoid races (`pr#38411 <https://github.com/ceph/ceph/pull/38411>`_, David Zafman) -* nautilus: osd: fix bluestore bitmap allocator calculate wrong last_pos with hint (`pr#39708 <https://github.com/ceph/ceph/pull/39708>`_, Xue Yantao) -* nautilus: osd: optimize PG removal (part1) (`pr#38478 <https://github.com/ceph/ceph/pull/38478>`_, Neha Ojha, Igor Fedotov) -* nautilus: pybind/ceph_volume_client: Update the 'volumes' key to 'subvolumes' in auth-metadata file (`pr#39658 <https://github.com/ceph/ceph/pull/39658>`_, Kotresh HR, Michael Fritch) -* nautilus: pybind/cephfs: add special values for not reading conffile (`pr#37725 <https://github.com/ceph/ceph/pull/37725>`_, Kefu Chai) -* nautilus: pybind/cephfs: fix missing terminating NULL char in readlink()'s C string (`pr#38894 <https://github.com/ceph/ceph/pull/38894>`_, Tuan Hoang) -* nautilus: pybind/mgr/rbd_support: delay creation of progress module events (`pr#38833 <https://github.com/ceph/ceph/pull/38833>`_, Jason Dillaman) -* nautilus: qa/cephfs: add session_timeout option support (`pr#37840 <https://github.com/ceph/ceph/pull/37840>`_, Xiubo Li) -* nautilus: qa/distros: add rhel 7.9 (`pr#38188 <https://github.com/ceph/ceph/pull/38188>`_, rakeshgm) -* nautilus: qa/tasks/ceph_manager.py: don't use log-early in raw_cluster_cmd (`pr#39960 <https://github.com/ceph/ceph/pull/39960>`_, Neha Ojha) -* nautilus: qa/tasks/{ceph,ceph_manager}: drop py2 support (`pr#37906 <https://github.com/ceph/ceph/pull/37906>`_, Rishabh Dave, Deepika Upadhyay, Kefu Chai) -* nautilus: qa: fix tox failures (`pr#38627 <https://github.com/ceph/ceph/pull/38627>`_, Patrick Donnelly) -* nautilus: qa: krbd_stable_pages_required.sh: move to stable_writes attribute (`pr#38834 <https://github.com/ceph/ceph/pull/38834>`_, Ilya Dryomov) -* nautilus: qa: restore file name (`pr#38772 <https://github.com/ceph/ceph/pull/38772>`_, Patrick Donnelly) -* nautilus: qa: unmount volumes before removal (`pr#38690 <https://github.com/ceph/ceph/pull/38690>`_, Patrick Donnelly) -* nautilus: qa: use normal build for valgrind (`pr#39584 <https://github.com/ceph/ceph/pull/39584>`_, Sage Weil) -* nautilus: rados/upgrade/nautilus-x-singleton fails due to cluster [WRN] evicting unresponsive client (`pr#39706 <https://github.com/ceph/ceph/pull/39706>`_, Patrick Donnelly) -* nautilus: rbd-nbd: reexpand the conf meta in child process (`pr#38830 <https://github.com/ceph/ceph/pull/38830>`_, Xiubo Li) -* nautilus: rbd/bench: include used headers (`pr#39123 <https://github.com/ceph/ceph/pull/39123>`_, Kefu Chai) -* nautilus: rbd: librbd: ensure that thread pool lock is held when processing throttled IOs (`pr#37895 <https://github.com/ceph/ceph/pull/37895>`_, Jason Dillaman) -* nautilus: rbd: librbd: update hidden global config when removing pool config override (`pr#38831 <https://github.com/ceph/ceph/pull/38831>`_, Jason Dillaman) -* nautilus: rgw: Disable prefetch of entire head object when GET request with range header (`pr#38556 <https://github.com/ceph/ceph/pull/38556>`_, Or Friedmann) -* nautilus: rgw: S3 Put Bucket Policy should return 204 on success (`pr#38623 <https://github.com/ceph/ceph/pull/38623>`_, Matthew Oliver) -* nautilus: rgw: avoid expiration early triggering caused by overflow (`pr#38823 <https://github.com/ceph/ceph/pull/38823>`_, jiahuizeng) -* nautilus: rgw: cls/rgw/cls_rgw.cc: fix multiple lastest version problem (`pr#38085 <https://github.com/ceph/ceph/pull/38085>`_, Yang Honggang, Ruan Zitao) -* nautilus: rgw: cls/user: set from_index for reset stats calls (`pr#38822 <https://github.com/ceph/ceph/pull/38822>`_, Mykola Golub, Abhishek Lekshmanan) -* nautilus: rgw: distribute cache for exclusive put (`pr#38827 <https://github.com/ceph/ceph/pull/38827>`_, Or Friedmann) -* nautilus: rgw: fix bucket limit check fill_status warnings (`issue#40255 <http://tracker.ceph.com/issues/40255>`_, `pr#38825 <https://github.com/ceph/ceph/pull/38825>`_, Paul Emmerich) -* nautilus: rgw: fix invalid payload issue when serving s3website error page (`pr#38590 <https://github.com/ceph/ceph/pull/38590>`_, Ilsoo Byun) -* nautilus: rgw: fix trailing null in object names of multipart reuploads (`pr#39276 <https://github.com/ceph/ceph/pull/39276>`_, Casey Bodley) -* nautilus: rgw: in ordered bucket listing skip namespaced entries internally when possible (`pr#38493 <https://github.com/ceph/ceph/pull/38493>`_, J. Eric Ivancich) -* nautilus: rgw: keep syncstopped flag when copying bucket shard headers (`pr#38589 <https://github.com/ceph/ceph/pull/38589>`_, Ilsoo Byun) -* nautilus: rgw: multisite: Verify if the synced object is identical to source (`pr#38885 <https://github.com/ceph/ceph/pull/38885>`_, Prasad Krishnan, Yang Honggang, Casey Bodley) -* nautilus: rgw: radosgw-admin: clarify error when email address already in use (`pr#39661 <https://github.com/ceph/ceph/pull/39661>`_, Matthew Vernon) -* nautilus: rgw: rgw-admin: fixes BucketInfo for missing buckets (`pr#38588 <https://github.com/ceph/ceph/pull/38588>`_, Nick Janus, caolei) -* nautilus: rgw_file: return common_prefixes in lexical order (`pr#38828 <https://github.com/ceph/ceph/pull/38828>`_, Matt Benjamin) -* nautilus: rpm,deb: change sudoers file mode to 440 (`pr#39090 <https://github.com/ceph/ceph/pull/39090>`_, David Turner) -* nautilus: rpm: ceph-mgr-dashboard recommends python3-saml on SUSE (`pr#38818 <https://github.com/ceph/ceph/pull/38818>`_, Nathan Cutler) -* nautilus: run-make-check.sh: Don't run tests if build fails (`pr#38295 <https://github.com/ceph/ceph/pull/38295>`_, Brad Hubbard) -* nautilus: test/librados: fix endian bugs in checksum test cases (`pr#37605 <https://github.com/ceph/ceph/pull/37605>`_, Ulrich Weigand) -* nautilus: test/rbd-mirror: fix broken ceph_test_rbd_mirror_random_write (`pr#39650 <https://github.com/ceph/ceph/pull/39650>`_, Jason Dillaman) -* nautilus: test/run-cli-tests: use cram from github (`pr#39072 <https://github.com/ceph/ceph/pull/39072>`_, Kefu Chai) -* nautilus: tests: cancelling both noscrub \*and\* nodeep-scrub (`pr#39125 <https://github.com/ceph/ceph/pull/39125>`_, Ronen Friedman) -* nautilus: tools/rados: add support for binary object names in the rados CLI (`pr#39329 <https://github.com/ceph/ceph/pull/39329>`_, Radoslaw Zarzynski, Kefu Chai) -* nautilus: tools/rados: flush formatter periodically during json output of "rados ls" (`pr#37834 <https://github.com/ceph/ceph/pull/37834>`_, J. Eric Ivancich) -* nautilus: vstart.sh: fix fs set max_mds bug (`pr#37836 <https://github.com/ceph/ceph/pull/37836>`_, Jinmyeong Lee) - - -v14.2.16 Nautilus -================= - -This is the 16th backport release in the Nautilus series. This release fixes a -security flaw in CephFS. We recommend users to update to this release. - -Notable Changes ---------------- - -* CVE-2020-27781 : OpenStack Manila use of ceph_volume_client.py library allowed - tenant access to any Ceph credential's secret. (Kotresh Hiremath Ravishankar, - Ramana Raja) - - -Changelog ---------- - -* pybind/ceph_volume_client: disallow authorize on existing auth ids (Kotresh - Hiremath Ravishankar, Ramana Raja) - - -v14.2.15 Nautilus -================= - -This is the 15th backport release in the Nautilus series. This release fixes a -ceph-volume regression introduced in v14.2.13 and includes few other fixes. We -recommend users to update to this release. - -Notable Changes ---------------- - -* ceph-volume: Fixes lvm batch --auto, which breaks backward compatibility - when using non rotational devices only (SSD and/or NVMe). -* BlueStore: Fixes a bug in collection_list_legacy which makes pgs inconsistent - during scrub when running mixed versions of osds, prior to 14.2.12 with newer. -* MGR: progress module can now be turned on/off, using the commands: - ``ceph progress on`` and ``ceph progress off``. - -Changelog ---------- - -* ceph-volume: fix filestore/dmcrypt activate (`pr#38198 <https://github.com/ceph/ceph/pull/38198>`_, Guillaume Abrioux) -* ceph-volume: fix lvm batch auto with full SSDs (`pr#38046 <https://github.com/ceph/ceph/pull/38046>`_, Dimitri Savineau, Guillaume Abrioux) -* os/bluestore: fix "end reached" check in collection_list_legacy (`pr#38100 <https://github.com/ceph/ceph/pull/38100>`_, Mykola Golub) -* mgr/progress: introduce turn off/on feature (`pr#38173 <https://github.com/ceph/ceph/pull/38173>`_, kamoltat) - - -v14.2.14 Nautilus -================= - -This is the 14th backport release in the Nautilus series. This release fixes -a security flaw affecting Messenger v2, among other fixes across components. -We recommend users to update to this release. - -Notable Changes ---------------- - -* CVE 2020-25660: CEPHX_V2 replay attack protection lost, for Messenger v2 (Ilya Dryomov) - -Changelog ---------- - -* mgr/dashboard: Strange iSCSI discovery auth behavior (`pr#37333 <https://github.com/ceph/ceph/pull/37333>`_, Volker Theile) -* mgr/dashboard: redirect to original URL after successful login (`pr#36834 <https://github.com/ceph/ceph/pull/36834>`_, Avan Thakkar) -* mgr/prometheus: add pool compression stats (`pr#37563 <https://github.com/ceph/ceph/pull/37563>`_, Paul Cuzner) -* bluestore: test/objectstore/store_test: kill ExcessiveFragmentation test case (`pr#37824 <https://github.com/ceph/ceph/pull/37824>`_, Igor Fedotov) -* bluestore: BlockDevice.cc: use pending_aios instead of iovec size as ios num (`pr#37823 <https://github.com/ceph/ceph/pull/37823>`_, weixinwei) -* bluestore: Support flock retry (`pr#37842 <https://github.com/ceph/ceph/pull/37842>`_, Kefu Chai, wanghongxu) -* bluestore: attach csum for compressed blobs (`pr#37843 <https://github.com/ceph/ceph/pull/37843>`_, Igor Fedotov) -* osdc/ObjectCacher: overwrite might cause stray read request callbacks (`pr#37813 <https://github.com/ceph/ceph/pull/37813>`_, Jason Dillaman) -* mgr: avoid false alarm of MGR_MODULE_ERROR (`pr#38069 <https://github.com/ceph/ceph/pull/38069>`_, Kefu Chai, Sage Weil) -* mgr: fix race between module load and notify (`pr#37844 <https://github.com/ceph/ceph/pull/37844>`_, Mykola Golub, Patrick Donnelly) -* mon: set session_timeout when adding to session_map (`pr#37554 <https://github.com/ceph/ceph/pull/37554>`_, Ilya Dryomov) -* mon/MonClient: bring back CEPHX_V2 authorizer challenges (Ilya Dryomov) -* osd/osd-rep-recov-eio.sh: TEST_rados_repair_warning: return 1 (`pr#37815 <https://github.com/ceph/ceph/pull/37815>`_, David Zafman) -* rbd: librbd: ignore -ENOENT error when disabling object-map (`pr#37814 <https://github.com/ceph/ceph/pull/37814>`_, Jason Dillaman) -* rbd: rbd-nbd: don't ignore namespace when unmapping by image spec (`pr#37811 <https://github.com/ceph/ceph/pull/37811>`_, Mykola Golub) -* rgw/rgw_file: Fix the incorrect lru object eviction (`pr#37804 <https://github.com/ceph/ceph/pull/37804>`_, luo rixin) -* rgw: fix expiration header returned even if there is only one tag in the object the same as the rule (`pr#37806 <https://github.com/ceph/ceph/pull/37806>`_, Or Friedmann) -* rgw: fix: S3 API KeyCount incorrect return (`pr#37810 <https://github.com/ceph/ceph/pull/37810>`_, 胡玮文) -* rgw: radosgw-admin should paginate internally when listing bucket (`pr#37802 <https://github.com/ceph/ceph/pull/37802>`_, J. Eric Ivancich) -* rgw: rgw_file: avoid long-ish delay on shutdown (`pr#37552 <https://github.com/ceph/ceph/pull/37552>`_, Matt Benjamin) -* rgw: use yum rather than dnf for teuthology testing of rgw-orphan-list (`pr#37805 <https://github.com/ceph/ceph/pull/37805>`_, J. Eric Ivancich) - - -v14.2.13 Nautilus -================= - -This is the 13th backport release in the Nautilus series. This release fixes a -regression introduced in v14.2.12, and a few ceph-volume & RGW fixes. We -recommend users to update to this release. - -Notable Changes ---------------- - -* Fixed a regression that caused breakage in clusters that referred to ceph-mon - hosts using dns names instead of ip addresses in the ``mon_host`` param in - ``ceph.conf`` (`issue#47951 <https://tracker.ceph.com/issues/47951>`_) - -* ceph-volume: the ``lvm batch`` subcommand received a major rewrite - -Changelog ---------- - -* ceph-volume: major batch refactor (`pr#37522 <https://github.com/ceph/ceph/pull/37522>`_, Jan Fajerski) -* mgr/dashboard: Proper format iSCSI target portals (`pr#37060 <https://github.com/ceph/ceph/pull/37060>`_, Volker Theile) -* rpm: move python-enum34 into rhel 7 conditional (`pr#37747 <https://github.com/ceph/ceph/pull/37747>`_, Nathan Cutler) -* mon/MonMap: fix unconditional failure for init_with_hosts (`pr#37816 <https://github.com/ceph/ceph/pull/37816>`_, Nathan Cutler, Patrick Donnelly) -* rgw: allow rgw-orphan-list to note when rados objects are in namespace (`pr#37799 <https://github.com/ceph/ceph/pull/37799>`_, J. Eric Ivancich) -* rgw: fix setting of namespace in ordered and unordered bucket listing (`pr#37798 <https://github.com/ceph/ceph/pull/37798>`_, J. Eric Ivancich) - - -v14.2.12 Nautilus -================= - -This is the 12th backport release in the Nautilus series. This release -brings a number of bugfixes across all major components of Ceph. We recommend -that all Nautilus users upgrade to this release. - -Notable Changes ---------------- - -* The ``ceph df`` command now lists the number of pgs in each pool. - -* Monitors now have a config option ``mon_osd_warn_num_repaired``, 10 by default. - If any OSD has repaired more than this many I/O errors in stored data a - ``OSD_TOO_MANY_REPAIRS`` health warning is generated. In order to allow - clearing of the warning, a new command ``ceph tell osd.# clear_shards_repaired [count]`` - has been added. By default it will set the repair count to 0. If you wanted - to be warned again if additional repairs are performed you can provide a value - to the command and specify the value of ``mon_osd_warn_num_repaired``. - This command will be replaced in future releases by the health mute/unmute feature. - -* It is now possible to specify the initial monitor to contact for Ceph tools - and daemons using the ``mon_host_override`` config option or - ``--mon-host-override <ip>`` command-line switch. This generally should only - be used for debugging and only affects initial communication with Ceph's - monitor cluster. - -* Fix an issue with osdmaps not being trimmed in a healthy cluster (`issue#47296 - <https://tracker.ceph.com/issues/47296>`_, `pr#36982 - <https://github.com/ceph/ceph/pull/36982>`_) - -Changelog ---------- -* bluestore/bluefs: make accounting resiliant to unlock() (`pr#36909 <https://github.com/ceph/ceph/pull/36909>`_, Adam Kupczyk) -* bluestore: Rescue procedure for extremely large bluefs log (`pr#36930 <https://github.com/ceph/ceph/pull/36930>`_, Adam Kupczyk) -* bluestore: dump onode that has too many spanning blobs (`pr#36756 <https://github.com/ceph/ceph/pull/36756>`_, Igor Fedotov) -* bluestore: enable more flexible bluefs space management by default (`pr#37091 <https://github.com/ceph/ceph/pull/37091>`_, Igor Fedotov) -* bluestore: fix collection_list ordering (`pr#37051 <https://github.com/ceph/ceph/pull/37051>`_, Mykola Golub) -* ceph-iscsi: selinux fixes (`pr#36304 <https://github.com/ceph/ceph/pull/36304>`_, Mike Christie) -* ceph-volume: add tests for new functions that run LVM commands (`pr#36615 <https://github.com/ceph/ceph/pull/36615>`_, Rishabh Dave) -* ceph-volume: dont use container classes in api/lvm.py (`pr#35878 <https://github.com/ceph/ceph/pull/35878>`_, Guillaume Abrioux, Rishabh Dave') -* ceph-volume: fix journal size argument not work (`pr#37377 <https://github.com/ceph/ceph/pull/37377>`_, wanghongxu) -* ceph-volume: fix simple activate when legacy osd (`pr#37195 <https://github.com/ceph/ceph/pull/37195>`_, Guillaume Abrioux) -* ceph-volume: fix test_lvm.TestVolume.test_is_not_ceph_device (`pr#36493 <https://github.com/ceph/ceph/pull/36493>`_, Jan Fajerski) -* ceph-volume: handle idempotency with batch and explicit scenarios (`pr#35881 <https://github.com/ceph/ceph/pull/35881>`_, Andrew Schoen) -* ceph-volume: remove container classes from api/lvm.py (`pr#36610 <https://github.com/ceph/ceph/pull/36610>`_, Rishabh Dave) -* ceph-volume: remove unneeded call to get_devices() (`pr#37413 <https://github.com/ceph/ceph/pull/37413>`_, Marc Gariepy) -* ceph-volume: report correct rejected reason in inventory if device type is invalid (`pr#36453 <https://github.com/ceph/ceph/pull/36453>`_, Satoru Takeuchi) -* ceph-volume: retry when acquiring lock fails (`pr#36926 <https://github.com/ceph/ceph/pull/36926>`_, S\xc3\xa9bastien Han) -* ceph-volume: simple scan should ignore tmpfs (`pr#36952 <https://github.com/ceph/ceph/pull/36952>`_, Andrew Schoen) -* ceph.in: ignore failures to flush stdout (`pr#37226 <https://github.com/ceph/ceph/pull/37226>`_, Dan van der Ster) -* ceph.spec.in, debian/control: add smartmontools and nvme-cli dependen\xe2\x80\xa6 (`pr#37288 <https://github.com/ceph/ceph/pull/37288>`_, Yaarit Hatuka) -* cephfs-journal-tool: fix incorrect read_offset when finding missing objects (`pr#37479 <https://github.com/ceph/ceph/pull/37479>`_, Xue Yantao) -* cephfs: client: fix extra open ref decrease (`pr#36966 <https://github.com/ceph/ceph/pull/36966>`_, Xiubo Li) -* cephfs: client: make Client::open() pass proper cap mask to path_walk (`pr#37231 <https://github.com/ceph/ceph/pull/37231>`_, "Yan, Zheng") -* cephfs: mds/CInode: Optimize only pinned by subtrees check (`pr#36965 <https://github.com/ceph/ceph/pull/36965>`_, Mark Nelson) -* cephfs: mds: After restarting an mds, its standy-replay mds remained in the "resolve" state (`pr#37179 <https://github.com/ceph/ceph/pull/37179>`_, Wei Qiaomiao) -* cephfs: mds: do not defer incoming mgrmap when mds is laggy (`issue#44638 <http://tracker.ceph.com/issues/44638>`_, `pr#36168 <https://github.com/ceph/ceph/pull/36168>`_, Nathan Cutler, Venky Shankar) -* cephfs: mds: fix incorrect check for if dirfrag is being fragmented (`pr#37035 <https://github.com/ceph/ceph/pull/37035>`_, "Yan, Zheng") -* cephfs: mds: fix mds forwarding request no_available_op_found (`pr#36963 <https://github.com/ceph/ceph/pull/36963>`_, Yanhu Cao') -* cephfs: mds: fix purge_queues _calculate_ops is inaccurate (`pr#37481 <https://github.com/ceph/ceph/pull/37481>`_, Yanhu Cao') -* cephfs: mds: kcephfs parse dirfrags ndist is always 0 (`pr#37177 <https://github.com/ceph/ceph/pull/37177>`_, Yanhu Cao') -* cephfs: mds: place MDSGatherBuilder on the stack (`pr#36967 <https://github.com/ceph/ceph/pull/36967>`_, Patrick Donnelly) -* cephfs: mds: recover files after normal session close (`pr#37178 <https://github.com/ceph/ceph/pull/37178>`_, "Yan, Zheng") -* cephfs: mds: resolve SIGSEGV in waiting for uncommitted fragments (`pr#36968 <https://github.com/ceph/ceph/pull/36968>`_, Patrick Donnelly) -* cephfs: osdc/Journaler: do not call onsafe->complete() if onsafe is 0 (`pr#37229 <https://github.com/ceph/ceph/pull/37229>`_, Xiubo Li) -* client: handle readdir reply without Fs cap (`pr#37232 <https://github.com/ceph/ceph/pull/37232>`_, "Yan, Zheng") -* common, osd: add sanity checks around osd_scrub_max_preemptions (`pr#37470 <https://github.com/ceph/ceph/pull/37470>`_, xie xingguo) -* common/config: less noise about configs from mon we cant apply (`pr#36289 <https://github.com/ceph/ceph/pull/36289>`_, Sage Weil') -* common: ignore SIGHUP prior to fork (`issue#46269 <http://tracker.ceph.com/issues/46269>`_, `pr#36181 <https://github.com/ceph/ceph/pull/36181>`_, Willem Jan Withagen, hzwuhongsong) -* compressor: Add a config option to specify Zstd compression level (`pr#37254 <https://github.com/ceph/ceph/pull/37254>`_, Bryan Stillwell) -* core: include/encoding: Fix encode/decode of float types on big-endian systems (`pr#37033 <https://github.com/ceph/ceph/pull/37033>`_, Ulrich Weigand) -* doc/rados: Fix osd_op_queue default value (`pr#36354 <https://github.com/ceph/ceph/pull/36354>`_, Beno\xc3\xaet Knecht) -* doc/rados: Fix osd_scrub_during_recovery default value (`pr#37472 <https://github.com/ceph/ceph/pull/37472>`_, Beno\xc3\xaet Knecht) -* doc/rbd: add rbd-target-gw enable and start (`pr#36415 <https://github.com/ceph/ceph/pull/36415>`_, Zac Dover) -* doc: enable Read the Docs (`pr#37204 <https://github.com/ceph/ceph/pull/37204>`_, Kefu Chai) -* krbd: optionally skip waiting for udev events (`pr#37284 <https://github.com/ceph/ceph/pull/37284>`_, Ilya Dryomov) -* kv/RocksDBStore: make options compaction_threads/disableWAL/flusher_t\xe2\x80\xa6 (`pr#37055 <https://github.com/ceph/ceph/pull/37055>`_, Jianpeng Ma) -* librados: add LIBRADOS_SUPPORTS_GETADDRS support (`pr#36853 <https://github.com/ceph/ceph/pull/36853>`_, Xiubo Li, Jason Dillaman, Kaleb S. KEITHLEY, Kefu Chai) -* messages,mds: Fix decoding of enum types on big-endian systems (`pr#36814 <https://github.com/ceph/ceph/pull/36814>`_, Ulrich Weigand) -* mgr/balancer: use "==" and "!=" for comparing str (`pr#37471 <https://github.com/ceph/ceph/pull/37471>`_, Kefu Chai) -* mgr/dashboard/api: increase API health timeout (`pr#36607 <https://github.com/ceph/ceph/pull/36607>`_, Ernesto Puerta) -* mgr/dashboard: Allow editing iSCSI targets with initiators logged-in (`pr#37278 <https://github.com/ceph/ceph/pull/37278>`_, Tiago Melo) -* mgr/dashboard: Disabling the form inputs for the read_only modals (`pr#37241 <https://github.com/ceph/ceph/pull/37241>`_, Nizamudeen) -* mgr/dashboard: Dont use any xlf file when building the default language (`pr#37550 <https://github.com/ceph/ceph/pull/37550>`_, Sebastian Krah') -* mgr/dashboard: Fix many-to-many issue in host-details Grafana dashboard (`pr#37306 <https://github.com/ceph/ceph/pull/37306>`_, Patrick Seidensal) -* mgr/dashboard: Fix pool renaming functionality (`pr#37510 <https://github.com/ceph/ceph/pull/37510>`_, Stephan M\xc3\xbcller, Ernesto Puerta) -* mgr/dashboard: Hide table action input field if limit=0 (`pr#36783 <https://github.com/ceph/ceph/pull/36783>`_, Volker Theile) -* mgr/dashboard: Monitoring: Fix for the infinite loading bar action (`pr#37161 <https://github.com/ceph/ceph/pull/37161>`_, Nizamudeen A) -* mgr/dashboard: REST API returns 500 when no Content-Type is specified (`pr#37307 <https://github.com/ceph/ceph/pull/37307>`_, Avan Thakkar) -* mgr/dashboard: Unable to edit iSCSI logged-in client (`pr#36613 <https://github.com/ceph/ceph/pull/36613>`_, Ricardo Marques) -* mgr/dashboard: cpu stats incorrectly displayed (`pr#37295 <https://github.com/ceph/ceph/pull/37295>`_, Avan Thakkar) -* mgr/dashboard: document Prometheus security model (`pr#36920 <https://github.com/ceph/ceph/pull/36920>`_, Patrick Seidensal) -* mgr/dashboard: fix broken backporting (`pr#37505 <https://github.com/ceph/ceph/pull/37505>`_, Ernesto Puerta) -* mgr/dashboard: fix perf. issue when listing large amounts of buckets (`pr#37280 <https://github.com/ceph/ceph/pull/37280>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: fix pool usage calculation (`pr#37309 <https://github.com/ceph/ceph/pull/37309>`_, Ernesto Puerta) -* mgr/dashboard: remove "This week/month/year" and "Today" time stamps (`pr#36790 <https://github.com/ceph/ceph/pull/36790>`_, Avan Thakkar) -* mgr/dashboard: table detail rows overflow (`pr#37324 <https://github.com/ceph/ceph/pull/37324>`_, Aashish Sharma) -* mgr/dashboard: wait longer for health status to be cleared (`pr#36784 <https://github.com/ceph/ceph/pull/36784>`_, Tatjana Dehler) -* mgr/devicehealth: fix daemon filtering before scraping device (`pr#36741 <https://github.com/ceph/ceph/pull/36741>`_, Yaarit Hatuka) -* mgr/diskprediction_local: Fix array size error (`pr#36578 <https://github.com/ceph/ceph/pull/36578>`_, Beno\xc3\xaet Knecht) -* mgr/prometheus: automatically discover RBD pools for stats gathering (`pr#36412 <https://github.com/ceph/ceph/pull/36412>`_, Jason Dillaman) -* mgr/restful: use dict.items() for py3 compatible (`pr#36670 <https://github.com/ceph/ceph/pull/36670>`_, Kefu Chai) -* mgr/status: metadata is fetched async (`pr#37558 <https://github.com/ceph/ceph/pull/37558>`_, Michael Fritch) -* mgr/telemetry: fix device id splitting when anonymizing serial (`pr#37318 <https://github.com/ceph/ceph/pull/37318>`_, Yaarit Hatuka) -* mgr/volumes: add global lock debug (`pr#36828 <https://github.com/ceph/ceph/pull/36828>`_, Patrick Donnelly) -* mgr: Add missing states to PG_STATES in mgr_module.py (`pr#36785 <https://github.com/ceph/ceph/pull/36785>`_, Harley Gorrell) -* mgr: decrease pool stats if pg was removed (`pr#37476 <https://github.com/ceph/ceph/pull/37476>`_, Aleksei Gutikov) -* mgr: don't update pending service map epoch on receiving map from mon (`pr#37181 <https://github.com/ceph/ceph/pull/37181>`_, Mykola Golub') -* minor tweaks to fix compile issues under latest Fedora (`pr#36726 <https://github.com/ceph/ceph/pull/36726>`_, Willem Jan Withagen, Kaleb S. KEITHLEY, Kefu Chai) -* mon/OSDMonitor: only take in osd into consideration when trimming osdmaps (`pr#36982 <https://github.com/ceph/ceph/pull/36982>`_, Kefu Chai) -* mon/PGMap: add pg count for pools in the ceph df command (`pr#36944 <https://github.com/ceph/ceph/pull/36944>`_, Vikhyat Umrao) -* mon: Warn when too many reads are repaired on an OSD (`pr#36379 <https://github.com/ceph/ceph/pull/36379>`_, David Zafman) -* mon: fix the \Error ERANGE\ message when conf "osd_objectstore" is filestore' (`pr#37474 <https://github.com/ceph/ceph/pull/37474>`_, wangyunqing') -* mon: mark pgtemp messages as no_reply more consistenly in preprocess\\_\xe2\x80\xa6 (`pr#37171 <https://github.com/ceph/ceph/pull/37171>`_, Greg Farnum) -* mon: store mon updates in ceph context for future MonMap instantiation (`pr#36704 <https://github.com/ceph/ceph/pull/36704>`_, Patrick Donnelly, Shyamsundar Ranganathan) -* monclient: schedule first tick using mon_client_hunt_interval (`pr#36634 <https://github.com/ceph/ceph/pull/36634>`_, Mykola Golub) -* msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing (`pr#37081 <https://github.com/ceph/ceph/pull/37081>`_, Ilya Dryomov) -* osd/OSDCap: rbd profile permits use of "rbd_info" (`pr#36413 <https://github.com/ceph/ceph/pull/36413>`_, Florian Florensa) -* osd/PeeringState: prevent peers num_objects going negative (`pr#37473 <https://github.com/ceph/ceph/pull/37473>`_, xie xingguo') -* prometheus: Properly split the port off IPv6 addresses (`pr#36984 <https://github.com/ceph/ceph/pull/36984>`_, Matthew Oliver) -* rbd: include RADOS namespace in krbd symlinks (`pr#37468 <https://github.com/ceph/ceph/pull/37468>`_, Ilya Dryomov) -* rbd: librbd: Align rbd_write_zeroes declarations (`pr#36712 <https://github.com/ceph/ceph/pull/36712>`_, Corey Bryant) -* rbd: librbd: dont resend async_complete if watcher is unregistered (`pr#37040 <https://github.com/ceph/ceph/pull/37040>`_, Mykola Golub') -* rbd: librbd: global and pool-level config overrides require image refresh to apply (`pr#36725 <https://github.com/ceph/ceph/pull/36725>`_, Jason Dillaman) -* rbd: librbd: using migration abort can result in the loss of data (`pr#37165 <https://github.com/ceph/ceph/pull/37165>`_, Jason Dillaman) -* rbd: make common options override krbd-specific options (`pr#37407 <https://github.com/ceph/ceph/pull/37407>`_, Ilya Dryomov) -* rgw/cls: preserve olh entrys name on last unlink (`pr#37462 <https://github.com/ceph/ceph/pull/37462>`_, Casey Bodley') -* rgw: Add bucket name to bucket stats error logging (`pr#37378 <https://github.com/ceph/ceph/pull/37378>`_, Seena Fallah) -* rgw: Empty reqs_change_state queue before unregistered_reqs (`pr#37461 <https://github.com/ceph/ceph/pull/37461>`_, Soumya Koduri) -* rgw: Expiration days cant be zero and transition days can be zero (`pr#37465 <https://github.com/ceph/ceph/pull/37465>`_, zhang Shaowen') -* rgw: RGWObjVersionTracker tracks version over increments (`pr#37459 <https://github.com/ceph/ceph/pull/37459>`_, Casey Bodley) -* rgw: Swift API anonymous access should 401 (`pr#37438 <https://github.com/ceph/ceph/pull/37438>`_, Matthew Oliver) -* rgw: add access log to the beast frontend (`pr#36727 <https://github.com/ceph/ceph/pull/36727>`_, Mark Kogan) -* rgw: add negative cache to the system object (`pr#37460 <https://github.com/ceph/ceph/pull/37460>`_, Or Friedmann) -* rgw: append obj: prevent tail from being GCed (`pr#36390 <https://github.com/ceph/ceph/pull/36390>`_, Abhishek Lekshmanan') -* rgw: dump transitions in RGWLifecycleConfiguration::dump() (`pr#36880 <https://github.com/ceph/ceph/pull/36880>`_, Shengming Zhang) -* rgw: fail when get/set-bucket-versioning attempted on a non-existent \xe2\x80\xa6 (`pr#36188 <https://github.com/ceph/ceph/pull/36188>`_, Matt Benjamin) -* rgw: fix boost::asio::async_write() does not return error (`pr#37157 <https://github.com/ceph/ceph/pull/37157>`_, Mark Kogan) -* rgw: fix double slash (//) killing the gateway (`pr#36682 <https://github.com/ceph/ceph/pull/36682>`_, Theofilos Mouratidis) -* rgw: fix shutdown crash in RGWAsyncReadMDLogEntries (`pr#37463 <https://github.com/ceph/ceph/pull/37463>`_, Casey Bodley) -* rgw: hold reloader using unique_ptr (`pr#36770 <https://github.com/ceph/ceph/pull/36770>`_, Kefu Chai) -* rgw: log resharding events at level 1 (formerly 20) (`pr#36843 <https://github.com/ceph/ceph/pull/36843>`_, Or Friedmann) -* rgw: ordered bucket listing code clean-up (`pr#37169 <https://github.com/ceph/ceph/pull/37169>`_, J. Eric Ivancich) -* rgw: policy: reuse eval_principal to evaluate the policy principal (`pr#36637 <https://github.com/ceph/ceph/pull/36637>`_, Abhishek Lekshmanan) -* rgw: radosgw-admin: period pull command is not always a raw_storage_op (`pr#37464 <https://github.com/ceph/ceph/pull/37464>`_, Casey Bodley) -* rgw: replace \+\ with "%20" in canonical query string for s3 v4 auth' (`pr#37467 <https://github.com/ceph/ceph/pull/37467>`_, yuliyang_yewu') -* rgw: urlencode bucket name when forwarding request (`pr#37435 <https://github.com/ceph/ceph/pull/37435>`_, caolei) -* run-make-check.sh: extract run-make.sh + run sudo with absolute path (`pr#36494 <https://github.com/ceph/ceph/pull/36494>`_, Kefu Chai, Ernesto Puerta) -* systemd: Support Graceful Reboot for AIO Node (`pr#37301 <https://github.com/ceph/ceph/pull/37301>`_, Wong Hoi Sing Edison) -* tools/osdmaptool.cc: add ability to clean_temps (`pr#37477 <https://github.com/ceph/ceph/pull/37477>`_, Neha Ojha) -* tools/rados: Set locator key when exporting or importing a pool (`pr#37475 <https://github.com/ceph/ceph/pull/37475>`_, Iain Buclaw) - - -v14.2.11 Nautilus -================= - -This is the eleventh backport release in the Nautilus series. This release -brings a number of bugfixes across all major components of Ceph. We recommend -that all Nautilus users upgrade to this release. - -Notable Changes ---------------- - -* RGW: The ``radosgw-admin`` sub-commands dealing with orphans -- - ``radosgw-admin orphans find``, ``radosgw-admin orphans finish``, - ``radosgw-admin orphans list-jobs`` -- have been deprecated. They - have not been actively maintained and they store intermediate - results on the cluster, which could fill a nearly-full cluster. - They have been replaced by a tool, currently considered - experimental, ``rgw-orphan-list``. - -* Now when noscrub and/or nodeep-scrub flags are set globally or per pool, - scheduled scrubs of the type disabled will be aborted. All user initiated - scrubs are NOT interrupted. - -* Fixed a ceph-osd crash in _committed_osd_maps when there is a failure to encode - the first incremental map. `issue#46443 <https://tracker.ceph.com/issues/46443>`_ - -Changelog ---------- - -* bluestore: core: os/bluestore: fix large (>2GB) writes when bluefs_buffered_io = true (`pr#35404 <https://github.com/ceph/ceph/pull/35404>`_, Igor Fedotov) -* bluestore: os/bluestore: implement Hybrid allocator (`pr#35500 <https://github.com/ceph/ceph/pull/35500>`_, Adam Kupczyk, Kefu Chai, Igor Fedotov, xie xingguo) -* build/ops: build/ops: selinux: allow ceph_t amqp_port_t:tcp_socket (`pr#36190 <https://github.com/ceph/ceph/pull/36190>`_, Kaleb S. KEITHLEY, Thomas Serlin) -* ceph-volume: add dmcrypt support in raw mode (`pr#35831 <https://github.com/ceph/ceph/pull/35831>`_, Guillaume Abrioux) -* cephfs,pybind: pybind/cephfs: fix custom exception raised by cephfs.pyx (`pr#36180 <https://github.com/ceph/ceph/pull/36180>`_, Ramana Raja) -* cephfs: ceph_fuse: add the '-d' option back for libfuse (`pr#35398 <https://github.com/ceph/ceph/pull/35398>`_, Xiubo Li) -* cephfs: client: fix directory inode can not call release callback (`pr#36177 <https://github.com/ceph/ceph/pull/36177>`_, sepia-liu) -* cephfs: client: fix setxattr for 0 size value (NULL value) (`pr#36173 <https://github.com/ceph/ceph/pull/36173>`_, Sidharth Anupkrishnan) -* cephfs: client: fix snap directory atime (`pr#36169 <https://github.com/ceph/ceph/pull/36169>`_, Luis Henriques) -* cephfs: client: introduce timeout for client shutdown (`issue#44276 <http://tracker.ceph.com/issues/44276>`_, `pr#36215 <https://github.com/ceph/ceph/pull/36215>`_, Venky Shankar) -* cephfs: client: release the client_lock before copying data in read (`pr#36294 <https://github.com/ceph/ceph/pull/36294>`_, Chencan) -* cephfs: client: static dirent for readdir is not thread-safe (`pr#36511 <https://github.com/ceph/ceph/pull/36511>`_, Patrick Donnelly) -* cephfs: mds: add config to require forward to auth MDS (`pr#35377 <https://github.com/ceph/ceph/pull/35377>`_, simon gao) -* cephfs: mds: cleanup uncommitted fragments before mds goes to active (`pr#35397 <https://github.com/ceph/ceph/pull/35397>`_, "Yan, Zheng") -* cephfs: mds: do not raise "client failing to respond to cap release" when client working set is reasonable (`pr#36513 <https://github.com/ceph/ceph/pull/36513>`_, Patrick Donnelly) -* cephfs: mds: do not submit omap_rm_keys if the dir is the basedir of merge (`pr#36178 <https://github.com/ceph/ceph/pull/36178>`_, Chencan) -* cephfs: mds: fix filelock state when Fc is issued (`pr#35841 <https://github.com/ceph/ceph/pull/35841>`_, Xiubo Li) -* cephfs: mds: fix hang issue when accessing a file under a lost parent directory (`pr#36179 <https://github.com/ceph/ceph/pull/36179>`_, Zhi Zhang) -* cephfs: mds: fix nullptr dereference in MDCache::finish_rollback (`pr#36439 <https://github.com/ceph/ceph/pull/36439>`_, "Yan, Zheng") -* cephfs: mds: flag backtrace scrub failures for new files as okay (`pr#35400 <https://github.com/ceph/ceph/pull/35400>`_, Milind Changire) -* cephfs: mds: initialize MDSlaveUpdate::waiter (`pr#36462 <https://github.com/ceph/ceph/pull/36462>`_, "Yan, Zheng") -* cephfs: mds: make threshold for MDS_TRIM configurable (`pr#36175 <https://github.com/ceph/ceph/pull/36175>`_, Paul Emmerich) -* cephfs: mds: preserve ESlaveUpdate logevent until receiving OP_FINISH (`pr#35394 <https://github.com/ceph/ceph/pull/35394>`_, Varsha Rao, songxinying) -* cephfs: mds: reset heartbeat in EMetaBlob replay (`pr#36170 <https://github.com/ceph/ceph/pull/36170>`_, Yanhu Cao) -* cephfs: mgr/fs/volumes misc fixes (`pr#36167 <https://github.com/ceph/ceph/pull/36167>`_, Patrick Donnelly, Kotresh HR, Ramana Raja) -* cephfs: mgr/volumes: Add snapshot info command (`pr#35672 <https://github.com/ceph/ceph/pull/35672>`_, Kotresh HR) -* cephfs: mgr/volumes: Deprecate protect/unprotect CLI calls for subvolume snapshots (`pr#36166 <https://github.com/ceph/ceph/pull/36166>`_, Shyamsundar Ranganathan) -* cephfs: qa: add debugging for volumes plugin use of libcephfs (`pr#36512 <https://github.com/ceph/ceph/pull/36512>`_, Patrick Donnelly) -* cephfs: qa: skip cache_size check (`pr#36526 <https://github.com/ceph/ceph/pull/36526>`_, Patrick Donnelly) -* cephfs: tools/cephfs: don't bind to public_addr (`pr#35401 <https://github.com/ceph/ceph/pull/35401>`_, "Yan, Zheng") -* cephfs: vstart_runner: set mounted to True at the end of mount() (`pr#35396 <https://github.com/ceph/ceph/pull/35396>`_, Rishabh Dave) -* core,mon: mon/OSDMonitor: Reset grace period if failure interval exceeds a threshold (`pr#35798 <https://github.com/ceph/ceph/pull/35798>`_, Sridhar Seshasayee) -* core: mgr/DaemonServer.cc: make 'config show' on fsid work (`pr#36074 <https://github.com/ceph/ceph/pull/36074>`_, Neha Ojha) -* core: mgr/alert: can't set inventory_cache_timeout/service_cache_timeout from CLI (`pr#36104 <https://github.com/ceph/ceph/pull/36104>`_, Kiefer Chang) -* core: osd/PG: fix history.same_interval_since of merge target again (`pr#36161 <https://github.com/ceph/ceph/pull/36161>`_, xie xingguo) -* core: osd/PeeringState.h: Fix pg stuck in WaitActingChange (`pr#35389 <https://github.com/ceph/ceph/pull/35389>`_, chen qiuzhang) -* core: osd: Cancel in-progress scrubs (not user requested) (`pr#36292 <https://github.com/ceph/ceph/pull/36292>`_, David Zafman) -* core: osd: fix crash in _committed_osd_maps if incremental osdmap crc fails (`pr#36339 <https://github.com/ceph/ceph/pull/36339>`_, Neha Ojha, Dan van der Ster) -* core: osd: make "missing incremental map" a debug log message (`pr#35386 <https://github.com/ceph/ceph/pull/35386>`_, Nathan Cutler) -* core: osd: make message cap option usable again (`pr#35738 <https://github.com/ceph/ceph/pull/35738>`_, Neha Ojha, Josh Durgin) -* mgr/dashboard: Allow to edit iSCSI target with active session (`pr#35998 <https://github.com/ceph/ceph/pull/35998>`_, Ricardo Marques) -* mgr/dashboard: Prevent dashboard breakdown on bad pool selection (`pr#35367 <https://github.com/ceph/ceph/pull/35367>`_, Stephan Müller) -* mgr/dashboard: Prometheus query error in the metrics of Pools, OSDs and RBD images (`pr#35884 <https://github.com/ceph/ceph/pull/35884>`_, Avan Thakkar) -* mgr/dashboard: add popover list of Stand-by Managers & Metadata Servers (MDS) in landing page (`pr#34095 <https://github.com/ceph/ceph/pull/34095>`_, Kiefer Chang, Avan Thakkar) -* mgr/dashboard: fix Source column i18n issue in RBD configuration tables (`pr#35822 <https://github.com/ceph/ceph/pull/35822>`_, Kiefer Chang) -* mgr/k8sevents: sanitise kubernetes events (`pr#35563 <https://github.com/ceph/ceph/pull/35563>`_, Paul Cuzner) -* mgr/prometheus: improve Prometheus module cache (`pr#35918 <https://github.com/ceph/ceph/pull/35918>`_, Patrick Seidensal) -* mgr: mgr/progress: Skip pg_summary update if _events dict is empty (`pr#36075 <https://github.com/ceph/ceph/pull/36075>`_, Manuel Lausch) -* mgr: mgr/telemetry: force --license when sending while opted-out (`pr#35390 <https://github.com/ceph/ceph/pull/35390>`_, Yaarit Hatuka) -* mgr: mon/PGMap: do not consider changing pg stuck (`pr#35959 <https://github.com/ceph/ceph/pull/35959>`_, Kefu Chai) -* monitoring: fixing some issues in RBD detail dashboard (`pr#35464 <https://github.com/ceph/ceph/pull/35464>`_, Kiefer Chang) -* msgr: New msgr2 crc and secure modes (msgr2.1) (`pr#35733 <https://github.com/ceph/ceph/pull/35733>`_, Jianpeng Ma, Ilya Dryomov) -* rbd: librbd: new 'write_zeroes' API methods to suppliment the `discard` APIs (`pr#36250 <https://github.com/ceph/ceph/pull/36250>`_, Jason Dillaman) -* rbd: mgr/dashboard: work with v1 RBD images (`pr#35712 <https://github.com/ceph/ceph/pull/35712>`_, Ernesto Puerta) -* rbd: rbd: librbd: Watcher should not attempt to re-watch after detecting blacklisting (`pr#35385 <https://github.com/ceph/ceph/pull/35385>`_, Jason Dillaman) -* rgw,tests: test/rgw: update hadoop versions (`pr#35778 <https://github.com/ceph/ceph/pull/35778>`_, Casey Bodley, Vasu Kulkarni) -* rgw: Add subuser to OPA request (`pr#36187 <https://github.com/ceph/ceph/pull/36187>`_, Seena Fallah) -* rgw: Add support wildcard subuser for bucket policy (`pr#36186 <https://github.com/ceph/ceph/pull/36186>`_, Seena Fallah) -* rgw: add "rgw-orphan-list" tool and "radosgw-admin bucket radoslist ..." (`pr#34127 <https://github.com/ceph/ceph/pull/34127>`_, J. Eric Ivancich) -* rgw: add check for index entry's existing when adding bucket stats during bucket reshard (`pr#36189 <https://github.com/ceph/ceph/pull/36189>`_, zhang Shaowen) -* rgw: add quota enforcement to CopyObj (`pr#36184 <https://github.com/ceph/ceph/pull/36184>`_, Casey Bodley) -* rgw: bucket list/stats truncates for user w/ >1000 buckets (`pr#36165 <https://github.com/ceph/ceph/pull/36165>`_, J. Eric Ivancich) -* rgw: cls_bucket_list\_(un)ordered should clear results collection (`pr#36163 <https://github.com/ceph/ceph/pull/36163>`_, J. Eric Ivancich) -* rgw: fix loop problem with swift stat on account (`pr#36185 <https://github.com/ceph/ceph/pull/36185>`_, Marcus Watts) -* rgw: lc: fix Segmentation Fault when the tag of the object was not found (`pr#36086 <https://github.com/ceph/ceph/pull/36086>`_, yupeng chen, zhuo li) -* rgw: ordered listing lcv not managed correctly (`pr#35882 <https://github.com/ceph/ceph/pull/35882>`_, J. Eric Ivancich) -* rgw: radoslist incomplete multipart uploads fix marker progression (`pr#36191 <https://github.com/ceph/ceph/pull/36191>`_, J. Eric Ivancich) -* rgw: rgw/iam: correcting the result of get role policy (`pr#36193 <https://github.com/ceph/ceph/pull/36193>`_, Pritha Srivastava) -* rgw: rgw/url: fix amqp urls with vhosts (`pr#35384 <https://github.com/ceph/ceph/pull/35384>`_, Yuval Lifshitz) -* rgw: stop realm reloader before store shutdown (`pr#36192 <https://github.com/ceph/ceph/pull/36192>`_, Casey Bodley) -* tools: Add statfs operation to ceph-objecstore-tool (`pr#35713 <https://github.com/ceph/ceph/pull/35713>`_, David Zafman) - - -v14.2.10 Nautilus -================= - -This is the tenth release in the Nautilus series. In addition to fixing -a security-related bug in RGW, this release brings a number of bugfixes -across all major components of Ceph. We recommend that all Nautilus users -upgrade to this release. - -Notable Changes ---------------- - -* CVE-2020-10753: rgw: sanitize newlines in s3 CORSConfiguration's ExposeHeader - (William Bowling, Adam Mohammed, Casey Bodley) - -* RGW: Bucket notifications now support Kafka endpoints. This requires librdkafka of - version 0.9.2 and up. Note that Ubuntu 16.04.6 LTS (Xenial Xerus) has an older - version of librdkafka, and would require an update to the library. - -* The pool parameter ``target_size_ratio``, used by the pg autoscaler, - has changed meaning. It is now normalized across pools, rather than - specifying an absolute ratio. For details, see :ref:`pg-autoscaler`. - If you have set target size ratios on any pools, you may want to set - these pools to autoscale ``warn`` mode to avoid data movement during - the upgrade:: - - ceph osd pool set <pool-name> pg_autoscale_mode warn - -* The behaviour of the ``-o`` argument to the rados tool has been reverted to - its original behaviour of indicating an output file. This reverts it to a more - consistent behaviour when compared to other tools. Specifying object size is now - accomplished by using an upper case O ``-O``. - -* The format of MDSs in `ceph fs dump` has changed. - -* Ceph will issue a health warning if a RADOS pool's ``size`` is set to 1 - or in other words the pool is configured with no redundancy. This can - be fixed by setting the pool size to the minimum recommended value - with:: - - ceph osd pool set <pool-name> size <num-replicas> - - The warning can be silenced with:: - - ceph config set global mon_warn_on_pool_no_redundancy false - -* RGW: bucket listing performance on sharded bucket indexes has been - notably improved by heuristically -- and significantly, in many - cases -- reducing the number of entries requested from each bucket - index shard. - -Changelog ---------- - -* build/ops: address SElinux denials observed in rgw/multisite test run (`pr#34539 <https://github.com/ceph/ceph/pull/34539>`_, Kefu Chai, Kaleb S. Keithley) -* build/ops: ceph.spec.in: build on el8 (`pr#35599 <https://github.com/ceph/ceph/pull/35599>`_, Kefu Chai, Brad Hubbard, Alfonso Martínez, Nathan Cutler, Sage Weil, luo.runbing) -* build/ops: cmake: Improve test for 16-byte atomic support on IBM Z (`pr#33716 <https://github.com/ceph/ceph/pull/33716>`_, Ulrich Weigand) -* build/ops: do_cmake.sh: fix application of -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF (`pr#34008 <https://github.com/ceph/ceph/pull/34008>`_, Nathan Cutler, Kefu Chai) -* build/ops: install-deps.sh: Use dnf for rhel/centos 8 (`pr#35461 <https://github.com/ceph/ceph/pull/35461>`_, Brad Hubbard) -* build/ops: rpm: add python3-saml as install dependency (`pr#34475 <https://github.com/ceph/ceph/pull/34475>`_, Kefu Chai, Ernesto Puerta) -* build/ops: selinux: Allow ceph to setsched (`pr#34433 <https://github.com/ceph/ceph/pull/34433>`_, Brad Hubbard) -* build/ops: selinux: Allow ceph-mgr access to httpd dir (`pr#34434 <https://github.com/ceph/ceph/pull/34434>`_, Brad Hubbard) -* build/ops: selinux: Allow getattr access to /proc/kcore (`pr#34870 <https://github.com/ceph/ceph/pull/34870>`_, Brad Hubbard) -* build/ops: spec: address some warnings raised by RPM 4.15.1 (`pr#34527 <https://github.com/ceph/ceph/pull/34527>`_, Nathan Cutler) -* ceph-volume/batch: check lvs list before access (`pr#34481 <https://github.com/ceph/ceph/pull/34481>`_, Jan Fajerski) -* ceph-volume/batch: return success when all devices are filtered (`pr#34478 <https://github.com/ceph/ceph/pull/34478>`_, Jan Fajerski) -* ceph-volume: add and delete lvm tags in a single lvchange call (`pr#35453 <https://github.com/ceph/ceph/pull/35453>`_, Jan Fajerski) -* ceph-volume: add ceph.osdspec_affinity tag (`pr#35132 <https://github.com/ceph/ceph/pull/35132>`_, Joshua Schmid) -* ceph-volume: devices/simple/scan: Fix string in log statement (`pr#34445 <https://github.com/ceph/ceph/pull/34445>`_, Jan Fajerski) -* ceph-volume: fix nautilus functional tests (`pr#33391 <https://github.com/ceph/ceph/pull/33391>`_, Jan Fajerski) -* ceph-volume: lvm: get_device_vgs() filter by provided prefix (`pr#33616 <https://github.com/ceph/ceph/pull/33616>`_, Jan Fajerski, Yehuda Sadeh) -* ceph-volume: prepare: use \*-slots arguments for implicit sizing (`pr#34278 <https://github.com/ceph/ceph/pull/34278>`_, Jan Fajerski) -* ceph-volume: silence 'ceph-bluestore-tool' failures (`pr#33428 <https://github.com/ceph/ceph/pull/33428>`_, Sébastien Han) -* ceph-volume: strip _dmcrypt suffix in simple scan json output (`pr#33722 <https://github.com/ceph/ceph/pull/33722>`_, Jan Fajerski) -* cephfs/tools: add accounted_rstat/rstat when building file dentry (`pr#35185 <https://github.com/ceph/ceph/pull/35185>`_, Xiubo Li) -* cephfs/tools: cephfs-journal-tool: correctly parse --dry_run argument (`pr#34784 <https://github.com/ceph/ceph/pull/34784>`_, Milind Changire) -* cephfs: allow pool names with hyphen and period (`pr#35391 <https://github.com/ceph/ceph/pull/35391>`_, Rishabh Dave, Ramana Raja) -* cephfs: ceph-fuse: link to libfuse3 and pass "-o big_writes" to libfuse if libfuse < 3.0.0 (`pr#34771 <https://github.com/ceph/ceph/pull/34771>`_, Kefu Chai, Xiubo Li, "Yan, Zheng") -* cephfs: client: expose Client::ll_register_callback via libcephfs (`pr#35393 <https://github.com/ceph/ceph/pull/35393>`_, Kefu Chai, Jeff Layton) -* cephfs: client: fix Finisher assert failure (`pr#35000 <https://github.com/ceph/ceph/pull/35000>`_, Xiubo Li) -* cephfs: client: fix bad error handling in lseek SEEK_HOLE / SEEK_DATA (`pr#34308 <https://github.com/ceph/ceph/pull/34308>`_, Jeff Layton) -* cephfs: client: only set MClientCaps::FLAG_SYNC when flushing dirty auth caps (`pr#35118 <https://github.com/ceph/ceph/pull/35118>`_, Jeff Layton) -* cephfs: client: reset requested_max_size if file write is not wanted (`pr#34767 <https://github.com/ceph/ceph/pull/34767>`_, "Yan, Zheng") -* cephfs: mds: Handle blacklisted error in purge queue (`pr#35149 <https://github.com/ceph/ceph/pull/35149>`_, Varsha Rao) -* cephfs: mds: SIGSEGV in Migrator::export_sessions_flushed (`pr#33751 <https://github.com/ceph/ceph/pull/33751>`_, "Yan, Zheng") -* cephfs: mds: Using begin() and empty() to iterate the xlist (`pr#34338 <https://github.com/ceph/ceph/pull/34338>`_, Shen Hang, "Yan, Zheng") -* cephfs: mds: add configurable snapshot limit (`pr#33295 <https://github.com/ceph/ceph/pull/33295>`_, Milind Changire) -* cephfs: mds: display scrub status in ceph status (`issue#41508 <http://tracker.ceph.com/issues/41508>`_, `issue#42713 <http://tracker.ceph.com/issues/42713>`_, `issue#44520 <http://tracker.ceph.com/issues/44520>`_, `issue#42168 <http://tracker.ceph.com/issues/42168>`_, `issue#42169 <http://tracker.ceph.com/issues/42169>`_, `issue#42569 <http://tracker.ceph.com/issues/42569>`_, `issue#41424 <http://tracker.ceph.com/issues/41424>`_, `issue#42835 <http://tracker.ceph.com/issues/42835>`_, `issue#36370 <http://tracker.ceph.com/issues/36370>`_, `issue#42325 <http://tracker.ceph.com/issues/42325>`_, `pr#30704 <https://github.com/ceph/ceph/pull/30704>`_, Venky Shankar, Patrick Donnelly, Sage Weil, Kefu Chai) -* cephfs: mds: don't shallow copy when decoding xattr map (`pr#35199 <https://github.com/ceph/ceph/pull/35199>`_, "Yan, Zheng") -* cephfs: mds: handle bad purge queue item encoding (`pr#34307 <https://github.com/ceph/ceph/pull/34307>`_, "Yan, Zheng") -* cephfs: mds: handle ceph_assert on blacklisting (`pr#34435 <https://github.com/ceph/ceph/pull/34435>`_, Milind Changire) -* cephfs: mds: just delete MDSIOContextBase during shutdown (`pr#34343 <https://github.com/ceph/ceph/pull/34343>`_, "Yan, Zheng", Patrick Donnelly) -* cephfs: mds: take xlock in the order requests start locking (`pr#35392 <https://github.com/ceph/ceph/pull/35392>`_, "Yan, Zheng") -* common/bl: fix memory corruption in bufferlist::claim_append() (`pr#34516 <https://github.com/ceph/ceph/pull/34516>`_, Radoslaw Zarzynski) -* common/blkdev: compilation of telemetry and device backports (`pr#33726 <https://github.com/ceph/ceph/pull/33726>`_, Sage Weil, Difan Zhang, Patrick Seidensal, Kefu Chai) -* common/blkdev: fix some problems with smart scraping (`pr#33421 <https://github.com/ceph/ceph/pull/33421>`_, Sage Weil) -* common/ceph_time: tolerate mono time going backwards (`pr#34542 <https://github.com/ceph/ceph/pull/34542>`_, Sage Weil) -* common/options: Disable bluefs_buffered_io by default again (`pr#34297 <https://github.com/ceph/ceph/pull/34297>`_, Mark Nelson) -* compressor/lz4: work around bug in liblz4 versions <1.8.2 (`pr#35004 <https://github.com/ceph/ceph/pull/35004>`_, Sage Weil, Dan van der Ster) -* core: bluestore/bdev: initialize size when creating object (`pr#34832 <https://github.com/ceph/ceph/pull/34832>`_, Willem Jan Withagen) -* core: bluestore: Don't pollute old journal when add new device (`pr#34796 <https://github.com/ceph/ceph/pull/34796>`_, Yang Honggang) -* core: bluestore: fix 'unused' calculation (`pr#34794 <https://github.com/ceph/ceph/pull/34794>`_, xie xingguo, Igor Fedotov) -* core: bluestore: fix extent leak after main device expand (`pr#34711 <https://github.com/ceph/ceph/pull/34711>`_, Igor Fedotov) -* core: bluestore: more flexible DB volume space usage (`pr#33889 <https://github.com/ceph/ceph/pull/33889>`_, Igor Fedotov) -* core: bluestore: open DB in read-only when expanding DB/WAL (`pr#34611 <https://github.com/ceph/ceph/pull/34611>`_, Igor Fedotov, Jianpeng Ma, Adam Kupczyk) -* core: bluestore: prevent BlueFS::dirty_files from being leaked when syncing metadata (`pr#34515 <https://github.com/ceph/ceph/pull/34515>`_, Xuehan Xu) -* core: msg/async/rdma: fix bug event center is blocked by rdma construct connection for transport ib sync msg (`pr#34780 <https://github.com/ceph/ceph/pull/34780>`_, Peng Liu) -* core: msgr: backport the EventCenter-related fixes (`pr#33820 <https://github.com/ceph/ceph/pull/33820>`_, Radoslaw Zarzynski, Jeff Layton, Kefu Chai) -* core: rados: prevent ShardedOpWQ suicide_grace drop when waiting for work (`pr#34882 <https://github.com/ceph/ceph/pull/34882>`_, Dan Hill) -* doc/mgr/telemetry: added device channel details (`pr#33684 <https://github.com/ceph/ceph/pull/33684>`_, Yaarit Hatuka) -* doc/releases/nautilus: restart OSDs to make them bind to v2 addr (`pr#34524 <https://github.com/ceph/ceph/pull/34524>`_, Nathan Cutler) -* doc: fix parameter to set pg autoscale mode (`pr#34518 <https://github.com/ceph/ceph/pull/34518>`_, Changcheng Liu) -* doc: mds-config-ref: update 'mds_log_max_segments' value (`pr#35278 <https://github.com/ceph/ceph/pull/35278>`_, Konstantin Shalygin) -* doc: reset PendingReleaseNotes following 14.2.8 release (`pr#33863 <https://github.com/ceph/ceph/pull/33863>`_, Nathan Cutler) -* global: ensure CEPH_ARGS is decoded before early arg processing (`pr#33261 <https://github.com/ceph/ceph/pull/33261>`_, Kefu Chai, Jason Dillaman) -* mgr/DaemonServer: fix pg merge checks (`pr#34354 <https://github.com/ceph/ceph/pull/34354>`_, Sage Weil) -* mgr/PyModule: fix missing tracebacks in handle_pyerror() (`pr#34627 <https://github.com/ceph/ceph/pull/34627>`_, Tim Serong) -* mgr/balancer: tolerate pgs outside of target weight map (`pr#34761 <https://github.com/ceph/ceph/pull/34761>`_, Sage Weil) -* mgr/dashboard/grafana: Add rbd-image details dashboard (`pr#35248 <https://github.com/ceph/ceph/pull/35248>`_, Enno Gotthold) -* mgr/dashboard: 'destroyed' view in CRUSH map viewer (`pr#33764 <https://github.com/ceph/ceph/pull/33764>`_, Avan Thakkar) -* mgr/dashboard: Add more debug information to Dashboard RGW backend (`pr#34399 <https://github.com/ceph/ceph/pull/34399>`_, Volker Theile) -* mgr/dashboard: Dashboard does not allow you to set norebalance OSD flag (`pr#33927 <https://github.com/ceph/ceph/pull/33927>`_, Nizamudeen) -* mgr/dashboard: Disable cache for static files (`pr#33763 <https://github.com/ceph/ceph/pull/33763>`_, Tiago Melo) -* mgr/dashboard: Display the aggregated number of request (`pr#35212 <https://github.com/ceph/ceph/pull/35212>`_, Tiago Melo) -* mgr/dashboard: Fix HomeTest setup (`pr#35086 <https://github.com/ceph/ceph/pull/35086>`_, Tiago Melo) -* mgr/dashboard: Fix cherrypy request logging error (`pr#31586 <https://github.com/ceph/ceph/pull/31586>`_, Kiefer Chang) -* mgr/dashboard: Fix error in unit test caused by timezone (`pr#34473 <https://github.com/ceph/ceph/pull/34473>`_, Tiago Melo) -* mgr/dashboard: Fix error when listing RBD while deleting or moving (`pr#34120 <https://github.com/ceph/ceph/pull/34120>`_, Tiago Melo) -* mgr/dashboard: Fix iSCSI's username and password validation (`pr#34550 <https://github.com/ceph/ceph/pull/34550>`_, Tiago Melo) -* mgr/dashboard: Fixes rbd image 'purge trash' button & modal text (`pr#33697 <https://github.com/ceph/ceph/pull/33697>`_, anurag) -* mgr/dashboard: Improve workaround to redraw datatables (`pr#34413 <https://github.com/ceph/ceph/pull/34413>`_, Volker Theile) -* mgr/dashboard: Not able to restrict bucket creation for new user (`pr#34692 <https://github.com/ceph/ceph/pull/34692>`_, Volker Theile) -* mgr/dashboard: Pool read/write OPS shows too many decimal places (`pr#34039 <https://github.com/ceph/ceph/pull/34039>`_, anurag, Ernesto Puerta) -* mgr/dashboard: Prevent iSCSI target recreation when editing controls (`pr#34551 <https://github.com/ceph/ceph/pull/34551>`_, Tiago Melo) -* mgr/dashboard: REST API: OpenAPI docs require internet connection (`pr#33032 <https://github.com/ceph/ceph/pull/33032>`_, Patrick Seidensal) -* mgr/dashboard: RGW port autodetection does not support "Beast" RGW frontend (`pr#34400 <https://github.com/ceph/ceph/pull/34400>`_, Volker Theile) -* mgr/dashboard: Refactor Python unittests and controller (`pr#34662 <https://github.com/ceph/ceph/pull/34662>`_, Volker Theile) -* mgr/dashboard: Repair broken grafana panels (`pr#34417 <https://github.com/ceph/ceph/pull/34417>`_, Kristoffer Grönlund) -* mgr/dashboard: Searchable objects for table (`pr#32891 <https://github.com/ceph/ceph/pull/32891>`_, Stephan Müller) -* mgr/dashboard: Tabs does not handle click events (`issue#39326 <http://tracker.ceph.com/issues/39326>`_, `pr#34282 <https://github.com/ceph/ceph/pull/34282>`_, Tiago Melo) -* mgr/dashboard: UI fixes (`pr#34038 <https://github.com/ceph/ceph/pull/34038>`_, Avan Thakkar) -* mgr/dashboard: Updated existing E2E tests to match new format (`pr#33024 <https://github.com/ceph/ceph/pull/33024>`_, Nathan Weinberg) -* mgr/dashboard: Use booleanText pipe (`pr#33234 <https://github.com/ceph/ceph/pull/33234>`_, Alfonso Martínez, Volker Theile) -* mgr/dashboard: Use default language when running "npm run build" (`pr#33668 <https://github.com/ceph/ceph/pull/33668>`_, Tiago Melo) -* mgr/dashboard: do not show RGW API keys if only read-only privileges (`pr#33665 <https://github.com/ceph/ceph/pull/33665>`_, Alfonso Martínez) -* mgr/dashboard: fix COVERAGE_PATH in run-backend-api-tests.sh (`pr#34489 <https://github.com/ceph/ceph/pull/34489>`_, Alfonso Martínez) -* mgr/dashboard: fix backport #33764 (`pr#34640 <https://github.com/ceph/ceph/pull/34640>`_, Ernesto Puerta) -* mgr/dashboard: fix error when enabling SSO with cert. file (`pr#34129 <https://github.com/ceph/ceph/pull/34129>`_, Alfonso Martínez) -* mgr/dashboard: fix py2 strptime ImportError (not thread safe) (`pr#35016 <https://github.com/ceph/ceph/pull/35016>`_, Alfonso Martínez) -* mgr/dashboard: fixing RBD purge error in backend (`pr#34847 <https://github.com/ceph/ceph/pull/34847>`_, Kiefer Chang) -* mgr/dashboard: install teuthology using pip (`pr#35174 <https://github.com/ceph/ceph/pull/35174>`_, Nathan Cutler, Kefu Chai) -* mgr/dashboard: list configured prometheus alerts (`pr#34373 <https://github.com/ceph/ceph/pull/34373>`_, Patrick Seidensal, Tiago Melo) -* mgr/dashboard: monitoring menu entry should indicate firing alerts (`pr#34823 <https://github.com/ceph/ceph/pull/34823>`_, Tiago Melo, Volker Theile) -* mgr/dashboard: remove 'config-opt: read' perm. from system roles (`pr#33739 <https://github.com/ceph/ceph/pull/33739>`_, Alfonso Martínez) -* mgr/dashboard: show checkboxes for booleans (`pr#33388 <https://github.com/ceph/ceph/pull/33388>`_, Tatjana Dehler) -* mgr/dashboard: use FQDN for failover redirection (`pr#34497 <https://github.com/ceph/ceph/pull/34497>`_, Ernesto Puerta) -* mgr/insights: fix prune-health-history (`pr#35214 <https://github.com/ceph/ceph/pull/35214>`_, Sage Weil) -* mgr/pg_autoscaler: fix division by zero (`pr#33420 <https://github.com/ceph/ceph/pull/33420>`_, Sage Weil) -* mgr/pg_autoscaler: treat target ratios as weights (`pr#34087 <https://github.com/ceph/ceph/pull/34087>`_, Josh Durgin) -* mgr/prometheus: ceph_pg\_\* metrics contains last value instead of sum across all reported states (`pr#34162 <https://github.com/ceph/ceph/pull/34162>`_, Jacek Suchenia) -* mgr/run-tox-tests: Fix issue with PYTHONPATH (`pr#33688 <https://github.com/ceph/ceph/pull/33688>`_, Brad Hubbard) -* mgr/telegraf: catch FileNotFoundError exception (`pr#34628 <https://github.com/ceph/ceph/pull/34628>`_, Kefu Chai) -* mgr/telemetry: add 'last_upload' to status (`pr#33409 <https://github.com/ceph/ceph/pull/33409>`_, Yaarit Hatuka) -* mgr/telemetry: catch exception during requests.put (`pr#33141 <https://github.com/ceph/ceph/pull/33141>`_, Sage Weil) -* mgr/telemetry: fix UUID and STR concat (`pr#33666 <https://github.com/ceph/ceph/pull/33666>`_, Yaarit Hatuka) -* mgr/telemetry: fix and document proxy usage (`pr#33649 <https://github.com/ceph/ceph/pull/33649>`_, Lars Marowsky-Bree) -* mgr/volumes: Add interface to get subvolume metadata (`pr#34679 <https://github.com/ceph/ceph/pull/34679>`_, Kotresh HR) -* mgr/volumes: fs subvolume clone cancel (`issue#44208 <http://tracker.ceph.com/issues/44208>`_, `pr#34036 <https://github.com/ceph/ceph/pull/34036>`_, Venky Shankar, Michael Fritch) -* mgr/volumes: minor fixes (`pr#35482 <https://github.com/ceph/ceph/pull/35482>`_, Kotresh HR) -* mgr/volumes: synchronize ownership (for symlinks) and inode timestamps for cloned subvolumes (`issue#24880 <http://tracker.ceph.com/issues/24880>`_, `issue#43965 <http://tracker.ceph.com/issues/43965>`_, `pr#33877 <https://github.com/ceph/ceph/pull/33877>`_, Ramana Raja, Rishabh Dave, huanwen ren, Venky Shankar, Jos Collin) -* mgr: Add get_rates_from_data to mgr_util.py (`pr#33893 <https://github.com/ceph/ceph/pull/33893>`_, Stephan Müller, Ernesto Puerta) -* mgr: Improve internal python to c++ interface (`pr#34356 <https://github.com/ceph/ceph/pull/34356>`_, David Zafman) -* mgr: close restful socket after exec (`pr#35213 <https://github.com/ceph/ceph/pull/35213>`_, liushi) -* mgr: force purge normal ceph entities from service map (`issue#44677 <http://tracker.ceph.com/issues/44677>`_, `pr#34563 <https://github.com/ceph/ceph/pull/34563>`_, Venky Shankar) -* mgr: synchronize ClusterState's health and mon_status (`pr#34326 <https://github.com/ceph/ceph/pull/34326>`_, Radoslaw Zarzynski) -* mgr: update "hostname" when we already have the daemon state from that entity (`pr#33834 <https://github.com/ceph/ceph/pull/33834>`_, Kefu Chai) -* mon/FSCommands: Fix 'add_data_pool' command and 'fs new' command (`pr#34774 <https://github.com/ceph/ceph/pull/34774>`_, Ramana Raja) -* mon/OSDMonitor: Always tune priority cache manager memory on all mons (`pr#34916 <https://github.com/ceph/ceph/pull/34916>`_, Sridhar Seshasayee) -* mon/OSDMonitor: allow trimming maps even if osds are down (`pr#34983 <https://github.com/ceph/ceph/pull/34983>`_, Joao Eduardo Luis) -* mon/PGMap: fix summary display of >32bit pg states (`pr#33275 <https://github.com/ceph/ceph/pull/33275>`_, Sage Weil, Adam C. Emerson) -* mon: Get session_map_lock before remove_session (`pr#34677 <https://github.com/ceph/ceph/pull/34677>`_, Xiaofei Cui) -* mon: calculate min_size on osd pool set size (`pr#34585 <https://github.com/ceph/ceph/pull/34585>`_, Deepika Upadhyay) -* mon: disable min pg per osd warning (`pr#34618 <https://github.com/ceph/ceph/pull/34618>`_, Sage Weil) -* mon: fix/improve mon sync over small keys (`pr#33765 <https://github.com/ceph/ceph/pull/33765>`_, Sage Weil) -* mon: stash newer map on bootstrap when addr doesn't match (`pr#34500 <https://github.com/ceph/ceph/pull/34500>`_, Sage Weil) -* monitoring: Fix "10% OSDs down" alert description (`pr#35211 <https://github.com/ceph/ceph/pull/35211>`_, Benoît Knecht) -* monitoring: Fix pool capacity incorrect (`pr#34450 <https://github.com/ceph/ceph/pull/34450>`_, James Cheng) -* monitoring: alert for pool fill up broken (`pr#35137 <https://github.com/ceph/ceph/pull/35137>`_, Volker Theile) -* monitoring: alert for prediction of disk and pool fill up broken (`pr#34394 <https://github.com/ceph/ceph/pull/34394>`_, Patrick Seidensal) -* monitoring: fix RGW grafana chart 'Average GET/PUT Latencies' (`pr#33860 <https://github.com/ceph/ceph/pull/33860>`_, Alfonso Martínez) -* monitoring: fix decimal precision in Grafana %percentages (`pr#34829 <https://github.com/ceph/ceph/pull/34829>`_, Ernesto Puerta) -* monitoring: root volume full alert fires false positives (`pr#34419 <https://github.com/ceph/ceph/pull/34419>`_, Patrick Seidensal) -* osd/OSD: Log slow ops/types to cluster logs (`pr#33503 <https://github.com/ceph/ceph/pull/33503>`_, Sage Weil, Sridhar Seshasayee) -* osd/OSDMap: Show health warning if a pool is configured with size 1 (`pr#31842 <https://github.com/ceph/ceph/pull/31842>`_, Sridhar Seshasayee) -* osd/PeeringState.h: ignore RemoteBackfillReserved in WaitLocalBackfillReserved (`pr#34512 <https://github.com/ceph/ceph/pull/34512>`_, Neha Ojha) -* osd/PeeringState: do not trim pg log past last_update_ondisk (`pr#34957 <https://github.com/ceph/ceph/pull/34957>`_, Samuel Just, xie xingguo) -* osd/PeeringState: transit async_recovery_targets back into acting before backfilling (`pr#32849 <https://github.com/ceph/ceph/pull/32849>`_, xie xingguo) -* osd: dispatch_context and queue split finish on early bail-out (`pr#35024 <https://github.com/ceph/ceph/pull/35024>`_, Sage Weil) -* osd: fix racy accesses to OSD::osdmap (`pr#33530 <https://github.com/ceph/ceph/pull/33530>`_, Radoslaw Zarzynski) -* pybind/mgr/\*: fix config_notify handling of default values (`pr#34116 <https://github.com/ceph/ceph/pull/34116>`_, Nathan Cutler, Sage Weil) -* pybind/mgr: use six==1.14.0 (`pr#34316 <https://github.com/ceph/ceph/pull/34316>`_, Kefu Chai) -* pybind/rbd: RBD.create() method's 'old_format' parameter now defaults to False (`pr#35183 <https://github.com/ceph/ceph/pull/35183>`_, Jason Dillaman) -* pybind/rbd: ensure image is open before permitting operations (`pr#34424 <https://github.com/ceph/ceph/pull/34424>`_, Mykola Golub) -* pybind/rbd: fix no lockers are obtained, ImageNotFound exception will be output (`pr#34388 <https://github.com/ceph/ceph/pull/34388>`_, zhangdaolong) -* rbd: librbd: copy API should not inherit v1 image format by default (`pr#35182 <https://github.com/ceph/ceph/pull/35182>`_, Jason Dillaman) -* rbd: rbd-mirror: improve detection of blacklisted state (`pr#33533 <https://github.com/ceph/ceph/pull/33533>`_, Mykola Golub) -* rgw/kafka: add kafka endpoint support (`pr#32960 <https://github.com/ceph/ceph/pull/32960>`_, Yuval Lifshitz, Willem Jan Withagen, Kefu Chai) -* rgw/notifications: backporting features and bug fix (`pr#34107 <https://github.com/ceph/ceph/pull/34107>`_, Yuval Lifshitz) -* rgw/notifications: fix topic action fail with "MethodNotAllowed" (`issue#44614 <http://tracker.ceph.com/issues/44614>`_, `pr#33978 <https://github.com/ceph/ceph/pull/33978>`_, Yuval Lifshitz) -* rgw/notifications: version id was not sent in versioned buckets (`pr#35181 <https://github.com/ceph/ceph/pull/35181>`_, Yuval Lifshitz) -* rgw: when you abort a multipart upload request, the quota may be not updated (`pr#33268 <https://github.com/ceph/ceph/pull/33268>`_, Richard Bai(白学余)) -* rgw: Add support bucket policy for subuser (`pr#33714 <https://github.com/ceph/ceph/pull/33714>`_, Seena Fallah) -* rgw: Fix dynamic resharding not working for empty zonegroup in period (`pr#33266 <https://github.com/ceph/ceph/pull/33266>`_, Or Friedmann) -* rgw: Fix upload part copy range able to get almost any string (`pr#33265 <https://github.com/ceph/ceph/pull/33265>`_, Or Friedmann) -* rgw: GET/HEAD and PUT operations on buckets w/lifecycle expiration configured do not return x-amz-expiration header (`pr#32924 <https://github.com/ceph/ceph/pull/32924>`_, Matt Benjamin, Yuval Lifshitz) -* rgw: MultipartObjectProcessor supports stripe size > chunk size (`pr#33271 <https://github.com/ceph/ceph/pull/33271>`_, Casey Bodley) -* rgw: ReplaceKeyPrefixWith and ReplaceKeyWith can not set at the same … (`pr#34599 <https://github.com/ceph/ceph/pull/34599>`_, yuliyang) -* rgw: anonomous swift to obj that dont exist should 401 (`pr#35045 <https://github.com/ceph/ceph/pull/35045>`_, Matthew Oliver) -* rgw: clear ent_list for each loop of bucket list (`issue#44394 <http://tracker.ceph.com/issues/44394>`_, `pr#34099 <https://github.com/ceph/ceph/pull/34099>`_, Yao Zongyou) -* rgw: dmclock: wait until the request is handled (`pr#34954 <https://github.com/ceph/ceph/pull/34954>`_, GaryHyg) -* rgw: find oldest period and update RGWMetadataLogHistory() (`pr#34597 <https://github.com/ceph/ceph/pull/34597>`_, Shilpa Jagannath) -* rgw: fix SignatureDoesNotMatch when use ipv6 address in s3 client (`pr#33267 <https://github.com/ceph/ceph/pull/33267>`_, yuliyang) -* rgw: fix bug with (un)ordered bucket listing and marker w/ namespace (`pr#34609 <https://github.com/ceph/ceph/pull/34609>`_, J. Eric Ivancich) -* rgw: fix lc does not delete objects that do not have exactly the same tags as the rule (`pr#35002 <https://github.com/ceph/ceph/pull/35002>`_, Or Friedmann) -* rgw: fix multipart upload's error response (`pr#35019 <https://github.com/ceph/ceph/pull/35019>`_, GaryHyg) -* rgw: fix rgw crash when duration is invalid in sts request (`pr#33273 <https://github.com/ceph/ceph/pull/33273>`_, yuliyang) -* rgw: fix some list buckets handle leak (`pr#34986 <https://github.com/ceph/ceph/pull/34986>`_, Tianshan Qu) -* rgw: get barbican secret key request maybe return error code (`pr#33965 <https://github.com/ceph/ceph/pull/33965>`_, Richard Bai(白学余)) -* rgw: increase log level for same or older period pull msg (`pr#34833 <https://github.com/ceph/ceph/pull/34833>`_, Ali Maredia) -* rgw: make max_connections configurable in beast (`pr#33340 <https://github.com/ceph/ceph/pull/33340>`_, Tiago Pasqualini) -* rgw: making implicit_tenants backwards compatible (`issue#24348 <http://tracker.ceph.com/issues/24348>`_, `pr#33749 <https://github.com/ceph/ceph/pull/33749>`_, Marcus Watts) -* rgw: multisite: enforce spawn window for incremental data sync (`pr#33270 <https://github.com/ceph/ceph/pull/33270>`_, Casey Bodley) -* rgw: radosgw-admin: add support for --bucket-id in bucket stats command (`pr#34815 <https://github.com/ceph/ceph/pull/34815>`_, Vikhyat Umrao) -* rgw: radosgw-admin: fix infinite loops in 'datalog list' (`pr#35001 <https://github.com/ceph/ceph/pull/35001>`_, Casey Bodley) -* rgw: reshard: skip stale bucket id entries from reshard queue (`pr#34735 <https://github.com/ceph/ceph/pull/34735>`_, Abhishek Lekshmanan) -* rgw: set bucket attr twice when delete lifecycle config (`pr#34598 <https://github.com/ceph/ceph/pull/34598>`_, zhang Shaowen) -* rgw: set correct storage class for append (`pr#34064 <https://github.com/ceph/ceph/pull/34064>`_, yuliyang) -* rgw: sts: add all http args to req_info (`pr#33355 <https://github.com/ceph/ceph/pull/33355>`_, yuliyang) -* rgw: tune sharded bucket listing (`pr#33675 <https://github.com/ceph/ceph/pull/33675>`_, J. Eric Ivancich) -* tests: migrate qa/ to python3 (`pr#34171 <https://github.com/ceph/ceph/pull/34171>`_, Kefu Chai, Sage Weil, Casey Bodley, Rishabh Dave, Patrick Donnelly, Kyr Shatskyy, Michael Fritch, Xiubo Li, Ilya Dryomov, Alfonso Martínez, Thomas Bechtold) -* tools/cli: bash_completion: Do not auto complete obsolete and hidden cmds (`pr#35117 <https://github.com/ceph/ceph/pull/35117>`_, Kotresh HR) -* tools/cli: ceph_argparse: increment matchcnt on kwargs (`pr#33160 <https://github.com/ceph/ceph/pull/33160>`_, Matthew Oliver, Shyukri Shyukriev) -* tools/rados: Unmask '-o' to restore original behaviour (`pr#33641 <https://github.com/ceph/ceph/pull/33641>`_, Brad Hubbard) - -v14.2.9 Nautilus -================ - -This is the ninth bugfix release of Nautilus. This release fixes a -couple of security issues in RGW & Messenger V2. We recommend all users -to upgrade to this release. - -Notable Changes ---------------- - -- CVE-2020-1759: Fixed nonce reuse in msgr V2 secure mode -- CVE-2020-1760: Fixed XSS due to RGW GetObject header-splitting - -v14.2.8 Nautilus -================ - -This is the eighth update to the Ceph Nautilus release series. This release -fixes issues across a range of subsystems. We recommend that all users upgrade -to this release. - -Notable Changes ---------------- - -* The default value of ``bluestore_min_alloc_size_ssd`` has been changed to 4K to improve performance across all workloads. - -* The following OSD memory config options related to bluestore cache autotuning can now - be configured during runtime: - - - osd_memory_base (default: 768 MB) - - osd_memory_cache_min (default: 128 MB) - - osd_memory_expected_fragmentation (default: 0.15) - - osd_memory_target (default: 4 GB) - - The above options can be set with:: - - ceph config set osd <option> <value> - -* The MGR now accepts ``profile rbd`` and ``profile rbd-read-only`` user caps. - These caps can be used to provide users access to MGR-based RBD functionality - such as ``rbd perf image iostat`` an ``rbd perf image iotop``. - -* The configuration value ``osd_calc_pg_upmaps_max_stddev`` used for upmap - balancing has been removed. Instead use the mgr balancer config - ``upmap_max_deviation`` which now is an integer number of PGs of deviation - from the target PGs per OSD. This can be set with a command like - ``ceph config set mgr mgr/balancer/upmap_max_deviation 2``. The default - ``upmap_max_deviation`` is 5. There are situations where crush rules - would not allow a pool to ever have completely balanced PGs. For example, if - crush requires 1 replica on each of 3 racks, but there are fewer OSDs in 1 of - the racks. In those cases, the configuration value can be increased. - -* RGW: a mismatch between the bucket notification documentation and the actual - message format was fixed. This means that any endpoints receiving bucket - notification, will now receive the same notifications inside a JSON array - named 'Records'. Note that this does not affect pulling bucket notification - from a subscription in a 'pubsub' zone, as these are already wrapped inside - that array. - -* CephFS: multiple active MDS forward scrub is now rejected. Scrub currently - only is permitted on a file system with a single rank. Reduce the ranks to one - via ``ceph fs set <fs_name> max_mds 1``. - -* Ceph now refuses to create a file system with a default EC data pool. For - further explanation, see: - https://docs.ceph.com/docs/nautilus/cephfs/createfs/#creating-pools - -* Ceph will now issue a health warning if a RADOS pool has a ``pg_num`` - value that is not a power of two. This can be fixed by adjusting - the pool to a nearby power of two:: - - ceph osd pool set <pool-name> pg_num <new-pg-num> - - Alternatively, the warning can be silenced with:: - - ceph config set global mon_warn_on_pool_pg_num_not_power_of_two false - - -Changelog ---------- - -* bluestore: common/options: bluestore 4k min_alloc_size for SSD (`pr#32998 <https://github.com/ceph/ceph/pull/32998>`_, Mark Nelson, Sage Weil) -* bluestore: os/bluestore: Add config observer for osd memory specific options (`pr#31852 <https://github.com/ceph/ceph/pull/31852>`_, Sridhar Seshasayee) -* bluestore: os/bluestore/BlueStore.cc: set priorities for compression stats (`pr#32845 <https://github.com/ceph/ceph/pull/32845>`_, Neha Ojha) -* bluestore: os/bluestore: default bluestore_block_size 1T -> 100G (`pr#32283 <https://github.com/ceph/ceph/pull/32283>`_, Sage Weil) -* build/ops: cmake: remove seastar tests from "make check" (`pr#32658 <https://github.com/ceph/ceph/pull/32658>`_, Kefu Chai) -* build/ops: install-deps,rpm: enable devtoolset-8 on aarch64 also (`issue#38892 <http://tracker.ceph.com/issues/38892>`_, `pr#32651 <https://github.com/ceph/ceph/pull/32651>`_, Kefu Chai) -* build/ops: rpm: add rpm-build to SUSE-specific make check deps (`pr#32208 <https://github.com/ceph/ceph/pull/32208>`_, Nathan Cutler) -* build/ops: switch to boost 1.72 (`pr#32441 <https://github.com/ceph/ceph/pull/32441>`_, Willem Jan Withagen, Kefu Chai) -* build/ops: tools/setup-virtualenv.sh: do not default to python2.7 (`pr#30739 <https://github.com/ceph/ceph/pull/30739>`_, Nathan Cutler) -* cephfs: cephfs-journal-tool: fix crash and usage (`pr#32913 <https://github.com/ceph/ceph/pull/32913>`_, Xiubo Li) -* cephfs: client: Add is_dir() check before changing directory (`pr#32916 <https://github.com/ceph/ceph/pull/32916>`_, Varsha Rao) -* cephfs: client: add procession of SEEK_HOLE and SEEK_DATA in lseek (`pr#30764 <https://github.com/ceph/ceph/pull/30764>`_, Shen Hang) -* cephfs: client: add warning when cap != in->auth_cap (`pr#32065 <https://github.com/ceph/ceph/pull/32065>`_, Shen Hang) -* cephfs: client: EINVAL may be returned when offset is 0 (`pr#30762 <https://github.com/ceph/ceph/pull/30762>`_, wenpengLi) -* cephfs: client: fix lazyio_synchronize() to update file size and libcephfs: Add Tests for LazyIO (`pr#30769 <https://github.com/ceph/ceph/pull/30769>`_, Sidharth Anupkrishnan) -* cephfs: client: _readdir_cache_cb() may use the readdir_cache already clear (`issue#41148 <http://tracker.ceph.com/issues/41148>`_, `pr#30763 <https://github.com/ceph/ceph/pull/30763>`_, huanwen ren) -* cephfs: client: remove Inode.dir_contacts field and handle bad whence value to llseek gracefully (`pr#30766 <https://github.com/ceph/ceph/pull/30766>`_, Jeff Layton) -* cephfs,common: osdc/objecter: Fix last_sent in scientific format and add age to ops (`pr#31081 <https://github.com/ceph/ceph/pull/31081>`_, Varsha Rao) -* cephfs: disallow changing fuse_default_permissions option at runtime (`pr#32915 <https://github.com/ceph/ceph/pull/32915>`_, Zhi Zhang) -* cephfs: mds: add command that config individual client session (`issue#40811 <http://tracker.ceph.com/issues/40811>`_, `pr#32245 <https://github.com/ceph/ceph/pull/32245>`_, "Yan, Zheng") -* cephfs: mds: "apply configuration changes through MDSRank" and "recall caps from quiescent sessions" and "drive cap recall while dropping cache" (`pr#30761 <https://github.com/ceph/ceph/pull/30761>`_, Patrick Donnelly, Jeff Layton) -* cephfs: mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable (`pr#32756 <https://github.com/ceph/ceph/pull/32756>`_, "Yan, Zheng") -* cephfs: mds: fix revoking caps after after stale->resume circle (`pr#32909 <https://github.com/ceph/ceph/pull/32909>`_, "Yan, Zheng") -* cephfs: mds: free heap memory may grow too large for some workloads (`pr#31802 <https://github.com/ceph/ceph/pull/31802>`_, Patrick Donnelly) -* cephfs: MDSMonitor: warn if a new file system is being created with an EC default data pool (`pr#32600 <https://github.com/ceph/ceph/pull/32600>`_, Patrick Donnelly) -* cephfs: mds: no assert on frozen dir when scrub path (`pr#32071 <https://github.com/ceph/ceph/pull/32071>`_, Zhi Zhang) -* cephfs: mds: note client features when rejecting client (`pr#32914 <https://github.com/ceph/ceph/pull/32914>`_, Patrick Donnelly) -* cephfs: mds/OpenFileTable: match MAX_ITEMS_PER_OBJ to osd_deep_scrub_large_omap_object_key_threshold (`pr#32921 <https://github.com/ceph/ceph/pull/32921>`_, Vikhyat Umrao, Varsha Rao) -* cephfs: mds: properly evaluate unstable locks when evicting client (`pr#32073 <https://github.com/ceph/ceph/pull/32073>`_, "Yan, Zheng") -* cephfs: mds: reject forward scrubs when cluster has multiple active MDS (more than one rank) (`pr#32602 <https://github.com/ceph/ceph/pull/32602>`_, Patrick Donnelly, Milind Changire) -* cephfs: mds: reject sessionless messages (`issue#40784 <http://tracker.ceph.com/issues/40784>`_, `pr#30843 <https://github.com/ceph/ceph/pull/30843>`_, "Yan, Zheng", Xiao Guodong, Shen Hang) -* cephfs: mds: remove unnecessary debug warning (`pr#32077 <https://github.com/ceph/ceph/pull/32077>`_, Patrick Donnelly) -* cephfs: mds returns -5(EIO) error when the deleted file does not exist (`pr#30767 <https://github.com/ceph/ceph/pull/30767>`_, huanwen ren) -* cephfs: mds: split the dir if the op makes it oversized, because some ops maybe in flight (`pr#31302 <https://github.com/ceph/ceph/pull/31302>`_, simon gao) -* cephfs: mds: tolerate no snaprealm encoded in on-disk root inode (`pr#32079 <https://github.com/ceph/ceph/pull/32079>`_, "Yan, Zheng") -* cephfs: mgr: "mds metadata" to setup new DaemonState races with fsmap (`pr#31905 <https://github.com/ceph/ceph/pull/31905>`_, Patrick Donnelly) -* cephfs: mgr/volumes: allow setting uid, gid of subvolume and subvolume group during creation (`issue#42923 <http://tracker.ceph.com/issues/42923>`_, `pr#31741 <https://github.com/ceph/ceph/pull/31741>`_, Venky Shankar, Jos Collin) -* cephfs: mgr/volumes: fetch trash and clone entries without blocking volume access (`issue#44282 <http://tracker.ceph.com/issues/44282>`_, `pr#33526 <https://github.com/ceph/ceph/pull/33526>`_, Venky Shankar) -* cephfs: mgr/volumes: fs subvolume resize command (`pr#31332 <https://github.com/ceph/ceph/pull/31332>`_, Jos Collin) -* cephfs: mgr/volumes: misc fix and feature enhancements (`issue#42646 <http://tracker.ceph.com/issues/42646>`_, `issue#43645 <http://tracker.ceph.com/issues/43645>`_, `pr#33122 <https://github.com/ceph/ceph/pull/33122>`_, Rishabh Dave, Joshua Schmid, Venky Shankar, Ramana Raja, Jos Collin) -* cephfs: mgr/volumes: unregister job upon async threads exception (`issue#44315 <http://tracker.ceph.com/issues/44315>`_, `pr#33569 <https://github.com/ceph/ceph/pull/33569>`_, Venky Shankar) -* cephfs: mon: print FSMap regardless of file system count (`pr#32912 <https://github.com/ceph/ceph/pull/32912>`_, Patrick Donnelly) -* cephfs: pybind/mgr/volumes: idle connection drop is not working (`pr#33116 <https://github.com/ceph/ceph/pull/33116>`_, Patrick Donnelly) -* cephfs: RuntimeError: Files in flight high water is unexpectedly low (0 / 6) (`pr#33115 <https://github.com/ceph/ceph/pull/33115>`_, Patrick Donnelly) -* ceph.in: check ceph-conf returncode (`pr#31367 <https://github.com/ceph/ceph/pull/31367>`_, Dimitri Savineau) -* ceph-monstore-tool: correct the key for storing mgr_command_descs (`pr#33278 <https://github.com/ceph/ceph/pull/33278>`_, Kefu Chai) -* ceph-volume: add db and wal support to raw mode (`pr#32979 <https://github.com/ceph/ceph/pull/32979>`_, Sébastien Han) -* ceph-volume: add methods to pass filters to pvs, vgs and lvs commands (`pr#33217 <https://github.com/ceph/ceph/pull/33217>`_, Rishabh Dave) -* ceph-volume: add raw (--bluestore) mode (`pr#32733 <https://github.com/ceph/ceph/pull/32733>`_, Jan Fajerski, Sage Weil) -* ceph-volume: add sizing arguments to prepare (`pr#33231 <https://github.com/ceph/ceph/pull/33231>`_, Jan Fajerski) -* ceph-volume: allow raw block devices everywhere (`pr#32868 <https://github.com/ceph/ceph/pull/32868>`_, Jan Fajerski) -* ceph-volume: assume msgrV1 for all branches containing mimic (`pr#31616 <https://github.com/ceph/ceph/pull/31616>`_, Jan Fajerski) -* ceph-volume: avoid calling zap_lv with a LV-less VG (`pr#33297 <https://github.com/ceph/ceph/pull/33297>`_, Jan Fajerski) -* ceph-volume: batch bluestore fix create_lvs call (`pr#33232 <https://github.com/ceph/ceph/pull/33232>`_, Jan Fajerski) -* ceph-volume: batch bluestore fix create_lvs call (`pr#33301 <https://github.com/ceph/ceph/pull/33301>`_, Jan Fajerski) -* ceph-volume/batch: fail on filtered devices when non-interactive (`pr#33202 <https://github.com/ceph/ceph/pull/33202>`_, Jan Fajerski) -* ceph-volume: Dereference symlink in lvm list (`pr#32877 <https://github.com/ceph/ceph/pull/32877>`_, Benoît Knecht) -* ceph-volume: don't remove vg twice when zapping filestore (`pr#33337 <https://github.com/ceph/ceph/pull/33337>`_, Jan Fajerski) -* ceph-volume: finer grained availability notion in inventory (`pr#33240 <https://github.com/ceph/ceph/pull/33240>`_, Jan Fajerski) -* ceph-volume: fix has_bluestore_label() function (`pr#33239 <https://github.com/ceph/ceph/pull/33239>`_, Guillaume Abrioux) -* ceph-volume: fix is_ceph_device for lvm batch (`pr#33253 <https://github.com/ceph/ceph/pull/33253>`_, Jan Fajerski, Dimitri Savineau) -* ceph-volume: fix the integer overflow (`pr#32873 <https://github.com/ceph/ceph/pull/32873>`_, dongdong tao) -* ceph-volume: import mock.mock instead of unittest.mock (py2) (`pr#32870 <https://github.com/ceph/ceph/pull/32870>`_, Jan Fajerski) -* ceph-volume/lvm/activate.py: clarify error message: fsid refers to osd_fsid (`pr#32864 <https://github.com/ceph/ceph/pull/32864>`_, Yaniv Kaul) -* ceph-volume: lvm/deactivate: add unit tests, remove --all (`pr#32863 <https://github.com/ceph/ceph/pull/32863>`_, Jan Fajerski) -* ceph-volume: lvm deactivate command (`pr#33209 <https://github.com/ceph/ceph/pull/33209>`_, Jan Fajerski) -* ceph-volume: make get_devices fs location independent (`pr#33200 <https://github.com/ceph/ceph/pull/33200>`_, Jan Fajerski) -* ceph-volume: minor clean-up of "simple scan" subcommand help (`pr#32556 <https://github.com/ceph/ceph/pull/32556>`_, Michael Fritch) -* ceph-volume: pass journal_size as Size not string (`pr#33334 <https://github.com/ceph/ceph/pull/33334>`_, Jan Fajerski) -* ceph-volume: refactor listing.py + fixes (`pr#33238 <https://github.com/ceph/ceph/pull/33238>`_, Jan Fajerski, Rishabh Dave, Guillaume Abrioux) -* ceph-volume: reject disks smaller then 5GB in inventory (`issue#40776 <http://tracker.ceph.com/issues/40776>`_, `pr#31554 <https://github.com/ceph/ceph/pull/31554>`_, Jan Fajerski) -* ceph-volume: skip osd creation when already done (`pr#33242 <https://github.com/ceph/ceph/pull/33242>`_, Guillaume Abrioux) -* ceph-volume/test: patch VolumeGroups (`pr#32558 <https://github.com/ceph/ceph/pull/32558>`_, Jan Fajerski) -* ceph-volume: use correct extents if using db-devices and >1 osds_per_device (`pr#32874 <https://github.com/ceph/ceph/pull/32874>`_, Fabian Niepelt) -* ceph-volume: use fsync for dd command (`pr#31553 <https://github.com/ceph/ceph/pull/31553>`_, Rishabh Dave) -* ceph-volume: use get_device_vgs in has_common_vg (`pr#33254 <https://github.com/ceph/ceph/pull/33254>`_, Jan Fajerski) -* ceph-volume: util: look for executable in $PATH (`pr#32860 <https://github.com/ceph/ceph/pull/32860>`_, Shyukri Shyukriev) -* ceph-volume/zfs: add the inventory command (`pr#31295 <https://github.com/ceph/ceph/pull/31295>`_, Willem Jan Withagen) -* common/admin_socket: Increase socket timeouts (`pr#32063 <https://github.com/ceph/ceph/pull/32063>`_, Brad Hubbard) -* common/bl: fix the dangling last_p issue (`pr#33277 <https://github.com/ceph/ceph/pull/33277>`_, Radoslaw Zarzynski) -* common/config: update values when they are removed via mon (`pr#32846 <https://github.com/ceph/ceph/pull/32846>`_, Sage Weil) -* common: FIPS: audit and switch some memset & bzero users (`pr#32167 <https://github.com/ceph/ceph/pull/32167>`_, Radoslaw Zarzynski) -* common: fix deadlocky inflight op visiting in OpTracker (`pr#32858 <https://github.com/ceph/ceph/pull/32858>`_, Radoslaw Zarzynski) -* common/options: remove unused ms_msgr2\_{sign,encrypt} (`pr#31850 <https://github.com/ceph/ceph/pull/31850>`_, Ilya Dryomov) -* common/util: use ifstream to read from /proc files (`pr#32901 <https://github.com/ceph/ceph/pull/32901>`_, Kefu Chai, songweibin) -* core: auth/Crypto: fallback to /dev/urandom if getentropy() fails (`pr#31301 <https://github.com/ceph/ceph/pull/31301>`_, Kefu Chai) -* core: mon: keep v1 address type when explicitly set (`pr#32028 <https://github.com/ceph/ceph/pull/32028>`_, Ricardo Dias) -* core: mon/OSDMonitor: Fix pool set target_size_bytes (etc) with unit suffix (`pr#31740 <https://github.com/ceph/ceph/pull/31740>`_, Prashant D) -* core: osd/OSDMap: health alert for non-power-of-two pg_num (`pr#30689 <https://github.com/ceph/ceph/pull/30689>`_, Sage Weil) -* crush/CrushWrapper: behave with empty weight vector (`pr#32905 <https://github.com/ceph/ceph/pull/32905>`_, Kefu Chai) -* doc/cephfs/client-auth: description and example are inconsistent (`pr#32781 <https://github.com/ceph/ceph/pull/32781>`_, Ilya Dryomov) -* doc/cephfs: improve add/remove MDS section (`issue#39620 <http://tracker.ceph.com/issues/39620>`_, `pr#31116 <https://github.com/ceph/ceph/pull/31116>`_, Patrick Donnelly) -* doc/ceph-fuse: mention -k option in ceph-fuse man page (`pr#30765 <https://github.com/ceph/ceph/pull/30765>`_, Rishabh Dave) -* doc/ceph-volume: initial docs for zfs/inventory and zfs/api (`pr#32746 <https://github.com/ceph/ceph/pull/32746>`_, Willem Jan Withagen) -* doc: remove invalid option mon_pg_warn_max_per_osd (`pr#31300 <https://github.com/ceph/ceph/pull/31300>`_, zhang daolong) -* doc/_templates/page.html: redirect to etherpad (`pr#32248 <https://github.com/ceph/ceph/pull/32248>`_, Neha Ojha) -* doc: wrong datatype describing crush_rule (`pr#32254 <https://github.com/ceph/ceph/pull/32254>`_, Kefu Chai) -* global: disable THP for Ceph daemons (`pr#31646 <https://github.com/ceph/ceph/pull/31646>`_, Patrick Donnelly, Mark Nelson) -* kv: fix shutdown vs async compaction (`pr#32715 <https://github.com/ceph/ceph/pull/32715>`_, Sage Weil) -* librbd: diff iterate with fast-diff now correctly includes parent (`pr#32469 <https://github.com/ceph/ceph/pull/32469>`_, Jason Dillaman) -* librbd: fix rbd_open_by_id, rbd_open_by_id_read_only (`pr#32837 <https://github.com/ceph/ceph/pull/32837>`_, yangjun) -* librbd: remove pool objects when removing a namespace (`pr#32839 <https://github.com/ceph/ceph/pull/32839>`_, Jason Dillaman) -* librbd: skip stale child with non-existent pool for list descendants (`pr#32841 <https://github.com/ceph/ceph/pull/32841>`_, songweibin) -* librbd: support compression allocation hints to the OSD (`pr#32842 <https://github.com/ceph/ceph/pull/32842>`_, Jason Dillaman) -* mgr: add 'rbd' profiles to support 'rbd_support' module commands (`pr#32086 <https://github.com/ceph/ceph/pull/32086>`_, Jason Dillaman) -* mgr/alerts: simple health alerts (`pr#30820 <https://github.com/ceph/ceph/pull/30820>`_, Sage Weil) -* mgr: Balancer fixes (`pr#31956 <https://github.com/ceph/ceph/pull/31956>`_, Neha Ojha, Kefu Chai, David Zafman) -* mgr/DaemonServer: fix 'osd ok-to-stop' for EC pools (`pr#32844 <https://github.com/ceph/ceph/pull/32844>`_, Sage Weil) -* mgr/dashboard: add debug mode, and accept expected exception when SSL handshaking (`pr#31190 <https://github.com/ceph/ceph/pull/31190>`_, Kefu Chai, Ernesto Puerta, Joshua Schmid) -* mgr/dashboard: block mirroring page results in internal server error (`pr#32133 <https://github.com/ceph/ceph/pull/32133>`_, Jason Dillaman) -* mgr/dashboard: check embedded Grafana dashboard references (`issue#40008 <http://tracker.ceph.com/issues/40008>`_, `pr#31808 <https://github.com/ceph/ceph/pull/31808>`_, Kiefer Chang) -* mgr/dashboard: check if user has config-opt permissions (`pr#32827 <https://github.com/ceph/ceph/pull/32827>`_, Alfonso Martínez) -* mgr/dashboard: Cross sign button not working for some modals (`pr#32012 <https://github.com/ceph/ceph/pull/32012>`_, Ricardo Marques) -* mgr/dashboard: Dashboard can't handle self-signed cert on Grafana API (`pr#31792 <https://github.com/ceph/ceph/pull/31792>`_, Volker Theile) -* mgr/dashboard: disable 'Add Capability' button in rgw user edit (`pr#32930 <https://github.com/ceph/ceph/pull/32930>`_, Alfonso Martínez) -* mgr/dashboard: fix restored RBD image naming issue (`pr#31810 <https://github.com/ceph/ceph/pull/31810>`_, Kiefer Chang) -* mgr/dashboard: grafana charts match time picker selection (`pr#31999 <https://github.com/ceph/ceph/pull/31999>`_, Alfonso Martínez) -* mgr/dashboard,grafana: remove shortcut menu (`pr#31980 <https://github.com/ceph/ceph/pull/31980>`_, Ernesto Puerta) -* mgr/dashboard: Handle always-on Ceph Manager modules correctly (`pr#31782 <https://github.com/ceph/ceph/pull/31782>`_, Volker Theile) -* mgr/dashboard: Hardening accessing the metadata (`pr#32128 <https://github.com/ceph/ceph/pull/32128>`_, Volker Theile) -* mgr/dashboard: iSCSI targets not available if any gateway is down (and more...) (`pr#32304 <https://github.com/ceph/ceph/pull/32304>`_, Ricardo Marques) -* mgr/dashboard: KeyError on dashboard reload (`pr#32233 <https://github.com/ceph/ceph/pull/32233>`_, Patrick Seidensal) -* mgr/dashboard: key-value-table doesn't render booleans (`pr#31789 <https://github.com/ceph/ceph/pull/31789>`_, Patrick Seidensal) -* mgr/dashboard: Remove compression mode unset in pool from (`pr#31784 <https://github.com/ceph/ceph/pull/31784>`_, Stephan Müller) -* mgr/dashboard: show "Rename" in header & button when renaming RBD (`pr#31779 <https://github.com/ceph/ceph/pull/31779>`_, Alfonso Martínez) -* mgr/dashboard: sort monitors by open sessions correctly (`pr#31791 <https://github.com/ceph/ceph/pull/31791>`_, Alfonso Martínez) -* mgr/dashboard: Standby Dashboards don't handle all requests properly (`pr#32299 <https://github.com/ceph/ceph/pull/32299>`_, Volker Theile) -* mgr/dashboard: Trim IQN on iSCSI target form (`pr#31942 <https://github.com/ceph/ceph/pull/31942>`_, Ricardo Marques) -* mgr/dashboard: Unable to set boolean values to false when default is true (`pr#31941 <https://github.com/ceph/ceph/pull/31941>`_, Ricardo Marques) -* mgr/dashboard: Using wrong identifiers in RGW user/bucket datatables (`pr#32888 <https://github.com/ceph/ceph/pull/32888>`_, Volker Theile) -* mgr/devicehealth: ensure we don't store empty objects (`pr#31735 <https://github.com/ceph/ceph/pull/31735>`_, Sage Weil) -* mgr/devicehealth: fix telemetry stops sending device reports after 48 hours (`pr#33346 <https://github.com/ceph/ceph/pull/33346>`_, Yaarit Hatuka, Sage Weil) -* mgr: drop reference to msg on return (`pr#33498 <https://github.com/ceph/ceph/pull/33498>`_, Patrick Donnelly) -* mgr/MgrClient: fix open condition (`pr#32769 <https://github.com/ceph/ceph/pull/32769>`_, Sage Weil) -* mgr/pg_autoscaler: calculate pool_pg_target using pool size (`pr#33170 <https://github.com/ceph/ceph/pull/33170>`_, Dan van der Ster) -* mgr/pg_autoscaler: default to pg_num[_min] = 16 (`pr#32069 <https://github.com/ceph/ceph/pull/32069>`_, Sage Weil) -* mgr/pg_autoscaler: default to pg_num[_min] = 32 (`pr#32931 <https://github.com/ceph/ceph/pull/32931>`_, Neha Ojha) -* mgr/pg_autoscaler: implement shutdown method (`pr#32068 <https://github.com/ceph/ceph/pull/32068>`_, Patrick Donnelly) -* mgr/pg_autoscaler: only generate target\_\* health warnings if targets set (`pr#32067 <https://github.com/ceph/ceph/pull/32067>`_, Sage Weil) -* mgr/prometheus: assign a value to osd_dev_node when obj_store is not filestore or bluestore (`pr#31556 <https://github.com/ceph/ceph/pull/31556>`_, jiahuizeng) -* mgr/prometheus: report per-pool pg states (`pr#33157 <https://github.com/ceph/ceph/pull/33157>`_, Aleksei Zakharov) -* mgr/telemetry: anonymizing smartctl report itself (`pr#33082 <https://github.com/ceph/ceph/pull/33082>`_, Yaarit Hatuka) -* mgr/telemetry: check get_metadata return val (`pr#33095 <https://github.com/ceph/ceph/pull/33095>`_, Yaarit Hatuka) -* mgr/telemetry: split entity_name only once (handle ids with dots) (`pr#33168 <https://github.com/ceph/ceph/pull/33168>`_, Dan Mick) -* mgr/zabbix: Adds possibility to send data to multiple zabbix servers (`pr#30009 <https://github.com/ceph/ceph/pull/30009>`_, slivik, Jakub Sliva) -* mon/ConfigMonitor: fix handling of NO_MON_UPDATE settings (`pr#32856 <https://github.com/ceph/ceph/pull/32856>`_, Sage Weil) -* mon/ConfigMonitor: only propose if leader (`pr#33155 <https://github.com/ceph/ceph/pull/33155>`_, Sage Weil) -* mon: Don't put session during feature change (`pr#33152 <https://github.com/ceph/ceph/pull/33152>`_, Brad Hubbard) -* mon: elector: return after triggering a new election (`pr#33007 <https://github.com/ceph/ceph/pull/33007>`_, Greg Farnum) -* monitoring: wait before firing osd full alert (`pr#32070 <https://github.com/ceph/ceph/pull/32070>`_, Patrick Seidensal) -* mon/MgrMonitor.cc: add always_on_modules to the output of "ceph mgr module ls" (`pr#32997 <https://github.com/ceph/ceph/pull/32997>`_, Neha Ojha) -* mon/MgrMonitor.cc: warn about missing mgr in a cluster with osds (`pr#33142 <https://github.com/ceph/ceph/pull/33142>`_, Neha Ojha) -* mon/OSDMonitor: Don't update mon cache settings if rocksdb is not used (`pr#32520 <https://github.com/ceph/ceph/pull/32520>`_, Sridhar Seshasayee, Sage Weil) -* mon/OSDMonitor: fix format error ceph osd stat --format json (`pr#32062 <https://github.com/ceph/ceph/pull/32062>`_, Zheng Yin) -* mon/PGMap.h: disable network stats in dump_osd_stats (`pr#32466 <https://github.com/ceph/ceph/pull/32466>`_, Neha Ojha, David Zafman) -* mon: remove the restriction of address type in init_with_hosts (`pr#31844 <https://github.com/ceph/ceph/pull/31844>`_, Hao Xiong) -* mon/Session: only index osd ids >= 0 (`pr#32908 <https://github.com/ceph/ceph/pull/32908>`_, Sage Weil) -* mount.ceph: give a hint message when no mds is up or cluster is laggy (`pr#32910 <https://github.com/ceph/ceph/pull/32910>`_, Xiubo Li) -* mount.ceph: remove arbitrary limit on size of name= option (`pr#32807 <https://github.com/ceph/ceph/pull/32807>`_, Jeff Layton) -* msg: async/net_handler.cc: Fix compilation (`pr#31736 <https://github.com/ceph/ceph/pull/31736>`_, Carlos Valiente) -* osd: add osd_fast_shutdown option (default true) (`pr#32743 <https://github.com/ceph/ceph/pull/32743>`_, Sage Weil) -* osd: Allow 64-char hostname to be added as the "host" in CRUSH (`pr#33147 <https://github.com/ceph/ceph/pull/33147>`_, Michal Skalski) -* osd: Diagnostic logging for upmap cleaning (`pr#32716 <https://github.com/ceph/ceph/pull/32716>`_, David Zafman) -* osd/OSD: enhance osd numa affinity compatibility (`pr#32843 <https://github.com/ceph/ceph/pull/32843>`_, luo rixin, Dai zhiwei) -* osd/PeeringState.cc: don't let num_objects become negative (`pr#32857 <https://github.com/ceph/ceph/pull/32857>`_, Neha Ojha) -* osd/PeeringState.cc: skip peer_purged when discovering all missing (`pr#32847 <https://github.com/ceph/ceph/pull/32847>`_, Neha Ojha) -* osd/PeeringState: do not exclude up from acting_recovery_backfill (`pr#32064 <https://github.com/ceph/ceph/pull/32064>`_, Nathan Cutler, xie xingguo) -* osd/PrimaryLogPG: skip obcs that don't exist during backfill scan_range (`pr#31028 <https://github.com/ceph/ceph/pull/31028>`_, Sage Weil) -* osd: set affinity for \*all\* threads (`pr#31359 <https://github.com/ceph/ceph/pull/31359>`_, Sage Weil) -* osd: set collection pool opts on collection create, pg load (`pr#32123 <https://github.com/ceph/ceph/pull/32123>`_, Sage Weil) -* osd: Use physical ratio for nearfull (doesn't include backfill resserve) (`pr#32773 <https://github.com/ceph/ceph/pull/32773>`_, David Zafman) -* pybind/mgr: Cancel output color control (`pr#31697 <https://github.com/ceph/ceph/pull/31697>`_, Zheng Yin) -* rbd: creating thick-provision image progress percent info exceeds 100% (`pr#32840 <https://github.com/ceph/ceph/pull/32840>`_, Xiangdong Mu) -* rbd: librbd: don't call refresh from mirror::GetInfoRequest state machine (`pr#32900 <https://github.com/ceph/ceph/pull/32900>`_, Mykola Golub) -* rbd-mirror: clone v2 mirroring improvements (`pr#31518 <https://github.com/ceph/ceph/pull/31518>`_, Mykola Golub) -* rbd-mirror: fix 'rbd mirror status' asok command output (`pr#32447 <https://github.com/ceph/ceph/pull/32447>`_, Mykola Golub) -* rbd-mirror: make logrotate work (`pr#32593 <https://github.com/ceph/ceph/pull/32593>`_, Mykola Golub) -* rgw: add bucket permission verify when copy obj (`pr#31089 <https://github.com/ceph/ceph/pull/31089>`_, NancySu05) -* rgw: Adding 'iam' namespace for Role and User Policy related REST APIs (`pr#32437 <https://github.com/ceph/ceph/pull/32437>`_, Pritha Srivastava) -* rgw: adding mfa code validation when bucket versioning status is changed (`pr#32759 <https://github.com/ceph/ceph/pull/32759>`_, Pritha Srivastava) -* rgw: add num_shards to radosgw-admin bucket stats (`pr#31182 <https://github.com/ceph/ceph/pull/31182>`_, Paul Emmerich) -* rgw: allow reshard log entries for non-existent buckets to be cancelled (`pr#32056 <https://github.com/ceph/ceph/pull/32056>`_, J. Eric Ivancich) -* rgw: auto-clean reshard queue entries for non-existent buckets (`pr#32055 <https://github.com/ceph/ceph/pull/32055>`_, J. Eric Ivancich) -* rgw: build_linked_oids_for_bucket and build_buckets_instance_index should return negative value if it fails (`pr#32820 <https://github.com/ceph/ceph/pull/32820>`_, zhangshaowen) -* rgw: crypt: permit RGW-AUTO/default with SSE-S3 headers (`pr#31862 <https://github.com/ceph/ceph/pull/31862>`_, Matt Benjamin) -* rgw: data sync markers include timestamp from datalog entry (`pr#32819 <https://github.com/ceph/ceph/pull/32819>`_, Casey Bodley) -* rgw_file: avoid string::front() on empty path (`pr#33008 <https://github.com/ceph/ceph/pull/33008>`_, Matt Benjamin) -* rgw: fix a bug that bucket instance obj can't be removed after resharding completed (`pr#32822 <https://github.com/ceph/ceph/pull/32822>`_, zhang Shaowen) -* rgw: fix an endless loop error when to show usage (`pr#31684 <https://github.com/ceph/ceph/pull/31684>`_, lvshuhua) -* rgw: fix bugs in listobjectsv1 (`pr#32239 <https://github.com/ceph/ceph/pull/32239>`_, Albin Antony) -* rgw: fix compile errors with boost 1.70 (`pr#31289 <https://github.com/ceph/ceph/pull/31289>`_, Casey Bodley) -* rgw: fix data consistency error casued by rgw sent timeout (`pr#32821 <https://github.com/ceph/ceph/pull/32821>`_, 李纲彬82225) -* rgw: fix list versions starts with version_id=null (`pr#30743 <https://github.com/ceph/ceph/pull/30743>`_, Tianshan Qu) -* rgw: fix one part of the bulk delete(RGWDeleteMultiObj_ObjStore_S3) fails but no error messages (`pr#33151 <https://github.com/ceph/ceph/pull/33151>`_, Snow Si) -* rgw: fix opslog operation field as per Amazon s3 (`issue#20978 <http://tracker.ceph.com/issues/20978>`_, `pr#32834 <https://github.com/ceph/ceph/pull/32834>`_, Jiaying Ren) -* rgw: fix refcount tags to match and update object's idtag (`pr#30741 <https://github.com/ceph/ceph/pull/30741>`_, J. Eric Ivancich) -* rgw: fix rgw crash when token is not base64 encode (`pr#32050 <https://github.com/ceph/ceph/pull/32050>`_, yuliyang) -* rgw: gc remove tag after all sub io finish (`issue#40903 <http://tracker.ceph.com/issues/40903>`_, `pr#30733 <https://github.com/ceph/ceph/pull/30733>`_, Tianshan Qu) -* rgw: Incorrectly calling ceph::buffer::list::decode_base64 in bucket policy (`pr#32832 <https://github.com/ceph/ceph/pull/32832>`_, GaryHyg) -* rgw: maybe coredump when reload operator happened (`pr#33149 <https://github.com/ceph/ceph/pull/33149>`_, Richard Bai(白学余)) -* rgw: move forward marker even in case of many rgw.none indexes (`pr#32824 <https://github.com/ceph/ceph/pull/32824>`_, Ilsoo Byun) -* rgw multisite: fixes for concurrent version creation (`pr#32057 <https://github.com/ceph/ceph/pull/32057>`_, Or Friedmann, Casey Bodley) -* rgw: prevent bucket reshard scheduling if bucket is resharding (`pr#31298 <https://github.com/ceph/ceph/pull/31298>`_, J. Eric Ivancich) -* rgw/pubsub: fix records/event json format to match documentation (`pr#32221 <https://github.com/ceph/ceph/pull/32221>`_, Yuval Lifshitz) -* rgw: radosgw-admin: sync status displays id of shard furthest behind (`pr#32818 <https://github.com/ceph/ceph/pull/32818>`_, Casey Bodley) -* rgw: return error if lock log shard fails (`pr#32825 <https://github.com/ceph/ceph/pull/32825>`_, zhangshaowen) -* rgw/rgw_rest_conn.h: fix build with clang (`pr#32489 <https://github.com/ceph/ceph/pull/32489>`_, Bernd Zeimetz) -* rgw: Select the std::bitset to resolv ambiguity (`pr#32504 <https://github.com/ceph/ceph/pull/32504>`_, Willem Jan Withagen) -* rgw: support radosgw-admin zone/zonegroup placement get command (`pr#32835 <https://github.com/ceph/ceph/pull/32835>`_, jiahuizeng) -* rgw: the http response code of delete bucket should not be 204-no-content (`pr#32833 <https://github.com/ceph/ceph/pull/32833>`_, Chang Liu) -* rgw: update s3-test download code for s3-test tasks (`pr#32229 <https://github.com/ceph/ceph/pull/32229>`_, Ali Maredia) -* rgw: update the hash source for multipart entries during resharding (`pr#33183 <https://github.com/ceph/ceph/pull/33183>`_, dongdong tao) -* rgw: url encode common prefixes for List Objects response (`pr#32058 <https://github.com/ceph/ceph/pull/32058>`_, Abhishek Lekshmanan) -* rgw: when resharding store progress json (`pr#31683 <https://github.com/ceph/ceph/pull/31683>`_, Mark Kogan, Mark Nelson) -* selinux: Allow ceph to read udev db (`pr#32259 <https://github.com/ceph/ceph/pull/32259>`_, Boris Ranto) - - -v14.2.7 Nautilus -================ - -This is the seventh update to the Ceph Nautilus release series. This is -a hotfix release primarily fixing a couple of security issues. We -recommend that all users upgrade to this release. - -Notable Changes ---------------- - -* CVE-2020-1699: Fixed a path traversal flaw in Ceph dashboard that - could allow for potential information disclosure (Ernesto Puerta) -* CVE-2020-1700: Fixed a flaw in RGW beast frontend that could lead to - denial of service from an unauthenticated client (Or Friedmann) - - -v14.2.6 Nautilus -================ - -This is the sixth update to the Ceph Nautilus release series. This is a hotfix -release primarily fixing a regression introduced in v14.2.5, all nautilus users -are advised to upgrade to this release. - -Notable Changes ---------------- - -* This release fixes a ``ceph-mgr`` bug that caused mgr becoming unresponsive on - larger clusters `issue#43364 <https://tracker.ceph.com/issues/43364>`_ (`pr#32466 <https://github.com/ceph/ceph/pull/32466>`_, David Zafman, Neha Ojha) - - -v14.2.5 Nautilus -================ - -This is the fifth release of the Ceph Nautilus release series. Among the many -notable changes, this release fixes a critical BlueStore bug that was introduced -in 14.2.3. All Nautilus users are advised to upgrade to this release. - -Notable Changes ---------------- - -Critical fix: - -* This release fixes a `critical BlueStore bug <https://tracker.ceph.com/issues/42223>`_ - introduced in 14.2.3 (and also present in 14.2.4) that can lead to data - corruption when a separate "WAL" device is used. - -New health warnings: - -* Ceph will now issue health warnings if daemons have recently crashed. Ceph - has been collecting crash reports since the initial Nautilus release, but the - health alerts are new. To view new crashes (or all crashes, if you've just - upgraded):: - - ceph crash ls-new - - To acknowledge a particular crash (or all crashes) and silence the health warning:: - - ceph crash archive <crash-id> - ceph crash archive-all - -* Ceph will issue a health warning if a RADOS pool's ``size`` is set to 1 - or, in other words, if the pool is configured with no redundancy. Ceph will - stop issuing the warning if the pool size is set to the minimum - recommended value:: - - ceph osd pool set <pool-name> size <num-replicas> - - The warning can be silenced with:: - - ceph config set global mon_warn_on_pool_no_redundancy false - -* A health warning is now generated if the average osd heartbeat ping - time exceeds a configurable threshold for any of the intervals - computed. The OSD computes 1 minute, 5 minute and 15 minute - intervals with average, minimum and maximum values. New configuration - option `mon_warn_on_slow_ping_ratio` specifies a percentage of - `osd_heartbeat_grace` to determine the threshold. A value of zero - disables the warning. New configuration option `mon_warn_on_slow_ping_time` - specified in milliseconds over-rides the computed value, causes a warning - when OSD heartbeat pings take longer than the specified amount. - A new admin command, `ceph daemon mgr.# dump_osd_network [threshold]`, will - list all connections with a ping time longer than the specified threshold or - value determined by the config options, for the average for any of the 3 intervals. - Another new admin command, `ceph daemon osd.# dump_osd_network [threshold]`, - will do the same but only including heartbeats initiated by the specified OSD. - -Changes in the telemetry module: - -* The telemetry module now reports more information. - - First, there is a new 'device' channel, enabled by default, that - will report anonymized hard disk and SSD health metrics to - telemetry.ceph.com in order to build and improve device failure - prediction algorithms. If you are not comfortable sharing device - metrics, you can disable that channel first before re-opting-in:: - - ceph config set mgr mgr/telemetry/channel_device false - - Second, we now report more information about CephFS file systems, - including: - - - how many MDS daemons (in total and per file system) - - which features are (or have been) enabled - - how many data pools - - approximate file system age (year + month of creation) - - how many files, bytes, and snapshots - - how much metadata is being cached - - We have also added: - - - which Ceph release the monitors are running - - whether msgr v1 or v2 addresses are used for the monitors - - whether IPv4 or IPv6 addresses are used for the monitors - - whether RADOS cache tiering is enabled (and which mode) - - whether pools are replicated or erasure coded, and - which erasure code profile plugin and parameters are in use - - how many hosts are in the cluster, and how many hosts have each type of daemon - - whether a separate OSD cluster network is being used - - how many RBD pools and images are in the cluster, and how many pools have RBD mirroring enabled - - how many RGW daemons, zones, and zonegroups are present; which RGW frontends are in use - - aggregate stats about the CRUSH map, like which algorithms are used, how - big buckets are, how many rules are defined, and what tunables are in - use - - If you had telemetry enabled, you will need to re-opt-in with:: - - ceph telemetry on - - You can view exactly what information will be reported first with:: - - ceph telemetry show # see everything - ceph telemetry show basic # basic cluster info (including all of the new info) - -OSD: - -* A new OSD daemon command, 'dump_recovery_reservations', reveals the - recovery locks held (in_progress) and waiting in priority queues. - -* Another new OSD daemon command, 'dump_scrub_reservations', reveals the - scrub reservations that are held for local (primary) and remote (replica) PGs. - -RGW: - -* RGW now supports S3 Object Lock set of APIs allowing for a WORM model for - storing objects. 6 new APIs have been added put/get bucket object lock, - put/get object retention, put/get object legal hold. - -* RGW now supports List Objects V2 - -Changelog ---------- - -* bluestore/KernelDevice: fix RW_IO_MAX constant (`pr#31397 <https://github.com/ceph/ceph/pull/31397>`_, Sage Weil) -* bluestore: Don't forget sub kv_submitted_waiters (`pr#30048 <https://github.com/ceph/ceph/pull/30048>`_, Jianpeng Ma) -* bluestore: apply garbage collection against excessive blob count growth (`pr#30144 <https://github.com/ceph/ceph/pull/30144>`_, Igor Fedotov) -* bluestore: apply shared_alloc_size to shared device with log level change (`pr#30229 <https://github.com/ceph/ceph/pull/30229>`_, Vikhyat Umrao, Sage Weil, Igor Fedotov, Neha Ojha) -* bluestore: consolidate extents from the same device only (`pr#31644 <https://github.com/ceph/ceph/pull/31644>`_, Igor Fedotov) -* bluestore: fix improper setting of STATE_KV_SUBMITTED (`pr#30755 <https://github.com/ceph/ceph/pull/30755>`_, Igor Fedotov) -* bluestore: shallow fsck mode and legacy statfs auto repair (`pr#30685 <https://github.com/ceph/ceph/pull/30685>`_, Sage Weil, Igor Fedotov) -* bluestore: tool to check fragmentation (`pr#29949 <https://github.com/ceph/ceph/pull/29949>`_, Adam Kupczyk) -* build/ops: admin/build-doc: use python3 (`pr#30664 <https://github.com/ceph/ceph/pull/30664>`_, Kefu Chai) -* build/ops: backport endian fixes (`issue#40114 <http://tracker.ceph.com/issues/40114>`_, `pr#30697 <https://github.com/ceph/ceph/pull/30697>`_, Ulrich Weigand, Jeff Layton) -* build/ops: cmake,rgw: IBM Z build fixes (`pr#30696 <https://github.com/ceph/ceph/pull/30696>`_, Ulrich Weigand) -* build/ops: cmake/BuildDPDK: ignore gcc8/9 warnings (`pr#30360 <https://github.com/ceph/ceph/pull/30360>`_, Yuval Lifshitz) -* build/ops: cmake: Allow cephfs and ceph-mds to be build when building on FreeBSD (`pr#31011 <https://github.com/ceph/ceph/pull/31011>`_, Willem Jan Withagen) -* build/ops: cmake: enforce C++17 instead of relying on cmake-compile-features (`pr#30283 <https://github.com/ceph/ceph/pull/30283>`_, Kefu Chai) -* build/ops: fix build fail related to PYTHON_EXECUTABLE variable (`pr#30261 <https://github.com/ceph/ceph/pull/30261>`_, Ilsoo Byun) -* build/ops: hidden corei7 requirement in binary packages (`pr#29772 <https://github.com/ceph/ceph/pull/29772>`_, Kefu Chai) -* build/ops: install-deps.sh: add EPEL repo for non-x86_64 archs as well (`pr#30601 <https://github.com/ceph/ceph/pull/30601>`_, Kefu Chai, Nathan Cutler) -* build/ops: install-deps.sh: install `python\*-devel` for python\*rpm-macros (`pr#30322 <https://github.com/ceph/ceph/pull/30322>`_, Kefu Chai) -* build/ops: install-deps: do not install if rpm already installed and ceph.spec.in: s/pkgversion/version_nodots/ (`pr#30708 <https://github.com/ceph/ceph/pull/30708>`_, Jeff Layton, Kefu Chai) -* build/ops: make patch build dependency explicit (`issue#40175 <http://tracker.ceph.com/issues/40175>`_, `pr#30046 <https://github.com/ceph/ceph/pull/30046>`_, Nathan Cutler) -* build/ops: python3-cephfs should provide python36-cephfs (`pr#30983 <https://github.com/ceph/ceph/pull/30983>`_, Kefu Chai) -* build/ops: rpm: always build ceph-test package (`pr#30049 <https://github.com/ceph/ceph/pull/30049>`_, Nathan Cutler) -* build/ops: rpm: fdupes in SUSE builds to conform with packaging guidelines (`issue#40973 <http://tracker.ceph.com/issues/40973>`_, `pr#29784 <https://github.com/ceph/ceph/pull/29784>`_, Nathan Cutler) -* build/ops: rpm: make librados2, libcephfs2 own (create) /etc/ceph (`pr#31125 <https://github.com/ceph/ceph/pull/31125>`_, Nathan Cutler) -* build/ops: rpm: put librgw lttng SOs in the librgw-devel package (`issue#40975 <http://tracker.ceph.com/issues/40975>`_, `pr#29785 <https://github.com/ceph/ceph/pull/29785>`_, Nathan Cutler) -* build/ops: seastar,dmclock: use CXX_FLAGS from parent project (`pr#30114 <https://github.com/ceph/ceph/pull/30114>`_, Kefu Chai) -* build/ops: use gcc-8 (`issue#38892 <http://tracker.ceph.com/issues/38892>`_, `pr#30089 <https://github.com/ceph/ceph/pull/30089>`_, Kefu Chai) -* tools: ceph-objectstore-tool: update-mon-db: do not fail if incmap is missing (`pr#30740 <https://github.com/ceph/ceph/pull/30740>`_, Kefu Chai) -* ceph-volume: PVolumes.filter shouldn't purge itself (`pr#30805 <https://github.com/ceph/ceph/pull/30805>`_, Rishabh Dave) -* ceph-volume: VolumeGroups.filter shouldn't purge itself (`pr#30807 <https://github.com/ceph/ceph/pull/30807>`_, Rishabh Dave) -* ceph-volume: add Ceph's device id to inventory (`pr#31210 <https://github.com/ceph/ceph/pull/31210>`_, Sebastian Wagner) -* ceph-volume: allow to skip restorecon calls (`pr#31555 <https://github.com/ceph/ceph/pull/31555>`_, Alfredo Deza) -* ceph-volume: api/lvm: check if list of LVs is empty (`pr#31228 <https://github.com/ceph/ceph/pull/31228>`_, Rishabh Dave) -* ceph-volume: check if we run in an selinux environment (`pr#31812 <https://github.com/ceph/ceph/pull/31812>`_, Jan Fajerski) -* ceph-volume: do not fail when trying to remove crypt mapper (`pr#30554 <https://github.com/ceph/ceph/pull/30554>`_, Guillaume Abrioux) -* ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30300 <https://github.com/ceph/ceph/pull/30300>`_, Alfredo Deza) -* ceph-volume: fix warnings raised by pytest (`pr#30676 <https://github.com/ceph/ceph/pull/30676>`_, Rishabh Dave) -* ceph-volume: lvm list is O(n^2) (`pr#30093 <https://github.com/ceph/ceph/pull/30093>`_, Rishabh Dave) -* ceph-volume: lvm.zap fix cleanup for db partitions (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#30304 <https://github.com/ceph/ceph/pull/30304>`_, Dominik Csapak) -* ceph-volume: mokeypatch calls to lvm related binaries (`pr#31405 <https://github.com/ceph/ceph/pull/31405>`_, Jan Fajerski) -* ceph-volume: pre-install python-apt and its variants before test runs (`pr#30294 <https://github.com/ceph/ceph/pull/30294>`_, Alfredo Deza) -* ceph-volume: rearrange api/lvm.py (`pr#31408 <https://github.com/ceph/ceph/pull/31408>`_, Rishabh Dave) -* ceph-volume: systemd fix typo in log message (`pr#30520 <https://github.com/ceph/ceph/pull/30520>`_, Manu Zurmühl) -* ceph-volume: use the OSD identifier when reporting success (`pr#29769 <https://github.com/ceph/ceph/pull/29769>`_, Alfredo Deza) -* ceph-volume: zap always skips block.db, leaves them around (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#30307 <https://github.com/ceph/ceph/pull/30307>`_, Alfredo Deza) -* tools: ceph.in: do not preload ASan unless necessary (`pr#31676 <https://github.com/ceph/ceph/pull/31676>`_, Kefu Chai) -* build/ops: ceph.spec.in: reserve 2500MB per build job (`pr#30370 <https://github.com/ceph/ceph/pull/30370>`_, Dan van der Ster) -* tools: ceph_volume_client: convert string to bytes object (`issue#39405 <http://tracker.ceph.com/issues/39405>`_, `issue#40369 <http://tracker.ceph.com/issues/40369>`_, `issue#39510 <http://tracker.ceph.com/issues/39510>`_, `issue#40800 <http://tracker.ceph.com/issues/40800>`_, `issue#40460 <http://tracker.ceph.com/issues/40460>`_, `pr#30030 <https://github.com/ceph/ceph/pull/30030>`_, Rishabh Dave) -* cephfs-shell: Convert paths type from string to bytes (`pr#30057 <https://github.com/ceph/ceph/pull/30057>`_, Varsha Rao) -* cephfs: Allow mount.ceph to get mount info from ceph configs and keyrings (`pr#30521 <https://github.com/ceph/ceph/pull/30521>`_, Jeff Layton) -* cephfs: avoid map been inserted by mistake (`pr#29878 <https://github.com/ceph/ceph/pull/29878>`_, XiaoGuoDong2019) -* cephfs: client: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (`pr#30032 <https://github.com/ceph/ceph/pull/30032>`_, "Yan, Zheng") -* cephfs: client: nfs-ganesha with cephfs client, removing dir reports not empty (`issue#40746 <http://tracker.ceph.com/issues/40746>`_, `pr#30442 <https://github.com/ceph/ceph/pull/30442>`_, Peng Xie) -* cephfs: client: return -eio when sync file which unsafe reqs have been dropped (`issue#40877 <http://tracker.ceph.com/issues/40877>`_, `pr#30043 <https://github.com/ceph/ceph/pull/30043>`_, simon gao) -* cephfs: fix a memory leak (`pr#29879 <https://github.com/ceph/ceph/pull/29879>`_, XiaoGuoDong2019) -* cephfs: mds: Fix duplicate client entries in eviction list (`pr#30951 <https://github.com/ceph/ceph/pull/30951>`_, Sidharth Anupkrishnan) -* cephfs: mds: cleanup truncating inodes when standby replay mds trim log segments (`pr#29591 <https://github.com/ceph/ceph/pull/29591>`_, "Yan, Zheng") -* cephfs: mds: delay exporting directory whose pin value exceeds max rank id (`issue#40603 <http://tracker.ceph.com/issues/40603>`_, `pr#29938 <https://github.com/ceph/ceph/pull/29938>`_, Zhi Zhang) -* cephfs: mds: evict an unresponsive client only when another client wants its caps (`pr#30031 <https://github.com/ceph/ceph/pull/30031>`_, Rishabh Dave) -* cephfs: mds: fix InoTable::force_consume_to() (`pr#30041 <https://github.com/ceph/ceph/pull/30041>`_, "Yan, Zheng") -* cephfs: mds: fix infinite loop in Locker::file_update_finish (`pr#31079 <https://github.com/ceph/ceph/pull/31079>`_, "Yan, Zheng") -* cephfs: mds: make MDSIOContextBase delete itself when shutting down (`pr#30418 <https://github.com/ceph/ceph/pull/30418>`_, Xuehan Xu) -* cephfs: mds: trim cache on regular schedule (`pr#30040 <https://github.com/ceph/ceph/pull/30040>`_, Patrick Donnelly) -* cephfs: mds: wake up lock waiters after forcibly changing lock state (`issue#39987 <http://tracker.ceph.com/issues/39987>`_, `pr#30508 <https://github.com/ceph/ceph/pull/30508>`_, "Yan, Zheng") -* cephfs: mount.ceph: properly handle -o strictatime (`pr#30039 <https://github.com/ceph/ceph/pull/30039>`_, Jeff Layton) -* cephfs: qa: ignore expected MDS_CLIENT_LATE_RELEASE warning (`issue#40968 <http://tracker.ceph.com/issues/40968>`_, `pr#29811 <https://github.com/ceph/ceph/pull/29811>`_, Patrick Donnelly) -* cephfs: qa: wait for MDS to come back after removing it (`issue#40967 <http://tracker.ceph.com/issues/40967>`_, `pr#29832 <https://github.com/ceph/ceph/pull/29832>`_, Patrick Donnelly) -* cephfs: tests: power off still resulted in client sending session close (`issue#37681 <http://tracker.ceph.com/issues/37681>`_, `pr#29983 <https://github.com/ceph/ceph/pull/29983>`_, Patrick Donnelly) -* common/ceph_context: avoid unnecessary wait during service thread shutdown (`pr#31097 <https://github.com/ceph/ceph/pull/31097>`_, Jason Dillaman) -* common/config_proxy: hold lock while accessing mutable container (`pr#30661 <https://github.com/ceph/ceph/pull/30661>`_, Jason Dillaman) -* common: fix typo in rgw_user_max_buckets option long description (`pr#31605 <https://github.com/ceph/ceph/pull/31605>`_, Alfonso Martínez) -* core/osd: do not trust partially simplified pg_upmap_item (`issue#42052 <http://tracker.ceph.com/issues/42052>`_, `pr#30899 <https://github.com/ceph/ceph/pull/30899>`_, xie xingguo) -* core: Health warnings on long network ping times (`issue#40640 <http://tracker.ceph.com/issues/40640>`_, `pr#30195 <https://github.com/ceph/ceph/pull/30195>`_, David Zafman) -* core: If the nodeep-scrub/noscrub flags are set in pools instead of global cluster. List the pool names in the ceph status (`issue#38029 <http://tracker.ceph.com/issues/38029>`_, `pr#29991 <https://github.com/ceph/ceph/pull/29991>`_, Mohamad Gebai) -* core: Improve health status for backfill_toofull and recovery_toofull and fix backfill_toofull seen on cluster where the most full OSD is at 1% (`pr#29999 <https://github.com/ceph/ceph/pull/29999>`_, David Zafman) -* core: Make dumping of reservation info congruent between scrub and recovery (`pr#31444 <https://github.com/ceph/ceph/pull/31444>`_, David Zafman) -* core: Revert "rocksdb: enable rocksdb_rmrange=true by default" (`pr#31612 <https://github.com/ceph/ceph/pull/31612>`_, Neha Ojha) -* core: filestore pre-split may not split enough directories (`issue#39390 <http://tracker.ceph.com/issues/39390>`_, `pr#29988 <https://github.com/ceph/ceph/pull/29988>`_, Jeegn Chen) -* core: kv/RocksDBStore: tell rocksdb to set mode to 0600, not 0644 (`pr#31031 <https://github.com/ceph/ceph/pull/31031>`_, Sage Weil) -* core: mon/MonClient: ENXIO when sending command to down mon (`pr#31037 <https://github.com/ceph/ceph/pull/31037>`_, Sage Weil, Greg Farnum) -* core: mon/MonCommands: "smart" only needs read permission (`pr#31111 <https://github.com/ceph/ceph/pull/31111>`_, Kefu Chai) -* core: mon/MonMap: encode (more) valid compat monmap when we have v2-only addrs (`pr#31658 <https://github.com/ceph/ceph/pull/31658>`_, Sage Weil) -* core: mon/Monitor.cc: fix condition that checks for unrecognized auth mode (`pr#31038 <https://github.com/ceph/ceph/pull/31038>`_, Neha Ojha) -* core: mon/OSDMonitor: Use generic priority cache tuner for mon caches (`pr#30419 <https://github.com/ceph/ceph/pull/30419>`_, Sridhar Seshasayee, Kefu Chai, Mykola Golub, Mark Nelson) -* core: mon/OSDMonitor: add check for crush rule size in pool set size command (`pr#30941 <https://github.com/ceph/ceph/pull/30941>`_, Vikhyat Umrao) -* core: mon/OSDMonitor: trim not-longer-exist failure reporters (`pr#30904 <https://github.com/ceph/ceph/pull/30904>`_, NancySu05) -* core: mon/PGMap: fix incorrect pg_pool_sum when delete pool (`pr#31704 <https://github.com/ceph/ceph/pull/31704>`_, luo rixin) -* core: mon: C_AckMarkedDown has not handled the Callback Arguments (`pr#29997 <https://github.com/ceph/ceph/pull/29997>`_, NancySu05) -* core: mon: ensure prepare_failure() marks no_reply on op (`pr#30480 <https://github.com/ceph/ceph/pull/30480>`_, Joao Eduardo Luis) -* core: mon: show pool id in pool ls command (`issue#40287 <http://tracker.ceph.com/issues/40287>`_, `pr#30486 <https://github.com/ceph/ceph/pull/30486>`_, Chang Liu) -* core: msg,mon/MonClient: fix auth for clients without CEPHX_V2 feature (`pr#30524 <https://github.com/ceph/ceph/pull/30524>`_, Sage Weil) -* core: msg/auth: handle decode errors instead of throwing exceptions (`pr#31099 <https://github.com/ceph/ceph/pull/31099>`_, Sage Weil) -* core: msg/simple: reset in_seq_acked to zero when session is reset (`pr#29592 <https://github.com/ceph/ceph/pull/29592>`_, Xiangyang Yu) -* core: os/bluestore: fix objectstore_blackhole read-after-write (`pr#31019 <https://github.com/ceph/ceph/pull/31019>`_, Sage Weil) -* core: osd/OSDCap: Check for empty namespace (`issue#40835 <http://tracker.ceph.com/issues/40835>`_, `pr#29998 <https://github.com/ceph/ceph/pull/29998>`_, Brad Hubbard) -* core: mon/OSDMonitor: make memory autotune disable itself if no rocksdb (`pr#32045 <https://github.com/ceph/ceph/pull/32045>`_, Sage Weil) -* core: osd/PG: Add PG to large omap log message (`pr#30923 <https://github.com/ceph/ceph/pull/30923>`_, Brad Hubbard) -* core: osd/PGLog: persist num_objects_missing for replicas when peering is done (`pr#31077 <https://github.com/ceph/ceph/pull/31077>`_, xie xingguo) -* core: osd/PeeringState: do not complain about past_intervals constrained by oldest epoch (`pr#30000 <https://github.com/ceph/ceph/pull/30000>`_, Sage Weil) -* core: osd/PeeringState: fix wrong history of merge target (`pr#30280 <https://github.com/ceph/ceph/pull/30280>`_, xie xingguo) -* core: osd/PeeringState: recover_got - add special handler for empty log and improvements to standalone tests (`pr#30528 <https://github.com/ceph/ceph/pull/30528>`_, Sage Weil, David Zafman, xie xingguo) -* core: osd/PrimaryLogPG: Avoid accessing destroyed references in finish_degr… (`pr#29994 <https://github.com/ceph/ceph/pull/29994>`_, Tao Ning) -* core: osd/PrimaryLogPG: update oi.size on write op implicitly truncating ob… (`pr#30278 <https://github.com/ceph/ceph/pull/30278>`_, xie xingguo) -* core: osd/ReplicatedBackend: check against empty data_included before enabling crc (`pr#29716 <https://github.com/ceph/ceph/pull/29716>`_, xie xingguo) -* core: osd/osd_types: fix {omap,hitset_bytes}_stats_invalid handling on spli… (`pr#30643 <https://github.com/ceph/ceph/pull/30643>`_, Sage Weil) -* core: osd: Better error message when OSD count is less than osd_pool_default_size (`issue#38617 <http://tracker.ceph.com/issues/38617>`_, `pr#29992 <https://github.com/ceph/ceph/pull/29992>`_, Kefu Chai, Sage Weil, zjh) -* core: osd: Remove unused osdmap flags full, nearfull from output (`pr#30900 <https://github.com/ceph/ceph/pull/30900>`_, David Zafman) -* core: osd: add log information to record the cause of do_osd_ops failure (`pr#30546 <https://github.com/ceph/ceph/pull/30546>`_, NancySu05) -* core: osd: clear PG_STATE_CLEAN when repair object (`pr#30050 <https://github.com/ceph/ceph/pull/30050>`_, Zengran Zhang) -* core: osd: fix possible crash on sending dynamic perf stats report (`pr#30648 <https://github.com/ceph/ceph/pull/30648>`_, Mykola Golub) -* core: osd: merge replica log on primary need according to replica log's crt (`pr#30051 <https://github.com/ceph/ceph/pull/30051>`_, Zengran Zhang) -* core: osd: prime splits/merges for any potential fabricated split/merge par… (`issue#38483 <http://tracker.ceph.com/issues/38483>`_, `pr#30371 <https://github.com/ceph/ceph/pull/30371>`_, xie xingguo) -* core: osd: release backoffs during merge (`pr#31822 <https://github.com/ceph/ceph/pull/31822>`_, Sage Weil) -* core: osd: rollforward may need to mark pglog dirty (`issue#40403 <http://tracker.ceph.com/issues/40403>`_, `pr#31034 <https://github.com/ceph/ceph/pull/31034>`_, Zengran Zhang) -* core: osd: scrub error on big objects; make bluestore refuse to start on big objects (`pr#30783 <https://github.com/ceph/ceph/pull/30783>`_, David Zafman, Sage Weil) -* core: osd: support osd_repair_during_recovery (`issue#40620 <http://tracker.ceph.com/issues/40620>`_, `pr#29748 <https://github.com/ceph/ceph/pull/29748>`_, Jeegn Chen) -* core: pool_stat.dump() - value of num_store_stats is wrong (`issue#39340 <http://tracker.ceph.com/issues/39340>`_, `pr#29946 <https://github.com/ceph/ceph/pull/29946>`_, xie xingguo) -* doc/ceph-kvstore-tool: add description for 'stats' command (`pr#30245 <https://github.com/ceph/ceph/pull/30245>`_, Josh Durgin, Adam Kupczyk) -* doc/mgr/telemetry: update default interval (`pr#31009 <https://github.com/ceph/ceph/pull/31009>`_, Tim Serong) -* doc/rbd: s/guess/xml/ for codeblock lexer (`pr#31074 <https://github.com/ceph/ceph/pull/31074>`_, Kefu Chai) -* doc: Fix rbd namespace documentation (`pr#29731 <https://github.com/ceph/ceph/pull/29731>`_, Ricardo Marques) -* doc: cephfs: add section on fsync error reporting to posix.rst (`issue#24641 <http://tracker.ceph.com/issues/24641>`_, `pr#30025 <https://github.com/ceph/ceph/pull/30025>`_, Jeff Layton) -* doc: default values for mon_health_to_clog\_\* were flipped (`pr#30003 <https://github.com/ceph/ceph/pull/30003>`_, James McClune) -* doc: fix urls in posix.rst (`pr#30686 <https://github.com/ceph/ceph/pull/30686>`_, Jos Collin) -* doc: max_misplaced option was renamed in Nautilus (`pr#30649 <https://github.com/ceph/ceph/pull/30649>`_, Nathan Fish) -* doc: pg_num should always be a power of two (`pr#30004 <https://github.com/ceph/ceph/pull/30004>`_, Lars Marowsky-Bree, Kai Wagner) -* doc: update bluestore cache settings and clarify data fraction (`issue#39522 <http://tracker.ceph.com/issues/39522>`_, `pr#31259 <https://github.com/ceph/ceph/pull/31259>`_, Jan Fajerski) -* mgr/ActivePyModules: behave if a module queries a devid that does not exist (`pr#31411 <https://github.com/ceph/ceph/pull/31411>`_, Sage Weil) -* mgr/BaseMgrStandbyModule: drop GIL in ceph_get_module_option() (`pr#30773 <https://github.com/ceph/ceph/pull/30773>`_, Kefu Chai) -* mgr/balancer: python3 compatibility issue (`pr#31012 <https://github.com/ceph/ceph/pull/31012>`_, Mykola Golub) -* mgr/crash: backport archive feature, health alerts (`pr#30851 <https://github.com/ceph/ceph/pull/30851>`_, Sage Weil) -* mgr/crash: try client.crash[.host] before client.admin; add mon profile (`issue#40781 <http://tracker.ceph.com/issues/40781>`_, `pr#30844 <https://github.com/ceph/ceph/pull/30844>`_, Sage Weil, Dan Mick) -* mgr/dashboard: Add transifex-i18ntool (`pr#31160 <https://github.com/ceph/ceph/pull/31160>`_, Sebastian Krah) -* mgr/dashboard: Allow disabling redirection on standby dashboards (`issue#41813 <https://tracker.ceph.com/issues/41813>`_, `pr#30382 <https://github.com/ceph/ceph/pull/30382>`_, Volker Theile) -* mgr/dashboard: Configuring an URL prefix does not work as expected (`pr#31375 <https://github.com/ceph/ceph/pull/31375>`_, Volker Theile) -* mgr/dashbaord: Fix calculation of PG status percentage (`issue#41809 <https://tracker.ceph.com/issues/41089>`_, `pr#30394 <https://github.com/ceph/ceph/pull/30394>`_, Tiago Melo) -* mgr/dashboard: Fix CephFS chart (`pr#30691 <https://github.com/ceph/ceph/pull/30691>`_, Stephan Müller) -* mgr/dashboard: Fix grafana dashboards (`pr#31733 <https://github.com/ceph/ceph/pull/31733>`_, Radu Toader) -* mgr/dashboard: Improve position of MDS chart tooltip (`pr#31565 <https://github.com/ceph/ceph/pull/31565>`_, Tiago Melo) -* mgr/dashboard: Provide the name of the object being deleted (`pr#31263 <https://github.com/ceph/ceph/pull/31263>`_, Ricardo Marques) -* mgr/dashboard: RBD tests must use pools with power-of-two pg_num (`pr#31522 <https://github.com/ceph/ceph/pull/31522>`_, Ricardo Marques) -* mgr/dashboard: Set RO as the default access_type for RGW NFS exports (`pr#30516 <https://github.com/ceph/ceph/pull/30516>`_, Tiago Melo) -* mgr/dashboard: Wait for breadcrumb text is present in e2e tests (`pr#31576 <https://github.com/ceph/ceph/pull/31576>`_, Volker Theile) -* mgr/dashboard: access_control: add grafana scope read access to \*-manager roles (`pr#30259 <https://github.com/ceph/ceph/pull/30259>`_, Ricardo Dias) -* mgr/dashboard: do not log tokens (`pr#31413 <https://github.com/ceph/ceph/pull/31413>`_, Kefu Chai) -* mgr/dashboard: do not show non-pool data in pool details (`pr#31516 <https://github.com/ceph/ceph/pull/31516>`_, Alfonso Martínez) -* mgr/dashboard: edit/clone/copy rbd image after its data is received (`pr#31349 <https://github.com/ceph/ceph/pull/31349>`_, Alfonso Martínez) -* mgr/dashboard: internationalization support with AOT enabled (`pr#30910 <https://github.com/ceph/ceph/pull/30910>`_, Ricardo Dias, Tiago Melo) -* mgr/dashboard: run-backend-api-tests.sh improvements (`pr#29487 <https://github.com/ceph/ceph/pull/29487>`_, Alfonso Martínez, Kefu Chai) -* mgr/dashboard: tasks: only unblock controller thread after TaskManager thread (`pr#31526 <https://github.com/ceph/ceph/pull/31526>`_, Ricardo Dias) -* mgr/devicehealth: do not scrape mon devices (`pr#31446 <https://github.com/ceph/ceph/pull/31446>`_, Sage Weil) -* mgr/devicehealth: import _strptime directly (`pr#32082 <https://github.com/ceph/ceph/pull/32082>`_, Sage Weil) -* mgr/k8sevents: Initial ceph -> k8s events integration (`pr#30215 <https://github.com/ceph/ceph/pull/30215>`_, Paul Cuzner, Sebastian Wagner) -* mgr/pg_autoscaler: fix pool_logical_used (`pr#31100 <https://github.com/ceph/ceph/pull/31100>`_, Ansgar Jazdzewski) -* mgr/pg_autoscaler: fix race with pool deletion (`pr#30008 <https://github.com/ceph/ceph/pull/30008>`_, Sage Weil) -* mgr/prometheus: Cast collect_timeout (scrape_interval) to float (`pr#30007 <https://github.com/ceph/ceph/pull/30007>`_, Ben Meekhof) -* mgr/prometheus: Fix KeyError in get_mgr_status (`pr#30774 <https://github.com/ceph/ceph/pull/30774>`_, Sebastian Wagner) -* mgr/rbd_support: module.py:1088: error: Name 'image_spec' is not defined (`pr#29978 <https://github.com/ceph/ceph/pull/29978>`_, Jason Dillaman) -* mgr/restful: requests api adds support multiple commands (`pr#31334 <https://github.com/ceph/ceph/pull/31334>`_, Duncan Chiang) -* mgr/telemetry: backport a ton of stuff (`pr#30849 <https://github.com/ceph/ceph/pull/30849>`_, alfonsomthd, Kefu Chai, Sage Weil, Dan Mick) -* mgr/volumes: fix incorrect snapshot path creation (`pr#31076 <https://github.com/ceph/ceph/pull/31076>`_, Ramana Raja) -* mgr/volumes: handle exceptions in purge thread with retry (`issue#41218 <http://tracker.ceph.com/issues/41218>`_, `pr#30455 <https://github.com/ceph/ceph/pull/30455>`_, Venky Shankar) -* mgr/volumes: list FS subvolumes, subvolume groups, and their snapshots (`pr#30827 <https://github.com/ceph/ceph/pull/30827>`_, Jos Collin) -* mgr/volumes: minor fixes (`pr#29926 <https://github.com/ceph/ceph/pull/29926>`_, Venky Shankar, Jos Collin, Ramana Raja) -* mgr/volumes: protection for "fs volume rm" command (`pr#30768 <https://github.com/ceph/ceph/pull/30768>`_, Jos Collin, Ramana Raja) -* mgr/zabbix: Fix typo in key name for PGs in backfill_wait state (`issue#39666 <http://tracker.ceph.com/issues/39666>`_, `pr#30006 <https://github.com/ceph/ceph/pull/30006>`_, Wido den Hollander) -* mgr/zabbix: encode string for Python 3 compatibility (`pr#30016 <https://github.com/ceph/ceph/pull/30016>`_, Nathan Cutler) -* mgr/{dashboard,prometheus}: return FQDN instead of '0.0.0.0' (`pr#31482 <https://github.com/ceph/ceph/pull/31482>`_, Patrick Seidensal) -* mgr: Release GIL before calling OSDMap::calc_pg_upmaps() (`pr#31682 <https://github.com/ceph/ceph/pull/31682>`_, David Zafman, Shyukri Shyukriev) -* mgr: Unable to reset / unset module options (`issue#40779 <http://tracker.ceph.com/issues/40779>`_, `pr#29550 <https://github.com/ceph/ceph/pull/29550>`_, Sebastian Wagner) -* mgr: do not reset reported if a new metric is not collected (`pr#30390 <https://github.com/ceph/ceph/pull/30390>`_, Ilsoo Byun) -* mgr: fix weird health-alert daemon key (`pr#31039 <https://github.com/ceph/ceph/pull/31039>`_, xie xingguo) -* mgr: set hostname in DeviceState::set_metadata() (`pr#30624 <https://github.com/ceph/ceph/pull/30624>`_, Kefu Chai) -* pybind/cephfs: Modification to error message (`pr#30026 <https://github.com/ceph/ceph/pull/30026>`_, Varsha Rao) -* pybind/rados: fix set_omap() crash on py3 (`pr#30622 <https://github.com/ceph/ceph/pull/30622>`_, Sage Weil) -* pybind/rbd: deprecate `parent_info` (`pr#30818 <https://github.com/ceph/ceph/pull/30818>`_, Ricardo Marques) -* rbd: rbd-mirror: cannot restore deferred deletion mirrored images (`pr#30825 <https://github.com/ceph/ceph/pull/30825>`_, Jason Dillaman, Mykola Golub) -* rbd: rbd-mirror: don't overwrite status error returned by replay (`pr#29870 <https://github.com/ceph/ceph/pull/29870>`_, Mykola Golub) -* rbd: rbd-mirror: ignore errors relating to parsing the cluster config file (`pr#30116 <https://github.com/ceph/ceph/pull/30116>`_, Jason Dillaman) -* rbd: rbd-mirror: simplify peer bootstrapping (`pr#30821 <https://github.com/ceph/ceph/pull/30821>`_, Jason Dillaman) -* rbd: rbd-nbd: add netlink support and nl resize (`pr#30532 <https://github.com/ceph/ceph/pull/30532>`_, Mike Christie) -* rbd: cls/rbd: sanitize entity instance messenger version type (`pr#30822 <https://github.com/ceph/ceph/pull/30822>`_, Jason Dillaman) -* rbd: cls/rbd: sanitize the mirror image status peer address after reading from disk (`pr#31833 <https://github.com/ceph/ceph/pull/31833>`_, Jason Dillaman) -* rbd: krbd: avoid udev netlink socket overrun and retry on transient errors from udev_enumerate_scan_devices() (`pr#31075 <https://github.com/ceph/ceph/pull/31075>`_, Ilya Dryomov, Adam C. Emerson) -* rbd: librbd: always try to acquire exclusive lock when removing image (`pr#29869 <https://github.com/ceph/ceph/pull/29869>`_, Mykola Golub) -* rbd: librbd: behave more gracefully when data pool removed (`pr#30824 <https://github.com/ceph/ceph/pull/30824>`_, Mykola Golub) -* rbd: librbd: v1 clones are restricted to the same namespace (`pr#30823 <https://github.com/ceph/ceph/pull/30823>`_, Jason Dillaman) -* mgr/restful: Query nodes_by_id for items (`pr#31261 <https://github.com/ceph/ceph/pull/31261>`_, Boris Ranto) -* rgw/amqp: fix race condition in AMQP unit test (`pr#30889 <https://github.com/ceph/ceph/pull/30889>`_, Yuval Lifshitz) -* rgw/amqp: remove flaky amqp test (`pr#31628 <https://github.com/ceph/ceph/pull/31628>`_, Yuval Lifshitz) -* rgw/pubsub: backport notifications and pubsub (`pr#30579 <https://github.com/ceph/ceph/pull/30579>`_, Yuval Lifshitz) -* rgw/rgw_op: Remove get_val from hotpath via legacy options (`pr#30160 <https://github.com/ceph/ceph/pull/30160>`_, Mark Nelson) -* rgw: Potential crash in putbj (`pr#29898 <https://github.com/ceph/ceph/pull/29898>`_, Adam C. Emerson) -* rgw: Put User Policy is sensitive to whitespace (`pr#29970 <https://github.com/ceph/ceph/pull/29970>`_, Abhishek Lekshmanan) -* rgw: RGWCoroutine::call(nullptr) sets retcode=0 (`pr#30248 <https://github.com/ceph/ceph/pull/30248>`_, Casey Bodley) -* rgw: Swift metadata dropped after S3 bucket versioning enabled (`pr#29961 <https://github.com/ceph/ceph/pull/29961>`_, Marcus Watts) -* rgw: add S3 object lock feature to support object worm (`pr#29905 <https://github.com/ceph/ceph/pull/29905>`_, Chang Liu, Casey Bodley, zhang Shaowen) -* rgw: add minssing admin property when sync user info (`pr#30680 <https://github.com/ceph/ceph/pull/30680>`_, zhang Shaowen) -* rgw: beast frontend throws an exception when running out of FDs (`pr#29963 <https://github.com/ceph/ceph/pull/29963>`_, Yuval Lifshitz) -* rgw: data/bilogs are trimmed when no peers are reading them (`issue#39487 <http://tracker.ceph.com/issues/39487>`_, `pr#30999 <https://github.com/ceph/ceph/pull/30999>`_, Casey Bodley) -* rgw: datalog/mdlog trim commands loop until done (`pr#30869 <https://github.com/ceph/ceph/pull/30869>`_, Casey Bodley) -* rgw: dns name is not case sensitive (`issue#40995 <http://tracker.ceph.com/issues/40995>`_, `pr#29971 <https://github.com/ceph/ceph/pull/29971>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: fix a bug that lifecycle expiraton generates delete marker continuously (`issue#40393 <http://tracker.ceph.com/issues/40393>`_, `pr#30037 <https://github.com/ceph/ceph/pull/30037>`_, zhang Shaowen) -* rgw: fix cls_bucket_list_unordered() partial results (`pr#30252 <https://github.com/ceph/ceph/pull/30252>`_, Mark Kogan) -* rgw: fix data sync start delay if remote haven't init data_log (`pr#30509 <https://github.com/ceph/ceph/pull/30509>`_, Tianshan Qu) -* rgw: fix default storage class for get_compression_type (`pr#31026 <https://github.com/ceph/ceph/pull/31026>`_, Casey Bodley) -* rgw: fix drain handles error when deleting bucket with bypass-gc option (`pr#29956 <https://github.com/ceph/ceph/pull/29956>`_, dongdong tao) -* rgw: fix list bucket with delimiter wrongly skip some special keys (`issue#40905 <http://tracker.ceph.com/issues/40905>`_, `pr#30068 <https://github.com/ceph/ceph/pull/30068>`_, Tianshan Qu) -* rgw: fix memory growth while deleteing objects with (`pr#30472 <https://github.com/ceph/ceph/pull/30472>`_, Mark Kogan) -* rgw: fix the bug of rgw not doing necessary checking to website configuration (`issue#40678 <http://tracker.ceph.com/issues/40678>`_, `pr#30325 <https://github.com/ceph/ceph/pull/30325>`_, Enming Zhang) -* rgw: fixed "unrecognized arg" error when using "radosgw-admin zone rm" (`pr#30247 <https://github.com/ceph/ceph/pull/30247>`_, Hongang Chen) -* rgw: housekeeping reset stats (`pr#29803 <https://github.com/ceph/ceph/pull/29803>`_, J. Eric Ivancich) -* rgw: increase beast parse buffer size to 64k (`pr#30437 <https://github.com/ceph/ceph/pull/30437>`_, Casey Bodley) -* rgw: ldap auth: S3 auth failure should return InvalidAccessKeyId (`pr#30651 <https://github.com/ceph/ceph/pull/30651>`_, Matt Benjamin) -* rgw: lifecycle days may be 0 (`pr#31073 <https://github.com/ceph/ceph/pull/31073>`_, Matt Benjamin) -* rgw: lifecycle transitions on non existent placement targets (`pr#29955 <https://github.com/ceph/ceph/pull/29955>`_, Abhishek Lekshmanan) -* rgw: list objects version 2 (`pr#29849 <https://github.com/ceph/ceph/pull/29849>`_, Albin Antony, zhang Shaowen) -* rgw: multisite: radosgw-admin bucket sync status incorrectly reports "caught up" during full sync (`issue#40806 <http://tracker.ceph.com/issues/40806>`_, `pr#29974 <https://github.com/ceph/ceph/pull/29974>`_, Casey Bodley) -* rgw: potential realm watch lost (`issue#40991 <http://tracker.ceph.com/issues/40991>`_, `pr#29972 <https://github.com/ceph/ceph/pull/29972>`_, Tianshan Qu) -* rgw: protect AioResultList by a lock to avoid race condition (`pr#30746 <https://github.com/ceph/ceph/pull/30746>`_, Ilsoo Byun) -* rgw: radosgw-admin: add --uid check in bucket list command (`pr#30604 <https://github.com/ceph/ceph/pull/30604>`_, Vikhyat Umrao) -* rgw: returns one byte more data than the requested range from the SLO object (`pr#29960 <https://github.com/ceph/ceph/pull/29960>`_, Andrey Groshev) -* rgw: rgw-admin: search for user by access key (`pr#29959 <https://github.com/ceph/ceph/pull/29959>`_, Matt Benjamin) -* rgw: rgw-log issues the wrong message when decompression fails (`pr#29965 <https://github.com/ceph/ceph/pull/29965>`_, Han Fengzhe) -* rgw: rgw_file: directory enumeration can be accelerated 1-2 orders of magnitude taking stats from bucket index Part I (stats from S3/Swift only) (`issue#40456 <http://tracker.ceph.com/issues/40456>`_, `pr#29954 <https://github.com/ceph/ceph/pull/29954>`_, Matt Benjamin) -* rgw: rgw_file: readdir: do not construct markers w/leading '/' (`pr#29969 <https://github.com/ceph/ceph/pull/29969>`_, Matt Benjamin) -* rgw: silence warning "control reaches end of non-void function" (`issue#40747 <http://tracker.ceph.com/issues/40747>`_, `pr#31742 <https://github.com/ceph/ceph/pull/31742>`_, Jos Collin) -* rgw: sync with elastic search v7 (`pr#31027 <https://github.com/ceph/ceph/pull/31027>`_, Chang Liu) -* rgw: use explicit to_string() overload for boost::string_ref (`issue#39611 <http://tracker.ceph.com/issues/39611>`_, `pr#31650 <https://github.com/ceph/ceph/pull/31650>`_, Casey Bodley, Ulrich Weigand) -* rgw: when using radosgw-admin to list bucket, can set --max-entries excessively high (`pr#29777 <https://github.com/ceph/ceph/pull/29777>`_, J. Eric Ivancich) -* tests: "CMake Error" in test_envlibrados_for_rocksdb.sh (`pr#29979 <https://github.com/ceph/ceph/pull/29979>`_, Kefu Chai) -* tests: Get libcephfs and cephfs to compile with FreeBSD (`pr#31136 <https://github.com/ceph/ceph/pull/31136>`_, Willem Jan Withagen) -* tests: add debugging failed osd-release setting (`pr#31040 <https://github.com/ceph/ceph/pull/31040>`_, Patrick Donnelly) -* tests: cephfs: fix malformed qa suite config (`pr#30038 <https://github.com/ceph/ceph/pull/30038>`_, Patrick Donnelly) -* tests: cls_rbd/test_cls_rbd: update TestClsRbd.sparsify (`pr#30354 <https://github.com/ceph/ceph/pull/30354>`_, Kefu Chai) -* tests: cls_rbd: removed mirror peer pool test cases (`pr#30948 <https://github.com/ceph/ceph/pull/30948>`_, Jason Dillaman) -* tests: enable dashboard tests to be run with "--suite rados/dashboard" (`pr#31248 <https://github.com/ceph/ceph/pull/31248>`_, Nathan Cutler) -* tests: librbd: set nbd timeout due to newer kernels defaulting it on (`pr#30423 <https://github.com/ceph/ceph/pull/30423>`_, Jason Dillaman) -* tests: qa/suites/krbd: run unmap subsuite with msgr1 only (`pr#31290 <https://github.com/ceph/ceph/pull/31290>`_, Ilya Dryomov) -* tests: qa/tasks/cbt: run stop-all.sh while shutting down (`pr#31304 <https://github.com/ceph/ceph/pull/31304>`_, Sage Weil) -* tests: qa/tasks/ceph.conf.template: increase mon tell retries (`pr#31641 <https://github.com/ceph/ceph/pull/31641>`_, Sage Weil) -* tests: qa/workunits/rbd: stress test `rbd mirror pool status --verbose` (`pr#29871 <https://github.com/ceph/ceph/pull/29871>`_, Mykola Golub) -* tests: qa: avoid page cache for krbd discard round off tests (`pr#30464 <https://github.com/ceph/ceph/pull/30464>`_, Ilya Dryomov) -* tests: qa: sleep briefly after resetting kclient (`pr#29750 <https://github.com/ceph/ceph/pull/29750>`_, Patrick Donnelly) -* tests: rados/mgr/tasks/module_selftest: whitelist mgr client getting blacklisted (`issue#40867 <http://tracker.ceph.com/issues/40867>`_, `pr#29649 <https://github.com/ceph/ceph/pull/29649>`_, Sage Weil) -* tests: test_librados_build.sh: grab from nautilus branch in nautilus (`pr#31604 <https://github.com/ceph/ceph/pull/31604>`_, Nathan Cutler) -* tests: valgrind: UninitCondition in ceph::crypto::onwire::AES128GCM_OnWireRxHandler::authenticated_decrypt_update_final() (`issue#38827 <http://tracker.ceph.com/issues/38827>`_, `pr#29928 <https://github.com/ceph/ceph/pull/29928>`_, Radoslaw Zarzynski) -* tools/rados: add --pgid in help (`pr#30607 <https://github.com/ceph/ceph/pull/30607>`_, Vikhyat Umrao) -* tools/rados: call pool_lookup() after rados is connected (`pr#30605 <https://github.com/ceph/ceph/pull/30605>`_, Vikhyat Umrao) -* tools/rbd-ggate: close log before running postfork (`pr#30120 <https://github.com/ceph/ceph/pull/30120>`_, Willem Jan Withagen) -* tools: ceph-backport.sh: add deprecation warning (`pr#30748 <https://github.com/ceph/ceph/pull/30748>`_, Nathan Cutler) -* tools: ceph-objectstore-tool can't remove head with bad snapset (`pr#30080 <https://github.com/ceph/ceph/pull/30080>`_, David Zafman) - - -v14.2.4 Nautilus -================ - -This is the fourth release in the Ceph Nautilus stable release series. Its sole -purpose is to fix a regression that found its way into the previous release. - -Notable Changes ---------------- - -* The ceph-volume in Nautilus v14.2.3 was found to contain a serious - regression, described in ``https://tracker.ceph.com/issues/41660``, which - prevented deployment tools like ceph-ansible, DeepSea, Rook, etc. from - deploying/removing OSDs. - -Changelog ---------- - -* ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30300 <https://github.com/ceph/ceph/pull/30300>`_, Alfredo Deza) - - -v14.2.3 Nautilus -================ - -This is the third bug fix release of Ceph Nautilus release series. We recommend -all Nautilus users upgrade to this release. For upgrading from older releases of -ceph, general guidelines for upgrade to nautilus must be followed -:ref:`nautilus-old-upgrade`. - -Notable Changes ---------------- - -* `CVE-2019-10222` - Fixed a denial of service vulnerability where an - unauthenticated client of Ceph Object Gateway could trigger a crash from an - uncaught exception - -* Nautilus-based librbd clients can now open images on Jewel clusters. - -* The RGW `num_rados_handles` has been removed. If you were using a value of - `num_rados_handles` greater than 1, multiply your current - `objecter_inflight_ops` and `objecter_inflight_op_bytes` parameters by the - old `num_rados_handles` to get the same throttle behavior. - -* The secure mode of Messenger v2 protocol is no longer experimental with this - release. This mode is now the preferred mode of connection for monitors. - -* "osd_deep_scrub_large_omap_object_key_threshold" has been lowered to detect an - object with large number of omap keys more easily. - -* The Ceph Dashboard now supports silencing Prometheus alert notifications. - -Changelog ---------- - -* bluestore: 50-100% iops lost due to bluefs_preextend_wal_files = false (`issue#38559 <http://tracker.ceph.com/issues/38559>`_, `pr#28573 <https://github.com/ceph/ceph/pull/28573>`_, Vitaliy Filippov) -* bluestore: add slow op detection for collection_listing (`pr#29227 <https://github.com/ceph/ceph/pull/29227>`_, Igor Fedotov) -* bluestore: avoid length overflow in extents returned by Stupid Allocator (`issue#40703 <http://tracker.ceph.com/issues/40703>`_, `pr#29023 <https://github.com/ceph/ceph/pull/29023>`_, Igor Fedotov) -* bluestore/bluefs_types: consolidate contiguous extents (`pr#28862 <https://github.com/ceph/ceph/pull/28862>`_, Sage Weil) -* bluestore/bluestore-tool: minor fixes around migrate (`pr#28893 <https://github.com/ceph/ceph/pull/28893>`_, Igor Fedotov) -* bluestore: create the tail when first set FLAG_OMAP (`issue#36482 <http://tracker.ceph.com/issues/36482>`_, `pr#28963 <https://github.com/ceph/ceph/pull/28963>`_, Tao Ning) -* bluestore: do not set osd_memory_target default from cgroup limit (`pr#29745 <https://github.com/ceph/ceph/pull/29745>`_, Sage Weil) -* bluestore: fix >2GB bluefs writes (`pr#28966 <https://github.com/ceph/ceph/pull/28966>`_, kungf, Sage Weil) -* bluestore: load OSD all compression settings unconditionally (`issue#40480 <http://tracker.ceph.com/issues/40480>`_, `pr#28892 <https://github.com/ceph/ceph/pull/28892>`_, Igor Fedotov) -* bluestore: more smart allocator dump when lacking space for bluefs (`issue#40623 <http://tracker.ceph.com/issues/40623>`_, `pr#28891 <https://github.com/ceph/ceph/pull/28891>`_, Igor Fedotov) -* bluestore: Set concurrent max_background_compactions in rocksdb to 2 (`issue#40769 <http://tracker.ceph.com/issues/40769>`_, `pr#29162 <https://github.com/ceph/ceph/pull/29162>`_, Mark Nelson) -* bluestore: support RocksDB prefetch in buffered read mode (`pr#28962 <https://github.com/ceph/ceph/pull/28962>`_, Igor Fedotov) -* build/ops: Module 'dashboard' has failed: No module named routes (`issue#24420 <http://tracker.ceph.com/issues/24420>`_, `pr#28992 <https://github.com/ceph/ceph/pull/28992>`_, Paul Emmerich) -* build/ops: rpm: drop SuSEfirewall2 (`issue#40738 <http://tracker.ceph.com/issues/40738>`_, `pr#29007 <https://github.com/ceph/ceph/pull/29007>`_, Matthias Gerstner) -* build/ops: rpm: Require ceph-grafana-dashboards (`pr#29682 <https://github.com/ceph/ceph/pull/29682>`_, Boris Ranto) -* cephfs: ceph-fuse: mount does not support the fallocate() (`issue#40615 <http://tracker.ceph.com/issues/40615>`_, `pr#29157 <https://github.com/ceph/ceph/pull/29157>`_, huanwen ren) -* cephfs: ceph_volume_client: d_name needs to be converted to string before using (`issue#39406 <http://tracker.ceph.com/issues/39406>`_, `pr#28609 <https://github.com/ceph/ceph/pull/28609>`_, Rishabh Dave) -* cephfs: client: bump ll_ref from int32 to uint64_t (`pr#29186 <https://github.com/ceph/ceph/pull/29186>`_, Xiaoxi CHEN) -* cephfs: client: set snapdir's link count to 1 (`issue#40101 <http://tracker.ceph.com/issues/40101>`_, `pr#29343 <https://github.com/ceph/ceph/pull/29343>`_, "Yan, Zheng") -* cephfs: client: unlink dentry for inode with llref=0 (`issue#40960 <http://tracker.ceph.com/issues/40960>`_, `pr#29478 <https://github.com/ceph/ceph/pull/29478>`_, Xiaoxi CHEN) -* cephfs: getattr on snap inode stuck (`issue#40361 <http://tracker.ceph.com/issues/40361>`_, `pr#29231 <https://github.com/ceph/ceph/pull/29231>`_, "Yan, Zheng") -* cephfs: mds: cannot switch mds state from standby-replay to active (`issue#40213 <http://tracker.ceph.com/issues/40213>`_, `pr#29233 <https://github.com/ceph/ceph/pull/29233>`_, simon gao) -* cephfs: mds: cleanup unneeded client_snap_caps when splitting snap inode (`issue#39987 <http://tracker.ceph.com/issues/39987>`_, `pr#29344 <https://github.com/ceph/ceph/pull/29344>`_, "Yan, Zheng") -* cephfs-shell: name 'files' is not defined error in do_rm() (`issue#40489 <http://tracker.ceph.com/issues/40489>`_, `pr#29158 <https://github.com/ceph/ceph/pull/29158>`_, Varsha Rao) -* cephfs-shell: TypeError in poutput (`issue#40679 <http://tracker.ceph.com/issues/40679>`_, `pr#29156 <https://github.com/ceph/ceph/pull/29156>`_, Varsha Rao) -* ceph.spec.in: Drop systemd BuildRequires in case of building for SUSE (`pr#28937 <https://github.com/ceph/ceph/pull/28937>`_, Dominique Leuenberger) -* ceph-volume: batch functional idempotency test fails since message is now on stderr (`pr#29689 <https://github.com/ceph/ceph/pull/29689>`_, Jan Fajerski) -* ceph-volume: batch gets confused when the same device is passed in two device lists (`pr#29690 <https://github.com/ceph/ceph/pull/29690>`_, Jan Fajerski) -* ceph-volume: does not recognize wal/db partitions created by ceph-disk (`pr#29464 <https://github.com/ceph/ceph/pull/29464>`_, Jan Fajerski) -* ceph-volume: [filestore,bluestore] single type strategies fail after tracking devices as sets (`pr#29702 <https://github.com/ceph/ceph/pull/29702>`_, Jan Fajerski) -* ceph-volume: lvm.activate: Return an error if WAL/DB devices absent (`pr#29040 <https://github.com/ceph/ceph/pull/29040>`_, David Casier) -* ceph-volume: missing string substitution when reporting mounts (`issue#25030 <http://tracker.ceph.com/issues/25030>`_, `pr#29260 <https://github.com/ceph/ceph/pull/29260>`_, Shyukri Shyukriev) -* ceph-volume: prints errors to stdout with --format json (`issue#38548 <http://tracker.ceph.com/issues/38548>`_, `pr#29506 <https://github.com/ceph/ceph/pull/29506>`_, Jan Fajerski) -* ceph-volume: prints log messages to stdout (`pr#29600 <https://github.com/ceph/ceph/pull/29600>`_, Jan Fajerski, Kefu Chai, Alfredo Deza) -* ceph-volume: run functional tests without dashboard (`pr#29694 <https://github.com/ceph/ceph/pull/29694>`_, Andrew Schoen) -* ceph-volume: simple functional tests drop test for lvm zap (`pr#29660 <https://github.com/ceph/ceph/pull/29660>`_, Jan Fajerski) -* ceph-volume: tests set the noninteractive flag for Debian (`pr#29899 <https://github.com/ceph/ceph/pull/29899>`_, Alfredo Deza) -* ceph-volume: when 'type' file is not present activate fails (`pr#29416 <https://github.com/ceph/ceph/pull/29416>`_, Alfredo Deza) -* cmake: update FindBoost.cmake (`pr#29436 <https://github.com/ceph/ceph/pull/29436>`_, Willem Jan Withagen) -* common/config: respect POD_MEMORY_REQUEST \*and\* POD_MEMORY_LIMIT env vars (`pr#29562 <https://github.com/ceph/ceph/pull/29562>`_, Patrick Donnelly, Sage Weil) -* common: Keyrings created by ceph auth get are not suitable for ceph auth import (`issue#22227 <http://tracker.ceph.com/issues/22227>`_, `pr#28740 <https://github.com/ceph/ceph/pull/28740>`_, Kefu Chai) -* common: OutputDataSocket retakes mutex on error path (`issue#40188 <http://tracker.ceph.com/issues/40188>`_, `pr#29147 <https://github.com/ceph/ceph/pull/29147>`_, Casey Bodley) -* core: Better default value for osd_snap_trim_sleep (`pr#29678 <https://github.com/ceph/ceph/pull/29678>`_, Neha Ojha) -* core: Change default for bluestore_fsck_on_mount_deep as false (`pr#29697 <https://github.com/ceph/ceph/pull/29697>`_, Neha Ojha) -* core: lazy omap stat collection (`pr#29188 <https://github.com/ceph/ceph/pull/29188>`_, Brad Hubbard) -* core: librados: move buffer free functions to inline namespace (`issue#39972 <http://tracker.ceph.com/issues/39972>`_, `pr#29244 <https://github.com/ceph/ceph/pull/29244>`_, Jason Dillaman) -* core: maybe_remove_pg_upmap can be super inefficient for large clusters (`issue#40104 <http://tracker.ceph.com/issues/40104>`_, `pr#28756 <https://github.com/ceph/ceph/pull/28756>`_, xie xingguo) -* core: MDSMonitor: use stringstream instead of dout for mds repaired (`issue#40472 <http://tracker.ceph.com/issues/40472>`_, `pr#29159 <https://github.com/ceph/ceph/pull/29159>`_, Zhi Zhang) -* core: osd beacon sometimes has empty pg list (`issue#40377 <http://tracker.ceph.com/issues/40377>`_, `pr#29254 <https://github.com/ceph/ceph/pull/29254>`_, Sage Weil) -* core: s3tests-test-readwrite failed in rados run (Connection refused) (`issue#17882 <http://tracker.ceph.com/issues/17882>`_, `pr#29325 <https://github.com/ceph/ceph/pull/29325>`_, Casey Bodley) -* doc: Document more cache modes (`issue#14153 <http://tracker.ceph.com/issues/14153>`_, `pr#28958 <https://github.com/ceph/ceph/pull/28958>`_, Nathan Cutler) -* doc: fix rgw ldap username token (`pr#29455 <https://github.com/ceph/ceph/pull/29455>`_, Thomas Kriechbaumer) -* doc: Improved dashboard feature overview (`pr#28919 <https://github.com/ceph/ceph/pull/28919>`_, Lenz Grimmer) -* doc: Object Gateway multisite document read-only argument error (`issue#40458 <http://tracker.ceph.com/issues/40458>`_, `pr#29306 <https://github.com/ceph/ceph/pull/29306>`_, Chenjiong Deng) -* doc/rados: Correcting some typos in the clay code documentation (`pr#29191 <https://github.com/ceph/ceph/pull/29191>`_, Myna) -* doc/rbd: initial live-migration documentation (`issue#40486 <http://tracker.ceph.com/issues/40486>`_, `pr#29724 <https://github.com/ceph/ceph/pull/29724>`_, Jason Dillaman) -* doc/rgw: document use of 'realm pull' instead of 'period pull' (`issue#39655 <http://tracker.ceph.com/issues/39655>`_, `pr#29484 <https://github.com/ceph/ceph/pull/29484>`_, Casey Bodley) -* doc: steps to disable metadata_heap on existing rgw zones (`issue#18174 <http://tracker.ceph.com/issues/18174>`_, `pr#28738 <https://github.com/ceph/ceph/pull/28738>`_, Dan van der Ster) -* doc: Update 'ceph-iscsi' min version (`pr#29444 <https://github.com/ceph/ceph/pull/29444>`_, Ricardo Marques) -* journal: properly advance read offset after skipping invalid range (`pr#28816 <https://github.com/ceph/ceph/pull/28816>`_, Mykola Golub) -* librbd: improve journal performance to match expected degredation (`issue#40072 <http://tracker.ceph.com/issues/40072>`_, `pr#29723 <https://github.com/ceph/ceph/pull/29723>`_, Mykola Golub, Jason Dillaman) -* librbd: properly track in-flight flush requests (`issue#40555 <http://tracker.ceph.com/issues/40555>`_, `pr#28769 <https://github.com/ceph/ceph/pull/28769>`_, Jason Dillaman) -* librbd: snapshot object maps can go inconsistent during copyup (`issue#39435 <http://tracker.ceph.com/issues/39435>`_, `pr#29722 <https://github.com/ceph/ceph/pull/29722>`_, Ilya Dryomov) -* mds: change how mds revoke stale caps (`issue#17854 <http://tracker.ceph.com/issues/17854>`_, `pr#28583 <https://github.com/ceph/ceph/pull/28583>`_, Rishabh Dave, "Yan, Zheng") -* mgr: Add mgr metdata to prometheus exporter module (`pr#29168 <https://github.com/ceph/ceph/pull/29168>`_, Paul Cuzner) -* mgr/dashboard: Add, update and remove translations (`issue#39701 <http://tracker.ceph.com/issues/39701>`_, `pr#28938 <https://github.com/ceph/ceph/pull/28938>`_, Sebastian Krah) -* mgr/dashboard: cephfs multimds graphs stack together (`issue#37579 <http://tracker.ceph.com/issues/37579>`_, `pr#28889 <https://github.com/ceph/ceph/pull/28889>`_, Kiefer Chang) -* mgr/dashboard: Changing rgw-api-host does not get effective without disable/enable dashboard mgr module (`issue#40252 <http://tracker.ceph.com/issues/40252>`_, `pr#29044 <https://github.com/ceph/ceph/pull/29044>`_, Ricardo Marques) -* mgr/dashboard: controllers/grafana is not Python3 compatible (`issue#40428 <http://tracker.ceph.com/issues/40428>`_, `pr#29524 <https://github.com/ceph/ceph/pull/29524>`_, Patrick Nawracay) -* mgr/dashboard: Dentries value of MDS daemon in Filesystems page is inconsistent with ceph fs status output (`issue#40097 <http://tracker.ceph.com/issues/40097>`_, `pr#28912 <https://github.com/ceph/ceph/pull/28912>`_, Kiefer Chang) -* mgr/dashboard: Display logged in information for each iSCSI client (`issue#40046 <http://tracker.ceph.com/issues/40046>`_, `pr#29045 <https://github.com/ceph/ceph/pull/29045>`_, Ricardo Marques) -* mgr/dashboard: Fix e2e failures caused by webdriver version (`pr#29491 <https://github.com/ceph/ceph/pull/29491>`_, Tiago Melo) -* mgr/dashboard: Fix npm vulnerabilities (`issue#40677 <http://tracker.ceph.com/issues/40677>`_, `pr#29102 <https://github.com/ceph/ceph/pull/29102>`_, Tiago Melo) -* mgr/dashboard: Fix the table mouseenter event handling test (`issue#40580 <http://tracker.ceph.com/issues/40580>`_, `pr#29354 <https://github.com/ceph/ceph/pull/29354>`_, Stephan Müller) -* mgr/dashboard: Interlock `fast-diff` and `object-map` (`issue#39451 <http://tracker.ceph.com/issues/39451>`_, `pr#29442 <https://github.com/ceph/ceph/pull/29442>`_, Patrick Nawracay) -* mgr/dashboard: notify the user about unset 'mon_allow_pool_delete' flag beforehand (`issue#39533 <http://tracker.ceph.com/issues/39533>`_, `pr#28833 <https://github.com/ceph/ceph/pull/28833>`_, Tatjana Dehler) -* mgr/dashboard: Optimize the calculation of portal IPs (`issue#39580 <http://tracker.ceph.com/issues/39580>`_, `pr#29061 <https://github.com/ceph/ceph/pull/29061>`_, Ricardo Marques, Kefu Chai) -* mgr/dashboard: Pool graph/sparkline points do not display the correct values (`issue#39650 <http://tracker.ceph.com/issues/39650>`_, `pr#29352 <https://github.com/ceph/ceph/pull/29352>`_, Stephan Müller) -* mgr/dashboard: RGW User quota validation is not working correctly (`pr#29650 <https://github.com/ceph/ceph/pull/29650>`_, Volker Theile) -* mgr/dashboard: Silence Alertmanager alerts (`issue#36722 <http://tracker.ceph.com/issues/36722>`_, `pr#28968 <https://github.com/ceph/ceph/pull/28968>`_, Stephan Müller) -* mgr/dashboard: SSL certificate upload command throws deprecation warning (`issue#39123 <http://tracker.ceph.com/issues/39123>`_, `pr#29065 <https://github.com/ceph/ceph/pull/29065>`_, Ricardo Dias) -* mgr/dashboard: switch ng2-toastr to ngx-toastr (`pr#29050 <https://github.com/ceph/ceph/pull/29050>`_, Tiago Melo, Ernesto Puerta) -* mgr/dashboard: Upgrade to ceph-iscsi config v10 (`issue#40566 <http://tracker.ceph.com/issues/40566>`_, `pr#28974 <https://github.com/ceph/ceph/pull/28974>`_, Ricardo Marques) -* mgr/diskprediction_cloud: Service unavailable (`issue#40478 <http://tracker.ceph.com/issues/40478>`_, `pr#29454 <https://github.com/ceph/ceph/pull/29454>`_, Rick Chen) -* mgr/influx: module fails due to missing close() method (`issue#40174 <http://tracker.ceph.com/issues/40174>`_, `pr#29207 <https://github.com/ceph/ceph/pull/29207>`_, Kefu Chai) -* mgr/orchestrator: Cache and DeepSea iSCSI + NFS (`pr#29060 <https://github.com/ceph/ceph/pull/29060>`_, Sebastian Wagner, Tim Serong) -* mgr/rbd_support: support scheduling long-running background operations (`issue#40621 <http://tracker.ceph.com/issues/40621>`_, `issue#40790 <http://tracker.ceph.com/issues/40790>`_, `pr#29725 <https://github.com/ceph/ceph/pull/29725>`_, Venky Shankar, Jason Dillaman) -* mgr: use ipv4 default when ipv6 was disabled (`issue#40023 <http://tracker.ceph.com/issues/40023>`_, `pr#29194 <https://github.com/ceph/ceph/pull/29194>`_, kungf) -* mgr/volumes: background purge queue for subvolumes (`issue#40036 <http://tracker.ceph.com/issues/40036>`_, `pr#29079 <https://github.com/ceph/ceph/pull/29079>`_, Patrick Donnelly, Venky Shankar, Kefu Chai) -* mgr/volumes: minor enhancement and bug fix (`issue#40927 <http://tracker.ceph.com/issues/40927>`_, `issue#40617 <http://tracker.ceph.com/issues/40617>`_, `pr#29490 <https://github.com/ceph/ceph/pull/29490>`_, Ramana Raja) -* mon: auth mon isn't loading full KeyServerData after restart (`issue#40634 <http://tracker.ceph.com/issues/40634>`_, `pr#28993 <https://github.com/ceph/ceph/pull/28993>`_, Sage Weil) -* mon/MgrMonitor: fix null deref when invalid formatter is specified (`pr#29566 <https://github.com/ceph/ceph/pull/29566>`_, Sage Weil) -* mon/OSDMonitor: allow pg_num to increase when require_osd_release < N (`issue#39570 <http://tracker.ceph.com/issues/39570>`_, `pr#29671 <https://github.com/ceph/ceph/pull/29671>`_, Neha Ojha, Sage Weil) -* mon/OSDMonitor.cc: better error message about min_size (`pr#29617 <https://github.com/ceph/ceph/pull/29617>`_, Neha Ojha) -* mon: paxos: introduce new reset_pending_committing_finishers for safety (`issue#39484 <http://tracker.ceph.com/issues/39484>`_, `pr#28528 <https://github.com/ceph/ceph/pull/28528>`_, Greg Farnum) -* mon: set recovery priority etc on cephfs metadata pool (`pr#29275 <https://github.com/ceph/ceph/pull/29275>`_, Sage Weil) -* mon: take the mon lock in handle_conf_change (`issue#39625 <http://tracker.ceph.com/issues/39625>`_, `pr#29373 <https://github.com/ceph/ceph/pull/29373>`_, huangjun) -* msg/async: avoid unnecessary costly wakeups for outbound messages (`pr#29141 <https://github.com/ceph/ceph/pull/29141>`_, Jason Dillaman) -* msg/async: enable secure mode by default, no longer experimental (`pr#29143 <https://github.com/ceph/ceph/pull/29143>`_, Sage Weil) -* msg/async: no-need set connection for Message (`pr#29142 <https://github.com/ceph/ceph/pull/29142>`_, Jianpeng Ma) -* msg/async, v2: make the reset_recv_state() unconditional (`issue#40115 <http://tracker.ceph.com/issues/40115>`_, `pr#29140 <https://github.com/ceph/ceph/pull/29140>`_, Radoslaw Zarzynski, Sage Weil) -* nautilus:common/options.cc: Lower the default value of osd_deep_scrub_large_omap_object_key_threshold (`pr#29173 <https://github.com/ceph/ceph/pull/29173>`_, Neha Ojha) -* osd: Don't randomize deep scrubs when noscrub set (`issue#40198 <http://tracker.ceph.com/issues/40198>`_, `pr#28768 <https://github.com/ceph/ceph/pull/28768>`_, David Zafman) -* osd: Fix the way that auto repair triggers after regular scrub (`issue#40530 <http://tracker.ceph.com/issues/40530>`_, `issue#40073 <http://tracker.ceph.com/issues/40073>`_, `pr#28869 <https://github.com/ceph/ceph/pull/28869>`_, sjust@redhat.com, David Zafman) -* osd/OSD: auto mark heartbeat sessions as stale and tear them down (`issue#40586 <http://tracker.ceph.com/issues/40586>`_, `pr#29391 <https://github.com/ceph/ceph/pull/29391>`_, xie xingguo) -* osd/OSD: keep synchronizing with mon if stuck at booting (`pr#28639 <https://github.com/ceph/ceph/pull/28639>`_, xie xingguo) -* osd/PG: do not queue scrub if PG is not active when unblock (`issue#40451 <http://tracker.ceph.com/issues/40451>`_, `pr#29372 <https://github.com/ceph/ceph/pull/29372>`_, Sage Weil) -* osd/PG: fix cleanup of pgmeta-like objects on PG deletion (`pr#29115 <https://github.com/ceph/ceph/pull/29115>`_, Sage Weil) -* pybind/mgr/rbd_support: ignore missing support for RBD namespaces (`issue#41475 <https://tracker.ceph.com/issues/41475>`_, `pr#29945 <https://github.com/ceph/ceph/pull/29945>`_, Mykola Golub) -* rbd/action: fix error getting positional argument (`issue#40095 <http://tracker.ceph.com/issues/40095>`_, `pr#28870 <https://github.com/ceph/ceph/pull/28870>`_, songweibin) -* rbd: [cli] 'export' should handle concurrent IO completions (`issue#40435 <http://tracker.ceph.com/issues/40435>`_, `pr#29329 <https://github.com/ceph/ceph/pull/29329>`_, Jason Dillaman) -* rbd: librbd: do not unblock IO prior to growing object map during resize (`issue#39952 <http://tracker.ceph.com/issues/39952>`_, `pr#29246 <https://github.com/ceph/ceph/pull/29246>`_, Jason Dillaman) -* rbd-mirror: handle duplicates in image sync throttler queue (`issue#40519 <http://tracker.ceph.com/issues/40519>`_, `pr#28817 <https://github.com/ceph/ceph/pull/28817>`_, Mykola Golub) -* rbd-mirror: link against the specified alloc library (`issue#40110 <http://tracker.ceph.com/issues/40110>`_, `pr#29193 <https://github.com/ceph/ceph/pull/29193>`_, Jason Dillaman) -* rbd-nbd: sscanf return 0 mean not-match (`issue#39269 <http://tracker.ceph.com/issues/39269>`_, `pr#29315 <https://github.com/ceph/ceph/pull/29315>`_, Jianpeng Ma) -* rbd: profile rbd OSD cap should add class rbd metadata_list cap by default (`issue#39973 <http://tracker.ceph.com/issues/39973>`_, `pr#29328 <https://github.com/ceph/ceph/pull/29328>`_, songweibin) -* rbd: Reduce log level for cls/journal and cls/rbd expected errors (`issue#40865 <http://tracker.ceph.com/issues/40865>`_, `pr#29551 <https://github.com/ceph/ceph/pull/29551>`_, Jason Dillaman) -* rbd: tests: add "rbd diff" coverage to suite (`issue#39447 <http://tracker.ceph.com/issues/39447>`_, `pr#28575 <https://github.com/ceph/ceph/pull/28575>`_, Shyukri Shyukriev, Nathan Cutler) -* rgw: add 'GET /admin/realm?list' api to list realms (`issue#39626 <http://tracker.ceph.com/issues/39626>`_, `pr#28751 <https://github.com/ceph/ceph/pull/28751>`_, Casey Bodley) -* rgw: allow radosgw-admin to list bucket w --allow-unordered (`issue#39637 <http://tracker.ceph.com/issues/39637>`_, `pr#28230 <https://github.com/ceph/ceph/pull/28230>`_, J. Eric Ivancich) -* rgw: conditionally allow builtin users with non-unique email addresses (`issue#40089 <http://tracker.ceph.com/issues/40089>`_, `pr#28715 <https://github.com/ceph/ceph/pull/28715>`_, Matt Benjamin) -* rgw: deleting bucket can fail when it contains unfinished multipart uploads (`issue#40526 <http://tracker.ceph.com/issues/40526>`_, `pr#29154 <https://github.com/ceph/ceph/pull/29154>`_, J. Eric Ivancich) -* rgw: Don't crash on copy when metadata directive not supplied (`issue#40416 <http://tracker.ceph.com/issues/40416>`_, `pr#29499 <https://github.com/ceph/ceph/pull/29499>`_, Adam C. Emerson) -* rgw_file: advance_mtime() should consider namespace expiration (`issue#40415 <http://tracker.ceph.com/issues/40415>`_, `pr#29410 <https://github.com/ceph/ceph/pull/29410>`_, Matt Benjamin) -* rgw_file: advance_mtime() takes RGWFileHandle::mutex unconditionally (`pr#29801 <https://github.com/ceph/ceph/pull/29801>`_, Matt Benjamin) -* rgw_file: all directories are virtual with respect to contents (`issue#40204 <http://tracker.ceph.com/issues/40204>`_, `pr#28886 <https://github.com/ceph/ceph/pull/28886>`_, Matt Benjamin) -* rgw_file: fix invalidation of top-level directories (`issue#40196 <http://tracker.ceph.com/issues/40196>`_, `pr#29309 <https://github.com/ceph/ceph/pull/29309>`_, Matt Benjamin) -* rgw_file: fix readdir eof() calc--caller stop implies !eof (`issue#40375 <http://tracker.ceph.com/issues/40375>`_, `pr#29409 <https://github.com/ceph/ceph/pull/29409>`_, Matt Benjamin) -* rgw_file: include tenant when hashing bucket names (`issue#40118 <http://tracker.ceph.com/issues/40118>`_, `pr#28854 <https://github.com/ceph/ceph/pull/28854>`_, Matt Benjamin) -* rgw: fix miss get ret in STSService::storeARN (`issue#40386 <http://tracker.ceph.com/issues/40386>`_, `pr#28713 <https://github.com/ceph/ceph/pull/28713>`_, Tianshan Qu) -* rgw: fix prefix handling in LCFilter (`issue#37879 <http://tracker.ceph.com/issues/37879>`_, `pr#28550 <https://github.com/ceph/ceph/pull/28550>`_, Matt Benjamin) -* rgw: fix rgw crash and set correct error code (`pr#28729 <https://github.com/ceph/ceph/pull/28729>`_, yuliyang) -* rgw: hadoop-s3a suite failing with more ansible errors (`issue#39706 <http://tracker.ceph.com/issues/39706>`_, `pr#28735 <https://github.com/ceph/ceph/pull/28735>`_, Casey Bodley) -* rgw: hadoop-s3a suite failing with more ansible errors (`issue#39706 <http://tracker.ceph.com/issues/39706>`_, `pr#29265 <https://github.com/ceph/ceph/pull/29265>`_, Casey Bodley) -* rgw: Librgw doesn't GC deleted object correctly (`issue#37734 <http://tracker.ceph.com/issues/37734>`_, `pr#28648 <https://github.com/ceph/ceph/pull/28648>`_, Tao Chen, Matt Benjamin) -* rgw: multisite: DELETE Bucket CORS is not forwarded to master zone (`issue#39629 <http://tracker.ceph.com/issues/39629>`_, `pr#28714 <https://github.com/ceph/ceph/pull/28714>`_, Chang Liu) -* rgw: multisite: fix --bypass-gc flag for 'radosgw-admin bucket rm' (`issue#24991 <http://tracker.ceph.com/issues/24991>`_, `pr#28549 <https://github.com/ceph/ceph/pull/28549>`_, Casey Bodley) -* rgw: multisite: 'radosgw-admin bilog trim' stops after 1000 entries (`issue#40187 <http://tracker.ceph.com/issues/40187>`_, `pr#29326 <https://github.com/ceph/ceph/pull/29326>`_, Casey Bodley) -* rgw: multisite: 'radosgw-admin bucket sync status' should call syncs_from(source.name) instead of id (`issue#40022 <http://tracker.ceph.com/issues/40022>`_, `pr#28739 <https://github.com/ceph/ceph/pull/28739>`_, Casey Bodley) -* rgw: multisite: radosgw-admin commands should not modify metadata on a non-master zone (`issue#39548 <http://tracker.ceph.com/issues/39548>`_, `pr#29163 <https://github.com/ceph/ceph/pull/29163>`_, Shilpa Jagannath) -* rgw: multisite: RGWListBucketIndexesCR for data full sync needs pagination (`issue#39551 <http://tracker.ceph.com/issues/39551>`_, `pr#29311 <https://github.com/ceph/ceph/pull/29311>`_, Shilpa Jagannath) -* rgw/OutputDataSocket: append_output(buffer::list&) says it will (but does not) discard output at data_max_backlog (`issue#40178 <http://tracker.ceph.com/issues/40178>`_, `pr#29310 <https://github.com/ceph/ceph/pull/29310>`_, Matt Benjamin) -* rgw, Policy should be url_decode when assume_role (`pr#28728 <https://github.com/ceph/ceph/pull/28728>`_, yuliyang) -* rgw: provide admin-friendly reshard status output (`issue#37615 <http://tracker.ceph.com/issues/37615>`_, `pr#29286 <https://github.com/ceph/ceph/pull/29286>`_, Mark Kogan) -* rgw: Put LC doesn't clear existing lifecycle (`issue#39654 <http://tracker.ceph.com/issues/39654>`_, `pr#29313 <https://github.com/ceph/ceph/pull/29313>`_, Abhishek Lekshmanan) -* rgw: remove rgw_num_rados_handles; set autoscale parameters or rgw metadata pools (`pr#27684 <https://github.com/ceph/ceph/pull/27684>`_, Adam C. Emerson, Casey Bodley, Sage Weil) -* rgw: RGWGC add perfcounter retire counter (`issue#38251 <http://tracker.ceph.com/issues/38251>`_, `pr#29308 <https://github.com/ceph/ceph/pull/29308>`_, Matt Benjamin) -* rgw: Save an unnecessary copy of RGWEnv (`issue#40183 <http://tracker.ceph.com/issues/40183>`_, `pr#29205 <https://github.com/ceph/ceph/pull/29205>`_, Mark Kogan) -* rgw: set null version object issues (`issue#36763 <http://tracker.ceph.com/issues/36763>`_, `pr#29287 <https://github.com/ceph/ceph/pull/29287>`_, Tianshan Qu) -* rgw: Swift interface: server side copy fails if object name contains "?" (`issue#27217 <http://tracker.ceph.com/issues/27217>`_, `pr#28736 <https://github.com/ceph/ceph/pull/28736>`_, Casey Bodley) -* rgw: TempURL should not allow PUTs with the X-Object-Manifest (`issue#20797 <http://tracker.ceph.com/issues/20797>`_, `pr#28712 <https://github.com/ceph/ceph/pull/28712>`_, Radoslaw Zarzynski) -* rgw: the Multi-Object Delete operation of S3 API wrongly handles the Code response element (`issue#18241 <http://tracker.ceph.com/issues/18241>`_, `pr#28737 <https://github.com/ceph/ceph/pull/28737>`_, Radoslaw Zarzynski) -* rocksdb: rocksdb_rmrange related improvements (`pr#29439 <https://github.com/ceph/ceph/pull/29439>`_, Zengran Zhang, Sage Weil) -* rocksdb: Updated to v6.1.2 (`pr#29440 <https://github.com/ceph/ceph/pull/29440>`_, Mark Nelson) -* tools: ceph-kvstore-tool: print db stats (`pr#28810 <https://github.com/ceph/ceph/pull/28810>`_, Igor Fedotov) - - -v14.2.2 Nautilus -================ - -This is the second bug fix release of Ceph Nautilus release series. We recommend -all Nautilus users upgrade to this release. For upgrading from older releases of -ceph, general guidelines for upgrade to nautilus must be followed -:ref:`nautilus-old-upgrade`. - -Notable Changes ---------------- - -* The no{up,down,in,out} related commands have been revamped. - There are now 2 ways to set the no{up,down,in,out} flags: - the old 'ceph osd [un]set <flag>' command, which sets cluster-wide flags; - and the new 'ceph osd [un]set-group <flags> <who>' command, - which sets flags in batch at the granularity of any crush node, - or device class. - -* radosgw-admin introduces two subcommands that allow the - managing of expire-stale objects that might be left behind after a - bucket reshard in earlier versions of RGW. One subcommand lists such - objects and the other deletes them. Read the troubleshooting section - of the dynamic resharding docs for details. - -* Earlier Nautilus releases (14.2.1 and 14.2.0) have an issue where - deploying a single new (Nautilus) BlueStore OSD on an upgraded - cluster (i.e. one that was originally deployed pre-Nautilus) breaks - the pool utilization stats reported by ``ceph df``. Until all OSDs - have been reprovisioned or updated (via ``ceph-bluestore-tool - repair``), the pool stats will show values that are lower than the - true value. This is resolved in 14.2.2, such that the cluster only - switches to using the more accurate per-pool stats after *all* OSDs - are 14.2.2 (or later), are BlueStore, and (if they were created - prior to Nautilus) have been updated via the ``repair`` function. - -* The default value for `mon_crush_min_required_version` has been - changed from `firefly` to `hammer`, which means the cluster will - issue a health warning if your CRUSH tunables are older than hammer. - There is generally a small (but non-zero) amount of data that will - move around by making the switch to hammer tunables; for more information, - see :ref:`crush-map-tunables`. - - If possible, we recommend that you set the oldest allowed client to `hammer` - or later. You can tell what the current oldest allowed client is with:: - - ceph osd dump | grep min_compat_client - - If the current value is older than hammer, you can tell whether it - is safe to make this change by verifying that there are no clients - older than hammer current connected to the cluster with:: - - ceph features - - The newer `straw2` CRUSH bucket type was introduced in hammer, and - ensuring that all clients are hammer or newer allows new features - only supported for `straw2` buckets to be used, including the - `crush-compat` mode for the :ref:`balancer`. - -Changelog ---------- - -* bluestore: backport more bluestore alerts (`pr#27645 <https://github.com/ceph/ceph/pull/27645>`_, Sage Weil, Igor Fedotov) -* bluestore: call fault_range prior to looking for blob to reuse (`pr#27525 <https://github.com/ceph/ceph/pull/27525>`_, Igor Fedotov) -* bluestore: correctly measure deferred writes into new blobs (`issue#38816 <http://tracker.ceph.com/issues/38816>`_, `pr#27819 <https://github.com/ceph/ceph/pull/27819>`_, Sage Weil) -* bluestore: dump before "no-spanning blob id" abort (`pr#28028 <https://github.com/ceph/ceph/pull/28028>`_, Igor Fedotov) -* bluestore: fix for FreeBSD iocb structure (`issue#39612 <http://tracker.ceph.com/issues/39612>`_, `pr#28007 <https://github.com/ceph/ceph/pull/28007>`_, Willem Jan Withagen) -* bluestore: fix missing discard in BlueStore::_kv_sync_thread (`issue#39672 <http://tracker.ceph.com/issues/39672>`_, `pr#28258 <https://github.com/ceph/ceph/pull/28258>`_, Junhui Tang) -* bluestore: fix out-of-bound access in bmap allocator (`pr#27740 <https://github.com/ceph/ceph/pull/27740>`_, Igor Fedotov) -* bluestore: fix duplicate allocations in bmap allocator (`issue#40080 <http://tracker.ceph.com/issues/40080>`_, `pr#28646 <https://github.com/ceph/ceph/pull/28646>`_, Igor Fedotov) -* build/ops: Ceph RPM build fails on openSUSE Tumbleweed with GCC 9 (`issue#40067 <http://tracker.ceph.com/issues/40067>`_, `issue#39974 <http://tracker.ceph.com/issues/39974>`_, `pr#28299 <https://github.com/ceph/ceph/pull/28299>`_, Martin Liška) -* build/ops: cmake: Fix build against ncurses with separate libtinfo (`pr#27532 <https://github.com/ceph/ceph/pull/27532>`_, Lars Wendler) -* build/ops: cmake: set empty-string RPATH for ceph-osd (`issue#40301 <http://tracker.ceph.com/issues/40301>`_, `issue#40295 <http://tracker.ceph.com/issues/40295>`_, `pr#28516 <https://github.com/ceph/ceph/pull/28516>`_, Nathan Cutler) -* build/ops: do_cmake.sh: source not found (`issue#39981 <http://tracker.ceph.com/issues/39981>`_, `issue#40003 <http://tracker.ceph.com/issues/40003>`_, `pr#28215 <https://github.com/ceph/ceph/pull/28215>`_, Nathan Cutler) -* build/ops: python3 pybind RPMs do not replace their python2 counterparts on upgrade even though they should (`issue#40099 <http://tracker.ceph.com/issues/40099>`_, `issue#40232 <http://tracker.ceph.com/issues/40232>`_, `pr#28469 <https://github.com/ceph/ceph/pull/28469>`_, Nathan Cutler) -* build/ops: rpm: install grafana dashboards world readable (`pr#28392 <https://github.com/ceph/ceph/pull/28392>`_, Jan Fajerski) -* build/ops: selinux: Update the policy for RHEL8 (`pr#28511 <https://github.com/ceph/ceph/pull/28511>`_, Boris Ranto) -* ceph-volume: add utility functions (`pr#27791 <https://github.com/ceph/ceph/pull/27791>`_, Mohamad Gebai) -* ceph-volume: broken assertion errors after pytest changes (`pr#28925 <https://github.com/ceph/ceph/pull/28925>`_, Alfredo Deza) -* ceph-volume: look for rotational data in lsblk (`pr#27723 <https://github.com/ceph/ceph/pull/27723>`_, Andrew Schoen) -* ceph-volume: tests add a sleep in tox for slow OSDs after booting (`pr#28924 <https://github.com/ceph/ceph/pull/28924>`_, Alfredo Deza) -* ceph-volume: use the Device.rotational property instead of sys_api (`pr#29028 <https://github.com/ceph/ceph/pull/29028>`_, Andrew Schoen) -* cephfs-shell: Revert "cephfs.pyx: add py3 compatibility (`pr#28641 <https://github.com/ceph/ceph/pull/28641>`_, Varsha Rao) -* cephfs-shell: ls command produces error: no colorize attribute found error (`issue#39376 <http://tracker.ceph.com/issues/39376>`_, `issue#39378 <http://tracker.ceph.com/issues/39378>`_, `issue#38740 <http://tracker.ceph.com/issues/38740>`_, `issue#39379 <http://tracker.ceph.com/issues/39379>`_, `issue#39197 <http://tracker.ceph.com/issues/39197>`_, `issue#39377 <http://tracker.ceph.com/issues/39377>`_, `pr#27677 <https://github.com/ceph/ceph/pull/27677>`_, Milind Changire, Varsha Rao) -* cephfs-shell: misc. cephfs-shell backports (`issue#40314 <http://tracker.ceph.com/issues/40314>`_, `issue#40471 <http://tracker.ceph.com/issues/40471>`_, `issue#40418 <http://tracker.ceph.com/issues/40418>`_, `issue#40469 <http://tracker.ceph.com/issues/40469>`_, `issue#40313 <http://tracker.ceph.com/issues/40313>`_, `issue#39937 <http://tracker.ceph.com/issues/39937>`_, `issue#39678 <http://tracker.ceph.com/issues/39678>`_, `issue#40244 <http://tracker.ceph.com/issues/40244>`_, `issue#39404 <http://tracker.ceph.com/issues/39404>`_, `issue#40243 <http://tracker.ceph.com/issues/40243>`_, `issue#39165 <http://tracker.ceph.com/issues/39165>`_, `issue#40470 <http://tracker.ceph.com/issues/40470>`_, `issue#40455 <http://tracker.ceph.com/issues/40455>`_, `issue#39936 <http://tracker.ceph.com/issues/39936>`_, `issue#40217 <http://tracker.ceph.com/issues/40217>`_, `pr#28681 <https://github.com/ceph/ceph/pull/28681>`_, Patrick Donnelly, Varsha Rao, Milind Changire) -* cephfs-shell: mkdir error for relative path (`issue#39960 <http://tracker.ceph.com/issues/39960>`_, `pr#28616 <https://github.com/ceph/ceph/pull/28616>`_, Varsha Rao) -* cephfs: FSAL_CEPH assertion failed in Client::_lookup_name: "parent->is_dir() (`issue#40085 <http://tracker.ceph.com/issues/40085>`_, `issue#40161 <http://tracker.ceph.com/issues/40161>`_, `pr#28612 <https://github.com/ceph/ceph/pull/28612>`_, Jeff Layton) -* cephfs: ceph_volume_client: Too many arguments for "WriteOpCtx (`issue#39050 <http://tracker.ceph.com/issues/39050>`_, `issue#38946 <http://tracker.ceph.com/issues/38946>`_, `pr#27893 <https://github.com/ceph/ceph/pull/27893>`_, Ramana Raja) -* cephfs: client: ceph.dir.rctime xattr value incorrectly prefixes 09 to the nanoseconds component (`issue#40167 <http://tracker.ceph.com/issues/40167>`_, `pr#28500 <https://github.com/ceph/ceph/pull/28500>`_, David Disseldorp) -* cephfs: client: fix "ceph.snap.btime" vxattr value (`issue#40169 <http://tracker.ceph.com/issues/40169>`_, `pr#28499 <https://github.com/ceph/ceph/pull/28499>`_, David Disseldorp) -* cephfs: client: fix fuse client hang because its bad session PipeConnection (`issue#39686 <http://tracker.ceph.com/issues/39686>`_, `issue#39305 <http://tracker.ceph.com/issues/39305>`_, `pr#28375 <https://github.com/ceph/ceph/pull/28375>`_, Guan yunfei) -* cephfs: kclient: nofail option not supported (`issue#39232 <http://tracker.ceph.com/issues/39232>`_, `pr#27851 <https://github.com/ceph/ceph/pull/27851>`_, Kenneth Waegeman) -* cephfs: mds: Expose CephFS snapshot creation time to clients (`issue#39471 <http://tracker.ceph.com/issues/39471>`_, `pr#27901 <https://github.com/ceph/ceph/pull/27901>`_, David Disseldorp) -* cephfs: mds: MDSTableServer.cc: 83: FAILED assert(version == tid) (`issue#39211 <http://tracker.ceph.com/issues/39211>`_, `issue#38835 <http://tracker.ceph.com/issues/38835>`_, `pr#27853 <https://github.com/ceph/ceph/pull/27853>`_, "Yan, Zheng") -* cephfs: mds: avoid sending too many osd requests at once after mds restarts (`issue#40028 <http://tracker.ceph.com/issues/40028>`_, `issue#40040 <http://tracker.ceph.com/issues/40040>`_, `pr#28582 <https://github.com/ceph/ceph/pull/28582>`_, simon gao) -* cephfs: mds: behind on trimming and "[dentry] was purgeable but no longer is! (`issue#39222 <http://tracker.ceph.com/issues/39222>`_, `issue#38679 <http://tracker.ceph.com/issues/38679>`_, `pr#27879 <https://github.com/ceph/ceph/pull/27879>`_, "Yan, Zheng") -* cephfs: mds: better output of 'ceph health detail (`issue#39266 <http://tracker.ceph.com/issues/39266>`_, `pr#27846 <https://github.com/ceph/ceph/pull/27846>`_, Shen Hang') -* cephfs: mds: check dir fragment to split dir if mkdir makes it oversized (`issue#39690 <http://tracker.ceph.com/issues/39690>`_, `pr#28394 <https://github.com/ceph/ceph/pull/28394>`_, Erqi Chen) -* cephfs: mds: check directory split after rename (`issue#39199 <http://tracker.ceph.com/issues/39199>`_, `issue#38994 <http://tracker.ceph.com/issues/38994>`_, `pr#27736 <https://github.com/ceph/ceph/pull/27736>`_, Shen Hang) -* cephfs: mds: drop reconnect message from non-existent session (`issue#39026 <http://tracker.ceph.com/issues/39026>`_, `issue#39192 <http://tracker.ceph.com/issues/39192>`_, `pr#27714 <https://github.com/ceph/ceph/pull/27714>`_, Shen Hang) -* cephfs: mds: fail to resolve snapshot name contains '_' (`issue#39473 <http://tracker.ceph.com/issues/39473>`_, `pr#27849 <https://github.com/ceph/ceph/pull/27849>`_, "Yan, Zheng') -* cephfs: mds: fix 'is session in blacklist' check in Server::apply_blacklist() (`issue#40236 <http://tracker.ceph.com/issues/40236>`_, `issue#40061 <http://tracker.ceph.com/issues/40061>`_, `pr#28618 <https://github.com/ceph/ceph/pull/28618>`_, "Yan, Zheng') -* cephfs: mds: fix corner case of replaying open sessions (`pr#28580 <https://github.com/ceph/ceph/pull/28580>`_, "Yan, Zheng") -* cephfs: mds: high debug logging with many subtrees is slow (`issue#38876 <http://tracker.ceph.com/issues/38876>`_, `pr#27892 <https://github.com/ceph/ceph/pull/27892>`_, Rishabh Dave) -* cephfs: mds: initialize cap_revoke_eviction_timeout with conf (`issue#39209 <http://tracker.ceph.com/issues/39209>`_, `issue#38844 <http://tracker.ceph.com/issues/38844>`_, `pr#27842 <https://github.com/ceph/ceph/pull/27842>`_, simon gao) -* cephfs: mds: output lock state in format dump (`issue#39645 <http://tracker.ceph.com/issues/39645>`_, `issue#39670 <http://tracker.ceph.com/issues/39670>`_, `pr#28233 <https://github.com/ceph/ceph/pull/28233>`_, Zhi Zhang) -* cephfs: mds: reset heartbeat during long-running loops in recovery (`issue#40223 <http://tracker.ceph.com/issues/40223>`_, `pr#28611 <https://github.com/ceph/ceph/pull/28611>`_, "Yan, Zheng") -* cephfs: mds: there is an assertion when calling Beacon::shutdown() (`issue#39214 <http://tracker.ceph.com/issues/39214>`_, `issue#38822 <http://tracker.ceph.com/issues/38822>`_, `pr#27852 <https://github.com/ceph/ceph/pull/27852>`_, huanwen ren) -* cephfs: mount: key parsing fail when doing a remount (`issue#40164 <http://tracker.ceph.com/issues/40164>`_, `pr#28610 <https://github.com/ceph/ceph/pull/28610>`_, Luis Henriques) -* cephfs: pybind: added lseek() (`pr#28333 <https://github.com/ceph/ceph/pull/28333>`_, Xiaowei Chu) -* common/assert: include ceph_abort_msg(arg) arg in log output (`pr#27824 <https://github.com/ceph/ceph/pull/27824>`_, Sage Weil) -* common/options: annotate some options; enable some runtime updates (`pr#27818 <https://github.com/ceph/ceph/pull/27818>`_, Sage Weil) -* common/options: update mon_crush_min_required_version=hammer (`pr#27625 <https://github.com/ceph/ceph/pull/27625>`_, Sage Weil) -* common/util: handle long lines in /proc/cpuinfo (`issue#38296 <http://tracker.ceph.com/issues/38296>`_, `issue#39476 <http://tracker.ceph.com/issues/39476>`_, `pr#28141 <https://github.com/ceph/ceph/pull/28141>`_, Sage Weil) -* common: Clang requires a default constructor, but it can be empty (`issue#39561 <http://tracker.ceph.com/issues/39561>`_, `issue#39573 <http://tracker.ceph.com/issues/39573>`_, `pr#28131 <https://github.com/ceph/ceph/pull/28131>`_, Willem Jan Withagen) -* common: fix parse_env nullptr deref (`pr#28382 <https://github.com/ceph/ceph/pull/28382>`_, Patrick Donnelly) -* common: make cluster_network work (`issue#39671 <http://tracker.ceph.com/issues/39671>`_, `pr#28248 <https://github.com/ceph/ceph/pull/28248>`_, Jianpeng Ma) -* common: parse ISO 8601 datetime format (`issue#40087 <http://tracker.ceph.com/issues/40087>`_, `pr#28325 <https://github.com/ceph/ceph/pull/28325>`_, Sage Weil) -* core: Give recovery for inactive PGs a higher priority (`issue#39504 <http://tracker.ceph.com/issues/39504>`_, `issue#38195 <http://tracker.ceph.com/issues/38195>`_, `pr#27854 <https://github.com/ceph/ceph/pull/27854>`_, David Zafman) -* core: mon,osd: add no{out,down,in,out} flags on CRUSH nodes (`pr#27623 <https://github.com/ceph/ceph/pull/27623>`_, xie xingguo, Sage Weil) -* core: mon/Elector: format mon_release correctly (`issue#39419 <http://tracker.ceph.com/issues/39419>`_, `pr#27771 <https://github.com/ceph/ceph/pull/27771>`_, Sage Weil) -* core: mon/Monitor: allow probe if MMonProbe::mon_release == 0 (`issue#38850 <http://tracker.ceph.com/issues/38850>`_, `pr#28262 <https://github.com/ceph/ceph/pull/28262>`_, Sage Weil) -* core: mon: fix off-by-one rendering progress bar (`pr#28398 <https://github.com/ceph/ceph/pull/28398>`_, Sage Weil) -* core: mon: use per-pool stats only when all OSDs are reporting (`pr#29032 <https://github.com/ceph/ceph/pull/29032>`_, Sage Weil) -* core: monitoring: Provide a base set of Prometheus alert manager rules that notify the user about common Ceph error conditions (`issue#39540 <http://tracker.ceph.com/issues/39540>`_, `pr#27998 <https://github.com/ceph/ceph/pull/27998>`_, Jan Fajerski) -* core: monitoring: update Grafana dashboards (`issue#39652 <http://tracker.ceph.com/issues/39652>`_, `issue#40006 <http://tracker.ceph.com/issues/40006>`_, `issue#39971 <http://tracker.ceph.com/issues/39971>`_, `issue#39932 <http://tracker.ceph.com/issues/39932>`_, `pr#28101 <https://github.com/ceph/ceph/pull/28101>`_, Kiefer Chang, Jan Fajerski) -* core: osd/OSD.cc: make osd bench description consistent with parameters (`issue#39006 <http://tracker.ceph.com/issues/39006>`_, `issue#39375 <http://tracker.ceph.com/issues/39375>`_, `pr#28035 <https://github.com/ceph/ceph/pull/28035>`_, Neha Ojha) -* core: osd/OSDMap: Replace get_out_osds with get_out_existing_osds (`issue#39421 <http://tracker.ceph.com/issues/39421>`_, `issue#39154 <http://tracker.ceph.com/issues/39154>`_, `pr#28072 <https://github.com/ceph/ceph/pull/28072>`_, Brad Hubbard) -* core: osd/PG: discover missing objects when an OSD peers and PG is degraded (`pr#27744 <https://github.com/ceph/ceph/pull/27744>`_, Jonas Jelten) -* core: osd/PG: do not use approx_missing_objects pre-nautilus (`issue#39512 <http://tracker.ceph.com/issues/39512>`_, `pr#28160 <https://github.com/ceph/ceph/pull/28160>`_, Neha Ojha) -* core: osd/PG: fix last_complete re-calculation on splitting (`issue#39539 <http://tracker.ceph.com/issues/39539>`_, `issue#26958 <http://tracker.ceph.com/issues/26958>`_, `pr#28219 <https://github.com/ceph/ceph/pull/28219>`_, xie xingguo) -* core: osd/PG: skip rollforward when !transaction_applied during append_log() (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `issue#38881 <http://tracker.ceph.com/issues/38881>`_, `pr#27654 <https://github.com/ceph/ceph/pull/27654>`_, Neha Ojha) -* core: osd/PGLog: preserve original_crt to check rollbackability (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `issue#39043 <http://tracker.ceph.com/issues/39043>`_, `pr#27632 <https://github.com/ceph/ceph/pull/27632>`_, Neha Ojha) -* core: osd: Don't evict after a flush if intersecting scrub range (`issue#38840 <http://tracker.ceph.com/issues/38840>`_, `issue#39519 <http://tracker.ceph.com/issues/39519>`_, `pr#28205 <https://github.com/ceph/ceph/pull/28205>`_, David Zafman') -* core: osd: Don't include user changeable flag in snaptrim related assert (`issue#39699 <http://tracker.ceph.com/issues/39699>`_, `issue#38124 <http://tracker.ceph.com/issues/38124>`_, `pr#28203 <https://github.com/ceph/ceph/pull/28203>`_, David Zafman') -* core: osd: FAILED ceph_assert(attrs || !pg_log.get_missing().is_missing(soid) || (it_objects != pg_log.get_log().objects.end() && it_objects->second->op == pg_log_entry_t::LOST_REVERT)) in PrimaryLogPG::get_object_context() (`issue#38931 <http://tracker.ceph.com/issues/38931>`_, `issue#39219 <http://tracker.ceph.com/issues/39219>`_, `issue#38784 <http://tracker.ceph.com/issues/38784>`_, `pr#27839 <https://github.com/ceph/ceph/pull/27839>`_, xie xingguo) -* core: osd: Include dups in copy_after() and copy_up_to() (`issue#39304 <http://tracker.ceph.com/issues/39304>`_, `pr#28088 <https://github.com/ceph/ceph/pull/28088>`_, David Zafman) -* core: osd: Increase log level of messages which unnecessarily fill up logs (`pr#27687 <https://github.com/ceph/ceph/pull/27687>`_, David Zafman) -* core: osd: Output Base64 encoding of CRC header if binary data present (`issue#39738 <http://tracker.ceph.com/issues/39738>`_, `pr#28504 <https://github.com/ceph/ceph/pull/28504>`_, David Zafman) -* core: osd: Primary won't automatically repair replica on pulling error (`issue#39101 <http://tracker.ceph.com/issues/39101>`_, `issue#39184 <http://tracker.ceph.com/issues/39184>`_, `pr#27711 <https://github.com/ceph/ceph/pull/27711>`_, xie xingguo, David Zafman') -* core: osd: revamp {noup,nodown,noin,noout} related commands (`pr#28400 <https://github.com/ceph/ceph/pull/28400>`_, xie xingguo) -* core: osd: shutdown recovery_request_timer earlier (`issue#39205 <http://tracker.ceph.com/issues/39205>`_, `pr#27803 <https://github.com/ceph/ceph/pull/27803>`_, Zengran Zhang) -* core: osd: take heartbeat_lock when calling heartbeat() (`issue#39514 <http://tracker.ceph.com/issues/39514>`_, `issue#39439 <http://tracker.ceph.com/issues/39439>`_, `pr#28164 <https://github.com/ceph/ceph/pull/28164>`_, Sage Weil) -* doc: add LAZYIO (`issue#39051 <http://tracker.ceph.com/issues/39051>`_, `issue#38729 <http://tracker.ceph.com/issues/38729>`_, `pr#27899 <https://github.com/ceph/ceph/pull/27899>`_, "Yan, Zheng") -* doc: add documentation for "fs set min_compat_client" (`issue#39130 <http://tracker.ceph.com/issues/39130>`_, `issue#39176 <http://tracker.ceph.com/issues/39176>`_, `pr#27900 <https://github.com/ceph/ceph/pull/27900>`_, Patrick Donnelly) -* doc: cleanup HTTP Frontends documentation (`issue#38874 <http://tracker.ceph.com/issues/38874>`_, `pr#27922 <https://github.com/ceph/ceph/pull/27922>`_, Casey Bodley) -* doc: dashboard documentation changes (`pr#27642 <https://github.com/ceph/ceph/pull/27642>`_, Tatjana Dehler, Lenz Grimmer) -* doc: orchestrator_cli: Rook orch supports mon update (`issue#39169 <http://tracker.ceph.com/issues/39169>`_, `issue#39137 <http://tracker.ceph.com/issues/39137>`_, `pr#27488 <https://github.com/ceph/ceph/pull/27488>`_, Sebastian Wagner) -* doc: osd_internals/async_recovery: update cost calculation (`pr#28046 <https://github.com/ceph/ceph/pull/28046>`_, Neha Ojha) -* doc: rados/operations/devices: document device prediction (`pr#27752 <https://github.com/ceph/ceph/pull/27752>`_, Sage Weil) -* mgr/ActivePyModules: handle_command - fix broken lock (`issue#39235 <http://tracker.ceph.com/issues/39235>`_, `issue#39308 <http://tracker.ceph.com/issues/39308>`_, `pr#27939 <https://github.com/ceph/ceph/pull/27939>`_, xie xingguo) -* mgr/BaseMgrModule: run MonCommandCompletion on the finisher (`issue#39397 <http://tracker.ceph.com/issues/39397>`_, `issue#39335 <http://tracker.ceph.com/issues/39335>`_, `pr#27699 <https://github.com/ceph/ceph/pull/27699>`_, Sage Weil) -* mgr/ansible: Host ls implementation (`issue#39559 <http://tracker.ceph.com/issues/39559>`_, `pr#27919 <https://github.com/ceph/ceph/pull/27919>`_, Juan Miguel Olmo Mart\xc3\xadnez) -* mgr/balancer: various compat weight-set fixes (`pr#28279 <https://github.com/ceph/ceph/pull/28279>`_, xie xingguo) -* mgr/dashboard: Add custom dialogue for configuring PG scrub parameters (`issue#40059 <http://tracker.ceph.com/issues/40059>`_, `pr#28555 <https://github.com/ceph/ceph/pull/28555>`_, Tatjana Dehler) -* mgr/dashboard: Admin resource not honored (`issue#39338 <http://tracker.ceph.com/issues/39338>`_, `issue#39467 <http://tracker.ceph.com/issues/39467>`_, `pr#27868 <https://github.com/ceph/ceph/pull/27868>`_, Wido den Hollander) -* mgr/dashboard: Angular is creating multiple instances of the same service (`issue#39996 <http://tracker.ceph.com/issues/39996>`_, `issue#40075 <http://tracker.ceph.com/issues/40075>`_, `pr#28312 <https://github.com/ceph/ceph/pull/28312>`_, Tiago Melo) -* mgr/dashboard: Avoid merge conflicts in messages.xlf by auto-generating it at build time? (`issue#39658 <http://tracker.ceph.com/issues/39658>`_, `pr#28178 <https://github.com/ceph/ceph/pull/28178>`_, Sebastian Krah) -* mgr/dashboard: Display correct dialog title (`pr#28189 <https://github.com/ceph/ceph/pull/28189>`_, Volker Theile) -* mgr/dashboard: Error creating NFS client without squash (`issue#40074 <http://tracker.ceph.com/issues/40074>`_, `pr#28311 <https://github.com/ceph/ceph/pull/28311>`_, Tiago Melo) -* mgr/dashboard: KV-table transforms dates through pipe (`issue#39558 <http://tracker.ceph.com/issues/39558>`_, `pr#28021 <https://github.com/ceph/ceph/pull/28021>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Localization for date picker module (`issue#39371 <http://tracker.ceph.com/issues/39371>`_, `pr#27673 <https://github.com/ceph/ceph/pull/27673>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Manager should complain about wrong dashboard certificate (`issue#39346 <http://tracker.ceph.com/issues/39346>`_, `pr#27742 <https://github.com/ceph/ceph/pull/27742>`_, Volker Theile) -* mgr/dashboard: NFS clients information is not displayed in the details view (`issue#40057 <http://tracker.ceph.com/issues/40057>`_, `pr#28318 <https://github.com/ceph/ceph/pull/28318>`_, Tiago Melo) -* mgr/dashboard: NFS export creation: Add more info to the validation message of the field Pseudo (`issue#39975 <http://tracker.ceph.com/issues/39975>`_, `issue#39327 <http://tracker.ceph.com/issues/39327>`_, `pr#28320 <https://github.com/ceph/ceph/pull/28320>`_, Tiago Melo) -* mgr/dashboard: Only one root node is shown in the crush map viewer (`issue#39647 <http://tracker.ceph.com/issues/39647>`_, `issue#40077 <http://tracker.ceph.com/issues/40077>`_, `pr#28316 <https://github.com/ceph/ceph/pull/28316>`_, Tiago Melo) -* mgr/dashboard: Push Grafana dashboards on startup (`pr#28635 <https://github.com/ceph/ceph/pull/28635>`_, Zack Cerza) -* mgr/dashboard: Queue notifications as default (`issue#39560 <http://tracker.ceph.com/issues/39560>`_, `pr#28022 <https://github.com/ceph/ceph/pull/28022>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: RBD snapshot name suggestion with local time suffix (`issue#39534 <http://tracker.ceph.com/issues/39534>`_, `pr#27890 <https://github.com/ceph/ceph/pull/27890>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Reduce the number of renders on the tables (`issue#39944 <http://tracker.ceph.com/issues/39944>`_, `issue#40076 <http://tracker.ceph.com/issues/40076>`_, `pr#28315 <https://github.com/ceph/ceph/pull/28315>`_, Tiago Melo) -* mgr/dashboard: Some validations are not updated and prevent the submission of a form (`issue#40030 <http://tracker.ceph.com/issues/40030>`_, `pr#28319 <https://github.com/ceph/ceph/pull/28319>`_, Tiago Melo) -* mgr/dashboard: Unable to see tcmu-runner perf counters (`issue#39988 <http://tracker.ceph.com/issues/39988>`_, `pr#28191 <https://github.com/ceph/ceph/pull/28191>`_, Ricardo Marques) -* mgr/dashboard: Unify the look of dashboard charts (`issue#39384 <http://tracker.ceph.com/issues/39384>`_, `issue#39961 <http://tracker.ceph.com/issues/39961>`_, `pr#28175 <https://github.com/ceph/ceph/pull/28175>`_, Tiago Melo) -* mgr/dashboard: Validate if any client belongs to more than one group (`issue#39036 <http://tracker.ceph.com/issues/39036>`_, `issue#39454 <http://tracker.ceph.com/issues/39454>`_, `pr#27760 <https://github.com/ceph/ceph/pull/27760>`_, Tiago Melo) -* mgr/dashboard: code documentation (`issue#39345 <http://tracker.ceph.com/issues/39345>`_, `issue#36243 <http://tracker.ceph.com/issues/36243>`_, `pr#27746 <https://github.com/ceph/ceph/pull/27746>`_, Ernesto Puerta) -* mgr/dashboard: iSCSI GET requests should not be logged (`pr#28024 <https://github.com/ceph/ceph/pull/28024>`_, Ricardo Marques) -* mgr/dashboard: iSCSI form does not support IPv6 (`pr#28026 <https://github.com/ceph/ceph/pull/28026>`_, Ricardo Marques) -* mgr/dashboard: iSCSI form is showing a warning (`issue#39452 <http://tracker.ceph.com/issues/39452>`_, `issue#39324 <http://tracker.ceph.com/issues/39324>`_, `pr#27758 <https://github.com/ceph/ceph/pull/27758>`_, Tiago Melo) -* mgr/dashboard: iSCSI should allow exporting an RBD image with Journaling enabled (`pr#28011 <https://github.com/ceph/ceph/pull/28011>`_, Ricardo Marques) -* mgr/dashboard: inconsistent result when editing a RBD image's features (`issue#39993 <http://tracker.ceph.com/issues/39993>`_, `issue#39933 <http://tracker.ceph.com/issues/39933>`_, `pr#28218 <https://github.com/ceph/ceph/pull/28218>`_, Kiefer Chang') -* mgr/dashboard: incorrect help message for minimum blob size (`issue#39624 <http://tracker.ceph.com/issues/39624>`_, `issue#39664 <http://tracker.ceph.com/issues/39664>`_, `pr#28062 <https://github.com/ceph/ceph/pull/28062>`_, Kiefer Chang) -* mgr/dashboard: local variable 'cluster_id' referenced before assignment error when trying to list NFS Ganesha daemons (`issue#40031 <http://tracker.ceph.com/issues/40031>`_, `pr#28261 <https://github.com/ceph/ceph/pull/28261>`_, Nur Faizin') -* mgr/dashboard: make auth token work with UTC times only (`issue#39524 <http://tracker.ceph.com/issues/39524>`_, `issue#39300 <http://tracker.ceph.com/issues/39300>`_, `pr#27942 <https://github.com/ceph/ceph/pull/27942>`_, Ricardo Dias) -* mgr/dashboard: openssl exception when verifying certificates of HTTPS requests (`issue#39962 <http://tracker.ceph.com/issues/39962>`_, `issue#39628 <http://tracker.ceph.com/issues/39628>`_, `pr#28163 <https://github.com/ceph/ceph/pull/28163>`_, Ricardo Dias) -* mgr/dashboard: orchestrator mgr modules assert failure on iscsi service request (`issue#40037 <http://tracker.ceph.com/issues/40037>`_, `pr#28552 <https://github.com/ceph/ceph/pull/28552>`_, Sebastian Wagner) -* mgr/dashboard: show degraded/misplaced/unfound objects (`pr#28584 <https://github.com/ceph/ceph/pull/28584>`_, Alfonso Mart\xc3\xadnez) -* mgr/orchestrator: Remove "(add|test|remove)_stateful_service_rule (`issue#38808 <http://tracker.ceph.com/issues/38808>`_, `pr#27043 <https://github.com/ceph/ceph/pull/27043>`_, Sebastian Wagner) -* mgr/orchestrator: add progress events to all orchestrators (`pr#28040 <https://github.com/ceph/ceph/pull/28040>`_, Sebastian Wagner) -* mgr/progress: behave if pgs disappear (due to a racing pg merge) (`issue#38157 <http://tracker.ceph.com/issues/38157>`_, `issue#39344 <http://tracker.ceph.com/issues/39344>`_, `pr#27608 <https://github.com/ceph/ceph/pull/27608>`_, Sage Weil) -* mgr/prometheus: replace whitespaces in metrics' names (`pr#27886 <https://github.com/ceph/ceph/pull/27886>`_, Alfonso Mart\xc3\xadnez') -* mgr/rook: Added missing rgw daemons in service ls (`issue#39171 <http://tracker.ceph.com/issues/39171>`_, `issue#39312 <http://tracker.ceph.com/issues/39312>`_, `pr#27864 <https://github.com/ceph/ceph/pull/27864>`_, Sebastian Wagner) -* mgr/rook: Fix RGW creation (`issue#39158 <http://tracker.ceph.com/issues/39158>`_, `issue#39313 <http://tracker.ceph.com/issues/39313>`_, `pr#27863 <https://github.com/ceph/ceph/pull/27863>`_, Sebastian Wagner) -* mgr/rook: Remove support for Rook older than v0.9 (`issue#39356 <http://tracker.ceph.com/issues/39356>`_, `issue#39278 <http://tracker.ceph.com/issues/39278>`_, `pr#27862 <https://github.com/ceph/ceph/pull/27862>`_, Sebastian Wagner) -* mgr/test_orchestrator: AttributeError: 'TestWriteCompletion' object has no attribute 'id (`issue#39536 <http://tracker.ceph.com/issues/39536>`_, `pr#27920 <https://github.com/ceph/ceph/pull/27920>`_, Sebastian Wagner') -* mgr/volumes: FS subvolumes enhancements (`issue#40429 <http://tracker.ceph.com/issues/40429>`_, `pr#28767 <https://github.com/ceph/ceph/pull/28767>`_, Ramana Raja) -* mgr/volumes: add CephFS subvolumes library (`issue#39750 <http://tracker.ceph.com/issues/39750>`_, `issue#40152 <http://tracker.ceph.com/issues/40152>`_, `issue#39949 <http://tracker.ceph.com/issues/39949>`_, `issue#40014 <http://tracker.ceph.com/issues/40014>`_, `issue#39610 <http://tracker.ceph.com/issues/39610>`_, `pr#28429 <https://github.com/ceph/ceph/pull/28429>`_, Sage Weil, Venky Shankar, Ramana Raja, Rishabh Dave) -* mgr/volumes: refactor volume module (`issue#40378 <http://tracker.ceph.com/issues/40378>`_, `issue#39969 <http://tracker.ceph.com/issues/39969>`_, `pr#28595 <https://github.com/ceph/ceph/pull/28595>`_, Venky Shankar) -* mgr: Update the restful module in nautilus (`pr#28291 <https://github.com/ceph/ceph/pull/28291>`_, Kefu Chai, Boris Ranto) -* mgr: deadlock (`issue#39040 <http://tracker.ceph.com/issues/39040>`_, `issue#39425 <http://tracker.ceph.com/issues/39425>`_, `pr#28098 <https://github.com/ceph/ceph/pull/28098>`_, xie xingguo) -* mgr: fix pgp_num adjustments (`issue#38626 <http://tracker.ceph.com/issues/38626>`_, `pr#27876 <https://github.com/ceph/ceph/pull/27876>`_, Sage Weil, Marius Schiffer) -* mgr: log an error if we can't find any modules to load (`issue#40090 <http://tracker.ceph.com/issues/40090>`_, `pr#28347 <https://github.com/ceph/ceph/pull/28347>`_, Tim Serong') -* monitoring: pybind/mgr: fix format for rbd-mirror prometheus metrics (`pr#28485 <https://github.com/ceph/ceph/pull/28485>`_, Mykola Golub) -* msg/async: connection race + winner fault can leave connection stuck at replacing foreve (`issue#39241 <http://tracker.ceph.com/issues/39241>`_, `issue#37499 <http://tracker.ceph.com/issues/37499>`_, `issue#39448 <http://tracker.ceph.com/issues/39448>`_, `issue#38493 <http://tracker.ceph.com/issues/38493>`_, `pr#27915 <https://github.com/ceph/ceph/pull/27915>`_, Jason Dillaman, xie xingguo) -* msg/async/ProtocolV[12]: add ms_learn_addr_from_peer (`pr#28589 <https://github.com/ceph/ceph/pull/28589>`_, Sage Weil) -* msg: output peer address when detecting bad CRCs (`issue#39367 <http://tracker.ceph.com/issues/39367>`_, `pr#27857 <https://github.com/ceph/ceph/pull/27857>`_, Greg Farnum) -* pybind: Add 'RBD_FEATURE_MIGRATING' to rbd.pyx (`issue#39609 <http://tracker.ceph.com/issues/39609>`_, `issue#39736 <http://tracker.ceph.com/issues/39736>`_, `pr#28482 <https://github.com/ceph/ceph/pull/28482>`_, Ricardo Marques') -* pybind: Rados.get_fsid() returning bytes in python3 (`issue#40192 <http://tracker.ceph.com/issues/40192>`_, `issue#38381 <http://tracker.ceph.com/issues/38381>`_, `pr#28476 <https://github.com/ceph/ceph/pull/28476>`_, Jason Dillaman) -* rbd: krbd: fix rbd map hang due to udev return subsystem unordered (`issue#39089 <http://tracker.ceph.com/issues/39089>`_, `issue#39315 <http://tracker.ceph.com/issues/39315>`_, `pr#28019 <https://github.com/ceph/ceph/pull/28019>`_, Zhi Zhang) -* rbd: librbd: async open/close should free ImageCtx before issuing callback (`issue#39428 <http://tracker.ceph.com/issues/39428>`_, `issue#39031 <http://tracker.ceph.com/issues/39031>`_, `pr#28121 <https://github.com/ceph/ceph/pull/28121>`_, Jason Dillaman) -* rbd: librbd: avoid dereferencing an empty container during deep-copy (`issue#40368 <http://tracker.ceph.com/issues/40368>`_, `issue#40379 <http://tracker.ceph.com/issues/40379>`_, `pr#28577 <https://github.com/ceph/ceph/pull/28577>`_, Jason Dillaman) -* rbd: librbd: do not allow to deep copy migrating image (`issue#39224 <http://tracker.ceph.com/issues/39224>`_, `pr#27882 <https://github.com/ceph/ceph/pull/27882>`_, Mykola Golub) -* rbd: librbd: fix issues with object-map/fast-diff feature interlock (`issue#39946 <http://tracker.ceph.com/issues/39946>`_, `issue#39521 <http://tracker.ceph.com/issues/39521>`_, `pr#28127 <https://github.com/ceph/ceph/pull/28127>`_, Jason Dillaman) -* rbd: librbd: fixed several race conditions related to copyup (`issue#39195 <http://tracker.ceph.com/issues/39195>`_, `issue#39021 <http://tracker.ceph.com/issues/39021>`_, `pr#28132 <https://github.com/ceph/ceph/pull/28132>`_, Jason Dillaman) -* rbd: librbd: make flush be queued by QOS throttler (`issue#38869 <http://tracker.ceph.com/issues/38869>`_, `pr#28120 <https://github.com/ceph/ceph/pull/28120>`_, Mykola Golub) -* rbd: librbd: re-add support for nautilus clients talking to jewel clusters (`issue#39450 <http://tracker.ceph.com/issues/39450>`_, `pr#27936 <https://github.com/ceph/ceph/pull/27936>`_, Jason Dillaman) -* rbd: librbd: support EC data pool images sparsify (`issue#39226 <http://tracker.ceph.com/issues/39226>`_, `pr#27903 <https://github.com/ceph/ceph/pull/27903>`_, Mykola Golub) -* rbd: rbd-mirror: clear out bufferlist prior to listing mirror images (`issue#39462 <http://tracker.ceph.com/issues/39462>`_, `issue#39407 <http://tracker.ceph.com/issues/39407>`_, `pr#28122 <https://github.com/ceph/ceph/pull/28122>`_, Jason Dillaman) -* rbd: rbd-mirror: image replayer should periodically flush IO and commit positions (`issue#39257 <http://tracker.ceph.com/issues/39257>`_, `issue#39288 <http://tracker.ceph.com/issues/39288>`_, `pr#27937 <https://github.com/ceph/ceph/pull/27937>`_, Jason Dillaman) -* rgw: Evaluating bucket policies also while reading permissions for an\xe2\x80\xa6 (`issue#38638 <http://tracker.ceph.com/issues/38638>`_, `issue#39273 <http://tracker.ceph.com/issues/39273>`_, `pr#27918 <https://github.com/ceph/ceph/pull/27918>`_, Pritha Srivastava) -* rgw: admin: handle delete_at attr in object stat output (`pr#27827 <https://github.com/ceph/ceph/pull/27827>`_, Abhishek Lekshmanan) -* rgw: beast: multiple v4 and v6 endpoints with the same port will cause failure (`issue#39746 <http://tracker.ceph.com/issues/39746>`_, `issue#39038 <http://tracker.ceph.com/issues/39038>`_, `pr#28541 <https://github.com/ceph/ceph/pull/28541>`_, Abhishek Lekshmanan) -* rgw: beast: set a default port for endpoints (`issue#39048 <http://tracker.ceph.com/issues/39048>`_, `issue#39000 <http://tracker.ceph.com/issues/39000>`_, `pr#27660 <https://github.com/ceph/ceph/pull/27660>`_, Abhishek Lekshmanan) -* rgw: bucket stats report mtime in UTC (`pr#27826 <https://github.com/ceph/ceph/pull/27826>`_, Alfonso Mart\xc3\xadnez, Casey Bodley) -* rgw: clean up some logging (`issue#39503 <http://tracker.ceph.com/issues/39503>`_, `pr#27953 <https://github.com/ceph/ceph/pull/27953>`_, J. Eric Ivancich) -* rgw: cloud sync module fails to sync multipart objects (`issue#39684 <http://tracker.ceph.com/issues/39684>`_, `pr#28064 <https://github.com/ceph/ceph/pull/28064>`_, Abhishek Lekshmanan) -* rgw: cloud sync module logs attrs in the log (`issue#39574 <http://tracker.ceph.com/issues/39574>`_, `pr#27954 <https://github.com/ceph/ceph/pull/27954>`_, Nathan Cutler) -* rgw: crypto: throw DigestException from Digest and HMAC (`issue#39676 <http://tracker.ceph.com/issues/39676>`_, `issue#39456 <http://tracker.ceph.com/issues/39456>`_, `pr#28309 <https://github.com/ceph/ceph/pull/28309>`_, Matt Benjamin) -* rgw: document CreateBucketConfiguration for s3 PUT Bucket request (`issue#39597 <http://tracker.ceph.com/issues/39597>`_, `issue#39601 <http://tracker.ceph.com/issues/39601>`_, `pr#28512 <https://github.com/ceph/ceph/pull/28512>`_, Casey Bodley) -* rgw: fix Multisite sync corruption (`pr#28383 <https://github.com/ceph/ceph/pull/28383>`_, Tianshan Qu, Casey Bodley, Xiaoxi CHEN) -* rgw: fix bucket may redundantly list keys after BI_PREFIX_CHAR (`issue#39984 <http://tracker.ceph.com/issues/39984>`_, `issue#40148 <http://tracker.ceph.com/issues/40148>`_, `pr#28410 <https://github.com/ceph/ceph/pull/28410>`_, Casey Bodley, Tianshan Qu) -* rgw: fix default_placement containing "/" when storage_class is standard (`issue#39745 <http://tracker.ceph.com/issues/39745>`_, `issue#39380 <http://tracker.ceph.com/issues/39380>`_, `pr#28538 <https://github.com/ceph/ceph/pull/28538>`_, mkogan1) -* rgw: inefficient unordered bucket listing (`issue#39410 <http://tracker.ceph.com/issues/39410>`_, `issue#39393 <http://tracker.ceph.com/issues/39393>`_, `pr#27924 <https://github.com/ceph/ceph/pull/27924>`_, Casey Bodley) -* rgw: librgw: unexpected crash when creating bucket (`issue#39575 <http://tracker.ceph.com/issues/39575>`_, `pr#27955 <https://github.com/ceph/ceph/pull/27955>`_, Tao CHEN) -* rgw: limit entries in remove_olh_pending_entries() (`issue#39178 <http://tracker.ceph.com/issues/39178>`_, `issue#39118 <http://tracker.ceph.com/issues/39118>`_, `pr#27664 <https://github.com/ceph/ceph/pull/27664>`_, Casey Bodley) -* rgw: list bucket with start marker and delimiter will miss next object with char '0' (`issue#40762 <http://tracker.ceph.com/issues/40762>`_, `issue#39989 <http://tracker.ceph.com/issues/39989>`_, `pr#29022 <https://github.com/ceph/ceph/pull/29022>`_, Tianshan Qu) -* rgw: multisite log trimming only checks peers that sync from us (`issue#39283 <http://tracker.ceph.com/issues/39283>`_, `pr#27814 <https://github.com/ceph/ceph/pull/27814>`_, Casey Bodley) -* rgw: multisite: add perf counters to data sync (`issue#38549 <http://tracker.ceph.com/issues/38549>`_, `issue#38918 <http://tracker.ceph.com/issues/38918>`_, `pr#27921 <https://github.com/ceph/ceph/pull/27921>`_, Abhishek Lekshmanan, Casey Bodley) -* rgw: multisite: mismatch of bucket creation times from List Buckets (`issue#39635 <http://tracker.ceph.com/issues/39635>`_, `issue#39735 <http://tracker.ceph.com/issues/39735>`_, `pr#28444 <https://github.com/ceph/ceph/pull/28444>`_, Casey Bodley) -* rgw: multisite: period pusher gets 403 Forbidden against other zonegroups (`issue#39287 <http://tracker.ceph.com/issues/39287>`_, `issue#39414 <http://tracker.ceph.com/issues/39414>`_, `pr#27952 <https://github.com/ceph/ceph/pull/27952>`_, Casey Bodley) -* rgw: race condition between resharding and ops waiting on resharding (`issue#39202 <http://tracker.ceph.com/issues/39202>`_, `pr#27800 <https://github.com/ceph/ceph/pull/27800>`_, J. Eric Ivancich) -* rgw: radosgw-admin: add tenant argument to reshard cancel (`issue#39018 <http://tracker.ceph.com/issues/39018>`_, `pr#27630 <https://github.com/ceph/ceph/pull/27630>`_, Abhishek Lekshmanan) -* rgw: rgw_file: save etag and acl info in setattr (`issue#39228 <http://tracker.ceph.com/issues/39228>`_, `pr#27904 <https://github.com/ceph/ceph/pull/27904>`_, Tao Chen) -* rgw: swift object expiry fails when a bucket reshards (`issue#39740 <http://tracker.ceph.com/issues/39740>`_, `pr#28537 <https://github.com/ceph/ceph/pull/28537>`_, Abhishek Lekshmanan) -* rgw: unittest_rgw_dmclock_scheduler does not need Boost_LIBRARIES (`issue#39577 <http://tracker.ceph.com/issues/39577>`_, `pr#27944 <https://github.com/ceph/ceph/pull/27944>`_, Willem Jan Withagen) -* rgw: update resharding documentation (`issue#39046 <http://tracker.ceph.com/issues/39046>`_, `pr#27923 <https://github.com/ceph/ceph/pull/27923>`_, J. Eric Ivancich) -* tests: added `bluestore_warn_on_legacy_statfs: false` setting (`issue#40467 <http://tracker.ceph.com/issues/40467>`_, `pr#28723 <https://github.com/ceph/ceph/pull/28723>`_, Yuri Weinstein) -* tests: added ragweed coverage to stress-split\\* upgrade suites (`issue#40452 <http://tracker.ceph.com/issues/40452>`_, `issue#40467 <http://tracker.ceph.com/issues/40467>`_, `pr#28661 <https://github.com/ceph/ceph/pull/28661>`_, Yuri Weinstein) -* tests: added v14.2.1 (`issue#40181 <http://tracker.ceph.com/issues/40181>`_, `pr#28416 <https://github.com/ceph/ceph/pull/28416>`_, Yuri Weinstein) -* tests: cannot schedule kcephfs/multimds (`issue#40116 <http://tracker.ceph.com/issues/40116>`_, `pr#28369 <https://github.com/ceph/ceph/pull/28369>`_, Patrick Donnelly) -* tests: centos 7.6 etc (`pr#27439 <https://github.com/ceph/ceph/pull/27439>`_, Sage Weil) -* tests: ceph-ansible: ceph-ansible requires ansible 2.8 (`issue#40602 <http://tracker.ceph.com/issues/40602>`_, `issue#40669 <http://tracker.ceph.com/issues/40669>`_, `pr#28871 <https://github.com/ceph/ceph/pull/28871>`_, Brad Hubbard) -* tests: ceph-ansible: cephfs_pools variable pgs should be pg_num (`issue#40670 <http://tracker.ceph.com/issues/40670>`_, `issue#40605 <http://tracker.ceph.com/issues/40605>`_, `pr#28872 <https://github.com/ceph/ceph/pull/28872>`_, Brad Hubbard) -* tests: cephfs-shell: teuthology tests (`issue#39935 <http://tracker.ceph.com/issues/39935>`_, `issue#39526 <http://tracker.ceph.com/issues/39526>`_, `pr#28614 <https://github.com/ceph/ceph/pull/28614>`_, Milind Changire) -* tests: cephfs: TestMisc.test_evict_client fails (`issue#40220 <http://tracker.ceph.com/issues/40220>`_, `pr#28613 <https://github.com/ceph/ceph/pull/28613>`_, "Yan, Zheng") -* tests: cleaned up supported distro for nautilus (`pr#28065 <https://github.com/ceph/ceph/pull/28065>`_, Yuri Weinstein) -* tests: ignore legacy bluestore stats errors (`issue#40374 <http://tracker.ceph.com/issues/40374>`_, `pr#28563 <https://github.com/ceph/ceph/pull/28563>`_, Patrick Donnelly) -* tests: librbd: drop 'ceph_test_librbd_api' target (`issue#39423 <http://tracker.ceph.com/issues/39423>`_, `issue#39072 <http://tracker.ceph.com/issues/39072>`_, `pr#28091 <https://github.com/ceph/ceph/pull/28091>`_, Jason Dillaman') -* tests: mgr: tox failures when running make check (`issue#39323 <http://tracker.ceph.com/issues/39323>`_, `issue#39530 <http://tracker.ceph.com/issues/39530>`_, `pr#27884 <https://github.com/ceph/ceph/pull/27884>`_, Nathan Cutler) -* tests: pass --ssh-config to pytest to resolve hosts when connecting (`pr#28923 <https://github.com/ceph/ceph/pull/28923>`_, Alfredo Deza) -* tests: rbd: qemu-iotests tests fail under latest Ubuntu kernel (`issue#39541 <http://tracker.ceph.com/issues/39541>`_, `issue#24668 <http://tracker.ceph.com/issues/24668>`_, `pr#27988 <https://github.com/ceph/ceph/pull/27988>`_, Jason Dillaman) -* tests: removed `1node` and `systemd` tests as ceph-deploy is not a\xe2\x80\xa6 (`pr#28458 <https://github.com/ceph/ceph/pull/28458>`_, Yuri Weinstein) -* tests: rgw: fix race in test_rgw_reshard_wait and test_rgw_reshard_wait uses same clock for timing (`issue#39479 <http://tracker.ceph.com/issues/39479>`_, `pr#27779 <https://github.com/ceph/ceph/pull/27779>`_, Casey Bodley) -* tests: rgw: fix swift warning message (`issue#40304 <http://tracker.ceph.com/issues/40304>`_, `pr#28698 <https://github.com/ceph/ceph/pull/28698>`_, Casey Bodley) -* tests: rgw: more fixes for swift task (`issue#40304 <http://tracker.ceph.com/issues/40304>`_, `pr#28922 <https://github.com/ceph/ceph/pull/28922>`_, Casey Bodley) -* tests: rgw: skip swift tests on rhel 7.6+ (`issue#40402 <http://tracker.ceph.com/issues/40402>`_, `issue#40304 <http://tracker.ceph.com/issues/40304>`_, `pr#28604 <https://github.com/ceph/ceph/pull/28604>`_, Casey Bodley) -* tests: stop testing simple messenger in fs qa (`issue#40373 <http://tracker.ceph.com/issues/40373>`_, `pr#28562 <https://github.com/ceph/ceph/pull/28562>`_, Patrick Donnelly) -* tests: tasks/rbd_fio: fixed missing delimiter between 'cd' and 'configure (`issue#39590 <http://tracker.ceph.com/issues/39590>`_, `pr#27989 <https://github.com/ceph/ceph/pull/27989>`_, Jason Dillaman') -* tests: test_sessionmap assumes simple messenger (`issue#39430 <http://tracker.ceph.com/issues/39430>`_, `pr#27772 <https://github.com/ceph/ceph/pull/27772>`_, Patrick Donnelly) -* tests: use curl in wait_for_radosgw() in util/rgw.py (`issue#40346 <http://tracker.ceph.com/issues/40346>`_, `pr#28598 <https://github.com/ceph/ceph/pull/28598>`_, Ali Maredia) -* tests: workunits/rbd: use https protocol for devstack git operations (`issue#39656 <http://tracker.ceph.com/issues/39656>`_, `issue#39729 <http://tracker.ceph.com/issues/39729>`_, `pr#28128 <https://github.com/ceph/ceph/pull/28128>`_, Jason Dillaman) -* tests: workunits/rbd: wait for rbd-nbd unmap to complete (`issue#39675 <http://tracker.ceph.com/issues/39675>`_, `issue#39598 <http://tracker.ceph.com/issues/39598>`_, `pr#28273 <https://github.com/ceph/ceph/pull/28273>`_, Jason Dillaman) - - -v14.2.1 Nautilus -================ - -This is the first bug fix release of Ceph Nautilus release series. We recommend -all nautilus users upgrade to this release. For upgrading from older releases of -ceph, general guidelines for upgrade to nautilus must be followed -:ref:`nautilus-old-upgrade`. - -Notable Changes ---------------- - -* Ceph now packages python bindings for python3.6 instead of - python3.4, because EPEL7 recently switched from python3.4 to - python3.6 as the native python3. see the `announcement <https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/>`_ - for more details on the background of this change. - -Known Issues ------------- - -* Nautilus-based librbd clients cannot open images stored on pre-Luminous - clusters - -Changelog ---------- -* bluestore: ceph-bluestore-tool: bluefs-bdev-expand cmd might assert if no WAL is configured (`issue#39253 <http://tracker.ceph.com/issues/39253>`_, `pr#27523 <https://github.com/ceph/ceph/pull/27523>`_, Igor Fedotov) -* bluestore: os/bluestore: fix bitmap allocator issues (`pr#27139 <https://github.com/ceph/ceph/pull/27139>`_, Igor Fedotov) -* build/ops,rgw: rgw: build async scheduler only when beast is built (`pr#27191 <https://github.com/ceph/ceph/pull/27191>`_, Abhishek Lekshmanan) -* build/ops: build/ops: Running ceph under Pacemaker control not supported by SUSE Linux Enterprise (`issue#38862 <http://tracker.ceph.com/issues/38862>`_, `pr#27127 <https://github.com/ceph/ceph/pull/27127>`_, Nathan Cutler) -* build/ops: build/ops: ceph-mgr-diskprediction-local requires numpy and scipy on SUSE, but these packages do not exist on SUSE (`issue#38863 <http://tracker.ceph.com/issues/38863>`_, `pr#27125 <https://github.com/ceph/ceph/pull/27125>`_, Nathan Cutler) -* build/ops: cmake/FindRocksDB: fix IMPORTED_LOCATION for ROCKSDB_LIBRARIES (`issue#38993 <http://tracker.ceph.com/issues/38993>`_, `pr#27601 <https://github.com/ceph/ceph/pull/27601>`_, dudengke) -* build/ops: cmake: revert librados_tp.so version from 3 to 2 (`issue#39291 <http://tracker.ceph.com/issues/39291>`_, `issue#39293 <http://tracker.ceph.com/issues/39293>`_, `pr#27597 <https://github.com/ceph/ceph/pull/27597>`_, Nathan Cutler) -* build/ops: qa,rpm,cmake: switch over to python3.6 (`issue#39236 <http://tracker.ceph.com/issues/39236>`_, `issue#39164 <http://tracker.ceph.com/issues/39164>`_, `pr#27505 <https://github.com/ceph/ceph/pull/27505>`_, Boris Ranto, Kefu Chai) -* cephfs: fs: we lack a feature bit for nautilus (`issue#39078 <http://tracker.ceph.com/issues/39078>`_, `issue#39187 <http://tracker.ceph.com/issues/39187>`_, `pr#27497 <https://github.com/ceph/ceph/pull/27497>`_, Patrick Donnelly) -* cephfs: ls -S command produces AttributeError: 'str' object has no attribute 'decode' (`pr#27531 <https://github.com/ceph/ceph/pull/27531>`_, Varsha Rao) -* cephfs: mds|kclient: MDS_CLIENT_LATE_RELEASE warning caused by inline bug on RHEL 7.5 (`issue#39225 <http://tracker.ceph.com/issues/39225>`_, `pr#27500 <https://github.com/ceph/ceph/pull/27500>`_, "Yan, Zheng") -* common,core: crush: various fixes for weight-sets, the osd_crush_update_weight_set option, and tests (`pr#27119 <https://github.com/ceph/ceph/pull/27119>`_, Sage Weil) -* common/blkdev: get_device_id: behave if model is lvm and id_model_enc isn't there (`pr#27158 <https://github.com/ceph/ceph/pull/27158>`_, Sage Weil) -* common/config: parse --default-$option as a default value (`pr#27217 <https://github.com/ceph/ceph/pull/27217>`_, Sage Weil) -* core,mgr: mgr: autoscale down can lead to max_pg_per_osd limit (`issue#39271 <http://tracker.ceph.com/issues/39271>`_, `issue#38786 <http://tracker.ceph.com/issues/38786>`_, `pr#27547 <https://github.com/ceph/ceph/pull/27547>`_, Sage Weil) -* core,mon: mon/Monitor.cc: print min_mon_release correctly (`pr#27168 <https://github.com/ceph/ceph/pull/27168>`_, Neha Ojha) -* core,tests: tests: osd-markdown.sh can fail with CLI_DUP_COMMAND=1 (`issue#38359 <http://tracker.ceph.com/issues/38359>`_, `issue#39275 <http://tracker.ceph.com/issues/39275>`_, `pr#27550 <https://github.com/ceph/ceph/pull/27550>`_, Sage Weil) -* core: Improvements to auto repair (`issue#38616 <http://tracker.ceph.com/issues/38616>`_, `pr#27220 <https://github.com/ceph/ceph/pull/27220>`_, xie xingguo, David Zafman) -* core: Rook: Fix creation of Bluestore OSDs (`issue#39167 <http://tracker.ceph.com/issues/39167>`_, `issue#39062 <http://tracker.ceph.com/issues/39062>`_, `pr#27486 <https://github.com/ceph/ceph/pull/27486>`_, Sebastian Wagner) -* core: ceph-objectstore-tool: rename dump-import to dump-export (`issue#39325 <http://tracker.ceph.com/issues/39325>`_, `issue#39284 <http://tracker.ceph.com/issues/39284>`_, `pr#27610 <https://github.com/ceph/ceph/pull/27610>`_, David Zafman) -* core: common/blkdev: handle devices with ID_MODEL as "LVM PV ..." but valid ID_MODEL_ENC (`pr#27096 <https://github.com/ceph/ceph/pull/27096>`_, Sage Weil) -* core: common: fix deferred log starting (`pr#27388 <https://github.com/ceph/ceph/pull/27388>`_, Sage Weil, Jason Dillaman) -* core: crush/CrushCompiler: Fix __replacement_assert (`issue#39174 <http://tracker.ceph.com/issues/39174>`_, `pr#27620 <https://github.com/ceph/ceph/pull/27620>`_, Brad Hubbard) -* core: global: explicitly call out EIO events in crash dumps (`pr#27440 <https://github.com/ceph/ceph/pull/27440>`_, Sage Weil) -* core: log: log_to_file + --default-\* + fixes and improvements (`pr#27278 <https://github.com/ceph/ceph/pull/27278>`_, Sage Weil) -* core: mon/MgrStatMonitor: ensure only one copy of initial service map (`issue#38839 <http://tracker.ceph.com/issues/38839>`_, `pr#27116 <https://github.com/ceph/ceph/pull/27116>`_, Sage Weil) -* core: mon/OSDMonitor: allow 'osd pool set pgp_num_actual' (`pr#27060 <https://github.com/ceph/ceph/pull/27060>`_, Sage Weil) -* core: mon: make mon_osd_down_out_subtree_limit update at runtime (`pr#27582 <https://github.com/ceph/ceph/pull/27582>`_, Sage Weil) -* core: mon: ok-to-stop commands for mon and mds (`pr#27347 <https://github.com/ceph/ceph/pull/27347>`_, Sage Weil) -* core: mon: quiet devname log noise (`pr#27314 <https://github.com/ceph/ceph/pull/27314>`_, Sage Weil) -* core: osd/OSDMap: add 'zone' to default crush map (`pr#27117 <https://github.com/ceph/ceph/pull/27117>`_, Sage Weil) -* core: osd/PGLog.h: print olog_can_rollback_to before deciding to rollback (`issue#38906 <http://tracker.ceph.com/issues/38906>`_, `issue#38894 <http://tracker.ceph.com/issues/38894>`_, `pr#27302 <https://github.com/ceph/ceph/pull/27302>`_, Neha Ojha) -* core: osd/osd_types: fix object_stat_sum_t fast-path decode (`issue#39320 <http://tracker.ceph.com/issues/39320>`_, `issue#39281 <http://tracker.ceph.com/issues/39281>`_, `pr#27555 <https://github.com/ceph/ceph/pull/27555>`_, David Zafman) -* core: osd: backport recent upmap fixes (`issue#38860 <http://tracker.ceph.com/issues/38860>`_, `issue#38967 <http://tracker.ceph.com/issues/38967>`_, `issue#38897 <http://tracker.ceph.com/issues/38897>`_, `issue#38826 <http://tracker.ceph.com/issues/38826>`_, `pr#27225 <https://github.com/ceph/ceph/pull/27225>`_, huangjun, xie xingguo) -* core: osd: process_copy_chunk remove obc ref before pg unlock (`issue#38842 <http://tracker.ceph.com/issues/38842>`_, `issue#38973 <http://tracker.ceph.com/issues/38973>`_, `pr#27478 <https://github.com/ceph/ceph/pull/27478>`_, Zengran Zhang) -* dashboard: NFS: failed to disable NFSv3 in export create (`issue#39104 <http://tracker.ceph.com/issues/39104>`_, `issue#38997 <http://tracker.ceph.com/issues/38997>`_, `pr#27368 <https://github.com/ceph/ceph/pull/27368>`_, Tiago Melo) -* doc/releases/nautilus: fix config update step (`pr#27502 <https://github.com/ceph/ceph/pull/27502>`_, Sage Weil) -* doc: doc/orchestrator: Fix broken bullet points (`issue#39168 <http://tracker.ceph.com/issues/39168>`_, `pr#27487 <https://github.com/ceph/ceph/pull/27487>`_, Sebastian Wagner) -* doc: doc: Minor rados related documentation fixes (`issue#38896 <http://tracker.ceph.com/issues/38896>`_, `issue#38903 <http://tracker.ceph.com/issues/38903>`_, `pr#27189 <https://github.com/ceph/ceph/pull/27189>`_, David Zafman) -* doc: doc: rgw: Added library/package for Golang (`issue#38730 <http://tracker.ceph.com/issues/38730>`_, `issue#38867 <http://tracker.ceph.com/issues/38867>`_, `pr#27549 <https://github.com/ceph/ceph/pull/27549>`_, Irek Fasikhov) -* install-deps.sh: install '\*rpm-macros' (`issue#39164 <http://tracker.ceph.com/issues/39164>`_, `pr#27544 <https://github.com/ceph/ceph/pull/27544>`_, Kefu Chai) -* mgr/dashboard add polish language (`issue#39052 <http://tracker.ceph.com/issues/39052>`_, `pr#27287 <https://github.com/ceph/ceph/pull/27287>`_, Sebastian Krah) -* mgr/dashboard/qa: Improve tasks.mgr.test_dashboard.TestDashboard.test_standby (`pr#27237 <https://github.com/ceph/ceph/pull/27237>`_, Volker Theile) -* mgr/dashboard: 1 osds exist in the crush map but not in the osdmap breaks OSD page (`issue#38885 <http://tracker.ceph.com/issues/38885>`_, `issue#36086 <http://tracker.ceph.com/issues/36086>`_, `pr#27543 <https://github.com/ceph/ceph/pull/27543>`_, Patrick Nawracay) -* mgr/dashboard: Adapt iSCSI overview page to make use of ceph-iscsi (`pr#27541 <https://github.com/ceph/ceph/pull/27541>`_, Ricardo Marques) -* mgr/dashboard: Add date range and log search functionality (`issue#37387 <http://tracker.ceph.com/issues/37387>`_, `issue#38878 <http://tracker.ceph.com/issues/38878>`_, `pr#27283 <https://github.com/ceph/ceph/pull/27283>`_, guodan1) -* mgr/dashboard: Add refresh interval to the dashboard landing page (`issue#26872 <http://tracker.ceph.com/issues/26872>`_, `issue#38988 <http://tracker.ceph.com/issues/38988>`_, `pr#27267 <https://github.com/ceph/ceph/pull/27267>`_, guodan1) -* mgr/dashboard: Add separate option to config SSL port (`issue#39001 <http://tracker.ceph.com/issues/39001>`_, `pr#27393 <https://github.com/ceph/ceph/pull/27393>`_, Volker Theile) -* mgr/dashboard: Added breadcrumb tests to NFS menu (`issue#38981 <http://tracker.ceph.com/issues/38981>`_, `pr#27589 <https://github.com/ceph/ceph/pull/27589>`_, Nathan Weinberg) -* mgr/dashboard: Back button component (`issue#39058 <http://tracker.ceph.com/issues/39058>`_, `pr#27405 <https://github.com/ceph/ceph/pull/27405>`_, Stephan Müller) -* mgr/dashboard: Cannot submit NFS export form when NFSv4 is not selected (`issue#39105 <http://tracker.ceph.com/issues/39105>`_, `issue#39063 <http://tracker.ceph.com/issues/39063>`_, `pr#27370 <https://github.com/ceph/ceph/pull/27370>`_, Tiago Melo) -* mgr/dashboard: Error creating NFS export without UDP (`issue#39107 <http://tracker.ceph.com/issues/39107>`_, `issue#39090 <http://tracker.ceph.com/issues/39090>`_, `pr#27372 <https://github.com/ceph/ceph/pull/27372>`_, Tiago Melo) -* mgr/dashboard: Error on iSCSI disk diff (`pr#27460 <https://github.com/ceph/ceph/pull/27460>`_, Ricardo Marques) -* mgr/dashboard: Filter iSCSI target images based on required features (`issue#39002 <http://tracker.ceph.com/issues/39002>`_, `pr#27363 <https://github.com/ceph/ceph/pull/27363>`_, Ricardo Marques) -* mgr/dashboard: Fix env vars of `run-tox.sh` (`issue#38798 <http://tracker.ceph.com/issues/38798>`_, `issue#38864 <http://tracker.ceph.com/issues/38864>`_, `pr#27361 <https://github.com/ceph/ceph/pull/27361>`_, Patrick Nawracay) -* mgr/dashboard: Fixes tooltip behavior (`pr#27395 <https://github.com/ceph/ceph/pull/27395>`_, Stephan Müller) -* mgr/dashboard: FixtureHelper (`issue#39041 <http://tracker.ceph.com/issues/39041>`_, `pr#27398 <https://github.com/ceph/ceph/pull/27398>`_, Stephan Müller) -* mgr/dashboard: NFS Squash field should be required (`issue#39106 <http://tracker.ceph.com/issues/39106>`_, `issue#39064 <http://tracker.ceph.com/issues/39064>`_, `pr#27371 <https://github.com/ceph/ceph/pull/27371>`_, Tiago Melo) -* mgr/dashboard: PreventDefault isn't working on 400 errors (`pr#27389 <https://github.com/ceph/ceph/pull/27389>`_, Stephan Müller) -* mgr/dashboard: Typo in "CephFS Name" field on NFS form (`issue#39067 <http://tracker.ceph.com/issues/39067>`_, `pr#27449 <https://github.com/ceph/ceph/pull/27449>`_, Tiago Melo) -* mgr/dashboard: dashboard giving 401 unauthorized (`issue#38871 <http://tracker.ceph.com/issues/38871>`_, `pr#27219 <https://github.com/ceph/ceph/pull/27219>`_, ming416) -* mgr/dashboard: fix sparkline component (`issue#38866 <http://tracker.ceph.com/issues/38866>`_, `pr#27260 <https://github.com/ceph/ceph/pull/27260>`_, Alfonso Martínez) -* mgr/dashboard: readonly user can't see any pages (`issue#39240 <http://tracker.ceph.com/issues/39240>`_, `pr#27611 <https://github.com/ceph/ceph/pull/27611>`_, Stephan Müller) -* mgr/dashboard: unify button/URL actions naming + bugfix (add whitelist to guard) (`issue#37337 <http://tracker.ceph.com/issues/37337>`_, `issue#39003 <http://tracker.ceph.com/issues/39003>`_, `pr#27492 <https://github.com/ceph/ceph/pull/27492>`_, Ernesto Puerta) -* mgr/dashboard: update vstart to use new ssl_server_port (`issue#39124 <http://tracker.ceph.com/issues/39124>`_, `pr#27394 <https://github.com/ceph/ceph/pull/27394>`_, Ernesto Puerta) -* mgr/deepsea: use ceph_volume output in get_inventory() (`issue#39083 <http://tracker.ceph.com/issues/39083>`_, `pr#27319 <https://github.com/ceph/ceph/pull/27319>`_, Tim Serong) -* mgr/diskprediction_cloud: Correct base64 encode translate table (`pr#27167 <https://github.com/ceph/ceph/pull/27167>`_, Rick Chen) -* mgr/orchestrator: Add error handling to interface (`issue#38837 <http://tracker.ceph.com/issues/38837>`_, `pr#27095 <https://github.com/ceph/ceph/pull/27095>`_, Sebastian Wagner) -* mgr/pg_autoscaler: add pg_autoscale_bias (`pr#27387 <https://github.com/ceph/ceph/pull/27387>`_, Sage Weil) -* mgr: mgr/dashboard: Error on iSCSI target submission (`pr#27461 <https://github.com/ceph/ceph/pull/27461>`_, Ricardo Marques) -* mgr: ceph-mgr: ImportError: Interpreter change detected - this module can only be loaded into one interprer per process (`issue#38865 <http://tracker.ceph.com/issues/38865>`_, `pr#27128 <https://github.com/ceph/ceph/pull/27128>`_, Tim Serong) -* mgr: mgr/DaemonServer: handle_conf_change - fix broken locking (`issue#38964 <http://tracker.ceph.com/issues/38964>`_, `issue#38899 <http://tracker.ceph.com/issues/38899>`_, `pr#27454 <https://github.com/ceph/ceph/pull/27454>`_, xie xingguo) -* mgr: mgr/balancer: Python 3 compatibility fix (`issue#38831 <http://tracker.ceph.com/issues/38831>`_, `issue#38855 <http://tracker.ceph.com/issues/38855>`_, `pr#27227 <https://github.com/ceph/ceph/pull/27227>`_, Marius Schiffer) -* mgr: mgr/dashboard: Check if gateway is in use before allowing the deletion via `iscsi-gateway-rm` command (`pr#27457 <https://github.com/ceph/ceph/pull/27457>`_, Ricardo Marques) -* mgr: mgr/dashboard: Display the number of active sessions for each iSCSI target (`pr#27450 <https://github.com/ceph/ceph/pull/27450>`_, Ricardo Marques) -* mgr: mgr/devicehealth: Fix python 3 incompatiblity (`issue#38957 <http://tracker.ceph.com/issues/38957>`_, `issue#38939 <http://tracker.ceph.com/issues/38939>`_, `pr#27390 <https://github.com/ceph/ceph/pull/27390>`_, Marius Schiffer) -* mgr: mgr/telemetry: add report_timestamp to sent reports (`pr#27701 <https://github.com/ceph/ceph/pull/27701>`_, Dan Mick) -* mgr: mgr/telemetry: use list; redact host; 24h default interval (`pr#27709 <https://github.com/ceph/ceph/pull/27709>`_, Sage Weil, Dan Mick) -* mgr: mgr: Configure Py root logger for Mgr modules (`issue#38969 <http://tracker.ceph.com/issues/38969>`_, `pr#27261 <https://github.com/ceph/ceph/pull/27261>`_, Volker Theile) -* mgr: mgr: Diskprediction unable to transfer data into the cloud server (`issue#38970 <http://tracker.ceph.com/issues/38970>`_, `pr#27240 <https://github.com/ceph/ceph/pull/27240>`_, Rick Chen) -* mon/MonClient: do not dereference auth_supported.end() (`pr#27215 <https://github.com/ceph/ceph/pull/27215>`_, Kefu Chai) -* mon/MonmapMonitor: clean up empty created stamp in monmap (`issue#39085 <http://tracker.ceph.com/issues/39085>`_, `pr#27399 <https://github.com/ceph/ceph/pull/27399>`_, Sage Weil) -* mon: mon: add cluster log to file option (`pr#27346 <https://github.com/ceph/ceph/pull/27346>`_, Sage Weil) -* msg/async v2: make v2 work on rdma (`pr#27216 <https://github.com/ceph/ceph/pull/27216>`_, Jianpeng Ma) -* msg: default to debug_ms=0 (`pr#27197 <https://github.com/ceph/ceph/pull/27197>`_, Sage Weil) -* osd: OSDMapRef access by multiple threads is unsafe (`pr#27402 <https://github.com/ceph/ceph/pull/27402>`_, Zengran Zhang, Kefu Chai) -* qa/valgrind (`pr#27320 <https://github.com/ceph/ceph/pull/27320>`_, Radoslaw Zarzynski) -* rbd,tests: backport krbd discard qa fixes to nautilus (`issue#38861 <http://tracker.ceph.com/issues/38861>`_, `pr#27258 <https://github.com/ceph/ceph/pull/27258>`_, Ilya Dryomov) -* rbd,tests: backport krbd discard qa fixes to stable branches (`issue#38956 <http://tracker.ceph.com/issues/38956>`_, `pr#27239 <https://github.com/ceph/ceph/pull/27239>`_, Ilya Dryomov) -* rbd: librbd: ignore -EOPNOTSUPP errors when retrieving image group membership (`issue#38834 <http://tracker.ceph.com/issues/38834>`_, `pr#27080 <https://github.com/ceph/ceph/pull/27080>`_, Jason Dillaman) -* rbd: librbd: look for pool metadata in default namespace (`issue#38961 <http://tracker.ceph.com/issues/38961>`_, `pr#27423 <https://github.com/ceph/ceph/pull/27423>`_, Mykola Golub) -* rbd: librbd: trash move return EBUSY instead of EINVAL for migrating image (`issue#38968 <http://tracker.ceph.com/issues/38968>`_, `pr#27475 <https://github.com/ceph/ceph/pull/27475>`_, Mykola Golub) -* rbd: rbd: krbd: return -ETIMEDOUT in polling (`issue#38792 <http://tracker.ceph.com/issues/38792>`_, `issue#38977 <http://tracker.ceph.com/issues/38977>`_, `pr#27539 <https://github.com/ceph/ceph/pull/27539>`_, Dongsheng Yang) -* rgw: Adding tcp_nodelay option to Beast (`issue#38926 <http://tracker.ceph.com/issues/38926>`_, `pr#27355 <https://github.com/ceph/ceph/pull/27355>`_, Or Friedmann) -* rgw: Fix S3 compatibility bug when CORS is not found (`issue#38923 <http://tracker.ceph.com/issues/38923>`_, `issue#37945 <http://tracker.ceph.com/issues/37945>`_, `pr#27331 <https://github.com/ceph/ceph/pull/27331>`_, Nick Janus) -* rgw: LC: handle resharded buckets (`pr#27559 <https://github.com/ceph/ceph/pull/27559>`_, Abhishek Lekshmanan) -* rgw: Make rgw admin ops api get user info consistent with the command line (`issue#39135 <http://tracker.ceph.com/issues/39135>`_, `pr#27501 <https://github.com/ceph/ceph/pull/27501>`_, Li Shuhao) -* rgw: don't crash on missing /etc/mime.types (`issue#38921 <http://tracker.ceph.com/issues/38921>`_, `issue#38328 <http://tracker.ceph.com/issues/38328>`_, `pr#27329 <https://github.com/ceph/ceph/pull/27329>`_, Casey Bodley) -* rgw: don't recalculate etags for slo/dlo (`pr#27561 <https://github.com/ceph/ceph/pull/27561>`_, Casey Bodley) -* rgw: fix RGWDeleteMultiObj::verify_permission() (`issue#38980 <http://tracker.ceph.com/issues/38980>`_, `pr#27586 <https://github.com/ceph/ceph/pull/27586>`_, Irek Fasikhov) -* rgw: fix read not exists null version return wrong (`issue#38811 <http://tracker.ceph.com/issues/38811>`_, `issue#38909 <http://tracker.ceph.com/issues/38909>`_, `pr#27306 <https://github.com/ceph/ceph/pull/27306>`_, Tianshan Qu) -* rgw: ldap: fix early return in LDAPAuthEngine::init w/uri not empty() (`issue#38754 <http://tracker.ceph.com/issues/38754>`_, `pr#26972 <https://github.com/ceph/ceph/pull/26972>`_, Matt Benjamin) -* rgw: multisite: data sync loops back to the start of the datalog after reaching the end (`issue#39075 <http://tracker.ceph.com/issues/39075>`_, `issue#39033 <http://tracker.ceph.com/issues/39033>`_, `pr#27498 <https://github.com/ceph/ceph/pull/27498>`_, Casey Bodley) -* rgw: nfs: skip empty (non-POSIX) path segments (`issue#38744 <http://tracker.ceph.com/issues/38744>`_, `issue#38773 <http://tracker.ceph.com/issues/38773>`_, `pr#27208 <https://github.com/ceph/ceph/pull/27208>`_, Matt Benjamin) -* rgw: nfs: svc-enable RGWLib (`issue#38774 <http://tracker.ceph.com/issues/38774>`_, `pr#27232 <https://github.com/ceph/ceph/pull/27232>`_, Matt Benjamin) -* rgw: orphans find perf improvements (`issue#39181 <http://tracker.ceph.com/issues/39181>`_, `pr#27560 <https://github.com/ceph/ceph/pull/27560>`_, Abhishek Lekshmanan) -* rgw: rgw admin: disable stale instance deletion in multisite (`issue#39015 <http://tracker.ceph.com/issues/39015>`_, `pr#27602 <https://github.com/ceph/ceph/pull/27602>`_, Abhishek Lekshmanan) -* rgw: sse c fixes (`issue#38700 <http://tracker.ceph.com/issues/38700>`_, `pr#27296 <https://github.com/ceph/ceph/pull/27296>`_, Adam Kupczyk, Casey Bodley, Abhishek Lekshmanan) -* rgw: support delimiter longer then one symbol (`issue#38777 <http://tracker.ceph.com/issues/38777>`_, `pr#27548 <https://github.com/ceph/ceph/pull/27548>`_, Matt Benjamin) -* rook-ceph-system namespace hardcoded in the rook orchestrator (`issue#38799 <http://tracker.ceph.com/issues/38799>`_, `issue#39250 <http://tracker.ceph.com/issues/39250>`_, `pr#27496 <https://github.com/ceph/ceph/pull/27496>`_, Sebastian Wagner) -* rpm,cmake: use specified python3 version if any (`pr#27382 <https://github.com/ceph/ceph/pull/27382>`_, Kefu Chai) - - -v14.2.0 Nautilus -================ - -This is the first stable release of Ceph Nautilus. - -Major Changes from Mimic ------------------------- - -- *Dashboard*: - - The :ref:`mgr-dashboard` has gained a lot of new functionality: - - * Support for multiple users / roles - * SSO (SAMLv2) for user authentication - * Auditing support - * New landing page, showing more metrics and health info - * I18N support - * REST API documentation with Swagger API - - New Ceph management features include: - - * OSD management (mark as down/out, change OSD settings, recovery profiles) - * Cluster config settings editor - * Ceph Pool management (create/modify/delete) - * ECP management - * RBD mirroring configuration - * Embedded Grafana Dashboards (derived from Ceph Metrics) - * CRUSH map viewer - * NFS Ganesha management - * iSCSI target management (via :ref:`ceph-iscsi`) - * RBD QoS configuration - * Ceph Manager (ceph-mgr) module management - * Prometheus alert Management - - Also, the Ceph Dashboard is now split into its own package named - ``ceph-mgr-dashboard``. You might want to install it separately, - if your package management software fails to do so when it installs - ``ceph-mgr``. - -- *RADOS*: - - * The number of placement groups (PGs) per pool can now be decreased - at any time, and the cluster can :ref:`automatically tune the PG count <pg-autoscaler>` - based on cluster utilization or administrator hints. - * The new :ref:`v2 wire protocol <msgr2>` brings support for encryption on the wire. - * Physical :ref:`storage devices <devices>` consumed by OSD and Monitor daemons are - now tracked by the cluster along with health metrics (i.e., - SMART), and the cluster can apply a pre-trained prediction model - or a cloud-based prediction service to :ref:`warn about expected - HDD or SSD failures <diskprediction>`. - * The NUMA node for OSD daemons can easily be monitored via the - ``ceph osd numa-status`` command, and configured via the - ``osd_numa_node`` config option. - * When BlueStore OSDs are used, space utilization is now broken down - by object data, omap data, and internal metadata, by pool, and by - pre- and post- compression sizes. - * OSDs more effectively prioritize the most important PGs and - objects when performing recovery and backfill. - * Progress for long-running background processes--like recovery - after a device failure--is now reported as part of ``ceph - status``. - * An experimental `Coupled-Layer "Clay" erasure code - <https://www.usenix.org/conference/fast18/presentation/vajha>`_ - plugin has been added that reduces network bandwidth and IO needed - for most recovery operations. - -- *RGW*: - - * S3 lifecycle transition for tiering between storage classes. - * A new web frontend (Beast) has replaced civetweb as the default, - improving overall performance. - * A new publish/subscribe infrastructure allows RGW to feed events - to serverless frameworks like knative or data pipelies like Kafka. - * A range of authentication features, including STS federation using - OAuth2 and OpenID::connect and an OPA (Open Policy Agent) - authentication delegation prototype. - * The new archive zone federation feature enables full preservation - of all objects (including history) in a separate zone. - -- *CephFS*: - - * MDS stability has been greatly improved for large caches and - long-running clients with a lot of RAM. Cache trimming and client - capability recall is now throttled to prevent overloading the MDS. - * CephFS may now be exported via NFS-Ganesha clusters in environments managed - by Rook. Ceph manages the clusters and ensures high-availability and - scalability. An `introductory demo - <https://ceph.com/community/deploying-a-cephnfs-server-cluster-with-rook/>`_ - is available. More automation of this feature is expected to be forthcoming - in future minor releases of Nautilus. - * The MDS ``mds_standby_for_*``, ``mon_force_standby_active``, and - ``mds_standby_replay`` configuration options have been obsoleted. Instead, - the operator :ref:`may now set <mds-standby-replay>` the new - ``allow_standby_replay`` flag on the CephFS file system. This setting - causes standbys to become standby-replay for any available rank in the file - system. - * MDS now supports dropping its cache which concurrently asks clients - to trim their caches. This is done using MDS admin socket ``cache drop`` - command. - * It is now possible to check the progress of an on-going scrub in the MDS. - Additionally, a scrub may be paused or aborted. See :ref:`the scrub - documentation <mds-scrub>` for more information. - * A new interface for creating volumes is provided via the ``ceph volume`` - command-line-interface. - * A new cephfs-shell tool is available for manipulating a CephFS file - system without mounting. - * CephFS-related output from ``ceph status`` has been reformatted for brevity, - clarity, and usefulness. - * Lazy IO has been revamped. It can be turned on by the client using the new - CEPH_O_LAZY flag to the ``ceph_open`` C/C++ API or via the config option - ``client_force_lazyio``. - * CephFS file system can now be brought down rapidly via the ``ceph fs fail`` - command. See :ref:`the administration page <cephfs-administration>` for - more information. - -- *RBD*: - - * Images can be live-migrated with minimal downtime to assist with moving - images between pools or to new layouts. - * New ``rbd perf image iotop`` and ``rbd perf image iostat`` commands provide - an iotop- and iostat-like IO monitor for all RBD images. - * The *ceph-mgr* Prometheus exporter now optionally includes an IO monitor - for all RBD images. - * Support for separate image namespaces within a pool for tenant isolation. - -- *Misc*: - - * Ceph has a new set of :ref:`orchestrator modules - <orchestrator-cli-module>` to directly interact with external - orchestrators like ceph-ansible, DeepSea, Rook, or simply ssh via - a consistent CLI (and, eventually, Dashboard) interface. - -.. _nautilus-old-upgrade: - -Upgrading from Mimic or Luminous --------------------------------- - -Notes -~~~~~ - -* During the upgrade from Luminous to Nautilus, it will not be - possible to create a new OSD using a Luminous ceph-osd daemon after - the monitors have been upgraded to Nautilus. We recommend you avoid adding - or replacing any OSDs while the upgrade is in progress. - -* We recommend you avoid creating any RADOS pools while the upgrade is - in progress. - -* You can monitor the progress of your upgrade at each stage with the - ``ceph versions`` command, which will tell you what ceph version(s) are - running for each type of daemon. - -Instructions -~~~~~~~~~~~~ - -#. If your cluster was originally installed with a version prior to - Luminous, ensure that it has completed at least one full scrub of - all PGs while running Luminous. Failure to do so will cause your - monitor daemons to refuse to join the quorum on start, leaving them - non-functional. - - If you are unsure whether or not your Luminous cluster has - completed a full scrub of all PGs, you can check your cluster's - state by running:: - - # ceph osd dump | grep ^flags - - In order to be able to proceed to Nautilus, your OSD map must include - the ``recovery_deletes`` and ``purged_snapdirs`` flags. - - If your OSD map does not contain both these flags, you can simply - wait for approximately 24-48 hours, which in a standard cluster - configuration should be ample time for all your placement groups to - be scrubbed at least once, and then repeat the above process to - recheck. - - However, if you have just completed an upgrade to Luminous and want - to proceed to Mimic in short order, you can force a scrub on all - placement groups with a one-line shell command, like:: - - # ceph pg dump pgs_brief | cut -d " " -f 1 | xargs -n1 ceph pg scrub - - You should take into consideration that this forced scrub may - possibly have a negative impact on your Ceph clients' performance. - -#. Make sure your cluster is stable and healthy (no down or - recovering OSDs). (Optional, but recommended.) - -#. Set the ``noout`` flag for the duration of the upgrade. (Optional, - but recommended.):: - - # ceph osd set noout - -#. Upgrade monitors by installing the new packages and restarting the - monitor daemons. For example, on each monitor host,:: - - # systemctl restart ceph-mon.target - - Once all monitors are up, verify that the monitor upgrade is - complete by looking for the ``nautilus`` string in the mon - map. The command:: - - # ceph mon dump | grep min_mon_release - - should report:: - - min_mon_release 14 (nautilus) - - If it doesn't, that implies that one or more monitors hasn't been - upgraded and restarted and/or the quorum does not include all monitors. - -#. Upgrade ``ceph-mgr`` daemons by installing the new packages and - restarting all manager daemons. For example, on each manager host,:: - - # systemctl restart ceph-mgr.target - - Please note, if you are using Ceph Dashboard, you will probably need to - install ``ceph-mgr-dashboard`` separately after upgrading ``ceph-mgr`` - package. The install script of ``ceph-mgr-dashboard`` will restart the - manager daemons automatically for you. So in this case, you can just skip - the step to restart the daemons. - - Verify the ``ceph-mgr`` daemons are running by checking ``ceph - -s``:: - - # ceph -s - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the - ceph-osd daemons on all OSD hosts:: - - # systemctl restart ceph-osd.target - - You can monitor the progress of the OSD upgrades with the - ``ceph versions`` or ``ceph osd versions`` commands:: - - # ceph osd versions - { - "ceph version 13.2.5 (...) mimic (stable)": 12, - "ceph version 14.2.0 (...) nautilus (stable)": 22, - } - -#. If there are any OSDs in the cluster deployed with ceph-disk (e.g., - almost any OSDs that were created before the Mimic release), you - need to tell ceph-volume to adopt responsibility for starting the - daemons. On each host containing OSDs, ensure the OSDs are - currently running, and then:: - - # ceph-volume simple scan - # ceph-volume simple activate --all - - We recommend that each OSD host be rebooted following this step to - verify that the OSDs start up automatically. - - Note that ceph-volume doesn't have the same hot-plug capability - that ceph-disk did, where a newly attached disk is automatically - detected via udev events. If the OSD isn't currently running when the - above ``scan`` command is run, or a ceph-disk-based OSD is moved to - a new host, or the host OSD is reinstalled, or the - ``/etc/ceph/osd`` directory is lost, you will need to scan the main - data partition for each ceph-disk OSD explicitly. For example,:: - - # ceph-volume simple scan /dev/sdb1 - - The output will include the appropriate ``ceph-volume simple - activate`` command to enable the OSD. - -#. Upgrade all CephFS MDS daemons. For each CephFS file system, - - #. Reduce the number of ranks to 1. (Make note of the original - number of MDS daemons first if you plan to restore it later.):: - - # ceph status - # ceph fs set <fs_name> max_mds 1 - - #. Wait for the cluster to deactivate any non-zero ranks by - periodically checking the status:: - - # ceph status - - #. Take all standby MDS daemons offline on the appropriate hosts with:: - - # systemctl stop ceph-mds@<daemon_name> - - #. Confirm that only one MDS is online and is rank 0 for your FS:: - - # ceph status - - #. Upgrade the last remaining MDS daemon by installing the new - packages and restarting the daemon:: - - # systemctl restart ceph-mds.target - - #. Restart all standby MDS daemons that were taken offline:: - - # systemctl start ceph-mds.target - - #. Restore the original value of ``max_mds`` for the volume:: - - # ceph fs set <fs_name> max_mds <original_max_mds> - -#. Upgrade all radosgw daemons by upgrading packages and restarting - daemons on all hosts:: - - # systemctl restart ceph-radosgw.target - -#. Complete the upgrade by disallowing pre-Nautilus OSDs and enabling - all new Nautilus-only functionality:: - - # ceph osd require-osd-release nautilus - - .. important:: This step is mandatory. Failure to execute this step will make it impossible for OSDs to communicate after msgrv2 is enabled. - -#. If you set ``noout`` at the beginning, be sure to clear it with:: - - # ceph osd unset noout - -#. Verify the cluster is healthy with ``ceph health``. - - If your CRUSH tunables are older than Hammer, Ceph will now issue a - health warning. If you see a health alert to that effect, you can - revert this change with:: - - ceph config set mon mon_crush_min_required_version firefly - - If Ceph does not complain, however, then we recommend you also - switch any existing CRUSH buckets to straw2, which was added back - in the Hammer release. If you have any 'straw' buckets, this will - result in a modest amount of data movement, but generally nothing - too severe.:: - - ceph osd getcrushmap -o backup-crushmap - ceph osd crush set-all-straw-buckets-to-straw2 - - If there are problems, you can easily revert with:: - - ceph osd setcrushmap -i backup-crushmap - - Moving to 'straw2' buckets will unlock a few recent features, like - the `crush-compat` :ref:`balancer <balancer>` mode added back in Luminous. - -#. To enable the new :ref:`v2 network protocol <msgr2>`, issue the - following command:: - - ceph mon enable-msgr2 - - This will instruct all monitors that bind to the old default port - 6789 for the legacy v1 protocol to also bind to the new 3300 v2 - protocol port. To see if all monitors have been updated,:: - - ceph mon dump - - and verify that each monitor has both a ``v2:`` and ``v1:`` address - listed. - - Running nautilus OSDs will not bind to their v2 address automatically. - They must be restarted for that to happen. - - .. important:: - Before this step is run, the following command must already have been run: - - # ceph osd require-osd-release nautilus - - If this command (step 10 in this procedure) has not been run, OSDs will lose the ability to communicate. - -#. For each host that has been upgraded, you should update your - ``ceph.conf`` file so that it either specifies no monitor port (if - you are running the monitors on the default ports) or references - both the v2 and v1 addresses and ports explicitly. Things will - still work if only the v1 IP and port are listed, but each CLI - instantiation or daemon will need to reconnect after learning the - monitors also speak the v2 protocol, slowing things down a bit and - preventing a full transition to the v2 protocol. - - This is also a good time to fully transition any config options in - ``ceph.conf`` into the cluster's configuration database. On each host, - you can use the following command to import any options into the - monitors with:: - - ceph config assimilate-conf -i /etc/ceph/ceph.conf - - You can see the cluster's configuration database with:: - - ceph config dump - - To create a minimal but sufficient ``ceph.conf`` for each host,:: - - ceph config generate-minimal-conf > /etc/ceph/ceph.conf.new - mv /etc/ceph/ceph.conf.new /etc/ceph/ceph.conf - - Be sure to use this new config only on hosts that have been - upgraded to Nautilus, as it may contain a ``mon_host`` value that - includes the new ``v2:`` and ``v1:`` prefixes for IP addresses that - is only understood by Nautilus. - - For more information, see :ref:`msgr2_ceph_conf`. - -#. Consider enabling the :ref:`telemetry module <telemetry>` to send - anonymized usage statistics and crash information to the Ceph - upstream developers. To see what would be reported (without actually - sending any information to anyone),:: - - ceph mgr module enable telemetry - ceph telemetry show - - If you are comfortable with the data that is reported, you can opt-in to - automatically report the high-level cluster metadata with:: - - ceph telemetry on - - For more information about the telemetry module, see :ref:`the - documentation <telemetry>`. - - -Upgrading from pre-Luminous releases (like Jewel) -------------------------------------------------- - -You *must* first upgrade to Luminous (12.2.z) before attempting an -upgrade to Nautilus. In addition, your cluster must have completed at -least one scrub of all PGs while running Luminous, setting the -``recovery_deletes`` and ``purged_snapdirs`` flags in the OSD map. - - -Upgrade compatibility notes ---------------------------- - -These changes occurred between the Mimic and Nautilus releases. - -* ``ceph pg stat`` output has been modified in json - format to match ``ceph df`` output: - - - "raw_bytes" field renamed to "total_bytes" - - "raw_bytes_avail" field renamed to "total_bytes_avail" - - "raw_bytes_avail" field renamed to "total_bytes_avail" - - "raw_bytes_used" field renamed to "total_bytes_raw_used" - - "total_bytes_used" field added to represent the space (accumulated over - all OSDs) allocated purely for data objects kept at block(slow) device - -* ``ceph df [detail]`` output (GLOBAL section) has been modified in plain - format: - - - new 'USED' column shows the space (accumulated over all OSDs) allocated - purely for data objects kept at block(slow) device. - - 'RAW USED' is now a sum of 'USED' space and space allocated/reserved at - block device for Ceph purposes, e.g. BlueFS part for BlueStore. - -* ``ceph df [detail]`` output (GLOBAL section) has been modified in json - format: - - - 'total_used_bytes' column now shows the space (accumulated over all OSDs) - allocated purely for data objects kept at block(slow) device - - new 'total_used_raw_bytes' column shows a sum of 'USED' space and space - allocated/reserved at block device for Ceph purposes, e.g. BlueFS part for - BlueStore. - -* ``ceph df [detail]`` output (POOLS section) has been modified in plain - format: - - - 'BYTES USED' column renamed to 'STORED'. Represents amount of data - stored by the user. - - 'USED' column now represent amount of space allocated purely for data - by all OSD nodes in KB. - - 'QUOTA BYTES', 'QUOTA OBJECTS' aren't showed anymore in non-detailed mode. - - new column 'USED COMPR' - amount of space allocated for compressed - data. i.e., compressed data plus all the allocation, replication and erasure - coding overhead. - - new column 'UNDER COMPR' - amount of data passed through compression - (summed over all replicas) and beneficial enough to be stored in a - compressed form. - - Some columns reordering - -* ``ceph df [detail]`` output (POOLS section) has been modified in json - format: - - - 'bytes used' column renamed to 'stored'. Represents amount of data - stored by the user. - - 'raw bytes used' column renamed to "stored_raw". Totals of user data - over all OSD excluding degraded. - - new 'bytes_used' column now represent amount of space allocated by - all OSD nodes. - - 'kb_used' column - the same as 'bytes_used' but in KB. - - new column 'compress_bytes_used' - amount of space allocated for compressed - data. i.e., compressed data plus all the allocation, replication and erasure - coding overhead. - - new column 'compress_under_bytes' amount of data passed through compression - (summed over all replicas) and beneficial enough to be stored in a - compressed form. - -* ``rados df [detail]`` output (POOLS section) has been modified in plain - format: - - - 'USED' column now shows the space (accumulated over all OSDs) allocated - purely for data objects kept at block(slow) device. - - new column 'USED COMPR' - amount of space allocated for compressed - data. i.e., compressed data plus all the allocation, replication and erasure - coding overhead. - - new column 'UNDER COMPR' - amount of data passed through compression - (summed over all replicas) and beneficial enough to be stored in a - compressed form. - -* ``rados df [detail]`` output (POOLS section) has been modified in json - format: - - - 'size_bytes' and 'size_kb' columns now show the space (accumulated - over all OSDs) allocated purely for data objects kept at block - device. - - new column 'compress_bytes_used' - amount of space allocated for compressed - data. i.e., compressed data plus all the allocation, replication and erasure - coding overhead. - - new column 'compress_under_bytes' amount of data passed through compression - (summed over all replicas) and beneficial enough to be stored in a - compressed form. - -* ``ceph pg dump`` output (totals section) has been modified in json - format: - - - new 'USED' column shows the space (accumulated over all OSDs) allocated - purely for data objects kept at block(slow) device. - - 'USED_RAW' is now a sum of 'USED' space and space allocated/reserved at - block device for Ceph purposes, e.g. BlueFS part for BlueStore. - -* The ``ceph osd rm`` command has been deprecated. Users should use - ``ceph osd destroy`` or ``ceph osd purge`` (but after first confirming it is - safe to do so via the ``ceph osd safe-to-destroy`` command). - -* The MDS now supports dropping its cache for the purposes of benchmarking.:: - - ceph tell mds.* cache drop <timeout> - - Note that the MDS cache is cooperatively managed by the clients. It is - necessary for clients to give up capabilities in order for the MDS to fully - drop its cache. This is accomplished by asking all clients to trim as many - caps as possible. The timeout argument to the ``cache drop`` command controls - how long the MDS waits for clients to complete trimming caps. This is optional - and is 0 by default (no timeout). Keep in mind that clients may still retain - caps to open files which will prevent the metadata for those files from being - dropped by both the client and the MDS. (This is an equivalent scenario to - dropping the Linux page/buffer/inode/dentry caches with some processes pinning - some inodes/dentries/pages in cache.) - -* The ``mon_health_preluminous_compat`` and - ``mon_health_preluminous_compat_warning`` config options are - removed, as the related functionality is more than two versions old. - Any legacy monitoring system expecting Jewel-style health output - will need to be updated to work with Nautilus. - -* Nautilus is not supported on any distros still running upstart so upstart - specific files and references have been removed. - -* The ``ceph pg <pgid> list_missing`` command has been renamed to - ``ceph pg <pgid> list_unfound`` to better match its behaviour. - -* The *rbd-mirror* daemon can now retrieve remote peer cluster configuration - secrets from the monitor. To use this feature, the rbd-mirror daemon - CephX user for the local cluster must use the ``profile rbd-mirror`` mon cap. - The secrets can be set using the ``rbd mirror pool peer add`` and - ``rbd mirror pool peer set`` actions. - -* The 'rbd-mirror' daemon will now run in active/active mode by default, where - mirrored images are evenly distributed between all active 'rbd-mirror' - daemons. To revert to active/passive mode, override the - 'rbd_mirror_image_policy_type' config key to 'none'. - -* The ``ceph mds deactivate`` is fully obsolete and references to it in the docs - have been removed or clarified. - -* The libcephfs bindings added the ``ceph_select_filesystem`` function - for use with multiple filesystems. - -* The cephfs python bindings now include ``mount_root`` and ``filesystem_name`` - options in the mount() function. - -* erasure-code: add experimental *Coupled LAYer (CLAY)* erasure codes - support. It features less network traffic and disk I/O when performing - recovery. - -* The ``cache drop`` OSD command has been added to drop an OSD's caches: - - - ``ceph tell osd.x cache drop`` - -* The ``cache status`` OSD command has been added to get the cache stats of an - OSD: - - - ``ceph tell osd.x cache status`` - -* The libcephfs added several functions that allow restarted client to destroy - or reclaim state held by a previous incarnation. These functions are for NFS - servers. - -* The ``ceph`` command line tool now accepts keyword arguments in - the format ``--arg=value`` or ``--arg value``. - -* ``librados::IoCtx::nobjects_begin()`` and - ``librados::NObjectIterator`` now communicate errors by throwing a - ``std::system_error`` exception instead of ``std::runtime_error``. - -* The callback function passed to ``LibRGWFS.readdir()`` now accepts a ``flags`` - parameter. it will be the last parameter passed to ``readdir()`` method. - -* The ``cephfs-data-scan scan_links`` now automatically repair inotables and - snaptable. - -* Configuration values ``mon_warn_not_scrubbed`` and - ``mon_warn_not_deep_scrubbed`` have been renamed. They are now - ``mon_warn_pg_not_scrubbed_ratio`` and ``mon_warn_pg_not_deep_scrubbed_ratio`` - respectively. This is to clarify that these warnings are related to - pg scrubbing and are a ratio of the related interval. These options - are now enabled by default. - -* The MDS cache trimming is now throttled. Dropping the MDS cache - via the ``ceph tell mds.<foo> cache drop`` command or large reductions in the - cache size will no longer cause service unavailability. - -* The CephFS MDS behavior with recalling caps has been significantly improved - to not attempt recalling too many caps at once, leading to instability. - MDS with a large cache (64GB+) should be more stable. - -* MDS now provides a config option ``mds_max_caps_per_client`` (default: 1M) to - limit the number of caps a client session may hold. Long running client - sessions with a large number of caps have been a source of instability in the - MDS when all of these caps need to be processed during certain session - events. It is recommended to not unnecessarily increase this value. - -* The MDS config ``mds_recall_state_timeout`` has been removed. Late - client recall warnings are now generated based on the number of caps - the MDS has recalled which have not been released. The new configs - ``mds_recall_warning_threshold`` (default: 32K) and - ``mds_recall_warning_decay_rate`` (default: 60s) sets the threshold - for this warning. - -* The Telegraf module for the Manager allows for sending statistics to - an Telegraf Agent over TCP, UDP or a UNIX Socket. Telegraf can then - send the statistics to databases like InfluxDB, ElasticSearch, Graphite - and many more. - -* The graylog fields naming the originator of a log event have - changed: the string-form name is now included (e.g., ``"name": - "mgr.foo"``), and the rank-form name is now in a nested section - (e.g., ``"rank": {"type": "mgr", "num": 43243}``). - -* If the cluster log is directed at syslog, the entries are now - prefixed by both the string-form name and the rank-form name (e.g., - ``mgr.x mgr.12345 ...`` instead of just ``mgr.12345 ...``). - -* The JSON output of the ``ceph osd find`` command has replaced the ``ip`` - field with an ``addrs`` section to reflect that OSDs may bind to - multiple addresses. - -* CephFS clients without the 's' flag in their authentication capability - string will no longer be able to create/delete snapshots. To allow - ``client.foo`` to create/delete snapshots in the ``bar`` directory of - filesystem ``cephfs_a``, use command: - - - ``ceph auth caps client.foo mon 'allow r' osd 'allow rw tag cephfs data=cephfs_a' mds 'allow rw, allow rws path=/bar'`` - -* The ``osd_heartbeat_addr`` option has been removed as it served no - (good) purpose: the OSD should always check heartbeats on both the - public and cluster networks. - -* The ``rados`` tool's ``mkpool`` and ``rmpool`` commands have been - removed because they are redundant; please use the ``ceph osd pool - create`` and ``ceph osd pool rm`` commands instead. - -* The ``auid`` property for cephx users and RADOS pools has been - removed. This was an undocumented and partially implemented - capability that allowed cephx users to map capabilities to RADOS - pools that they "owned". Because there are no users we have removed - this support. If any cephx capabilities exist in the cluster that - restrict based on auid then they will no longer parse, and the - cluster will report a health warning like:: - - AUTH_BAD_CAPS 1 auth entities have invalid capabilities - client.bad osd capability parse failed, stopped at 'allow rwx auid 123' of 'allow rwx auid 123' - - The capability can be adjusted with the ``ceph auth caps`` - command. For example,:: - - ceph auth caps client.bad osd 'allow rwx pool foo' - -* The ``ceph-kvstore-tool`` ``repair`` command has been renamed - ``destructive-repair`` since we have discovered it can corrupt an - otherwise healthy rocksdb database. It should be used only as a last-ditch - attempt to recover data from an otherwise corrupted store. - - -* The default memory utilization for the mons has been increased - somewhat. Rocksdb now uses 512 MB of RAM by default, which should - be sufficient for small to medium-sized clusters; large clusters - should tune this up. Also, the ``mon_osd_cache_size`` has been - increase from 10 OSDMaps to 500, which will translate to an - additional 500 MB to 1 GB of RAM for large clusters, and much less - for small clusters. - -* The ``mgr/balancer/max_misplaced`` option has been replaced by a new - global ``target_max_misplaced_ratio`` option that throttles both - balancer activity and automated adjustments to ``pgp_num`` (normally as a - result of ``pg_num`` changes). If you have customized the balancer module - option, you will need to adjust your config to set the new global option - or revert to the default of .05 (5%). - -* By default, Ceph no longer issues a health warning when there are - misplaced objects (objects that are fully replicated but not stored - on the intended OSDs). You can reenable the old warning by setting - ``mon_warn_on_misplaced`` to ``true``. - -* The ``ceph-create-keys`` tool is now obsolete. The monitors - automatically create these keys on their own. For now the script - prints a warning message and exits, but it will be removed in the - next release. Note that ``ceph-create-keys`` would also write the - admin and bootstrap keys to /etc/ceph and /var/lib/ceph, but this - script no longer does that. Any deployment tools that relied on - this behavior should instead make use of the ``ceph auth export - <entity-name>`` command for whichever key(s) they need. - -* The ``mon_osd_pool_ec_fast_read`` option has been renamed - ``osd_pool_default_ec_fast_read`` to be more consistent with other - ``osd_pool_default_*`` options that affect default values for newly - created RADOS pools. - -* The ``mon addr`` configuration option is now deprecated. It can - still be used to specify an address for each monitor in the - ``ceph.conf`` file, but it only affects cluster creation and - bootstrapping, and it does not support listing multiple addresses - (e.g., both a v2 and v1 protocol address). We strongly recommend - the option be removed and instead a single ``mon host`` option be - specified in the ``[global]`` section to allow daemons and clients - to discover the monitors. - -* New command ``ceph fs fail`` has been added to quickly bring down a file - system. This is a single command that unsets the joinable flag on the file - system and brings down all of its ranks. - -* The ``cache drop`` admin socket command has been removed. The ``ceph - tell mds.X cache drop`` remains. - - -Detailed Changelog ------------------- -* add monitoring subdir and Grafana cluster dashboard (`pr#21850 <https://github.com/ceph/ceph/pull/21850>`_, Jan Fajerski) -* auth,common: include cleanups (`pr#23774 <https://github.com/ceph/ceph/pull/23774>`_, Kefu Chai) -* bluestore: bluestore/NVMEDevice.cc: fix ceph_assert() when enable SPDK with 64KB kernel page size (`issue#36624 <http://tracker.ceph.com/issues/36624>`_, `pr#24817 <https://github.com/ceph/ceph/pull/24817>`_, tone.zhang) -* bluestore: bluestore/NVMEDevice.cc: fix NVMEManager thread hang (`issue#37720 <http://tracker.ceph.com/issues/37720>`_, `pr#25646 <https://github.com/ceph/ceph/pull/25646>`_, tone.zhang, Steve Capper) -* bluestore: bluestore/NVMe: use PCIe selector as the path name (`pr#24144 <https://github.com/ceph/ceph/pull/24144>`_, Kefu Chai) -* bluestore,cephfs,core,rbd,rgw: buffer,denc: use ptr::const_iterator for decode (`pr#22015 <https://github.com/ceph/ceph/pull/22015>`_, Kefu Chai, Casey Bodley) -* bluestore: ceph-kvstore-tool: dump fixes (`pr#25262 <https://github.com/ceph/ceph/pull/25262>`_, Adam Kupczyk) -* bluestore: common/blkdev: check retval of stat() (`pr#26040 <https://github.com/ceph/ceph/pull/26040>`_, Kefu Chai) -* bluestore,core: ceph-dencoder: add bluefs types (`pr#22463 <https://github.com/ceph/ceph/pull/22463>`_, Sage Weil) -* bluestore,core,mon,performance: osd,mon: enable level_compaction_dynamic_level_bytes for rocksdb (`issue#24361 <http://tracker.ceph.com/issues/24361>`_, `pr#22337 <https://github.com/ceph/ceph/pull/22337>`_, Kefu Chai) -* bluestore,core: os/bluestore: don't store/use path_block.{db,wal} from meta (`pr#22462 <https://github.com/ceph/ceph/pull/22462>`_, Sage Weil, Alfredo Deza) -* bluestore: os/bluestore: add bluestore_ignore_data_csum option (`pr#26233 <https://github.com/ceph/ceph/pull/26233>`_, Sage Weil) -* bluestore: os/bluestore: add boundary check for cache-autotune related settings (`issue#37507 <http://tracker.ceph.com/issues/37507>`_, `pr#25421 <https://github.com/ceph/ceph/pull/25421>`_, xie xingguo) -* bluestore: os/bluestore/BlueFS: only flush dirty devices when do _fsync (`pr#22110 <https://github.com/ceph/ceph/pull/22110>`_, Jianpeng Ma) -* bluestore: os/bluestore: bluestore_buffer_hit_bytes perf counter doesn't reset (`pr#23576 <https://github.com/ceph/ceph/pull/23576>`_, Igor Fedotov) -* bluestore: os/bluestore: check return value of _open_bluefs (`pr#25471 <https://github.com/ceph/ceph/pull/25471>`_, Jianpeng Ma) -* bluestore: os/bluestore: cleanups (`pr#22556 <https://github.com/ceph/ceph/pull/22556>`_, Jianpeng Ma) -* bluestore: os/bluestore: deep fsck fails on inspecting very large onodes (`pr#26170 <https://github.com/ceph/ceph/pull/26170>`_, Igor Fedotov) -* bluestore: os/bluestore: do not assert on non-zero err codes from compress() call (`pr#25891 <https://github.com/ceph/ceph/pull/25891>`_, Igor Fedotov) -* bluestore: os/bluestore: firstly delete db then delete bluefs if open db met error (`pr#22336 <https://github.com/ceph/ceph/pull/22336>`_, Jianpeng Ma) -* bluestore: os/bluestore: fix and unify log output on allocation failure (`pr#25335 <https://github.com/ceph/ceph/pull/25335>`_, Igor Fedotov) -* bluestore: os/bluestore: fix assertion in StupidAllocator::get_fragmentation (`pr#23606 <https://github.com/ceph/ceph/pull/23606>`_, Igor Fedotov) -* bluestore: os/bluestore: fix bloom filter num entry miscalculation in repairer (`issue#25001 <http://tracker.ceph.com/issues/25001>`_, `pr#24076 <https://github.com/ceph/ceph/pull/24076>`_, Igor Fedotov) -* bluestore: os/bluestore: fix bluefs extent miscalculations on small slow device (`pr#22563 <https://github.com/ceph/ceph/pull/22563>`_, Igor Fedotov) -* bluestore: os/bluestore: fix race between remove_collection and object removals (`pr#23257 <https://github.com/ceph/ceph/pull/23257>`_, Igor Fedotov) -* bluestore: os/bluestore: fixup access a destroy cond cause deadlock or undefine behavior (`pr#25659 <https://github.com/ceph/ceph/pull/25659>`_, linbing) -* bluestore: os/bluestore: introduce new BlueFS perf counter to track the amount of (`pr#22086 <https://github.com/ceph/ceph/pull/22086>`_, Igor Fedotov) -* bluestore: os/bluestore/KernelDevice: misc cleanup (`pr#21491 <https://github.com/ceph/ceph/pull/21491>`_, Jianpeng Ma) -* bluestore: os/bluestore/KernelDevice: use flock(2) for block device lock (`issue#38150 <http://tracker.ceph.com/issues/38150>`_, `pr#26245 <https://github.com/ceph/ceph/pull/26245>`_, Sage Weil) -* bluestore: os/bluestore: misc cleanup (`pr#22472 <https://github.com/ceph/ceph/pull/22472>`_, Jianpeng Ma) -* bluestore: os/bluestore: Only use F_SET_FILE_RW_HINT when available (`pr#26431 <https://github.com/ceph/ceph/pull/26431>`_, Willem Jan Withagen) -* bluestore: os/bluestore: Only use ``WRITE_LIFE_`` when available (`pr#25735 <https://github.com/ceph/ceph/pull/25735>`_, Willem Jan Withagen) -* bluestore: os/bluestore: remove redundant fault_range (`pr#22898 <https://github.com/ceph/ceph/pull/22898>`_, Jianpeng Ma) -* bluestore: os/bluestore: remove useless condtion (`pr#22335 <https://github.com/ceph/ceph/pull/22335>`_, Jianpeng Ma) -* bluestore: os/bluestore: simplify and fix SharedBlob::put() (`issue#24211 <http://tracker.ceph.com/issues/24211>`_, `pr#22123 <https://github.com/ceph/ceph/pull/22123>`_, Sage Weil) -* bluestore: os/bluestore: support for FreeBSD (`pr#25608 <https://github.com/ceph/ceph/pull/25608>`_, Alan Somers, Kefu Chai) -* bluestore: osd/osd_types: fix pg_t::contains() to check pool id too (`issue#32731 <http://tracker.ceph.com/issues/32731>`_, `pr#24085 <https://github.com/ceph/ceph/pull/24085>`_, Sage Weil) -* bluestore: os/objectstore: add a new op OP_CREATE (`pr#22385 <https://github.com/ceph/ceph/pull/22385>`_, Jianpeng Ma) -* bluestore,performance: common/PriorityCache: First Step toward priority based caching (`pr#22009 <https://github.com/ceph/ceph/pull/22009>`_, Mark Nelson) -* bluestore,performance: os/bluestore: allocator pruning (`pr#21854 <https://github.com/ceph/ceph/pull/21854>`_, Igor Fedotov) -* bluestore,performance: os/bluestore/BlueFS: reduce bufferlist rebuilds during WAL writes (`pr#21689 <https://github.com/ceph/ceph/pull/21689>`_, Piotr Dałek) -* bluestore,performance: os/bluestore: use the monotonic clock for perf counters latencies (`pr#22121 <https://github.com/ceph/ceph/pull/22121>`_, Mohamad Gebai) -* bluestore: silence Clang warning on possible uninitialize usuage (`pr#25702 <https://github.com/ceph/ceph/pull/25702>`_, Willem Jan Withagen) -* bluestore: spdk: fix ceph-osd crash when activate SPDK (`issue#24371 <http://tracker.ceph.com/issues/24371>`_, `pr#22356 <https://github.com/ceph/ceph/pull/22356>`_, tone-zhang) -* bluestore: test/fio: add option single_pool_mode in ceph-bluestore.fio (`pr#21929 <https://github.com/ceph/ceph/pull/21929>`_, Jianpeng Ma) -* bluestore,tests: test/objectstore: fix random generator in allocator_bench (`pr#22544 <https://github.com/ceph/ceph/pull/22544>`_, Igor Fedotov) -* bluestore,tools: os/bluestore: allow ceph-bluestore-tool to coalesce, add and migrate BlueFS backing volumes (`pr#23103 <https://github.com/ceph/ceph/pull/23103>`_, Igor Fedotov) -* bluestore,tools: tools/ceph-bluestore-tool: avoid mon/config access when calling global… (`pr#22085 <https://github.com/ceph/ceph/pull/22085>`_, Igor Fedotov) -* build/ops: Add new OpenSUSE Leap id for install-deps.sh (`issue#25064 <http://tracker.ceph.com/issues/25064>`_, `pr#22793 <https://github.com/ceph/ceph/pull/22793>`_, Kyr Shatskyy) -* build/ops: arch/arm: Allow ceph_crc32c_aarch64 to be chosen only if it is compil… (`pr#24126 <https://github.com/ceph/ceph/pull/24126>`_, David Wang) -* build/ops: auth: do not use GSS/KRB5 if ! HAVE_GSSAPI (`pr#25460 <https://github.com/ceph/ceph/pull/25460>`_, Kefu Chai) -* build/ops: build: 32 bit architecture fixes (`pr#23485 <https://github.com/ceph/ceph/pull/23485>`_, James Page) -* build/ops: build: further removal of `subman` configuration (`issue#38261 <http://tracker.ceph.com/issues/38261>`_, `pr#26368 <https://github.com/ceph/ceph/pull/26368>`_, Alfredo Deza) -* build/ops: build: LLVM ld does not like the versioning scheme (`pr#26801 <https://github.com/ceph/ceph/pull/26801>`_, Willem Jan Withagen) -* build/ops: ceph-create-keys: Misc Python 3 fixes (`issue#37641 <http://tracker.ceph.com/issues/37641>`_, `pr#25411 <https://github.com/ceph/ceph/pull/25411>`_, James Page) -* build/ops,cephfs: deb,rpm: fix python-cephfs dependencies (`issue#24919 <http://tracker.ceph.com/issues/24919>`_, `issue#24918 <http://tracker.ceph.com/issues/24918>`_, `pr#23043 <https://github.com/ceph/ceph/pull/23043>`_, Kefu Chai) -* build/ops: ceph.in: Add support for python 3 (`pr#24739 <https://github.com/ceph/ceph/pull/24739>`_, Tiago Melo) -* build/ops: ceph.spec.in: Don't use noarch for mgr module subpackages, fix /usr/lib64/ceph/mgr dir ownership (`pr#26398 <https://github.com/ceph/ceph/pull/26398>`_, Tim Serong) -* build/ops: change ceph-mgr package depency from py-bcrypt to python2-bcrypt (`issue#27206 <http://tracker.ceph.com/issues/27206>`_, `pr#23648 <https://github.com/ceph/ceph/pull/23648>`_, Konstantin Sakhinov) -* build/ops: civetweb: pull up to ceph-master (`pr#26515 <https://github.com/ceph/ceph/pull/26515>`_, Abhishek Lekshmanan) -* build/ops: cmake,do_freebsd.sh: disable rdma features (`pr#22752 <https://github.com/ceph/ceph/pull/22752>`_, Kefu Chai) -* build/ops: cmake/modules/BuildDPDK.cmake: Build required DPDK libraries (`issue#36341 <http://tracker.ceph.com/issues/36341>`_, `pr#24487 <https://github.com/ceph/ceph/pull/24487>`_, Brad Hubbard) -* build/ops: cmake/modules/BuildRocksDB.cmake: enable compressions for rocksdb (`issue#24025 <http://tracker.ceph.com/issues/24025>`_, `pr#22181 <https://github.com/ceph/ceph/pull/22181>`_, Kefu Chai) -* build/ops: cmake,rgw: make amqp support optional (`pr#26555 <https://github.com/ceph/ceph/pull/26555>`_, Kefu Chai) -* build/ops: cmake,rpm,deb: install mgr plugins into /usr/share/ceph/mgr (`pr#26446 <https://github.com/ceph/ceph/pull/26446>`_, Kefu Chai) -* build/ops: cmake,seastar: pick up latest seastar (`pr#25474 <https://github.com/ceph/ceph/pull/25474>`_, Kefu Chai) -* build/ops,common: compressor: Fix build of Brotli Compressor (`pr#24967 <https://github.com/ceph/ceph/pull/24967>`_, BI SHUN KE) -* build/ops,common,core: test: make readable.sh fail if it doesn't run anything (`pr#24812 <https://github.com/ceph/ceph/pull/24812>`_, Greg Farnum) -* build/ops,core: cmake,common,filestore: silence gcc-8 warnings/errors (`pr#21837 <https://github.com/ceph/ceph/pull/21837>`_, Kefu Chai) -* build/ops,core,rbd: include/memory.h: remove memory.h (`pr#22690 <https://github.com/ceph/ceph/pull/22690>`_, Kefu Chai) -* build/ops,core: systemd: only restart 3 times in 30 minutes, as fast as possible (`issue#24368 <http://tracker.ceph.com/issues/24368>`_, `pr#22349 <https://github.com/ceph/ceph/pull/22349>`_, Greg Farnum) -* build/ops,core,tests: objectstore/test/fio: Fixed fio compilation when tcmalloc is used (`pr#23962 <https://github.com/ceph/ceph/pull/23962>`_, Adam Kupczyk) -* build/ops: credits.sh: Ignore package-lock.json and .xlf files (`pr#24762 <https://github.com/ceph/ceph/pull/24762>`_, Tiago Melo) -* build/ops: deb: drop redundant ceph-common recommends (`pr#20133 <https://github.com/ceph/ceph/pull/20133>`_, Nathan Cutler) -* build/ops: debian/control: change Architecture python plugins to "all" (`pr#26377 <https://github.com/ceph/ceph/pull/26377>`_, Kefu Chai) -* build/ops: debian/control: require fuse for ceph-fuse (`issue#21057 <http://tracker.ceph.com/issues/21057>`_, `pr#23675 <https://github.com/ceph/ceph/pull/23675>`_, Thomas Serlin) -* build/ops: debian: correct ceph-common relationship with older radosgw package (`pr#24996 <https://github.com/ceph/ceph/pull/24996>`_, Matthew Vernon) -* build/ops: debian: drop '-DUSE_CRYPTOPP=OFF' from cmake options (`pr#22471 <https://github.com/ceph/ceph/pull/22471>`_, Kefu Chai) -* build/ops: debian: librados-dev should replace librados2-dev (`pr#25916 <https://github.com/ceph/ceph/pull/25916>`_, Kefu Chai) -* build/ops: debian/rules: fix ceph-mgr .pyc files left behind (`issue#26883 <http://tracker.ceph.com/issues/26883>`_, `pr#23615 <https://github.com/ceph/ceph/pull/23615>`_, Dan Mick) -* build/ops: deb,rpm,do_cmake: switch to cmake3 (`pr#22896 <https://github.com/ceph/ceph/pull/22896>`_, Kefu Chai) -* build/ops: dmclock, cmake: sync up with ceph/dmclock, dmclock related cleanups (`issue#26998 <http://tracker.ceph.com/issues/26998>`_, `pr#23643 <https://github.com/ceph/ceph/pull/23643>`_, Kefu Chai) -* build/ops: dmclock: update dmclock submodule sha1 to tip of ceph/dmclock.git master (`pr#23837 <https://github.com/ceph/ceph/pull/23837>`_, Ricardo Dias) -* build/ops: do_cmake.sh: automate py3 build options for certain distros (`pr#25205 <https://github.com/ceph/ceph/pull/25205>`_, Nathan Cutler) -* build/ops: do_cmake.sh: SUSE builds need WITH_RADOSGW_AMQP_ENDPOINT=OFF (`pr#26695 <https://github.com/ceph/ceph/pull/26695>`_, Nathan Cutler) -* build/ops: do_freebsd.sh: FreeBSD building needs the llvm linker (`pr#25247 <https://github.com/ceph/ceph/pull/25247>`_, Willem Jan Withagen) -* build/ops: dout: declare dpp using `decltype(auto)` instead of `auto` (`pr#22207 <https://github.com/ceph/ceph/pull/22207>`_, Kefu Chai) -* build/ops: dpdk: drop dpdk submodule (`issue#24032 <http://tracker.ceph.com/issues/24032>`_, `pr#21856 <https://github.com/ceph/ceph/pull/21856>`_, Kefu Chai) -* build/ops: examples/Makefile: add -Wno-unused-parameter to avoid compile error (`pr#23581 <https://github.com/ceph/ceph/pull/23581>`_, You Ji) -* build/ops: Improving make check reliability (`pr#22441 <https://github.com/ceph/ceph/pull/22441>`_, Erwan Velu) -* build/ops: include: define errnos if not defined for better portablity (`pr#25302 <https://github.com/ceph/ceph/pull/25302>`_, Willem Jan Withagen) -* build/ops: install-deps: check the exit status for the $builddepcmd (`pr#22682 <https://github.com/ceph/ceph/pull/22682>`_, Yunchuan Wen) -* build/ops: install-deps: do not specify unknown options (`pr#24315 <https://github.com/ceph/ceph/pull/24315>`_, Kefu Chai) -* build/ops: install-deps: install setuptools before upgrading virtualenv (`pr#25039 <https://github.com/ceph/ceph/pull/25039>`_, Kefu Chai) -* build/ops: install-deps: nuke wheelhouse if it's stale (`pr#22028 <https://github.com/ceph/ceph/pull/22028>`_, Kefu Chai) -* build/ops: install-deps,run-make-check: use ceph-libboost repo (`issue#25186 <http://tracker.ceph.com/issues/25186>`_, `pr#23995 <https://github.com/ceph/ceph/pull/23995>`_, Kefu Chai) -* build/ops: install-deps.sh: Add Kerberos requirement for FreeBSD (`pr#25688 <https://github.com/ceph/ceph/pull/25688>`_, Willem Jan Withagen) -* build/ops: install-deps.sh: disable centos-sclo-rh-source (`issue#37707 <http://tracker.ceph.com/issues/37707>`_, `pr#25629 <https://github.com/ceph/ceph/pull/25629>`_, Brad Hubbard) -* build/ops: install-deps.sh: fix gcc detection and install pre-built libboost on bionic (`pr#25169 <https://github.com/ceph/ceph/pull/25169>`_, Changcheng Liu, Kefu Chai) -* build/ops: install-deps.sh: fix installing gcc on ubuntu when no old compiler (`pr#22488 <https://github.com/ceph/ceph/pull/22488>`_, Tomasz Setkowski) -* build/ops: install-deps.sh: import ubuntu-toolchain-r's key without keyserver (`pr#22964 <https://github.com/ceph/ceph/pull/22964>`_, Kefu Chai) -* build/ops: install-deps.sh: install libtool-ltdl-devel for building python-saml (`pr#25071 <https://github.com/ceph/ceph/pull/25071>`_, Kefu Chai) -* build/ops: install-deps.sh: refrain from installing/using lsb_release, and other cleanup (`issue#18163 <http://tracker.ceph.com/issues/18163>`_, `pr#23361 <https://github.com/ceph/ceph/pull/23361>`_, Nathan Cutler) -* build/ops: install-deps.sh: Remove CR repo (`issue#13997 <http://tracker.ceph.com/issues/13997>`_, `pr#25211 <https://github.com/ceph/ceph/pull/25211>`_, Brad Hubbard, Alfredo Deza) -* build/ops: install-deps.sh: selectively install dependencies (`pr#26402 <https://github.com/ceph/ceph/pull/26402>`_, Kefu Chai) -* build/ops: install-deps.sh: set with_seastar (`pr#23079 <https://github.com/ceph/ceph/pull/23079>`_, Nathan Cutler) -* build/ops: install-deps.sh: support install gcc7 in xenial aarch64 (`pr#22451 <https://github.com/ceph/ceph/pull/22451>`_, Yunchuan Wen) -* build/ops: install-deps.sh: Update python requirements for FreeBSD (`pr#25245 <https://github.com/ceph/ceph/pull/25245>`_, Willem Jan Withagen) -* build/ops: install-deps.sh: use the latest setuptools (`pr#26156 <https://github.com/ceph/ceph/pull/26156>`_, Kefu Chai) -* build/ops: install-deps: s/openldap-client/openldap24-client/ (`pr#23912 <https://github.com/ceph/ceph/pull/23912>`_, Kefu Chai) -* build/ops: libradosstriper: conditional compile (`pr#21983 <https://github.com/ceph/ceph/pull/21983>`_, Jesse Williamson) -* build/ops: make-debs.sh: clean dir to allow building deb packages multiple times (`pr#25177 <https://github.com/ceph/ceph/pull/25177>`_, Changcheng Liu) -* build/ops: man: skip directive starting with ".." (`pr#23580 <https://github.com/ceph/ceph/pull/23580>`_, Kefu Chai) -* build/ops,mgr: build: mgr: check for python's ssl version linkage (`issue#24282 <http://tracker.ceph.com/issues/24282>`_, `pr#22659 <https://github.com/ceph/ceph/pull/22659>`_, Kefu Chai, Abhishek Lekshmanan) -* build/ops,mgr: cmake,deb,rpm: remove cython 0.29's subinterpreter check, re-enable build with cython 0.29+ (`pr#25585 <https://github.com/ceph/ceph/pull/25585>`_, Tim Serong) -* build/ops: mgr/dashboard: Add html-linter (`pr#24273 <https://github.com/ceph/ceph/pull/24273>`_, Tiago Melo) -* build/ops: mgr/dashboard: Add i18n validation script (`pr#25179 <https://github.com/ceph/ceph/pull/25179>`_, Tiago Melo) -* build/ops: mgr/dashboard: Add package-lock.json (`pr#23285 <https://github.com/ceph/ceph/pull/23285>`_, Tiago Melo) -* build/ops: mgr/dashboard: Disable showing xi18n's progress (`pr#25427 <https://github.com/ceph/ceph/pull/25427>`_, Tiago Melo) -* build/ops: mgr/dashboard: Fix run-frontend-e2e-tests.sh (`pr#25157 <https://github.com/ceph/ceph/pull/25157>`_, Tiago Melo) -* build/ops: mgr/dashboard: fix the version of all frontend dependencies (`pr#22712 <https://github.com/ceph/ceph/pull/22712>`_, Tiago Melo) -* build/ops: mgr/dashboard: Remove angular build progress logs during cmake (`pr#23115 <https://github.com/ceph/ceph/pull/23115>`_, Tiago Melo) -* build/ops: mgr/dashboard: Update Node.js to current LTS (`pr#24932 <https://github.com/ceph/ceph/pull/24932>`_, Tiago Melo) -* build/ops: mgr/dashboard: Update node version (`pr#22639 <https://github.com/ceph/ceph/pull/22639>`_, Tiago Melo) -* build/ops: mgr/diskprediction: Replace local predictor model file (`pr#24484 <https://github.com/ceph/ceph/pull/24484>`_, Rick Chen) -* build/ops,mgr: mgr/dashboard: Fix building under FreeBSD (`pr#22562 <https://github.com/ceph/ceph/pull/22562>`_, Willem Jan Withagen) -* build/ops: move dmclock subtree into submodule (`pr#21651 <https://github.com/ceph/ceph/pull/21651>`_, Danny Al-Gaaf) -* build/ops,pybind: ceph: do not raise StopIteration within generator (`pr#25400 <https://github.com/ceph/ceph/pull/25400>`_, Jason Dillaman) -* build/ops,rbd: osd,mon,pybind: Make able to compile with Clang (`pr#21861 <https://github.com/ceph/ceph/pull/21861>`_, Adam C. Emerson) -* build/ops,rbd: selinux: add support for ceph iscsi (`pr#24936 <https://github.com/ceph/ceph/pull/24936>`_, Mike Christie) -* build/ops,rbd: systemd: enable ceph-rbd-mirror.target (`pr#24935 <https://github.com/ceph/ceph/pull/24935>`_, Sébastien Han) -* build/ops,rgw: build/rgw: unittest_rgw_dmclock_scheduler does not need Boost_LIBRARIES (`pr#26799 <https://github.com/ceph/ceph/pull/26799>`_, Willem Jan Withagen) -* build/ops,rgw: cls: build cls_otp only WITH_RADOSGW (`pr#22548 <https://github.com/ceph/ceph/pull/22548>`_, Piotr Dałek) -* build/ops,rgw: deb,rpm: package librgw_admin_user.{h,so.\*} (`pr#22205 <https://github.com/ceph/ceph/pull/22205>`_, Kefu Chai) -* build/ops: rocksdb: sync with upstream (`issue#23653 <http://tracker.ceph.com/issues/23653>`_, `pr#22236 <https://github.com/ceph/ceph/pull/22236>`_, Kefu Chai) -* build/ops: rpm: bump up required GCC version to 7.3.1 (`pr#24130 <https://github.com/ceph/ceph/pull/24130>`_, Kefu Chai) -* build/ops: rpm,deb: remove python-jinja2 dependency (`pr#26379 <https://github.com/ceph/ceph/pull/26379>`_, Kefu Chai) -* build/ops: rpm: do not exclude s390x build on openSUSE (`pr#26268 <https://github.com/ceph/ceph/pull/26268>`_, Nathan Cutler) -* build/ops: rpm: Fix Fedora error "No matching package to install: 'Cython3'" (`issue#35831 <http://tracker.ceph.com/issues/35831>`_, `pr#23993 <https://github.com/ceph/ceph/pull/23993>`_, Brad Hubbard) -* build/ops: rpm: fix libradospp-devel runtime dependency (`pr#25491 <https://github.com/ceph/ceph/pull/25491>`_, Nathan Cutler) -* build/ops: rpm: fix seastar build dependencies for SUSE (`pr#23089 <https://github.com/ceph/ceph/pull/23089>`_, Nathan Cutler) -* build/ops: rpm: fix seastar build dependencies (`pr#23386 <https://github.com/ceph/ceph/pull/23386>`_, Nathan Cutler) -* build/ops: rpm: fix xmlsec1 build dependency for dashboard make check (`pr#26119 <https://github.com/ceph/ceph/pull/26119>`_, Nathan Cutler) -* build/ops: rpm: Install python2-Cython on f28 (`pr#26756 <https://github.com/ceph/ceph/pull/26756>`_, Brad Hubbard) -* build/ops: rpm: make ceph-grafana-dashboards own its directories (`issue#37485 <http://tracker.ceph.com/issues/37485>`_, `pr#25347 <https://github.com/ceph/ceph/pull/25347>`_, Nathan Cutler, Tim Serong) -* build/ops: rpm: make Python dependencies somewhat less confusing (`pr#25963 <https://github.com/ceph/ceph/pull/25963>`_, Nathan Cutler) -* build/ops: rpm: make sudo a build dependency (`pr#23077 <https://github.com/ceph/ceph/pull/23077>`_, Nathan Cutler) -* build/ops: rpm: package crypto libraries for all archs (`pr#26202 <https://github.com/ceph/ceph/pull/26202>`_, Nathan Cutler) -* build/ops: rpm: Package grafana dashboards (`pr#24735 <https://github.com/ceph/ceph/pull/24735>`_, Boris Ranto) -* build/ops: rpm: provide files moved from ceph-test … (`issue#22558 <http://tracker.ceph.com/issues/22558>`_, `pr#20401 <https://github.com/ceph/ceph/pull/20401>`_, Nathan Cutler) -* build/ops: rpm: RHEL 8 fixes (`pr#26520 <https://github.com/ceph/ceph/pull/26520>`_, Ken Dreyer) -* build/ops: rpm: RHEL 8 needs Python 3 build (`pr#25223 <https://github.com/ceph/ceph/pull/25223>`_, Nathan Cutler) -* build/ops: rpm: stop install-deps.sh clobbering spec file Python build setting (`issue#37301 <http://tracker.ceph.com/issues/37301>`_, `pr#25181 <https://github.com/ceph/ceph/pull/25181>`_, Nathan Cutler, Brad Hubbard) -* build/ops: rpm: Use hardened LDFLAGS (`issue#36316 <http://tracker.ceph.com/issues/36316>`_, `pr#24425 <https://github.com/ceph/ceph/pull/24425>`_, Boris Ranto) -* build/ops: rpm: use updated gperftools (`issue#35969 <http://tracker.ceph.com/issues/35969>`_, `pr#24124 <https://github.com/ceph/ceph/pull/24124>`_, Kefu Chai) -* build/ops: rpm: Use updated gperftools-libs at runtime (`issue#36508 <http://tracker.ceph.com/issues/36508>`_, `pr#24652 <https://github.com/ceph/ceph/pull/24652>`_, Brad Hubbard) -* build/ops: run-make-check: enable --with-seastar option (`pr#22809 <https://github.com/ceph/ceph/pull/22809>`_, Kefu Chai) -* build/ops: run-make-check: set WITH_SEASTAR with a non-empty string (`pr#23108 <https://github.com/ceph/ceph/pull/23108>`_, Kefu Chai) -* build/ops: run-make-check.sh: Adding ccache tuning for the CI (`pr#22847 <https://github.com/ceph/ceph/pull/22847>`_, Erwan Velu) -* build/ops: run-make-check.sh: ccache goodness for everyone (`issue#24817 <http://tracker.ceph.com/issues/24817>`_, `issue#24777 <http://tracker.ceph.com/issues/24777>`_, `pr#22867 <https://github.com/ceph/ceph/pull/22867>`_, Nathan Cutler) -* build/ops: run-make-check: should use sudo for running sysctl (`pr#23708 <https://github.com/ceph/ceph/pull/23708>`_, Kefu Chai) -* build/ops: run-make-check: Showing configuration before the build (`pr#23609 <https://github.com/ceph/ceph/pull/23609>`_, Erwan Velu) -* build/ops: seastar: lower the required yaml-cpp version to 0.5.1 (`pr#23255 <https://github.com/ceph/ceph/pull/23255>`_, Kefu Chai) -* build/ops: seastar: pickup the change to link pthread (`pr#25671 <https://github.com/ceph/ceph/pull/25671>`_, Kefu Chai) -* build/ops: selinux: Allow ceph to execute ldconfig (`pr#20118 <https://github.com/ceph/ceph/pull/20118>`_, Boris Ranto) -* build/ops: spdk: update to latest spdk-18.05 branch (`pr#22547 <https://github.com/ceph/ceph/pull/22547>`_, Kefu Chai) -* build/ops: spec: requires ceph base instead of common (`issue#37620 <http://tracker.ceph.com/issues/37620>`_, `pr#25503 <https://github.com/ceph/ceph/pull/25503>`_, Sébastien Han) -* build/ops: test: move ceph-dencoder to src/tools (`pr#23228 <https://github.com/ceph/ceph/pull/23228>`_, Kefu Chai) -* build/ops: test,qa: s/.libs/lib/ (`pr#20734 <https://github.com/ceph/ceph/pull/20734>`_, Kefu Chai) -* build/ops,tests: cmake,run-make-check: always enable WITH_GTEST_PARALLEL (`pr#23382 <https://github.com/ceph/ceph/pull/23382>`_, Kefu Chai) -* build/ops,tests: deb,rpm,qa: split dashboard package (`pr#26380 <https://github.com/ceph/ceph/pull/26380>`_, Kefu Chai) -* build/ops,tests: mgr/dashboard: Fix localStorage problem in Jest (`pr#23281 <https://github.com/ceph/ceph/pull/23281>`_, Tiago Melo) -* build/ops,tests: mgr/dashboard: Object Gateway user configuration (`pr#25494 <https://github.com/ceph/ceph/pull/25494>`_, Laura Paduano) -* build/ops,tests: src/test: Using gtest-parallel to speedup unittests (`pr#22577 <https://github.com/ceph/ceph/pull/22577>`_, Kefu Chai, Erwan Velu) -* build/ops,tests: tests/fio: fix build failures and ensure this is covered by run-make-check.sh (`pr#23231 <https://github.com/ceph/ceph/pull/23231>`_, Kefu Chai, Igor Fedotov) -* build/ops,tests: tests/qa: Adding $ distro mix - rgw (`pr#21932 <https://github.com/ceph/ceph/pull/21932>`_, Yuri Weinstein) -* build/ops,tests: tools/ceph-dencoder: conditionally link against mds (`pr#25255 <https://github.com/ceph/ceph/pull/25255>`_, Kefu Chai) -* build/ops,tools: tool: link rbd-ggate against librados-cxx (`pr#24901 <https://github.com/ceph/ceph/pull/24901>`_, Willem Jan Withagen) -* ceph-disk: get_partition_dev() should fail until get_dev_path(partnam… (`pr#21415 <https://github.com/ceph/ceph/pull/21415>`_, Erwan Velu) -* cephfs: doc/releases: update CephFS mimic notes (`issue#23775 <http://tracker.ceph.com/issues/23775>`_, `pr#22232 <https://github.com/ceph/ceph/pull/22232>`_, Patrick Donnelly) -* cephfs: mgr/dashboard: NFS Ganesha management REST API (`pr#25918 <https://github.com/ceph/ceph/pull/25918>`_, Lenz Grimmer, Ricardo Dias, Jeff Layton) -* cephfs,mgr,pybind: pybind/mgr: Unified bits of volumes and orchestrator (`pr#25492 <https://github.com/ceph/ceph/pull/25492>`_, Sebastian Wagner) -* cephfs,mon: MDSMonitor: silence unable to load metadata (`pr#25693 <https://github.com/ceph/ceph/pull/25693>`_, Song Shun) -* cephfs,mon: mon/MDSMonitor: do not send redundant MDS health messages to cluster log (`issue#24308 <http://tracker.ceph.com/issues/24308>`_, `pr#22252 <https://github.com/ceph/ceph/pull/22252>`_, Sage Weil) -* cephfs: qa: fix symlink (`pr#23997 <https://github.com/ceph/ceph/pull/23997>`_, Patrick Donnelly) -* cephfs,rbd: osdc: Fix the wrong BufferHead offset (`pr#22495 <https://github.com/ceph/ceph/pull/22495>`_, dongdong tao) -* cephfs,rbd: osdc: optimize the code doing the BufferHead mapping (`pr#22509 <https://github.com/ceph/ceph/pull/22509>`_, dongdong tao) -* cephfs,rbd: osdc: reduce ObjectCacher's memory fragments (`issue#36192 <http://tracker.ceph.com/issues/36192>`_, `pr#24297 <https://github.com/ceph/ceph/pull/24297>`_, "Yan, Zheng") -* cephfs,tests: qa: fix run call args (`issue#36450 <http://tracker.ceph.com/issues/36450>`_, `pr#24597 <https://github.com/ceph/ceph/pull/24597>`_, Patrick Donnelly) -* cephfs,tests: qa: install python3-cephfs for fs suite (`pr#23411 <https://github.com/ceph/ceph/pull/23411>`_, Kefu Chai) -* cephfs,tests: qa/suites/powercycle: whitelist MDS_SLOW_REQUEST (`pr#23151 <https://github.com/ceph/ceph/pull/23151>`_, Neha Ojha) -* cephfs,tests: qa/workunits/suites/pjd.sh: use correct dir name (`pr#22233 <https://github.com/ceph/ceph/pull/22233>`_, Neha Ojha) -* ceph-volume: activate option --auto-detect-objectstore respects --no-systemd (`issue#36249 <http://tracker.ceph.com/issues/36249>`_, `pr#24355 <https://github.com/ceph/ceph/pull/24355>`_, Alfredo Deza) -* ceph-volume: Adapt code to support Python3 (`pr#25324 <https://github.com/ceph/ceph/pull/25324>`_, Volker Theile) -* ceph-volume: add --all flag to simple activate (`pr#26225 <https://github.com/ceph/ceph/pull/26225>`_, Jan Fajerski) -* ceph-volume add a __release__ string, to help version-conditional calls (`issue#25171 <http://tracker.ceph.com/issues/25171>`_, `pr#23332 <https://github.com/ceph/ceph/pull/23332>`_, Alfredo Deza) -* ceph-volume: add inventory command (`issue#24972 <http://tracker.ceph.com/issues/24972>`_, `pr#24859 <https://github.com/ceph/ceph/pull/24859>`_, Jan Fajerski) -* ceph-volume: Additional work on ceph-volume to add some choose_disk capabilities (`issue#36446 <http://tracker.ceph.com/issues/36446>`_, `pr#24504 <https://github.com/ceph/ceph/pull/24504>`_, Erwan Velu) -* ceph-volume add new ceph-handlers role from ceph-ansible (`issue#36251 <http://tracker.ceph.com/issues/36251>`_, `pr#24336 <https://github.com/ceph/ceph/pull/24336>`_, Alfredo Deza) -* ceph-volume: adds a --prepare flag to `lvm batch` (`issue#36363 <http://tracker.ceph.com/issues/36363>`_, `pr#24587 <https://github.com/ceph/ceph/pull/24587>`_, Andrew Schoen) -* ceph-volume: add space between words (`pr#26246 <https://github.com/ceph/ceph/pull/26246>`_, Sébastien Han) -* ceph-volume: adds test for `ceph-volume lvm list /dev/sda` (`issue#24784 <http://tracker.ceph.com/issues/24784>`_, `issue#24957 <http://tracker.ceph.com/issues/24957>`_, `pr#23348 <https://github.com/ceph/ceph/pull/23348>`_, Andrew Schoen) -* ceph-volume: Add unit test (`pr#25321 <https://github.com/ceph/ceph/pull/25321>`_, Volker Theile) -* ceph-volume: allow to specify --cluster-fsid instead of reading from ceph.conf (`issue#26953 <http://tracker.ceph.com/issues/26953>`_, `pr#24407 <https://github.com/ceph/ceph/pull/24407>`_, Alfredo Deza) -* ceph-volume: an OSD ID must be exist and be destroyed before reuse (`pr#23093 <https://github.com/ceph/ceph/pull/23093>`_, Andrew Schoen, Ron Allred) -* ceph-volume batch: allow journal+block.db sizing on the CLI (`issue#36088 <http://tracker.ceph.com/issues/36088>`_, `pr#24201 <https://github.com/ceph/ceph/pull/24201>`_, Alfredo Deza) -* ceph-volume batch: allow --osds-per-device, default it to 1 (`issue#35913 <http://tracker.ceph.com/issues/35913>`_, `pr#24060 <https://github.com/ceph/ceph/pull/24060>`_, Alfredo Deza) -* ceph-volume batch carve out lvs for bluestore (`pr#24019 <https://github.com/ceph/ceph/pull/24019>`_, Alfredo Deza) -* ceph-volume batch command (`issue#24492 <http://tracker.ceph.com/issues/24492>`_, `pr#23075 <https://github.com/ceph/ceph/pull/23075>`_, Alfredo Deza) -* ceph-volume: batch tests for mixed-type of devices (`issue#35535 <http://tracker.ceph.com/issues/35535>`_, `issue#27210 <http://tracker.ceph.com/issues/27210>`_, `pr#23963 <https://github.com/ceph/ceph/pull/23963>`_, Alfredo Deza) -* ceph-volume custom cluster names fail on filestore trigger (`issue#27210 <http://tracker.ceph.com/issues/27210>`_, `pr#24251 <https://github.com/ceph/ceph/pull/24251>`_, Alfredo Deza) -* ceph-volume: do not pin the testinfra version for the simple tests (`pr#23268 <https://github.com/ceph/ceph/pull/23268>`_, Andrew Schoen) -* ceph-volume: do not send (lvm) stderr/stdout to the terminal, use the logfile (`issue#36492 <http://tracker.ceph.com/issues/36492>`_, `pr#24738 <https://github.com/ceph/ceph/pull/24738>`_, Alfredo Deza) -* ceph-volume do not use stdin in luminous (`issue#25173 <http://tracker.ceph.com/issues/25173>`_, `pr#23355 <https://github.com/ceph/ceph/pull/23355>`_, Alfredo Deza) -* ceph-volume: don't create osd['block.db'] by default (`issue#38472 <http://tracker.ceph.com/issues/38472>`_, `pr#26627 <https://github.com/ceph/ceph/pull/26627>`_, Jan Fajerski) -* ceph-volume: earlier detection for --journal and --filestore flag requirements (`issue#24794 <http://tracker.ceph.com/issues/24794>`_, `pr#24150 <https://github.com/ceph/ceph/pull/24150>`_, Alfredo Deza) -* ceph-volume: enable device discards (`issue#36532 <http://tracker.ceph.com/issues/36532>`_, `pr#24676 <https://github.com/ceph/ceph/pull/24676>`_, Jonas Jelten) -* ceph-volume enable --no-systemd flag for simple sub-command (`issue#36470 <http://tracker.ceph.com/issues/36470>`_, `pr#24998 <https://github.com/ceph/ceph/pull/24998>`_, Alfredo Deza) -* ceph-volume: enable the ceph-osd during lvm activation (`issue#24152 <http://tracker.ceph.com/issues/24152>`_, `pr#23321 <https://github.com/ceph/ceph/pull/23321>`_, Dan van der Ster) -* ceph-volume ensure encoded bytes are always used (`issue#24993 <http://tracker.ceph.com/issues/24993>`_, `pr#23289 <https://github.com/ceph/ceph/pull/23289>`_, Alfredo Deza) -* ceph-volume: error on commands that need ceph.conf to operate (`issue#23941 <http://tracker.ceph.com/issues/23941>`_, `pr#22724 <https://github.com/ceph/ceph/pull/22724>`_, Andrew Schoen) -* ceph-volume expand auto engine for multiple devices on filestore (`issue#24553 <http://tracker.ceph.com/issues/24553>`_, `pr#23731 <https://github.com/ceph/ceph/pull/23731>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: expand auto engine for single type devices on filestore (`issue#24960 <http://tracker.ceph.com/issues/24960>`_, `pr#23532 <https://github.com/ceph/ceph/pull/23532>`_, Alfredo Deza) -* ceph-volume expand on the LVM API to create multiple LVs at different sizes (`issue#24020 <http://tracker.ceph.com/issues/24020>`_, `pr#22426 <https://github.com/ceph/ceph/pull/22426>`_, Alfredo Deza) -* ceph-volume: extract flake8 config (`pr#24674 <https://github.com/ceph/ceph/pull/24674>`_, Mehdi Abaakouk) -* ceph-volume: fix Batch object in py3 environments (`pr#25203 <https://github.com/ceph/ceph/pull/25203>`_, Jan Fajerski) -* ceph-volume: fix journal and filestore data size in `lvm batch --report` (`issue#36242 <http://tracker.ceph.com/issues/36242>`_, `pr#24274 <https://github.com/ceph/ceph/pull/24274>`_, Andrew Schoen) -* ceph-volume: fix JSON output in `inventory` (`issue#37390 <http://tracker.ceph.com/issues/37390>`_, `pr#25224 <https://github.com/ceph/ceph/pull/25224>`_, Sebastian Wagner) -* ceph-volume: Fix TypeError: join() takes exactly one argument (2 given) (`issue#37595 <http://tracker.ceph.com/issues/37595>`_, `pr#25469 <https://github.com/ceph/ceph/pull/25469>`_, Sebastian Wagner) -* ceph-volume fix TypeError on dmcrypt when using Python3 (`pr#26034 <https://github.com/ceph/ceph/pull/26034>`_, Alfredo Deza) -* ceph-volume fix zap not working with LVs (`issue#35970 <http://tracker.ceph.com/issues/35970>`_, `pr#24077 <https://github.com/ceph/ceph/pull/24077>`_, Alfredo Deza) -* ceph-volume: implement __format__ in Size to format sizes in py3 (`issue#38291 <http://tracker.ceph.com/issues/38291>`_, `pr#26401 <https://github.com/ceph/ceph/pull/26401>`_, Jan Fajerski) -* ceph-volume initial take on auto sub-command (`pr#21803 <https://github.com/ceph/ceph/pull/21803>`_, Alfredo Deza) -* ceph-volume: introduce class hierachy for strategies (`issue#37389 <http://tracker.ceph.com/issues/37389>`_, `pr#25238 <https://github.com/ceph/ceph/pull/25238>`_, Jan Fajerski) -* ceph-volume: lsblk can fail to find PARTLABEL, must fallback to blkid (`issue#36098 <http://tracker.ceph.com/issues/36098>`_, `pr#24330 <https://github.com/ceph/ceph/pull/24330>`_, Alfredo Deza) -* ceph-volume lvm.activate conditional mon-config on prime-osd-dir (`issue#25216 <http://tracker.ceph.com/issues/25216>`_, `pr#23375 <https://github.com/ceph/ceph/pull/23375>`_, Alfredo Deza) -* ceph-volume lvm.activate Do not search for a MON configuration (`pr#22393 <https://github.com/ceph/ceph/pull/22393>`_, Wido den Hollander) -* ceph-volume: `lvm batch` allow extra flags (like dmcrypt) for bluestore (`issue#26862 <http://tracker.ceph.com/issues/26862>`_, `pr#23448 <https://github.com/ceph/ceph/pull/23448>`_, Alfredo Deza) -* ceph-volume lvm.batch remove non-existent sys_api property (`issue#34310 <http://tracker.ceph.com/issues/34310>`_, `pr#23787 <https://github.com/ceph/ceph/pull/23787>`_, Alfredo Deza) -* ceph-volume lvm.listing only include devices if they exist (`issue#24952 <http://tracker.ceph.com/issues/24952>`_, `pr#23129 <https://github.com/ceph/ceph/pull/23129>`_, Alfredo Deza) -* ceph-volume lvm.prepare update help to indicate partitions are needed, not devices (`issue#24795 <http://tracker.ceph.com/issues/24795>`_, `pr#24394 <https://github.com/ceph/ceph/pull/24394>`_, Alfredo Deza) -* ceph-volume: make Device hashable to allow set of Device list in py3 (`issue#38290 <http://tracker.ceph.com/issues/38290>`_, `pr#26399 <https://github.com/ceph/ceph/pull/26399>`_, Jan Fajerski) -* ceph-volume: make `lvm batch` idempotent (`issue#26864 <http://tracker.ceph.com/issues/26864>`_, `pr#24404 <https://github.com/ceph/ceph/pull/24404>`_, Andrew Schoen) -* ceph-volume: mark a device not available if it belongs to ceph-disk (`pr#26084 <https://github.com/ceph/ceph/pull/26084>`_, Andrew Schoen) -* ceph-volume normalize comma to dot for string to int conversions (`issue#37442 <http://tracker.ceph.com/issues/37442>`_, `pr#25674 <https://github.com/ceph/ceph/pull/25674>`_, Alfredo Deza) -* ceph-volume: patch Device when testing (`issue#36768 <http://tracker.ceph.com/issues/36768>`_, `pr#25063 <https://github.com/ceph/ceph/pull/25063>`_, Alfredo Deza) -* ceph-volume process.call with stdin in Python 3 fix (`issue#24993 <http://tracker.ceph.com/issues/24993>`_, `pr#23141 <https://github.com/ceph/ceph/pull/23141>`_, Alfredo Deza) -* ceph-volume: provide a nice errror message when missing ceph.conf (`pr#22828 <https://github.com/ceph/ceph/pull/22828>`_, Andrew Schoen) -* ceph-volume: PVolumes.get() should return one PV when using name or uuid (`issue#24784 <http://tracker.ceph.com/issues/24784>`_, `pr#23234 <https://github.com/ceph/ceph/pull/23234>`_, Andrew Schoen) -* ceph-volume: refuse to zap mapper devices (`issue#24504 <http://tracker.ceph.com/issues/24504>`_, `pr#22764 <https://github.com/ceph/ceph/pull/22764>`_, Andrew Schoen) -* ceph-volume: reject devices that have existing GPT headers (`issue#27062 <http://tracker.ceph.com/issues/27062>`_, `pr#25098 <https://github.com/ceph/ceph/pull/25098>`_, Andrew Schoen) -* ceph-volume: remove iteritems instances (`issue#38299 <http://tracker.ceph.com/issues/38299>`_, `pr#26403 <https://github.com/ceph/ceph/pull/26403>`_, Jan Fajerski) -* ceph-volume: remove LVs when using zap --destroy (`pr#25093 <https://github.com/ceph/ceph/pull/25093>`_, Alfredo Deza) -* ceph-volume remove version reporting from help menu (`issue#36386 <http://tracker.ceph.com/issues/36386>`_, `pr#24531 <https://github.com/ceph/ceph/pull/24531>`_, Alfredo Deza) -* ceph-volume: rename Device property valid to available (`issue#36701 <http://tracker.ceph.com/issues/36701>`_, `pr#25007 <https://github.com/ceph/ceph/pull/25007>`_, Jan Fajerski) -* ceph-volume: replace testinfra command with py.test (`issue#38568 <http://tracker.ceph.com/issues/38568>`_, `pr#26739 <https://github.com/ceph/ceph/pull/26739>`_, Alfredo Deza) -* ceph-volume: Restore SELinux context (`pr#23278 <https://github.com/ceph/ceph/pull/23278>`_, Boris Ranto) -* ceph-volume: revert partition as disk (`issue#37506 <http://tracker.ceph.com/issues/37506>`_, `pr#25390 <https://github.com/ceph/ceph/pull/25390>`_, Jan Fajerski) -* ceph-volume: run tests without waiting on ceph repos (`pr#23697 <https://github.com/ceph/ceph/pull/23697>`_, Andrew Schoen) -* ceph-volume: set number of osd ports in the tests (`pr#26753 <https://github.com/ceph/ceph/pull/26753>`_, Andrew Schoen) -* ceph-volume: set permissions right before prime-osd-dir (`issue#37486 <http://tracker.ceph.com/issues/37486>`_, `pr#25477 <https://github.com/ceph/ceph/pull/25477>`_, Andrew Schoen, Alfredo Deza) -* ceph-volume: `simple scan` will now scan all running ceph-disk OSDs (`pr#26826 <https://github.com/ceph/ceph/pull/26826>`_, Andrew Schoen) -* ceph-volume: skip processing devices that don't exist when scanning system disks (`issue#36247 <http://tracker.ceph.com/issues/36247>`_, `pr#24372 <https://github.com/ceph/ceph/pull/24372>`_, Alfredo Deza) -* ceph-volume: sort and align `lvm list` output (`pr#21812 <https://github.com/ceph/ceph/pull/21812>`_, Theofilos Mouratidis) -* ceph-volume systemd import main so console_scripts work for executable (`issue#36648 <http://tracker.ceph.com/issues/36648>`_, `pr#24840 <https://github.com/ceph/ceph/pull/24840>`_, Alfredo Deza) -* ceph-volume tests destroy osds on monitor hosts (`pr#22437 <https://github.com/ceph/ceph/pull/22437>`_, Alfredo Deza) -* ceph-volume tests do not include admin keyring in OSD nodes (`issue#24417 <http://tracker.ceph.com/issues/24417>`_, `pr#22399 <https://github.com/ceph/ceph/pull/22399>`_, Alfredo Deza) -* ceph-volume tests/functional add mgrs daemons to lvm tests (`issue#26879 <http://tracker.ceph.com/issues/26879>`_, `pr#23489 <https://github.com/ceph/ceph/pull/23489>`_, Alfredo Deza) -* ceph-volume tests.functional add notario dep for ceph-ansible (`pr#22116 <https://github.com/ceph/ceph/pull/22116>`_, Alfredo Deza) -* ceph-volume tests/functional declare ceph-ansible roles instead of importing them (`issue#37805 <http://tracker.ceph.com/issues/37805>`_, `pr#25820 <https://github.com/ceph/ceph/pull/25820>`_, Alfredo Deza) -* ceph-volume tests.functional fix typo when stopping osd.0 in filestore (`issue#37675 <http://tracker.ceph.com/issues/37675>`_, `pr#25594 <https://github.com/ceph/ceph/pull/25594>`_, Alfredo Deza) -* ceph-volume: tests.functional inherit SSH_ARGS from ansible (`issue#34311 <http://tracker.ceph.com/issues/34311>`_, `pr#23788 <https://github.com/ceph/ceph/pull/23788>`_, Alfredo Deza) -* ceph-volume tests/functional run lvm list after OSD provisioning (`issue#24961 <http://tracker.ceph.com/issues/24961>`_, `pr#23116 <https://github.com/ceph/ceph/pull/23116>`_, Alfredo Deza) -* ceph-volume tests/functional use Ansible 2.6 (`pr#23182 <https://github.com/ceph/ceph/pull/23182>`_, Alfredo Deza) -* ceph-volume tests install ceph-ansible's requirements.txt dependencies (`issue#36672 <http://tracker.ceph.com/issues/36672>`_, `pr#24881 <https://github.com/ceph/ceph/pull/24881>`_, Alfredo Deza) -* ceph-volume tests patch __release__ to mimic always for stdin keys (`pr#23398 <https://github.com/ceph/ceph/pull/23398>`_, Alfredo Deza) -* ceph-volume tests.systemd update imports for systemd module (`issue#36704 <http://tracker.ceph.com/issues/36704>`_, `pr#24937 <https://github.com/ceph/ceph/pull/24937>`_, Alfredo Deza) -* ceph-volume: test with multiple NVME drives (`issue#37409 <http://tracker.ceph.com/issues/37409>`_, `pr#25354 <https://github.com/ceph/ceph/pull/25354>`_, Andrew Schoen) -* ceph-volume: unmount lvs correctly before zapping (`issue#24796 <http://tracker.ceph.com/issues/24796>`_, `pr#23117 <https://github.com/ceph/ceph/pull/23117>`_, Andrew Schoen) -* ceph-volume: update testing playbook 'deploy.yml' (`pr#26397 <https://github.com/ceph/ceph/pull/26397>`_, Guillaume Abrioux) -* ceph-volume: update version of ansible to 2.6.x for simple tests (`pr#23263 <https://github.com/ceph/ceph/pull/23263>`_, Andrew Schoen) -* ceph-volume: use console_scripts (`issue#36601 <http://tracker.ceph.com/issues/36601>`_, `pr#24773 <https://github.com/ceph/ceph/pull/24773>`_, Mehdi Abaakouk) -* ceph-volume: use our own testinfra suite for functional testing (`pr#26685 <https://github.com/ceph/ceph/pull/26685>`_, Andrew Schoen) -* ceph-volume util.encryption don't push stderr to terminal (`issue#36246 <http://tracker.ceph.com/issues/36246>`_, `pr#24399 <https://github.com/ceph/ceph/pull/24399>`_, Alfredo Deza) -* ceph-volume util.encryption robust blkid+lsblk detection of lockbox (`pr#24977 <https://github.com/ceph/ceph/pull/24977>`_, Alfredo Deza) -* ceph-volume zap devices associated with an OSD ID and/or OSD FSID (`pr#25429 <https://github.com/ceph/ceph/pull/25429>`_, Alfredo Deza) -* ceph-volume zap: improve zapping to remove all partitions and all LVs, encrypted or not (`issue#37449 <http://tracker.ceph.com/issues/37449>`_, `pr#25330 <https://github.com/ceph/ceph/pull/25330>`_, Alfredo Deza) -* cleanup: Clean up warnings (`pr#23919 <https://github.com/ceph/ceph/pull/23919>`_, Adam C. Emerson) -* cli: dump osd-fsid as part of osd find <id> (`pr#26015 <https://github.com/ceph/ceph/pull/26015>`_, Noah Watkins) -* cmake: add "add_npm_command()" command (`pr#22636 <https://github.com/ceph/ceph/pull/22636>`_, Kefu Chai) -* cmake: Add cls_opt for vstart target (`pr#22538 <https://github.com/ceph/ceph/pull/22538>`_, Ali Maredia) -* cmake: add dpdk::dpdk if dpdk is built or found (`issue#24948 <http://tracker.ceph.com/issues/24948>`_, `pr#23620 <https://github.com/ceph/ceph/pull/23620>`_, Nathan Cutler, Kefu Chai) -* cmake: add option WITH_LIBRADOSSTRIPER (`pr#23732 <https://github.com/ceph/ceph/pull/23732>`_, Kefu Chai) -* cmake: allow setting of the CTest timeout during building (`pr#22800 <https://github.com/ceph/ceph/pull/22800>`_, Willem Jan Withagen) -* cmake: always prefer local symbols (`issue#25154 <http://tracker.ceph.com/issues/25154>`_, `pr#23320 <https://github.com/ceph/ceph/pull/23320>`_, Kefu Chai) -* cmake: always turn off bjam debugging output (`pr#22204 <https://github.com/ceph/ceph/pull/22204>`_, Kefu Chai) -* cmake: bump up the required boost version to 1.67 (`pr#22392 <https://github.com/ceph/ceph/pull/22392>`_, Kefu Chai) -* cmake: bump up the required fmt version (`pr#23283 <https://github.com/ceph/ceph/pull/23283>`_, Kefu Chai) -* cmake: cleanups (`pr#23166 <https://github.com/ceph/ceph/pull/23166>`_, Kefu Chai) -* cmake: cleanups (`pr#23279 <https://github.com/ceph/ceph/pull/23279>`_, Kefu Chai) -* cmake: cleanups (`pr#23300 <https://github.com/ceph/ceph/pull/23300>`_, Kefu Chai) -* cmake,crimson/net: add keepalive support, and enable unittest_seastar_messenger in "make check" (`pr#23642 <https://github.com/ceph/ceph/pull/23642>`_, Kefu Chai) -* cmake: detect armv8 crc and crypto feature using CHECK_C_COMPILER_FLAG (`issue#17516 <http://tracker.ceph.com/issues/17516>`_, `pr#24168 <https://github.com/ceph/ceph/pull/24168>`_, Kefu Chai) -* cmake: disable -Werror-stringop-truncation for rocksdb (`pr#22591 <https://github.com/ceph/ceph/pull/22591>`_, Kefu Chai) -* cmake: do not check for aligned_alloc() anymore (`issue#23653 <http://tracker.ceph.com/issues/23653>`_, `pr#22046 <https://github.com/ceph/ceph/pull/22046>`_, Kefu Chai) -* cmake: do not depend on ${DPDK_LIBRARIES} if not using bundled dpdk (`issue#24449 <http://tracker.ceph.com/issues/24449>`_, `pr#22938 <https://github.com/ceph/ceph/pull/22938>`_, Kefu Chai) -* cmake: do not install `hello` demo module (`pr#21886 <https://github.com/ceph/ceph/pull/21886>`_, John Spray) -* cmake: do not link against common_crc_aarch64 (`pr#23366 <https://github.com/ceph/ceph/pull/23366>`_, Kefu Chai) -* cmake: do not pass -B{symbolic,symbolic-functions} to linker on FreeBSD (`pr#24920 <https://github.com/ceph/ceph/pull/24920>`_, Willem Jan Withagen) -* cmake: do not pass unnecessary param to setup.py (`pr#25186 <https://github.com/ceph/ceph/pull/25186>`_, Kefu Chai) -* cmake: do not use Findfmt.cmake for checking libfmt-dev (`pr#23390 <https://github.com/ceph/ceph/pull/23390>`_, Kefu Chai) -* cmake: do not use plain target_link_libraries(rgw_a ...) (`pr#24515 <https://github.com/ceph/ceph/pull/24515>`_, Kefu Chai) -* cmake: enable RTTI for both debug and release RocksDB builds (`pr#22286 <https://github.com/ceph/ceph/pull/22286>`_, Igor Fedotov) -* cmake: find a python2 interpreter for gtest-parallel (`pr#22931 <https://github.com/ceph/ceph/pull/22931>`_, Kefu Chai) -* cmake: find liboath using the correct name (`pr#22430 <https://github.com/ceph/ceph/pull/22430>`_, Kefu Chai) -* cmake: fix a cmake error when with -DALLOCATOR=jemalloc (`pr#23380 <https://github.com/ceph/ceph/pull/23380>`_, Jianpeng Ma) -* cmake: fix build WITH_SYSTEM_BOOST=ON (`pr#23510 <https://github.com/ceph/ceph/pull/23510>`_, Kefu Chai) -* cmake: fix compilation with distcc and other compiler wrappers (`pr#24605 <https://github.com/ceph/ceph/pull/24605>`_, Alexey Sheplyakov, Kefu Chai) -* cmake: fix cython target in test/CMakeFile.txt (`pr#22295 <https://github.com/ceph/ceph/pull/22295>`_, Jan Fajerski) -* cmake: fix Debug build `WITH_SEASTAR=ON` (`pr#23567 <https://github.com/ceph/ceph/pull/23567>`_, Kefu Chai) -* cmake: fixes to enable WITH_ASAN with clang and GCC (`pr#24692 <https://github.com/ceph/ceph/pull/24692>`_, Kefu Chai) -* cmake: fix find system rockdb (`pr#22439 <https://github.com/ceph/ceph/pull/22439>`_, Alexey Shabalin) -* cmake: fix std::filesystem detection and extract sanitizer detection into its own module (`pr#23384 <https://github.com/ceph/ceph/pull/23384>`_, Kefu Chai) -* cmake: fix syntax error of set() (`pr#26582 <https://github.com/ceph/ceph/pull/26582>`_, Kefu Chai) -* cmake: fix the build WITH_DPDK=ON (`pr#23650 <https://github.com/ceph/ceph/pull/23650>`_, Kefu Chai, Casey Bodley) -* cmake: fix version matching for Findfmt (`pr#23996 <https://github.com/ceph/ceph/pull/23996>`_, Mohamad Gebai) -* cmake: fix "WITH_STATIC_LIBSTDCXX" (`pr#22990 <https://github.com/ceph/ceph/pull/22990>`_, Kefu Chai) -* cmake: let rbd_api depend on librbd-tp (`pr#25641 <https://github.com/ceph/ceph/pull/25641>`_, Kefu Chai) -* cmake: link against gtest in a better way (`pr#23628 <https://github.com/ceph/ceph/pull/23628>`_, Kefu Chai) -* cmake: link ceph-osd with common statically (`pr#22720 <https://github.com/ceph/ceph/pull/22720>`_, Radoslaw Zarzynski) -* cmake: link compressor plugins against lib the modern way (`pr#23852 <https://github.com/ceph/ceph/pull/23852>`_, Kefu Chai) -* cmake: make -DWITH_MGR=OFF work (`pr#22077 <https://github.com/ceph/ceph/pull/22077>`_, Jianpeng Ma) -* cmake: Make the tests for finding Filesystem with more serious functions (`pr#26316 <https://github.com/ceph/ceph/pull/26316>`_, Willem Jan Withagen) -* cmake: modularize src/perfglue (`pr#23254 <https://github.com/ceph/ceph/pull/23254>`_, Kefu Chai) -* cmake: move ceph-osdomap-tool, ceph-monstore-tool out of ceph-test (`pr#19964 <https://github.com/ceph/ceph/pull/19964>`_, runsisi) -* cmake: move crypto_plugins target (`pr#21891 <https://github.com/ceph/ceph/pull/21891>`_, Casey Bodley) -* cmake: no libradosstriper headers if WITH_LIBRADOSSTRIPER=OFF (`issue#35922 <http://tracker.ceph.com/issues/35922>`_, `pr#24029 <https://github.com/ceph/ceph/pull/24029>`_, Nathan Cutler, Kefu Chai) -* cmake: no need to add "-D" before definitions (`pr#23795 <https://github.com/ceph/ceph/pull/23795>`_, Kefu Chai) -* cmake: oath lives in liboath (`pr#22494 <https://github.com/ceph/ceph/pull/22494>`_, Willem Jan Withagen) -* cmake: only build extra boost libraries only if WITH_SEASTAR (`pr#22521 <https://github.com/ceph/ceph/pull/22521>`_, Kefu Chai) -* cmake: remove checking for GCC 5.1 (`pr#24477 <https://github.com/ceph/ceph/pull/24477>`_, Kefu Chai) -* cmake: remove deleted rgw_request.cc from CMakeLists.txt (`pr#22186 <https://github.com/ceph/ceph/pull/22186>`_, Casey Bodley) -* cmake: Remove embedded 'cephd' code (`pr#21940 <https://github.com/ceph/ceph/pull/21940>`_, Dan Mick) -* cmake: remove workarounds for supporting cmake 2.x (`pr#22912 <https://github.com/ceph/ceph/pull/22912>`_, Kefu Chai) -* cmake: rgw_common should depend on tracing headers (`pr#22367 <https://github.com/ceph/ceph/pull/22367>`_, Kefu Chai) -* cmake: rocksdb related cleanup (`pr#23441 <https://github.com/ceph/ceph/pull/23441>`_, Kefu Chai) -* cmake: should link against libatomic if libcxx/libstdc++ does not off… (`pr#22952 <https://github.com/ceph/ceph/pull/22952>`_, Kefu Chai) -* cmake: update fio version from 3.5 to 540e235dcd276e63c57 (`pr#22019 <https://github.com/ceph/ceph/pull/22019>`_, Jianpeng Ma) -* cmake: use $CMAKE_BINARY_DIR for default $CEPH_BUILD_VIRTUALENV (`issue#36737 <http://tracker.ceph.com/issues/36737>`_, `pr#26091 <https://github.com/ceph/ceph/pull/26091>`_, Kefu Chai) -* cmake: use javac -h for creating JNI native headers (`issue#24012 <http://tracker.ceph.com/issues/24012>`_, `pr#21822 <https://github.com/ceph/ceph/pull/21822>`_, Kefu Chai) -* cmake: use OpenSSL::Crypto instead of OPENSSL_LIBRARIES (`pr#24368 <https://github.com/ceph/ceph/pull/24368>`_, Kefu Chai) -* cmake: vstart target can build WITH_CEPHFS/RBD/MGR=OFF (`pr#25204 <https://github.com/ceph/ceph/pull/25204>`_, Casey Bodley) -* common: add adaptor for seastar::temporary_buffer (`pr#22454 <https://github.com/ceph/ceph/pull/22454>`_, Kefu Chai, Casey Bodley) -* common: add a generic async Completion for use with boost::asio (`pr#21914 <https://github.com/ceph/ceph/pull/21914>`_, Casey Bodley) -* common: add lockless `md_config_t` (`pr#22710 <https://github.com/ceph/ceph/pull/22710>`_, Kefu Chai) -* common: async/dpdk: when enable dpdk, multiple message queue defect (`pr#25404 <https://github.com/ceph/ceph/pull/25404>`_, zhangyongsheng) -* common: auth/cephx: minor code cleanup (`pr#21155 <https://github.com/ceph/ceph/pull/21155>`_, runsisi) -* common: auth, common: cleanups (`pr#26383 <https://github.com/ceph/ceph/pull/26383>`_, Kefu Chai) -* common: auth,common: use ceph::mutex instead of LockMutex (`pr#24263 <https://github.com/ceph/ceph/pull/24263>`_, Kefu Chai) -* common: avoid the overhead of ``ANNOTATE_HAPPENS_*`` in NDEBUG builds (`pr#25129 <https://github.com/ceph/ceph/pull/25129>`_, Radoslaw Zarzynski) -* common: be more informative if set PID-file fails (`pr#23647 <https://github.com/ceph/ceph/pull/23647>`_, Willem Jan Withagen) -* common: blkdev: Rework API and add FreeBSD support (`pr#24658 <https://github.com/ceph/ceph/pull/24658>`_, Alan Somers) -* common: buffer: mark the iterator traits "public" (`pr#25409 <https://github.com/ceph/ceph/pull/25409>`_, Kefu Chai) -* common: calculate stddev on the fly (`pr#21461 <https://github.com/ceph/ceph/pull/21461>`_, Yao Zongyou) -* common: ceph.in: use correct module for cmd flags (`pr#26454 <https://github.com/ceph/ceph/pull/26454>`_, Patrick Donnelly) -* common: ceph-volume add device_id to inventory listing (`pr#25201 <https://github.com/ceph/ceph/pull/25201>`_, Jan Fajerski) -* common: changes to address FTBFS on fc30 (`pr#26301 <https://github.com/ceph/ceph/pull/26301>`_, Kefu Chai) -* common: common/admin_socket: add new api unregister_commands(AdminSocketHook … (`pr#21718 <https://github.com/ceph/ceph/pull/21718>`_, Jianpeng Ma) -* common: common,auth,crimson: add logging to crimson (`pr#23957 <https://github.com/ceph/ceph/pull/23957>`_, Kefu Chai) -* common: common/buffer: fix compiler bug when enable DEBUG_BUFFER (`pr#25848 <https://github.com/ceph/ceph/pull/25848>`_, Jianpeng Ma) -* common: common/buffer: remove repeated condtion-check (`pr#25420 <https://github.com/ceph/ceph/pull/25420>`_, Jianpeng Ma) -* common: common/config: add ConfigProxy for crimson (`pr#23074 <https://github.com/ceph/ceph/pull/23074>`_, Kefu Chai) -* common: common/config: fix the lock in ConfigProxy::diff() (`pr#23276 <https://github.com/ceph/ceph/pull/23276>`_, Kefu Chai) -* common: common/config_values: friend md_config_impl<> (`pr#23020 <https://github.com/ceph/ceph/pull/23020>`_, Mykola Golub, Kefu Chai) -* common: common: drop the unused methods from SharedLRU (`pr#26224 <https://github.com/ceph/ceph/pull/26224>`_, Radoslaw Zarzynski) -* common: common/KeyValueDB: Get rid of validate parameter (`pr#25377 <https://github.com/ceph/ceph/pull/25377>`_, Adam Kupczyk) -* common: common/numa: Add shim routines for NUMA on FreeBSD (`pr#25920 <https://github.com/ceph/ceph/pull/25920>`_, Willem Jan Withagen) -* common: common, osd: set mclock priority as 1 by default (`pr#26022 <https://github.com/ceph/ceph/pull/26022>`_, Abhishek Lekshmanan) -* common: common/random_cache: remove unused RandomCache (`pr#26253 <https://github.com/ceph/ceph/pull/26253>`_, Kefu Chai) -* common: common/shared_cache: add lockless SharedLRU (`pr#22736 <https://github.com/ceph/ceph/pull/22736>`_, Kefu Chai) -* common: common/shared_cache: bumps it to the front of the LRU if key existed (`pr#25370 <https://github.com/ceph/ceph/pull/25370>`_, Jianpeng Ma) -* common: common/shared_cache: fix racing issues (`pr#25150 <https://github.com/ceph/ceph/pull/25150>`_, Jianpeng Ma) -* common: common/util: pass real hostname when running in kubernetes/rook container (`pr#23798 <https://github.com/ceph/ceph/pull/23798>`_, Sage Weil) -* common: complete all throttle blockers when we set average or max to 0 (`issue#36715 <http://tracker.ceph.com/issues/36715>`_, `pr#24965 <https://github.com/ceph/ceph/pull/24965>`_, Dongsheng Yang) -* common,core: msg/async: clean up local buffers on dispatch (`issue#35987 <http://tracker.ceph.com/issues/35987>`_, `pr#24111 <https://github.com/ceph/ceph/pull/24111>`_, Greg Farnum) -* common,core,tests: qa/tests: update links for centos latest to point to 7.5 (`pr#22923 <https://github.com/ceph/ceph/pull/22923>`_, Vasu Kulkarni) -* common/crc/aarch64: Added cpu feature pmull and make aarch64 specific… (`pr#22178 <https://github.com/ceph/ceph/pull/22178>`_, Adam Kupczyk) -* common: crimson/common: write configs synchronously on shard.0 (`pr#23284 <https://github.com/ceph/ceph/pull/23284>`_, Kefu Chai) -* common,crimson: port perfcounters to seastar (`pr#24141 <https://github.com/ceph/ceph/pull/24141>`_, chunmei Liu) -* common: crypto: QAT based Encryption for RGW (`pr#19386 <https://github.com/ceph/ceph/pull/19386>`_, Ganesh Maharaj Mahalingam) -* common: crypto: use ceph_assert_always for assertions (`pr#23654 <https://github.com/ceph/ceph/pull/23654>`_, Casey Bodley) -* common: define BOOST_COROUTINES_NO_DEPRECATION_WARNING if not yet (`pr#26502 <https://github.com/ceph/ceph/pull/26502>`_, Kefu Chai) -* common: drop allocation tracking from bufferlist (`pr#25454 <https://github.com/ceph/ceph/pull/25454>`_, Radoslaw Zarzynski) -* common: drop append_buffer from bufferlist. Use simple carriage instead (`pr#25077 <https://github.com/ceph/ceph/pull/25077>`_, Radoslaw Zarzynski) -* common: drop at_buffer_{head,tail} from buffer::ptr (`pr#25422 <https://github.com/ceph/ceph/pull/25422>`_, Radoslaw Zarzynski) -* common: drop/mark-as-final getters of buffer::raw for palign (`pr#24087 <https://github.com/ceph/ceph/pull/24087>`_, Radoslaw Zarzynski) -* common: drop static_assert.h as it looks unused (`pr#22743 <https://github.com/ceph/ceph/pull/22743>`_, Radoslaw Zarzynski) -* common: drop the unused buffer::raw_mmap_pages (`pr#24040 <https://github.com/ceph/ceph/pull/24040>`_, Radoslaw Zarzynski) -* common: drop the unused zero-copy facilities in ceph::bufferlist (`pr#24031 <https://github.com/ceph/ceph/pull/24031>`_, Radoslaw Zarzynski) -* common: drop unused get_max_pipe_size() in buffer.cc (`pr#25432 <https://github.com/ceph/ceph/pull/25432>`_, Radoslaw Zarzynski) -* common: ec: lrc doesn't depend on crosstalks between bufferlists anymore (`pr#25595 <https://github.com/ceph/ceph/pull/25595>`_, Radoslaw Zarzynski) -* common: expand meta in parse_argv() (`pr#23474 <https://github.com/ceph/ceph/pull/23474>`_, Kefu Chai) -* common: fix access and add name for the token bucket throttle (`pr#25372 <https://github.com/ceph/ceph/pull/25372>`_, Shiyang Ruan) -* common: Fix Alpine compatability for TEMP_FAILURE_RETRY and ACCESSPERMS (`pr#24813 <https://github.com/ceph/ceph/pull/24813>`_, Willem Jan Withagen) -* common: fix a racing in PerfCounters::perf_counter_data_any_d::read_avg (`issue#25211 <http://tracker.ceph.com/issues/25211>`_, `pr#23362 <https://github.com/ceph/ceph/pull/23362>`_, ludehp) -* common: fix for broken rbdmap parameter parsing (`pr#24446 <https://github.com/ceph/ceph/pull/24446>`_, Marc Schoechlin) -* common: fix missing include boost/noncopyable.hpp (`pr#24278 <https://github.com/ceph/ceph/pull/24278>`_, Willem Jan Withagen) -* common: fix typo in rados bench write JSON output (`issue#24199 <http://tracker.ceph.com/issues/24199>`_, `pr#22112 <https://github.com/ceph/ceph/pull/22112>`_, Sandor Zeestraten) -* common: fix typos in BackoffThrottle (`pr#24691 <https://github.com/ceph/ceph/pull/24691>`_, Shiyang Ruan) -* common: Formatters: improve precision of double numbers (`pr#25745 <https://github.com/ceph/ceph/pull/25745>`_, Коренберг Марк) -* common: .gitignore: Ignore .idea directory (`pr#24237 <https://github.com/ceph/ceph/pull/24237>`_, Volker Theile) -* common: hint bufferlist's buffer_track_c_str accordingly (`pr#25424 <https://github.com/ceph/ceph/pull/25424>`_, Radoslaw Zarzynski) -* common: hypercombined bufferlist (`pr#24882 <https://github.com/ceph/ceph/pull/24882>`_, Radoslaw Zarzynski) -* common: include/compat.h: make pthread_get_name_np work when available (`pr#23641 <https://github.com/ceph/ceph/pull/23641>`_, Willem Jan Withagen) -* common: include include/types.h early, otherwise Clang will error (`pr#22493 <https://github.com/ceph/ceph/pull/22493>`_, Willem Jan Withagen) -* common: include/types: move operator<< into the proper namespace (`pr#23767 <https://github.com/ceph/ceph/pull/23767>`_, Kefu Chai) -* common: include/types: space between number and units (`pr#22063 <https://github.com/ceph/ceph/pull/22063>`_, Sage Weil) -* common: librados,rpm,deb: various fixes to address librados3 transition and cleanups in librados (`pr#24896 <https://github.com/ceph/ceph/pull/24896>`_, Kefu Chai) -* common: make CEPH_BUFFER_ALLOC_UNIT known at compile-time (`pr#26259 <https://github.com/ceph/ceph/pull/26259>`_, Radoslaw Zarzynski) -* common: mark BlkDev::serial() const to match with its declaration (`pr#24702 <https://github.com/ceph/ceph/pull/24702>`_, Willem Jan Withagen) -* common: messages: define HEAD_VERSION and COMPAT_VERSION inlined (`pr#23623 <https://github.com/ceph/ceph/pull/23623>`_, Kefu Chai) -* common,mgr: mgr/MgrClient: make some noise for a user if no mgr daemon is running (`pr#23492 <https://github.com/ceph/ceph/pull/23492>`_, Sage Weil) -* common: mon/MonClient: set configs via finisher (`issue#24118 <http://tracker.ceph.com/issues/24118>`_, `pr#21984 <https://github.com/ceph/ceph/pull/21984>`_, Sage Weil) -* common: msg/async: fix FTBFS of dpdk (`pr#23168 <https://github.com/ceph/ceph/pull/23168>`_, Kefu Chai) -* common: msg/async: Skip the duplicated processing of the same link (`pr#20952 <https://github.com/ceph/ceph/pull/20952>`_, shangfufei) -* common: msg/msg_types.h: do not cast `ceph_entity_name` to `entity_name_t` for printing (`pr#26315 <https://github.com/ceph/ceph/pull/26315>`_, Kefu Chai) -* common: msgr/async/rdma: Return from poll system call with EINTR should be retried (`pr#25138 <https://github.com/ceph/ceph/pull/25138>`_, Stig Telfer) -* common: Mutex -> ceph::mutex (`issue#12614 <http://tracker.ceph.com/issues/12614>`_, `pr#25105 <https://github.com/ceph/ceph/pull/25105>`_, Kefu Chai, Sage Weil) -* common: optimize reference counting in bufferlist (`pr#25082 <https://github.com/ceph/ceph/pull/25082>`_, Radoslaw Zarzynski) -* common: OpTracker doesn't visit TrackedOp when nref == 0 (`issue#24037 <http://tracker.ceph.com/issues/24037>`_, `pr#22156 <https://github.com/ceph/ceph/pull/22156>`_, Radoslaw Zarzynski) -* common: os/filestore: fix throttle configurations (`pr#21926 <https://github.com/ceph/ceph/pull/21926>`_, Li Wang) -* common,performance: auth,common: add lockless auth (`pr#23591 <https://github.com/ceph/ceph/pull/23591>`_, Kefu Chai) -* common,performance: common/assert: mark assert helpers with [[gnu::cold]] (`pr#23326 <https://github.com/ceph/ceph/pull/23326>`_, Kefu Chai) -* common,performance: compressor: add QAT support (`pr#19714 <https://github.com/ceph/ceph/pull/19714>`_, Qiaowei Ren) -* common,performance: denc: fix internal fragmentation when decoding ptr in bl (`pr#25264 <https://github.com/ceph/ceph/pull/25264>`_, Kefu Chai) -* common,rbd: misc: mark constructors as explicit (`pr#21637 <https://github.com/ceph/ceph/pull/21637>`_, Danny Al-Gaaf) -* common: reinit StackStringStream on clear (`pr#25751 <https://github.com/ceph/ceph/pull/25751>`_, Patrick Donnelly) -* common: reintroduce async SharedMutex (`issue#24124 <http://tracker.ceph.com/issues/24124>`_, `pr#22698 <https://github.com/ceph/ceph/pull/22698>`_, Casey Bodley) -* common: Reverse deleted include (`pr#23838 <https://github.com/ceph/ceph/pull/23838>`_, Willem Jan Withagen) -* common: Revert "common: add an async SharedMutex" (`issue#24124 <http://tracker.ceph.com/issues/24124>`_, `pr#21986 <https://github.com/ceph/ceph/pull/21986>`_, Casey Bodley) -* common,rgw: cls/rbd: init local var with known value (`pr#25588 <https://github.com/ceph/ceph/pull/25588>`_, Kefu Chai) -* common,tests: run-standalone.sh: Need double-quotes to handle | in core_pattern on all distributions (`issue#38325 <http://tracker.ceph.com/issues/38325>`_, `pr#26436 <https://github.com/ceph/ceph/pull/26436>`_, David Zafman) -* common,tests: test_shared_cache: fix memory leak (`pr#25215 <https://github.com/ceph/ceph/pull/25215>`_, Jianpeng Ma) -* common: vstart: do not attempt to re-initialize dashboard for existing cluster (`pr#23261 <https://github.com/ceph/ceph/pull/23261>`_, Jason Dillaman) -* core: Add support for osd_delete_sleep configuration value (`issue#36474 <http://tracker.ceph.com/issues/36474>`_, `pr#24749 <https://github.com/ceph/ceph/pull/24749>`_, David Zafman) -* core: auth: drop the RWLock in AuthClientHandler (`pr#23699 <https://github.com/ceph/ceph/pull/23699>`_, Kefu Chai) -* core: auth/krb: Fix Kerberos build warnings (`pr#25639 <https://github.com/ceph/ceph/pull/25639>`_, Daniel Oliveira) -* core: build: disable kerberos for nautilus (`pr#26258 <https://github.com/ceph/ceph/pull/26258>`_, Sage Weil) -* core: ceph_argparse: fix --verbose (`pr#25961 <https://github.com/ceph/ceph/pull/25961>`_, Patrick Nawracay) -* core: ceph.in: friendlier message on EPERM (`issue#25172 <http://tracker.ceph.com/issues/25172>`_, `pr#23330 <https://github.com/ceph/ceph/pull/23330>`_, John Spray) -* core: ceph.in: write bytes to stdout in raw_write() (`pr#25280 <https://github.com/ceph/ceph/pull/25280>`_, Kefu Chai) -* core: ceph_test_rados_api_misc: remove obsolete LibRadosMiscPool.PoolCreationRace (`issue#24150 <http://tracker.ceph.com/issues/24150>`_, `pr#22042 <https://github.com/ceph/ceph/pull/22042>`_, Sage Weil) -* core: Clang misses <optional> include (`pr#23768 <https://github.com/ceph/ceph/pull/23768>`_, Willem Jan Withagen) -* core: common/blkdev.h: use std::string (`pr#25783 <https://github.com/ceph/ceph/pull/25783>`_, Neha Ojha) -* core: common/options: remove unused ms async affinity options (`pr#26099 <https://github.com/ceph/ceph/pull/26099>`_, Josh Durgin) -* core: common/util.cc: add CONTAINER_NAME processing for metadata (`pr#25383 <https://github.com/ceph/ceph/pull/25383>`_, Dan Mick) -* core: compressor: building error for QAT decompress (`pr#22609 <https://github.com/ceph/ceph/pull/22609>`_, Qiaowei Ren) -* core: crush, osd: handle multiple parents properly when applying pg upmaps (`issue#23921 <http://tracker.ceph.com/issues/23921>`_, `pr#21815 <https://github.com/ceph/ceph/pull/21815>`_, xiexingguo) -* core: erasure-code: add clay codes (`issue#19278 <http://tracker.ceph.com/issues/19278>`_, `pr#24291 <https://github.com/ceph/ceph/pull/24291>`_, Myna V, Sage Weil) -* core: erasure-code: fixes alignment issue when clay code is used with jerasure, cauchy_orig (`pr#24586 <https://github.com/ceph/ceph/pull/24586>`_, Myna) -* core: global/signal_handler.cc: report assert_file as correct name (`pr#23738 <https://github.com/ceph/ceph/pull/23738>`_, Dan Mick) -* core: include/rados: clarify which flags go where for copy_from (`pr#24497 <https://github.com/ceph/ceph/pull/24497>`_, Ilya Dryomov) -* core: include/rados.h: hide CEPH_OSDMAP_PGLOG_HARDLIMIT from ceph -s (`pr#25887 <https://github.com/ceph/ceph/pull/25887>`_, Neha Ojha) -* core: kv/KeyValueDB: Move PriCache implementation to ShardedCache (`pr#25925 <https://github.com/ceph/ceph/pull/25925>`_, Mark Nelson) -* core: kv/KeyValueDB: return const char\* from MergeOperator::name() (`issue#26875 <http://tracker.ceph.com/issues/26875>`_, `pr#23477 <https://github.com/ceph/ceph/pull/23477>`_, Sage Weil) -* core: messages/MOSDPGScan: fix initialization of query_epoch (`pr#22408 <https://github.com/ceph/ceph/pull/22408>`_, wumingqiao) -* core: mgr/balancer: add cmd to list all plans (`issue#37418 <http://tracker.ceph.com/issues/37418>`_, `pr#21937 <https://github.com/ceph/ceph/pull/21937>`_, Yang Honggang) -* core: mgr/BaseMgrModule: drop GIL for ceph_send_command (`issue#38537 <http://tracker.ceph.com/issues/38537>`_, `pr#26723 <https://github.com/ceph/ceph/pull/26723>`_, Sage Weil) -* core: mgr/MgrClient: Protect daemon_health_metrics (`issue#23352 <http://tracker.ceph.com/issues/23352>`_, `pr#23404 <https://github.com/ceph/ceph/pull/23404>`_, Kjetil Joergensen, Brad Hubbard) -* core,mgr: mon/MgrMonitor: change 'unresponsive' message to info level (`issue#24222 <http://tracker.ceph.com/issues/24222>`_, `pr#22158 <https://github.com/ceph/ceph/pull/22158>`_, Sage Weil) -* core,mgr,rbd: mgr: generalize osd perf query and make counters accessible from modules (`pr#25114 <https://github.com/ceph/ceph/pull/25114>`_, Mykola Golub) -* core,mgr,rbd: osd: support more dynamic perf query subkey types (`pr#25371 <https://github.com/ceph/ceph/pull/25371>`_, Mykola Golub) -* core,mgr,rbd,rgw: rgw, common: Fixes SCA issues (`pr#22007 <https://github.com/ceph/ceph/pull/22007>`_, Danny Al-Gaaf) -* core: mgr/smart: remove obsolete smart module (`pr#26411 <https://github.com/ceph/ceph/pull/26411>`_, Sage Weil) -* core: mon/LogMonitor: call no_reply() on ignored log message (`pr#22098 <https://github.com/ceph/ceph/pull/22098>`_, Sage Weil) -* core: mon/MonClient: avoid using magic number for the `MAuth::protocol` (`pr#23747 <https://github.com/ceph/ceph/pull/23747>`_, Kefu Chai) -* core: mon/MonClient: extract MonSub out (`pr#23688 <https://github.com/ceph/ceph/pull/23688>`_, Kefu Chai) -* core: mon/MonClient: use scoped_guard instead of goto (`pr#24304 <https://github.com/ceph/ceph/pull/24304>`_, Kefu Chai) -* core,mon: mon,osd: dump "compression_algorithms" in "mon metadata" (`issue#22420 <http://tracker.ceph.com/issues/22420>`_, `pr#21809 <https://github.com/ceph/ceph/pull/21809>`_, Kefu Chai, Casey Bodley) -* core,mon: mon/OSDMonitor: no_reply on MOSDFailure messages (`issue#24322 <http://tracker.ceph.com/issues/24322>`_, `pr#22259 <https://github.com/ceph/ceph/pull/22259>`_, Sage Weil) -* core,mon: mon/OSDMonitor: Warnings for expected_num_objects (`issue#24687 <http://tracker.ceph.com/issues/24687>`_, `pr#23072 <https://github.com/ceph/ceph/pull/23072>`_, Douglas Fuller) -* core: mon/OSDMonitor: two "ceph osd crush class rm" fixes (`pr#24657 <https://github.com/ceph/ceph/pull/24657>`_, xie xingguo) -* core: mon/PGMap: fix PGMapDigest decode (`pr#22066 <https://github.com/ceph/ceph/pull/22066>`_, Sage Weil) -* core: mon/PGMap: include unknown PGs in 'pg ls' (`pr#24032 <https://github.com/ceph/ceph/pull/24032>`_, Sage Weil) -* core: msg/async: do not trigger RESETSESSION from connect fault during connection phase (`issue#36612 <http://tracker.ceph.com/issues/36612>`_, `pr#25343 <https://github.com/ceph/ceph/pull/25343>`_, Sage Weil) -* core: msg/async/Event: clear time_events on shutdown (`issue#24162 <http://tracker.ceph.com/issues/24162>`_, `pr#22093 <https://github.com/ceph/ceph/pull/22093>`_, Sage Weil) -* core: msg/async: fix banner_v1 check in ProtocolV2 (`pr#26714 <https://github.com/ceph/ceph/pull/26714>`_, Yingxin Cheng) -* core: msg/async: fix include in frames_v2.h (`pr#26711 <https://github.com/ceph/ceph/pull/26711>`_, Yingxin Cheng) -* core: msg/async: fix is_queued() semantics (`pr#24693 <https://github.com/ceph/ceph/pull/24693>`_, Ilya Dryomov) -* core: msg/async: keep connection alive only actually sending (`pr#24301 <https://github.com/ceph/ceph/pull/24301>`_, Haomai Wang, Kefu Chai) -* core: os/bluestore: fix deep-scrub operation againest disk silent errors (`pr#23629 <https://github.com/ceph/ceph/pull/23629>`_, Xiaoguang Wang) -* core: os/bluestore: fix flush_commit locking (`issue#21480 <http://tracker.ceph.com/issues/21480>`_, `pr#22083 <https://github.com/ceph/ceph/pull/22083>`_, Sage Weil) -* core: OSD: add impl for filestore to get dbstatistics (`issue#24591 <http://tracker.ceph.com/issues/24591>`_, `pr#22633 <https://github.com/ceph/ceph/pull/22633>`_, lvshuhua) -* core: osdc: Change 'bool budgeted' to 'int budget' to avoid recalculating (`pr#21242 <https://github.com/ceph/ceph/pull/21242>`_, Jianpeng Ma) -* core: OSD: ceph-osd parent process need to restart log service after fork (`issue#24956 <http://tracker.ceph.com/issues/24956>`_, `pr#23090 <https://github.com/ceph/ceph/pull/23090>`_, redickwang) -* core: osdc/Objecter: fix split vs reconnect race (`issue#22544 <http://tracker.ceph.com/issues/22544>`_, `pr#23850 <https://github.com/ceph/ceph/pull/23850>`_, Sage Weil) -* core: osdc/Objecter: no need null pointer check for op->session anymore (`pr#25230 <https://github.com/ceph/ceph/pull/25230>`_, runsisi) -* core: osdc/Objecter: possible race condition with connection reset (`issue#36183 <http://tracker.ceph.com/issues/36183>`_, `pr#24276 <https://github.com/ceph/ceph/pull/24276>`_, Jason Dillaman) -* core: osdc: self-managed snapshot helper should catch decode exception (`issue#24000 <http://tracker.ceph.com/issues/24000>`_, `pr#21804 <https://github.com/ceph/ceph/pull/21804>`_, Jason Dillaman) -* core: osd, librados: add unset-manifest op (`pr#21999 <https://github.com/ceph/ceph/pull/21999>`_, Myoungwon Oh) -* core: osd,mds: make 'config rm ...' idempotent (`issue#24408 <http://tracker.ceph.com/issues/24408>`_, `pr#22395 <https://github.com/ceph/ceph/pull/22395>`_, Sage Weil) -* core: osd/mon: fix upgrades for pg log hard limit (`issue#36686 <http://tracker.ceph.com/issues/36686>`_, `pr#25816 <https://github.com/ceph/ceph/pull/25816>`_, Neha Ojha, Yuri Weinstein) -* core: osd,mon: increase mon_max_pg_per_osd to 250 (`pr#23251 <https://github.com/ceph/ceph/pull/23251>`_, Neha Ojha) -* core: osd,mon,msg: use intrusive_ptr for holding Connection::priv (`issue#20924 <http://tracker.ceph.com/issues/20924>`_, `pr#22292 <https://github.com/ceph/ceph/pull/22292>`_, Kefu Chai) -* core: osd/OSD: choose heartbeat peers more carefully (`pr#23487 <https://github.com/ceph/ceph/pull/23487>`_, xie xingguo) -* core: osd/OSD: drop extra/wrong \*unregister_pg\* (`pr#21816 <https://github.com/ceph/ceph/pull/21816>`_, xiexingguo) -* core: osd/OSDMap: be more aggressive when trying to balance (`issue#37940 <http://tracker.ceph.com/issues/37940>`_, `pr#26039 <https://github.com/ceph/ceph/pull/26039>`_, xie xingguo) -* core: osd/OSDMap: drop local pool filter in calc_pg_upmaps (`pr#26605 <https://github.com/ceph/ceph/pull/26605>`_, xie xingguo) -* core: osd/OSDMap: fix CEPHX_V2 osd requirement to nautilus, not mimic (`pr#23249 <https://github.com/ceph/ceph/pull/23249>`_, Sage Weil) -* core: osd/OSDMap: fix upmap mis-killing for erasure-coded PGs (`pr#25365 <https://github.com/ceph/ceph/pull/25365>`_, ningtao, xie xingguo) -* core: osd/OSDMap: potential access violation fix (`issue#37881 <http://tracker.ceph.com/issues/37881>`_, `pr#25930 <https://github.com/ceph/ceph/pull/25930>`_, xie xingguo) -* core: osd/OSDMap: using std::vector::reserve to reduce memory reallocation (`pr#26478 <https://github.com/ceph/ceph/pull/26478>`_, xie xingguo) -* core: osd/OSD: ping monitor if we are stuck at __waiting_for_healthy__ (`pr#23958 <https://github.com/ceph/ceph/pull/23958>`_, xie xingguo) -* core: osd/OSD: preallocate for _get_pgs/_get_pgids to avoid reallocate (`pr#25434 <https://github.com/ceph/ceph/pull/25434>`_, Jianpeng Ma) -* core: osd/PG: async-recovery should respect historical missing objects (`pr#24004 <https://github.com/ceph/ceph/pull/24004>`_, xie xingguo) -* core: osd/PG.cc: account for missing set irrespective of last_complete (`issue#37919 <http://tracker.ceph.com/issues/37919>`_, `pr#26175 <https://github.com/ceph/ceph/pull/26175>`_, Neha Ojha) -* core: osd/PG: create new PGs from activate in last_peering_reset epoch (`issue#24452 <http://tracker.ceph.com/issues/24452>`_, `pr#22478 <https://github.com/ceph/ceph/pull/22478>`_, Sage Weil) -* core: osd/PG: do not choose stray osds as async_recovery_targets (`pr#22330 <https://github.com/ceph/ceph/pull/22330>`_, Neha Ojha) -* core: osd/PG: fix misused FORCE_RECOVERY[BACKFILL] flags (`issue#27985 <http://tracker.ceph.com/issues/27985>`_, `pr#23904 <https://github.com/ceph/ceph/pull/23904>`_, xie xingguo) -* core: osd/PGLog.cc: check if complete_to points to log.end() (`pr#23450 <https://github.com/ceph/ceph/pull/23450>`_, Neha Ojha) -* core: osd/PGLog: trim - avoid dereferencing invalid iter (`pr#23546 <https://github.com/ceph/ceph/pull/23546>`_, xie xingguo) -* core: osd/PG: remove unused functions (`pr#26155 <https://github.com/ceph/ceph/pull/26155>`_, Kefu Chai) -* core: osd/PG: reset PG on osd down->up; normalize query processing (`issue#24373 <http://tracker.ceph.com/issues/24373>`_, `pr#22456 <https://github.com/ceph/ceph/pull/22456>`_, Sage Weil) -* core: osd/PG: restrict async_recovery_targets to up osds (`pr#22664 <https://github.com/ceph/ceph/pull/22664>`_, Neha Ojha) -* core: osd/PG: unset history_les_bound if local-les is used (`pr#22524 <https://github.com/ceph/ceph/pull/22524>`_, Kefu Chai) -* core: osd/PG: write pg epoch when resurrecting pg after delete vs merge race (`issue#35923 <http://tracker.ceph.com/issues/35923>`_, `pr#24061 <https://github.com/ceph/ceph/pull/24061>`_, Sage Weil) -* core: osd/PrimaryLogPG: do not count failed read in delta_stats (`pr#25687 <https://github.com/ceph/ceph/pull/25687>`_, Kefu Chai) -* core: osd/PrimaryLogPG: fix last_peering_reset checking on manifest flushing (`pr#26778 <https://github.com/ceph/ceph/pull/26778>`_, xie xingguo) -* core: osd/PrimaryLogPG: fix on_local_recover crash on stray clone (`pr#22396 <https://github.com/ceph/ceph/pull/22396>`_, Sage Weil) -* core: osd/PrimaryLogPG: fix potential pg-log overtrimming (`pr#23317 <https://github.com/ceph/ceph/pull/23317>`_, xie xingguo) -* core: osd/PrimaryLogPG: fix the extent length error of the sync read (`pr#25584 <https://github.com/ceph/ceph/pull/25584>`_, Xiaofei Cui) -* core: osd/PrimaryLogPG: fix try_flush_mark_clean write contention case (`issue#24174 <http://tracker.ceph.com/issues/24174>`_, `pr#22084 <https://github.com/ceph/ceph/pull/22084>`_, Sage Weil) -* core: osd/PrimaryLogPG: optimize recover order (`pr#23587 <https://github.com/ceph/ceph/pull/23587>`_, xie xingguo) -* core: osd/PrimaryLogPG: update missing_loc more carefully (`issue#35546 <http://tracker.ceph.com/issues/35546>`_, `pr#23895 <https://github.com/ceph/ceph/pull/23895>`_, xie xingguo) -* core: osd/ReplicatedBackend: remove useless assert (`pr#21243 <https://github.com/ceph/ceph/pull/21243>`_, Jianpeng Ma) -* core: osd/Session: fix invalid iterator dereference in Session::have_backoff() (`issue#24486 <http://tracker.ceph.com/issues/24486>`_, `pr#22497 <https://github.com/ceph/ceph/pull/22497>`_, Sage Weil) -* core: osd: write "debug dump_missing" output to stdout (`pr#21960 <https://github.com/ceph/ceph/pull/21960>`_, Коренберг Маркr) -* core: os/kstore: support db statistic (`pr#21487 <https://github.com/ceph/ceph/pull/21487>`_, Yang Honggang) -* core: os/memstore: use ceph::mutex and friends (`pr#26026 <https://github.com/ceph/ceph/pull/26026>`_, Kefu Chai) -* core,performance: core: avoid unnecessary refcounting of OSDMap on OSD's hot paths (`pr#24743 <https://github.com/ceph/ceph/pull/24743>`_, Radoslaw Zarzynski) -* core,performance: msg/async: avoid put message within write_lock (`pr#20731 <https://github.com/ceph/ceph/pull/20731>`_, Haomai Wang) -* core,performance: os/bluestore: make osd shard-thread do oncommits (`pr#22739 <https://github.com/ceph/ceph/pull/22739>`_, Jianpeng Ma) -* core,performance: osd/filestore: Change default filestore_merge_threshold to -10 (`issue#24686 <http://tracker.ceph.com/issues/24686>`_, `pr#22761 <https://github.com/ceph/ceph/pull/22761>`_, Douglas Fuller) -* core,performance: osd/OSDMap: map pgs with smaller batchs in calc_pg_upmaps (`pr#23734 <https://github.com/ceph/ceph/pull/23734>`_, huangjun) -* core: PG: release reservations after backfill completes (`issue#23614 <http://tracker.ceph.com/issues/23614>`_, `pr#22255 <https://github.com/ceph/ceph/pull/22255>`_, Neha Ojha) -* core: pg stuck in backfill_wait with plenty of disk space (`issue#38034 <http://tracker.ceph.com/issues/38034>`_, `pr#26375 <https://github.com/ceph/ceph/pull/26375>`_, xie xingguo, David Zafman) -* core,pybind: pybind/rados: new methods for manipulating self-managed snapshots (`pr#22579 <https://github.com/ceph/ceph/pull/22579>`_, Jason Dillaman) -* core: qa/suites/rados: minor fixes (`pr#22195 <https://github.com/ceph/ceph/pull/22195>`_, Neha Ojha) -* core: qa/suites/rados/thrash-erasure-code\*/thrashers/\*: less likely resv rejection injection (`pr#24667 <https://github.com/ceph/ceph/pull/24667>`_, Sage Weil) -* core: qa/suites/rados/thrash-old-clients: only centos and 16.04 (`pr#22106 <https://github.com/ceph/ceph/pull/22106>`_, Sage Weil) -* core: qa/suites: set osd_pg_log_dups_tracked in cfuse_workunit_suites_fsync.yaml (`pr#21909 <https://github.com/ceph/ceph/pull/21909>`_, Neha Ojha) -* core: qa/suites/upgrade/luminous-x: disable c-o-t import/export tests between versions (`issue#38294 <http://tracker.ceph.com/issues/38294>`_, `pr#27018 <https://github.com/ceph/ceph/pull/27018>`_, Sage Weil) -* core: qa/suites/upgrade/mimic-x/parallel: enable all classes (`pr#27011 <https://github.com/ceph/ceph/pull/27011>`_, Sage Weil) -* core: qa/workunits/mgr/test_localpool.sh: use new config syntax (`pr#22496 <https://github.com/ceph/ceph/pull/22496>`_, Sage Weil) -* core: qa/workunits/rados/test_health_warnings: prevent out osds (`issue#37776 <http://tracker.ceph.com/issues/37776>`_, `pr#25732 <https://github.com/ceph/ceph/pull/25732>`_, Sage Weil) -* core: rados.pyx: make all exceptions accept keyword arguments (`issue#24033 <http://tracker.ceph.com/issues/24033>`_, `pr#21853 <https://github.com/ceph/ceph/pull/21853>`_, Rishabh Dave) -* core: rados: return legacy address in 'lock info' (`pr#26150 <https://github.com/ceph/ceph/pull/26150>`_, Jason Dillaman) -* core: scrub warning check incorrectly uses mon scrub interval (`issue#37264 <http://tracker.ceph.com/issues/37264>`_, `pr#25112 <https://github.com/ceph/ceph/pull/25112>`_, David Zafman) -* core: src: no 'dne' acronym in user cmd output (`pr#21094 <https://github.com/ceph/ceph/pull/21094>`_, Gu Zhongyan) -* core,tests: Minor cleanups in tests and log output (`issue#38631 <http://tracker.ceph.com/issues/38631>`_, `issue#38678 <http://tracker.ceph.com/issues/38678>`_, `pr#26899 <https://github.com/ceph/ceph/pull/26899>`_, David Zafman) -* core,tests: qa/overrides/short_pg_log.yaml: reduce osd_{min,max}_pg_log_entries (`issue#38025 <http://tracker.ceph.com/issues/38025>`_, `pr#26101 <https://github.com/ceph/ceph/pull/26101>`_, Neha Ojha) -* core,tests: qa/suites/rados/thrash: change crush_tunables to jewel in rados_api_tests (`issue#38042 <http://tracker.ceph.com/issues/38042>`_, `pr#26122 <https://github.com/ceph/ceph/pull/26122>`_, Neha Ojha) -* core,tests: qa/suites/upgrade/luminous-x: a few fixes (`pr#22092 <https://github.com/ceph/ceph/pull/22092>`_, Sage Weil) -* core,tests: qa/tests: Set ansible-version: 2.5 (`issue#24926 <http://tracker.ceph.com/issues/24926>`_, `pr#23123 <https://github.com/ceph/ceph/pull/23123>`_, Yuri Weinstein) -* core,tests: Removal of snapshot with corrupt replica crashes osd (`issue#23875 <http://tracker.ceph.com/issues/23875>`_, `pr#22476 <https://github.com/ceph/ceph/pull/22476>`_, David Zafman) -* core,tests: test: Verify a log trim trims the dup_index (`pr#26533 <https://github.com/ceph/ceph/pull/26533>`_, Brad Hubbard) -* core,tools: osdmaptool: fix wrong test_map_pgs_dump_all output (`pr#22280 <https://github.com/ceph/ceph/pull/22280>`_, huangjun) -* core,tools: rados: provide user with more meaningful error message (`pr#26275 <https://github.com/ceph/ceph/pull/26275>`_, Mykola Golub) -* core,tools: tools/rados: allow reuse object for write test (`pr#25128 <https://github.com/ceph/ceph/pull/25128>`_, Li Wang) -* core: vstart.sh: Support SPDK in Ceph development deployment (`pr#22975 <https://github.com/ceph/ceph/pull/22975>`_, tone.zhang) -* crimson: add MonClient (`pr#23849 <https://github.com/ceph/ceph/pull/23849>`_, Kefu Chai) -* crimson: cache osdmap using LRU cache (`pr#26254 <https://github.com/ceph/ceph/pull/26254>`_, Kefu Chai, Jianpeng Ma) -* crimson/common: apply config changes also on shard.0 (`pr#23631 <https://github.com/ceph/ceph/pull/23631>`_, Yingxin) -* crimson/connection: misc changes (`pr#23044 <https://github.com/ceph/ceph/pull/23044>`_, Kefu Chai) -* crimson: crimson/mon: remove timeout support from mon::Client::authenticate() (`pr#24660 <https://github.com/ceph/ceph/pull/24660>`_, Kefu Chai) -* crimson/mon: move mon::Connection into .cc (`pr#24619 <https://github.com/ceph/ceph/pull/24619>`_, Kefu Chai) -* crimson/net: concurrent dispatch for SocketMessenger (`pr#24090 <https://github.com/ceph/ceph/pull/24090>`_, Casey Bodley) -* crimson/net: encapsulate protocol implementations with states (`pr#25176 <https://github.com/ceph/ceph/pull/25176>`_, Yingxin, Kefu Chai) -* crimson/net: encapsulate protocol implementations with states (remaining part) (`pr#25207 <https://github.com/ceph/ceph/pull/25207>`_, Yingxin) -* crimson/net: fix addresses during banner exchange (`pr#25580 <https://github.com/ceph/ceph/pull/25580>`_, Yingxin) -* crimson/net: fix compile errors in test_alien_echo.cc (`pr#24629 <https://github.com/ceph/ceph/pull/24629>`_, Yingxin) -* crimson/net: fix crimson msgr error leaks to caller (`pr#25716 <https://github.com/ceph/ceph/pull/25716>`_, Yingxin) -* crimson/net: fix misc issues for segment-fault and test-failures (`pr#25939 <https://github.com/ceph/ceph/pull/25939>`_, Yingxin Cheng, Kefu Chai) -* crimson/net: Fix racing for promise on_message (`pr#24097 <https://github.com/ceph/ceph/pull/24097>`_, Yingxin) -* crimson/net: fix unittest_seastar_messenger errors (`pr#23539 <https://github.com/ceph/ceph/pull/23539>`_, Yingxin) -* crimson/net: implement accepting/connecting states (`pr#24608 <https://github.com/ceph/ceph/pull/24608>`_, Yingxin) -* crimson/net: miscellaneous fixes to seastar-msgr (`pr#23816 <https://github.com/ceph/ceph/pull/23816>`_, Yingxin, Casey Bodley) -* crimson/net: misc fixes and features for crimson-messenger tests (`pr#26221 <https://github.com/ceph/ceph/pull/26221>`_, Yingxin Cheng) -* crimson/net: seastar-msgr refactoring (`pr#24576 <https://github.com/ceph/ceph/pull/24576>`_, Yingxin) -* crimson/net: s/repeat/keep_doing/ (`pr#23898 <https://github.com/ceph/ceph/pull/23898>`_, Kefu Chai) -* crimson/osd: add heartbeat support (`pr#26222 <https://github.com/ceph/ceph/pull/26222>`_, Kefu Chai) -* crimson/osd: add more heartbeat peers (`pr#26255 <https://github.com/ceph/ceph/pull/26255>`_, Kefu Chai) -* crimson/osd: correct the order of parameters passed to OSD::_preboot() (`pr#26774 <https://github.com/ceph/ceph/pull/26774>`_, chunmei Liu) -* crimson/osd: crimson osd driver (`pr#25304 <https://github.com/ceph/ceph/pull/25304>`_, Radoslaw Zarzynski, Kefu Chai) -* crimson/osd: remove "force_new" from ms_get_authorizer() (`pr#26054 <https://github.com/ceph/ceph/pull/26054>`_, Kefu Chai) -* crimson/osd: send known addresses at boot (`pr#26452 <https://github.com/ceph/ceph/pull/26452>`_, Kefu Chai) -* crimson: persist/load osdmap to/from store (`pr#26090 <https://github.com/ceph/ceph/pull/26090>`_, Kefu Chai) -* crimson: port messenger to seastar (`pr#22491 <https://github.com/ceph/ceph/pull/22491>`_, Kefu Chai, Casey Bodley) -* crimson/thread: add thread pool (`pr#22565 <https://github.com/ceph/ceph/pull/22565>`_, Kefu Chai) -* crimson/thread: pin thread pool to given CPU (`pr#22776 <https://github.com/ceph/ceph/pull/22776>`_, Kefu Chai) -* crush/CrushWrapper: silence compiler warning (`pr#25336 <https://github.com/ceph/ceph/pull/25336>`_, Li Wang) -* crush: fix device_class_clone for unpopulated/empty weight-sets (`issue#23386 <http://tracker.ceph.com/issues/23386>`_, `pr#22127 <https://github.com/ceph/ceph/pull/22127>`_, Sage Weil) -* crush: fix memory leak (`pr#25959 <https://github.com/ceph/ceph/pull/25959>`_, xie xingguo) -* crush: fix upmap overkill (`issue#37968 <http://tracker.ceph.com/issues/37968>`_, `pr#26179 <https://github.com/ceph/ceph/pull/26179>`_, xie xingguo) -* dashboard/mgr: Save button doesn't prevent saving an invalid form (`issue#36426 <http://tracker.ceph.com/issues/36426>`_, `pr#24577 <https://github.com/ceph/ceph/pull/24577>`_, Patrick Nawracay) -* dashboard: Return float if rate not available (`pr#22313 <https://github.com/ceph/ceph/pull/22313>`_, Boris Ranto) -* doc: add Ceph Manager Dashboard to top-level TOC (`pr#26390 <https://github.com/ceph/ceph/pull/26390>`_, Nathan Cutler) -* doc: add ceph-volume inventory sections (`pr#25092 <https://github.com/ceph/ceph/pull/25092>`_, Jan Fajerski) -* doc: add documentation for iostat (`pr#22034 <https://github.com/ceph/ceph/pull/22034>`_, Mohamad Gebai) -* doc: added demo document changes section (`pr#24791 <https://github.com/ceph/ceph/pull/24791>`_, James McClune) -* doc: added rbd default features (`pr#24720 <https://github.com/ceph/ceph/pull/24720>`_, Gaurav Sitlani) -* doc: added some Civetweb configuration options (`pr#24073 <https://github.com/ceph/ceph/pull/24073>`_, Anton Oks) -* doc: Added some hints on how to further accelerate builds with ccache (`pr#25394 <https://github.com/ceph/ceph/pull/25394>`_, Lenz Grimmer) -* doc: add instructions about using "serve-doc" to preview built document (`pr#24471 <https://github.com/ceph/ceph/pull/24471>`_, Kefu Chai) -* doc: add mds state transition diagram (`issue#22989 <http://tracker.ceph.com/issues/22989>`_, `pr#22996 <https://github.com/ceph/ceph/pull/22996>`_, Patrick Donnelly) -* doc: Add mention of ceph osd pool stats (`pr#25575 <https://github.com/ceph/ceph/pull/25575>`_, Thore Kruess) -* doc: add missing 12.2.11 release note (`pr#26596 <https://github.com/ceph/ceph/pull/26596>`_, Nathan Cutler) -* doc: add note about LVM volumes to ceph-deploy quick start (`pr#23879 <https://github.com/ceph/ceph/pull/23879>`_, David Wahler) -* doc: add release notes for 12.2.11 luminous (`pr#26228 <https://github.com/ceph/ceph/pull/26228>`_, Abhishek Lekshmanan) -* doc: add spacing to subcommand references (`pr#24669 <https://github.com/ceph/ceph/pull/24669>`_, James McClune) -* doc: add "--timeout" option to rbd-nbd (`pr#24302 <https://github.com/ceph/ceph/pull/24302>`_, Stefan Kooman) -* doc/bluestore: fix minor typos in compression section (`pr#22874 <https://github.com/ceph/ceph/pull/22874>`_, David Disseldorp) -* doc: broken link on troubleshooting-mon page (`pr#25312 <https://github.com/ceph/ceph/pull/25312>`_, James McClune) -* doc: bump up sphinx and pyyaml versions (`pr#26044 <https://github.com/ceph/ceph/pull/26044>`_, Kefu Chai) -* doc: ceph-deploy would not support --cluster option anymore (`pr#26471 <https://github.com/ceph/ceph/pull/26471>`_, Tatsuya Naganawa) -* doc: ceph: describe application subcommand in ceph man page (`pr#20645 <https://github.com/ceph/ceph/pull/20645>`_, Rishabh Dave) -* doc: ceph-iscsi-api ports should not be public facing (`pr#24248 <https://github.com/ceph/ceph/pull/24248>`_, Jason Dillaman) -* doc: ceph-volume describe better the options for migrating away from ceph-disk (`issue#24036 <http://tracker.ceph.com/issues/24036>`_, `pr#21890 <https://github.com/ceph/ceph/pull/21890>`_, Alfredo Deza) -* doc: ceph-volume dmcrypt and activate --all documentation updates (`issue#24031 <http://tracker.ceph.com/issues/24031>`_, `pr#22062 <https://github.com/ceph/ceph/pull/22062>`_, Alfredo Deza) -* doc: ceph-volume: expand on why ceph-disk was replaced (`pr#23194 <https://github.com/ceph/ceph/pull/23194>`_, Alfredo Deza) -* doc: ceph-volume: `lvm batch` documentation and man page updates (`issue#24970 <http://tracker.ceph.com/issues/24970>`_, `pr#23443 <https://github.com/ceph/ceph/pull/23443>`_, Alfredo Deza) -* doc: ceph-volume: update batch documentation to explain filestore strategies (`issue#34309 <http://tracker.ceph.com/issues/34309>`_, `pr#23785 <https://github.com/ceph/ceph/pull/23785>`_, Alfredo Deza) -* doc: ceph-volume: zfs, the initial first submit (`pr#23674 <https://github.com/ceph/ceph/pull/23674>`_, Willem Jan Withagen) -* doc: cleaned up troubleshooting OSDs documentation (`pr#23519 <https://github.com/ceph/ceph/pull/23519>`_, James McClune) -* doc: Clean up field names in ServiceDescription and add a service field (`pr#26006 <https://github.com/ceph/ceph/pull/26006>`_, Jeff Layton) -* doc: cleanup: prune Argonaut-specific verbiage (`pr#22899 <https://github.com/ceph/ceph/pull/22899>`_, Nathan Cutler) -* doc: cleanup rendering syntax (`pr#22389 <https://github.com/ceph/ceph/pull/22389>`_, Mahati Chamarthy) -* doc: Clean up the snapshot consistency note (`pr#25655 <https://github.com/ceph/ceph/pull/25655>`_, Greg Farnum) -* doc: common,mon: add implicit `#include` headers (`pr#23930 <https://github.com/ceph/ceph/pull/23930>`_, Kefu Chai) -* doc: common/options: add description of osd objectstore backends (`issue#24147 <http://tracker.ceph.com/issues/24147>`_, `pr#22040 <https://github.com/ceph/ceph/pull/22040>`_, Alfredo Deza) -* doc: corrected options of iscsiadm command (`pr#26395 <https://github.com/ceph/ceph/pull/26395>`_, ZhuJieWen) -* doc: correct rbytes description (`pr#24966 <https://github.com/ceph/ceph/pull/24966>`_, Xiang Dai) -* doc: describe RBD QoS settings (`pr#25202 <https://github.com/ceph/ceph/pull/25202>`_, Mykola Golub) -* doc: doc/bluestore: data doesn't use two partitions (ceph-disk era) (`pr#22604 <https://github.com/ceph/ceph/pull/22604>`_, Alfredo Deza) -* doc: doc/cephfs: fixup add/remove mds docs (`pr#23836 <https://github.com/ceph/ceph/pull/23836>`_, liu wei) -* doc: doc/cephfs: remove lingering "experimental" note about multimds (`pr#22852 <https://github.com/ceph/ceph/pull/22852>`_, John Spray) -* doc: doc/dashboard: don't advise mgr_initial_modules (`pr#22808 <https://github.com/ceph/ceph/pull/22808>`_, John Spray) -* doc: doc/dashboard: fix formatting on Grafana instructions-2 (`pr#22706 <https://github.com/ceph/ceph/pull/22706>`_, Jos Collin) -* doc: doc/dashboard: fix formatting on Grafana instructions (`pr#22657 <https://github.com/ceph/ceph/pull/22657>`_, John Spray) -* doc: doc/dev/cephx_protocol: fix couple errors (`pr#23750 <https://github.com/ceph/ceph/pull/23750>`_, Kefu Chai) -* doc: doc/dev/index: update rados lead (`pr#24160 <https://github.com/ceph/ceph/pull/24160>`_, Josh Durgin) -* doc: doc/dev/msgr2.rst: update of the banner and authentication phases (`pr#20094 <https://github.com/ceph/ceph/pull/20094>`_, Ricardo Dias) -* doc: doc/dev/seastore.rst: initial draft notes (`pr#21381 <https://github.com/ceph/ceph/pull/21381>`_, Sage Weil) -* doc: doc/dev: Updated component leads table (`pr#24238 <https://github.com/ceph/ceph/pull/24238>`_, Lenz Grimmer) -* doc: doc: fix the links in releases/schedule.rst (`pr#22364 <https://github.com/ceph/ceph/pull/22364>`_, Kefu Chai) -* doc: doc/man: mention import and export commands in rados manpage (`issue#4640 <http://tracker.ceph.com/issues/4640>`_, `pr#23186 <https://github.com/ceph/ceph/pull/23186>`_, Nathan Cutler) -* doc: doc: Mention PURGED_SNAPDIRS and RECOVERY_DELETES in Mimic release notes (`pr#22711 <https://github.com/ceph/ceph/pull/22711>`_, Florian Haas) -* doc: doc/mgr/dashboard: fix typo in mgr ssl setup (`pr#24790 <https://github.com/ceph/ceph/pull/24790>`_, Mehdi Abaakouk) -* doc: doc/mgr: mention how to clear config setting (`pr#22157 <https://github.com/ceph/ceph/pull/22157>`_, John Spray) -* doc: doc/mgr: note need for module.py file in plugins (`pr#22622 <https://github.com/ceph/ceph/pull/22622>`_, John Spray) -* doc: doc/mgr/orchestrator: Add Architecture Image (`pr#26331 <https://github.com/ceph/ceph/pull/26331>`_, Sebastian Wagner, Kefu Chai) -* doc: doc/mgr/orchestrator: add `wal` to blink lights (`pr#25634 <https://github.com/ceph/ceph/pull/25634>`_, Sebastian Wagner) -* doc: doc/mgr/prometheus: readd section about custom instance labels (`pr#25182 <https://github.com/ceph/ceph/pull/25182>`_, Jan Fajerski) -* doc: doc/orchestrator: Aligned Documentation with specification (`pr#25893 <https://github.com/ceph/ceph/pull/25893>`_, Sebastian Wagner) -* doc: doc/orchestrator: Integrate CLI specification into the documentation (`pr#25119 <https://github.com/ceph/ceph/pull/25119>`_, Sebastian Wagner) -* doc: doc: purge subcommand link broken (`pr#24785 <https://github.com/ceph/ceph/pull/24785>`_, James McClune) -* doc: doc/rados: Add bluestore memory autotuning docs (`pr#25069 <https://github.com/ceph/ceph/pull/25069>`_, Mark Nelson) -* doc: doc/rados/configuration: add osd scrub {begin,end} week day (`pr#25924 <https://github.com/ceph/ceph/pull/25924>`_, Neha Ojha) -* doc: doc/rados/configuration/msgr2: some documentation about msgr2 (`pr#26867 <https://github.com/ceph/ceph/pull/26867>`_, Sage Weil) -* doc: doc/rados/configuration: refresh osdmap section (`pr#26120 <https://github.com/ceph/ceph/pull/26120>`_, Ilya Dryomov) -* doc: doc/rados: correct osd path in troubleshooting-mon.rst (`pr#24964 <https://github.com/ceph/ceph/pull/24964>`_, songweibin) -* doc: doc/rados: fixed hit set type link (`pr#23833 <https://github.com/ceph/ceph/pull/23833>`_, James McClune) -* doc: doc/radosgw/s3.rst: Adding AWS S3 `Storage Class` as `Not Supported` (`pr#19571 <https://github.com/ceph/ceph/pull/19571>`_, Katie Holly) -* doc: doc/rados/operations: add balancer.rst to TOC (`pr#23684 <https://github.com/ceph/ceph/pull/23684>`_, Kefu Chai) -* doc: doc/rados/operations: add clay to erasure-code-profile (`pr#26902 <https://github.com/ceph/ceph/pull/26902>`_, Kefu Chai) -* doc: doc/rados/operations/crush-map-edits: fix 'take' syntax (`pr#24868 <https://github.com/ceph/ceph/pull/24868>`_, Remy Zandwijk, Sage Weil) -* doc: doc/rados/operations/pg-states: fix PG state names, part 2 (`pr#23165 <https://github.com/ceph/ceph/pull/23165>`_, Nathan Cutler) -* doc: doc/rados/operations/pg-states: fix PG state names (`pr#21520 <https://github.com/ceph/ceph/pull/21520>`_, Jan Fajerski) -* doc: doc/rados update invalid bash on bluestore migration (`issue#34317 <http://tracker.ceph.com/issues/34317>`_, `pr#23801 <https://github.com/ceph/ceph/pull/23801>`_, Alfredo Deza) -* doc: doc/rbd: corrected OpenStack Cinder permissions for Glance pool (`pr#22443 <https://github.com/ceph/ceph/pull/22443>`_, Jason Dillaman) -* doc: doc/rbd: explicitly state that mirroring requires connectivity to clusters (`pr#24433 <https://github.com/ceph/ceph/pull/24433>`_, Jason Dillaman) -* doc: doc/rbd/iscsi-target-cli: Update auth command (`pr#26788 <https://github.com/ceph/ceph/pull/26788>`_, Ricardo Marques) -* doc: doc/rbd/iscsi-target-cli: Update disk separator (`pr#26669 <https://github.com/ceph/ceph/pull/26669>`_, Ricardo Marques) -* doc: doc/release/luminous: v12.2.6 and v12.2.7 release notes (`pr#23057 <https://github.com/ceph/ceph/pull/23057>`_, Abhishek Lekshmanan, Sage Weil) -* doc: doc/releases: Add luminous releases 12.2.9 and 10 (`pr#25361 <https://github.com/ceph/ceph/pull/25361>`_, Brad Hubbard) -* doc: doc/releases: Add Mimic release 13.2.2 (`pr#24509 <https://github.com/ceph/ceph/pull/24509>`_, Brad Hubbard) -* doc: doc/releases: Mark Jewel EOL (`pr#23698 <https://github.com/ceph/ceph/pull/23698>`_, Brad Hubbard) -* doc: doc/releases: Mark Mimic first release as June (`pr#24099 <https://github.com/ceph/ceph/pull/24099>`_, Brad Hubbard) -* doc: doc/releases/mimic.rst: make note of 13.2.2 upgrade bug (`pr#24979 <https://github.com/ceph/ceph/pull/24979>`_, Neha Ojha) -* doc: doc/releases/mimic: tweak RBD major features (`pr#22011 <https://github.com/ceph/ceph/pull/22011>`_, Jason Dillaman) -* doc: doc/releases/mimic: Updated dashboard description (`pr#22016 <https://github.com/ceph/ceph/pull/22016>`_, Lenz Grimmer) -* doc: doc/releases/mimic: upgrade steps (`pr#21987 <https://github.com/ceph/ceph/pull/21987>`_, Sage Weil) -* doc: doc/releases/nautilus: dashboard package notes (`pr#26815 <https://github.com/ceph/ceph/pull/26815>`_, Kefu Chai) -* doc: doc/releases/schedule: Add Luminous 12.2.8 (`pr#23972 <https://github.com/ceph/ceph/pull/23972>`_, Brad Hubbard) -* doc: doc/releases/schedule: add mimic column (`pr#22006 <https://github.com/ceph/ceph/pull/22006>`_, Sage Weil) -* doc: doc/releases: Update releases to August '18 (`pr#23360 <https://github.com/ceph/ceph/pull/23360>`_, Brad Hubbard) -* doc: doc/rgw: document placement targets and storage classes (`issue#24508 <http://tracker.ceph.com/issues/24508>`_, `issue#38008 <http://tracker.ceph.com/issues/38008>`_, `pr#26997 <https://github.com/ceph/ceph/pull/26997>`_, Casey Bodley) -* doc: docs: add Clay code plugin documentation (`pr#24422 <https://github.com/ceph/ceph/pull/24422>`_, Myna) -* doc: docs: Fixed swift client authentication fail (`pr#23729 <https://github.com/ceph/ceph/pull/23729>`_, Dai Dang Van) -* doc: docs: radosgw: ldap-auth: fixed option name 'rgw_ldap_searchfilter' (`issue#23081 <http://tracker.ceph.com/issues/23081>`_, `pr#20526 <https://github.com/ceph/ceph/pull/20526>`_, Konstantin Shalygin) -* doc: doc/start: fix kube-helm.rst typo: docuiment -> document (`pr#23423 <https://github.com/ceph/ceph/pull/23423>`_, Zhou Peng) -* doc: doc/SubmittingPatches.rst: use Google style guide for doc patches (`pr#22190 <https://github.com/ceph/ceph/pull/22190>`_, Nathan Cutler) -* doc: Document correction (`pr#23926 <https://github.com/ceph/ceph/pull/23926>`_, Gangbiao Liu) -* doc: Document mappings of S3 Operations to ACL grants (`pr#26827 <https://github.com/ceph/ceph/pull/26827>`_, Adam C. Emerson) -* doc: document sizing for `block.db` (`pr#23210 <https://github.com/ceph/ceph/pull/23210>`_, Alfredo Deza) -* doc: document vstart options (`pr#22467 <https://github.com/ceph/ceph/pull/22467>`_, Mao Zhongyi) -* doc: doc/user-management: Remove obsolete reset caps command (`issue#37663 <http://tracker.ceph.com/issues/37663>`_, `pr#25550 <https://github.com/ceph/ceph/pull/25550>`_, Brad Hubbard) -* doc: edit on github (`pr#24452 <https://github.com/ceph/ceph/pull/24452>`_, Neha Ojha, Noah Watkins) -* doc: erasure-code-clay fixes typos (`pr#24653 <https://github.com/ceph/ceph/pull/24653>`_, Myna) -* doc: erasure-code-jerasure: removed default section of crush-device-class (`pr#21279 <https://github.com/ceph/ceph/pull/21279>`_, Junyoung Sung) -* doc: examples/librados: Remove not needed else clauses (`pr#24939 <https://github.com/ceph/ceph/pull/24939>`_, Marcos Paulo de Souza) -* doc: explain 'firstn v indep' in the CRUSH docs (`pr#24255 <https://github.com/ceph/ceph/pull/24255>`_, Greg Farnum) -* doc: Fix a couple typos and improve diagram formatting (`pr#23496 <https://github.com/ceph/ceph/pull/23496>`_, Bryan Stillwell) -* doc: fix a typo in doc/mgr/telegraf.rst (`pr#22267 <https://github.com/ceph/ceph/pull/22267>`_, Enming Zhang) -* doc: fix cephfs spelling errors (`pr#23763 <https://github.com/ceph/ceph/pull/23763>`_, Chen Zhenghua) -* doc: fix/cleanup freebsd osd disk creation (`pr#23600 <https://github.com/ceph/ceph/pull/23600>`_, Willem Jan Withagen) -* doc: Fix Create a Cluster url in Running Multiple Clusters (`issue#37764 <http://tracker.ceph.com/issues/37764>`_, `pr#25705 <https://github.com/ceph/ceph/pull/25705>`_, Jos Collin) -* doc: Fix EC k=3 m=2 profile overhead calculation example (`pr#20581 <https://github.com/ceph/ceph/pull/20581>`_, Charles Alva) -* doc: fixed broken urls (`pr#23564 <https://github.com/ceph/ceph/pull/23564>`_, James McClune) -* doc: fixed grammar in restore rbd image section (`pr#22944 <https://github.com/ceph/ceph/pull/22944>`_, James McClune) -* doc: fixed links in Pools section (`pr#23431 <https://github.com/ceph/ceph/pull/23431>`_, James McClune) -* doc: fixed minor typo in Debian packages section (`pr#22878 <https://github.com/ceph/ceph/pull/22878>`_, James McClune) -* doc: fixed restful mgr module SSL configuration commands (`pr#21864 <https://github.com/ceph/ceph/pull/21864>`_, Lenz Grimmer) -* doc: Fixed spelling errors in configuration section (`pr#23719 <https://github.com/ceph/ceph/pull/23719>`_, Bryan Stillwell) -* doc: Fixed syntax in iscsi initiator windows doc (`pr#25467 <https://github.com/ceph/ceph/pull/25467>`_, Michel Raabe) -* doc: Fixed the paragraph and boxes (`pr#25094 <https://github.com/ceph/ceph/pull/25094>`_, Scoots Hamilton) -* doc: Fixed the wrong numbers in mgr/dashboard.rst (`pr#22658 <https://github.com/ceph/ceph/pull/22658>`_, Jos Collin) -* doc: fixed typo in add-or-rm-mons.rst (`pr#26250 <https://github.com/ceph/ceph/pull/26250>`_, James McClune) -* doc: fixed typo in cephfs snapshots (`pr#23764 <https://github.com/ceph/ceph/pull/23764>`_, Kai Wagner) -* doc: fixed typo in CRUSH map docs (`pr#25953 <https://github.com/ceph/ceph/pull/25953>`_, James McClune) -* doc: fixed typo in man page (`pr#24792 <https://github.com/ceph/ceph/pull/24792>`_, James McClune) -* doc: Fix incorrect mention of 'osd_deep_mon_scrub_interval' (`pr#26522 <https://github.com/ceph/ceph/pull/26522>`_, Ashish Singh) -* doc: Fix iSCSI docs URL (`pr#26296 <https://github.com/ceph/ceph/pull/26296>`_, Ricardo Marques) -* doc: fix iscsi target name when configuring target (`pr#21906 <https://github.com/ceph/ceph/pull/21906>`_, Venky Shankar) -* doc: fix long description error for rgw_period_root_pool (`pr#23814 <https://github.com/ceph/ceph/pull/23814>`_, yuliyang) -* doc: fix some it's -> its typos (`pr#22802 <https://github.com/ceph/ceph/pull/22802>`_, Brad Fitzpatrick) -* doc: Fix some typos (`pr#25060 <https://github.com/ceph/ceph/pull/25060>`_, mooncake) -* doc: Fix Spelling Error In File "ceph.rst" (`pr#23917 <https://github.com/ceph/ceph/pull/23917>`_, Gangbiao Liu) -* doc: Fix Spelling Error In File dynamicresharding.rst (`pr#24175 <https://github.com/ceph/ceph/pull/24175>`_, xiaomanh) -* doc: Fix Spelling Error of Rados Deployment/Operations (`pr#23746 <https://github.com/ceph/ceph/pull/23746>`_, Li Bingyang) -* doc: Fix Spelling Error of Radosgw (`pr#23948 <https://github.com/ceph/ceph/pull/23948>`_, Li Bingyang) -* doc: Fix Spelling Error of Radosgw (`pr#24000 <https://github.com/ceph/ceph/pull/24000>`_, Li Bingyang) -* doc: Fix Spelling Error of Radosgw (`pr#24021 <https://github.com/ceph/ceph/pull/24021>`_, Li Bingyang) -* doc: Fix Spelling Error of Rados Operations (`pr#23891 <https://github.com/ceph/ceph/pull/23891>`_, Li Bingyang) -* doc: Fix Spelling Error of Rados Operations (`pr#23900 <https://github.com/ceph/ceph/pull/23900>`_, Li Bingyang) -* doc: Fix Spelling Error of Rados Operations (`pr#23903 <https://github.com/ceph/ceph/pull/23903>`_, Li Bingyang) -* doc: fix spelling errors in rbd doc (`pr#23765 <https://github.com/ceph/ceph/pull/23765>`_, Chen Zhenghua) -* doc: fix spelling errors of cephfs (`pr#23745 <https://github.com/ceph/ceph/pull/23745>`_, Chen Zhenghua) -* doc: fix the broken urls (`issue#25185 <http://tracker.ceph.com/issues/25185>`_, `pr#23310 <https://github.com/ceph/ceph/pull/23310>`_, Jos Collin) -* doc: fix the formatting of HTTP Frontends documentation (`pr#25723 <https://github.com/ceph/ceph/pull/25723>`_, James McClune) -* doc: fix typo and format issues in quick start documentation (`pr#23705 <https://github.com/ceph/ceph/pull/23705>`_, Chen Zhenghua) -* doc: fix typo in add-or-rm-mons (`pr#25661 <https://github.com/ceph/ceph/pull/25661>`_, Jos Collin) -* doc: Fix typo in ceph-fuse(8) (`pr#22214 <https://github.com/ceph/ceph/pull/22214>`_, Jos Collin) -* doc: fix typo in erasure coding example (`pr#25737 <https://github.com/ceph/ceph/pull/25737>`_, Arthur Liu) -* doc: Fix typos in Developer Guide (`pr#24067 <https://github.com/ceph/ceph/pull/24067>`_, Li Bingyang) -* doc: fix typos in doc/releases (`pr#24186 <https://github.com/ceph/ceph/pull/24186>`_, Li Bingyang) -* doc: \*/: fix typos in docs,messages,logs,comments (`pr#24139 <https://github.com/ceph/ceph/pull/24139>`_, Kefu Chai) -* doc: Fix Typos of Developer Guide (`pr#24094 <https://github.com/ceph/ceph/pull/24094>`_, Li Bingyang) -* doc: fix typos (`pr#22174 <https://github.com/ceph/ceph/pull/22174>`_, Mao Zhongyi) -* doc: .githubmap, .mailmap, .organizationmap: update contributors (`pr#24756 <https://github.com/ceph/ceph/pull/24756>`_, Tiago Melo) -* doc: githubmap, organizationmap: cleanup and add/update contributors/affiliation (`pr#22734 <https://github.com/ceph/ceph/pull/22734>`_, Tatjana Dehler) -* doc: give pool name if default pool rbd is not created (`pr#24750 <https://github.com/ceph/ceph/pull/24750>`_, Changcheng Liu) -* doc: Improve docs osd_recovery_priority, osd_recovery_op_priority and related (`pr#26705 <https://github.com/ceph/ceph/pull/26705>`_, David Zafman) -* doc: Improve OpenStack integration and multitenancy docs for radosgw (`issue#36765 <http://tracker.ceph.com/issues/36765>`_, `pr#25056 <https://github.com/ceph/ceph/pull/25056>`_, Florian Haas) -* doc: install build-doc deps without git clone (`pr#24416 <https://github.com/ceph/ceph/pull/24416>`_, Noah Watkins) -* doc: Luminous v12.2.10 release notes (`pr#25034 <https://github.com/ceph/ceph/pull/25034>`_, Nathan Cutler) -* doc: Luminous v12.2.9 release notes (`pr#24779 <https://github.com/ceph/ceph/pull/24779>`_, Nathan Cutler) -* doc: make it easier to reach the old dev doc TOC (`pr#23253 <https://github.com/ceph/ceph/pull/23253>`_, Nathan Cutler) -* doc: mention CVEs in luminous v12.2.11 release notes (`pr#26312 <https://github.com/ceph/ceph/pull/26312>`_, Nathan Cutler, Abhishek Lekshmanan) -* doc: mgr/dashboard: Add documentation about supported browsers (`issue#27207 <http://tracker.ceph.com/issues/27207>`_, `pr#23712 <https://github.com/ceph/ceph/pull/23712>`_, Tiago Melo) -* doc: mgr/dashboard: Added missing tooltip to settings icon (`pr#23935 <https://github.com/ceph/ceph/pull/23935>`_, Lenz Grimmer) -* doc: mgr/dashboard: Add hints to resolve unit test failures (`pr#23627 <https://github.com/ceph/ceph/pull/23627>`_, Stephan Müller) -* doc: mgr/dashboard: Cleaner notifications (`pr#23315 <https://github.com/ceph/ceph/pull/23315>`_, Stephan Müller) -* doc: mgr/dashboard: Cleanup of summary refresh test (`pr#25504 <https://github.com/ceph/ceph/pull/25504>`_, Stephan Müller) -* doc: mgr/dashboard: Document custom RESTController endpoints (`pr#25322 <https://github.com/ceph/ceph/pull/25322>`_, Stephan Müller) -* doc: mgr/dashboard: Fixed documentation link on RGW page (`pr#24612 <https://github.com/ceph/ceph/pull/24612>`_, Tina Kallio) -* doc: mgr/dashboard: Fix some setup steps in HACKING.rst (`pr#24788 <https://github.com/ceph/ceph/pull/24788>`_, Ranjitha G) -* doc: mgr/dashboard: Improve prettier scripts and documentation (`pr#22994 <https://github.com/ceph/ceph/pull/22994>`_, Tiago Melo) -* doc: mgr/dashboard/qa: add missing dashboard suites (`pr#25084 <https://github.com/ceph/ceph/pull/25084>`_, Tatjana Dehler) -* doc: mgr/dashboard: updated SSO documentation (`pr#25943 <https://github.com/ceph/ceph/pull/25943>`_, Alfonso Martínez) -* doc: mgr/dashboard: Update I18N documentation (`pr#25159 <https://github.com/ceph/ceph/pull/25159>`_, Tiago Melo) -* doc: mgr/orch: Fix remote_host doc reference (`issue#38254 <http://tracker.ceph.com/issues/38254>`_, `pr#26360 <https://github.com/ceph/ceph/pull/26360>`_, Ernesto Puerta) -* doc/mgr/plugins.rst: explain more about the plugin command protocol (`pr#22629 <https://github.com/ceph/ceph/pull/22629>`_, Dan Mick) -* doc: mimic is stable! (`pr#22350 <https://github.com/ceph/ceph/pull/22350>`_, Abhishek Lekshmanan) -* doc: mimic rc1 release notes (`pr#20975 <https://github.com/ceph/ceph/pull/20975>`_, Abhishek Lekshmanan) -* doc: Multiple spelling fixes (`pr#23514 <https://github.com/ceph/ceph/pull/23514>`_, Bryan Stillwell) -* doc: numbered eviction situations (`pr#24618 <https://github.com/ceph/ceph/pull/24618>`_, Scoots Hamilton) -* doc: osdmaptool/cleanup: Completed osdmaptool's usage (`issue#3214 <http://tracker.ceph.com/issues/3214>`_, `pr#13925 <https://github.com/ceph/ceph/pull/13925>`_, Vedant Nanda) -* doc: osd/PrimaryLogPG: avoid dereferencing invalid complete_to (`pr#23894 <https://github.com/ceph/ceph/pull/23894>`_, xie xingguo) -* doc: osd/PrimaryLogPG: rename list_missing -> list_unfound command (`pr#23723 <https://github.com/ceph/ceph/pull/23723>`_, xie xingguo) -* doc: PendingReleaseNotes: note newly added CLAY code (`pr#24491 <https://github.com/ceph/ceph/pull/24491>`_, Kefu Chai) -* doc: print pg peering in SVG instead of PNG (`pr#20366 <https://github.com/ceph/ceph/pull/20366>`_, Aleksei Gutikov) -* doc: Put command template into literal block (`pr#24999 <https://github.com/ceph/ceph/pull/24999>`_, Alexey Stupnikov) -* doc: qa/mgr/selftest: handle always-on module fall out (`issue#26994 <http://tracker.ceph.com/issues/26994>`_, `pr#23681 <https://github.com/ceph/ceph/pull/23681>`_, Noah Watkins) -* doc: qa: Task to emulate network delay and packet drop between two given h… (`pr#23602 <https://github.com/ceph/ceph/pull/23602>`_, Shilpa Jagannath) -* doc: qa/workunits/rbd: replace usage of 'rados rmpool' (`pr#23942 <https://github.com/ceph/ceph/pull/23942>`_, Mykola Golub) -* doc: release/mimic: correct the changelog to the latest version (`pr#22319 <https://github.com/ceph/ceph/pull/22319>`_, Abhishek Lekshmanan) -* doc: release notes for 12.2.8 luminous (`pr#23909 <https://github.com/ceph/ceph/pull/23909>`_, Abhishek Lekshmanan) -* doc: release notes for 13.2.2 mimic (`pr#24266 <https://github.com/ceph/ceph/pull/24266>`_, Abhishek Lekshmanan) -* doc: releases: mimic 13.2.1 release notes (`pr#23288 <https://github.com/ceph/ceph/pull/23288>`_, Abhishek Lekshmanan) -* doc: releases: release notes for v10.2.11 Jewel (`pr#22989 <https://github.com/ceph/ceph/pull/22989>`_, Abhishek Lekshmanan) -* doc: remove CZ mirror (`pr#21797 <https://github.com/ceph/ceph/pull/21797>`_, Tomáš Kukrál) -* doc: remove deprecated 'scrubq' from ceph(8) (`issue#35813 <http://tracker.ceph.com/issues/35813>`_, `pr#23959 <https://github.com/ceph/ceph/pull/23959>`_, Ruben Kerkhof) -* doc: remove documentation for installing google-perftools on Debian systems (`pr#22701 <https://github.com/ceph/ceph/pull/22701>`_, James McClune) -* doc: remove duplicate python packages (`pr#22203 <https://github.com/ceph/ceph/pull/22203>`_, Stefan Kooman) -* doc: Remove upstart files and references (`pr#23582 <https://github.com/ceph/ceph/pull/23582>`_, Brad Hubbard) -* doc: Remove value 'mon_osd_max_split_count' (`pr#26584 <https://github.com/ceph/ceph/pull/26584>`_, Kai Wagner) -* doc: replace rgw_namespace_expire_secs with rgw_nfs_namespace_expire_secs (`pr#20794 <https://github.com/ceph/ceph/pull/20794>`_, chnmagnus) -* doc: rewrote the iscsi-target-cli installation (`pr#23190 <https://github.com/ceph/ceph/pull/23190>`_, Massimiliano Cuttini) -* doc: rgw: fix tagging support status (`issue#24164 <http://tracker.ceph.com/issues/24164>`_, `pr#22206 <https://github.com/ceph/ceph/pull/22206>`_, Abhishek Lekshmanan) -* doc: rgw: fix the default value of usage log setting (`issue#37856 <http://tracker.ceph.com/issues/37856>`_, `pr#25892 <https://github.com/ceph/ceph/pull/25892>`_, Abhishek Lekshmanan) -* doc: Rook/orchestrator doc fixes (`pr#23472 <https://github.com/ceph/ceph/pull/23472>`_, John Spray) -* doc: s/doc/ref for dashboard urls (`pr#22772 <https://github.com/ceph/ceph/pull/22772>`_, Jos Collin) -* doc: sort releases by date and version (`pr#25972 <https://github.com/ceph/ceph/pull/25972>`_, Noah Watkins) -* doc: Spelling fixes in BlueStore config reference (`pr#23715 <https://github.com/ceph/ceph/pull/23715>`_, Bryan Stillwell) -* doc: Spelling fixes in Network config reference (`pr#23727 <https://github.com/ceph/ceph/pull/23727>`_, libingyang) -* doc: SubmittingPatches: added inline markup to important references (`pr#25978 <https://github.com/ceph/ceph/pull/25978>`_, James McClune) -* docs: update rgw info for mimic (`pr#22305 <https://github.com/ceph/ceph/pull/22305>`_, Yehuda Sadeh) -* doc: test/crimson: do not use unit.cc as the driver of unittest_seastar_denc (`pr#23937 <https://github.com/ceph/ceph/pull/23937>`_, Kefu Chai) -* doc: test/fio: Added tips for compilation of fio with 'rados' engine (`pr#24199 <https://github.com/ceph/ceph/pull/24199>`_, Adam Kupczyk) -* doc: test/msgr: add missing #include (`pr#23947 <https://github.com/ceph/ceph/pull/23947>`_, Kefu Chai) -* doc: Tidy up description wording and spelling (`pr#22599 <https://github.com/ceph/ceph/pull/22599>`_, Anthony D'Atri) -* doc: tweak RBD iSCSI docs to point to merged tooling repo (`pr#24963 <https://github.com/ceph/ceph/pull/24963>`_, Jason Dillaman) -* doc: typo fixes, s/Requered/Required/ (`pr#26406 <https://github.com/ceph/ceph/pull/26406>`_, Drunkard Zhang) -* doc: update blkin changes (`pr#22317 <https://github.com/ceph/ceph/pull/22317>`_, Mahati Chamarthy) -* doc: Update cpp.rst to accommodate the new APIs in libs3 (`pr#22162 <https://github.com/ceph/ceph/pull/22162>`_, Zhanhao Liu) -* doc: Updated Ceph Dashboard documentation (`pr#26626 <https://github.com/ceph/ceph/pull/26626>`_, Lenz Grimmer) -* doc: updated Ceph documentation links (`pr#25797 <https://github.com/ceph/ceph/pull/25797>`_, James McClune) -* doc: updated cluster map reference link (`pr#24460 <https://github.com/ceph/ceph/pull/24460>`_, James McClune) -* doc: updated crush map tunables link (`pr#24462 <https://github.com/ceph/ceph/pull/24462>`_, James McClune) -* doc: Updated dashboard documentation (features, SSL config) (`pr#22059 <https://github.com/ceph/ceph/pull/22059>`_, Lenz Grimmer) -* doc: Updated feature list and overview in dashboard.rst (`pr#26143 <https://github.com/ceph/ceph/pull/26143>`_, Lenz Grimmer) -* doc: updated get-involved.rst for ceph-dashboard (`pr#22663 <https://github.com/ceph/ceph/pull/22663>`_, Jos Collin) -* doc: Updated Mgr Dashboard documentation (`pr#24030 <https://github.com/ceph/ceph/pull/24030>`_, Lenz Grimmer) -* doc: updated multisite documentation (`issue#26997 <http://tracker.ceph.com/issues/26997>`_, `pr#23660 <https://github.com/ceph/ceph/pull/23660>`_, James McClune) -* doc: updated reference link for creating new disk offerings in cloudstack (`pr#22250 <https://github.com/ceph/ceph/pull/22250>`_, James McClune) -* doc: updated reference link for log based PG (`pr#26611 <https://github.com/ceph/ceph/pull/26611>`_, James McClune) -* doc: updated rgw multitenancy link (`pr#25929 <https://github.com/ceph/ceph/pull/25929>`_, James McClune) -* doc: updated the overview and glossary for dashboard (`pr#22750 <https://github.com/ceph/ceph/pull/22750>`_, Jos Collin) -* doc: updated wording from federated to multisite (`pr#24670 <https://github.com/ceph/ceph/pull/24670>`_, James McClune) -* doc: Update mgr/zabbix plugin documentation with link to Zabbix template (`pr#24584 <https://github.com/ceph/ceph/pull/24584>`_, Wido den Hollander) -* doc: update the description for SPDK in bluestore-config-ref.rst (`pr#22365 <https://github.com/ceph/ceph/pull/22365>`_, tone-zhang) -* doc: use :command: for subcommands in ceph-bluestore-tool manpage (`issue#24800 <http://tracker.ceph.com/issues/24800>`_, `pr#23114 <https://github.com/ceph/ceph/pull/23114>`_, Nathan Cutler) -* doc: use preferred commands for ceph config-key (`pr#26527 <https://github.com/ceph/ceph/pull/26527>`_, Changcheng Liu) -* doc: warn about how 'rados put' works in the manpage (`pr#25757 <https://github.com/ceph/ceph/pull/25757>`_, Greg Farnum) -* doc: Wip githubmap (`pr#25950 <https://github.com/ceph/ceph/pull/25950>`_, Greg Farnum) -* erasure-code,test: silence -Wunused-variable warnings (`pr#25200 <https://github.com/ceph/ceph/pull/25200>`_, Kefu Chai) -* example/librados: remove dependency on Boost system library (`issue#25054 <http://tracker.ceph.com/issues/25054>`_, `pr#23159 <https://github.com/ceph/ceph/pull/23159>`_, Nathan Cutler) -* githubmap: update contributors (`pr#22522 <https://github.com/ceph/ceph/pull/22522>`_, Kefu Chai) -* git: Ignore tags anywhere (`pr#26159 <https://github.com/ceph/ceph/pull/26159>`_, David Zafman) -* include/buffer.h: do not use ceph_assert() unless __CEPH__ is defined (`pr#23803 <https://github.com/ceph/ceph/pull/23803>`_, Kefu Chai) -* install-deps.sh: Fixes for RHEL 7 (`pr#26393 <https://github.com/ceph/ceph/pull/26393>`_, Zack Cerza) -* kv/MemDB: add perfcounter (`pr#10305 <https://github.com/ceph/ceph/pull/10305>`_, Jianpeng Ma) -* librados: add a rados_omap_iter_size function (`issue#26948 <http://tracker.ceph.com/issues/26948>`_, `pr#23593 <https://github.com/ceph/ceph/pull/23593>`_, Jeff Layton) -* librados: block MgrClient::start_command until mgrmap (`pr#21811 <https://github.com/ceph/ceph/pull/21811>`_, John Spray, Kefu Chai) -* librados: fix admin/build-doc warning (`pr#25706 <https://github.com/ceph/ceph/pull/25706>`_, Jos Collin) -* librados: fix buffer overflow for aio_exec python binding (`pr#21775 <https://github.com/ceph/ceph/pull/21775>`_, Aleksei Gutikov) -* librados: fix unitialized timeout in wait_for_osdmap (`pr#24721 <https://github.com/ceph/ceph/pull/24721>`_, Casey Bodley) -* librados: Include memory for unique_ptr definition (`issue#35833 <http://tracker.ceph.com/issues/35833>`_, `pr#23992 <https://github.com/ceph/ceph/pull/23992>`_, Brad Hubbard) -* librados: Reject the invalid pool create request at client side, rath… (`pr#21299 <https://github.com/ceph/ceph/pull/21299>`_, Yang Honggang) -* librados: return ENOENT if pool_id invalid (`pr#21609 <https://github.com/ceph/ceph/pull/21609>`_, Li Wang) -* librados: split C++ and C APIs into different source files (`pr#24616 <https://github.com/ceph/ceph/pull/24616>`_, Kefu Chai) -* librados: use ceph::async::Completion for asio bindings (`pr#21920 <https://github.com/ceph/ceph/pull/21920>`_, Casey Bodley) -* librados: use steady clock for rados_mon_op_timeout (`pr#20004 <https://github.com/ceph/ceph/pull/20004>`_, Mohamad Gebai) -* librbd: add missing shutdown states to managed lock helper (`issue#38387 <http://tracker.ceph.com/issues/38387>`_, `pr#26523 <https://github.com/ceph/ceph/pull/26523>`_, Jason Dillaman) -* librbd: add new configuration option to always move deleted items to the trash (`pr#24476 <https://github.com/ceph/ceph/pull/24476>`_, Jason Dillaman) -* librbd: add rbd image access/modified timestamps (`pr#21114 <https://github.com/ceph/ceph/pull/21114>`_, Julien Collet) -* librbd: add trash purge api calls (`pr#24427 <https://github.com/ceph/ceph/pull/24427>`_, Julien Collet, Theofilos Mouratidis, Jason Dillaman) -* librbd: always open first parent image if it exists for a snapshot (`pr#23733 <https://github.com/ceph/ceph/pull/23733>`_, Jason Dillaman) -* librbd: avoid aggregate-initializing any static_visitor (`pr#26876 <https://github.com/ceph/ceph/pull/26876>`_, Willem Jan Withagen) -* librbd: blacklisted client might not notice it lost the lock (`issue#34534 <http://tracker.ceph.com/issues/34534>`_, `pr#23829 <https://github.com/ceph/ceph/pull/23829>`_, Jason Dillaman) -* librbd: block_name_prefix is not created randomly (`issue#24634 <http://tracker.ceph.com/issues/24634>`_, `pr#22675 <https://github.com/ceph/ceph/pull/22675>`_, hyun-ha) -* librbd: bypass pool validation if "rbd_validate_pool" is false (`pr#26878 <https://github.com/ceph/ceph/pull/26878>`_, Jason Dillaman) -* librbd: commit IO as safe when complete if writeback cache is disabled (`issue#23516 <http://tracker.ceph.com/issues/23516>`_, `pr#22342 <https://github.com/ceph/ceph/pull/22342>`_, Jason Dillaman) -* librbd: corrected usage of ImageState::open flag parameter (`pr#25428 <https://github.com/ceph/ceph/pull/25428>`_, Mykola Golub) -* librbd: deep_copy: don't hide parent if zero overlap for snapshot (`issue#24545 <http://tracker.ceph.com/issues/24545>`_, `pr#22587 <https://github.com/ceph/ceph/pull/22587>`_, Mykola Golub) -* librbd: deep copy optionally support flattening cloned image (`issue#22787 <http://tracker.ceph.com/issues/22787>`_, `pr#21624 <https://github.com/ceph/ceph/pull/21624>`_, Mykola Golub) -* librbd: deep_copy: resize head object map if needed (`issue#24399 <http://tracker.ceph.com/issues/24399>`_, `pr#22415 <https://github.com/ceph/ceph/pull/22415>`_, Mykola Golub) -* librbd: deep-copy should not write to objects that cannot exist (`issue#25000 <http://tracker.ceph.com/issues/25000>`_, `pr#23132 <https://github.com/ceph/ceph/pull/23132>`_, Jason Dillaman) -* librbd: disable image mirroring when moving to trash (`pr#25509 <https://github.com/ceph/ceph/pull/25509>`_, Mykola Golub) -* librbd: disallow trash restoring when image being migrated (`pr#25529 <https://github.com/ceph/ceph/pull/25529>`_, songweibin) -* librbd: don't do create+truncate for discards with copyup (`pr#26825 <https://github.com/ceph/ceph/pull/26825>`_, Ilya Dryomov) -* librbd: ensure compare-and-write doesn't skip compare after copyup (`issue#38383 <http://tracker.ceph.com/issues/38383>`_, `pr#26519 <https://github.com/ceph/ceph/pull/26519>`_, Ilya Dryomov) -* librbd: extend API to include parent/child namespaces and image ids (`issue#36650 <http://tracker.ceph.com/issues/36650>`_, `pr#25194 <https://github.com/ceph/ceph/pull/25194>`_, Jason Dillaman) -* librbd: fix crash when opening nonexistent snapshot (`issue#24637 <http://tracker.ceph.com/issues/24637>`_, `pr#22676 <https://github.com/ceph/ceph/pull/22676>`_, Mykola Golub) -* librbd: fixed assert when flattening clone with zero overlap (`issue#35702 <http://tracker.ceph.com/issues/35702>`_, `pr#24045 <https://github.com/ceph/ceph/pull/24045>`_, Jason Dillaman) -* librbd: fix missing unblock_writes if shrink is not allowed (`issue#36778 <http://tracker.ceph.com/issues/36778>`_, `pr#25055 <https://github.com/ceph/ceph/pull/25055>`_, runsisi) -* librbd: fix possible unnecessary latency when requeue request (`pr#23815 <https://github.com/ceph/ceph/pull/23815>`_, Song Shun) -* librbd: fix potential live migration after commit issues due to not refreshed image header (`pr#23839 <https://github.com/ceph/ceph/pull/23839>`_, Mykola Golub) -* librbd: fix were_all_throttled() to avoid incorrect ret-value (`issue#38504 <http://tracker.ceph.com/issues/38504>`_, `pr#26688 <https://github.com/ceph/ceph/pull/26688>`_, Dongsheng Yang) -* librbd: flatten operation should use object map (`issue#23445 <http://tracker.ceph.com/issues/23445>`_, `pr#23941 <https://github.com/ceph/ceph/pull/23941>`_, Mykola Golub) -* librbd: force 'invalid object map' flag on-disk update (`issue#24434 <http://tracker.ceph.com/issues/24434>`_, `pr#22444 <https://github.com/ceph/ceph/pull/22444>`_, Mykola Golub) -* librbd: get_parent API method should properly handle migrating image (`issue#37998 <http://tracker.ceph.com/issues/37998>`_, `pr#26337 <https://github.com/ceph/ceph/pull/26337>`_, Jason Dillaman) -* librbd: handle aio failure in ManagedLock and PreReleaseRequest (`pr#20112 <https://github.com/ceph/ceph/pull/20112>`_, liyichao) -* librbd: improve object map performance under high IOPS workloads (`issue#38538 <http://tracker.ceph.com/issues/38538>`_, `pr#26721 <https://github.com/ceph/ceph/pull/26721>`_, Jason Dillaman) -* librbd: journaling unable request can not be sent to remote lock owner (`issue#26939 <http://tracker.ceph.com/issues/26939>`_, `pr#23649 <https://github.com/ceph/ceph/pull/23649>`_, Mykola Golub) -* librbd: keep access/modified timestamp updates out of IO path (`issue#37745 <http://tracker.ceph.com/issues/37745>`_, `pr#25883 <https://github.com/ceph/ceph/pull/25883>`_, Jason Dillaman) -* librbd: make it possible to migrate parent images (`pr#25945 <https://github.com/ceph/ceph/pull/25945>`_, Mykola Golub) -* librbd: move mirror peer attribute handling from CLI to API (`pr#25096 <https://github.com/ceph/ceph/pull/25096>`_, Jason Dillaman) -* librbd: namespace create/remove/list support (`pr#22608 <https://github.com/ceph/ceph/pull/22608>`_, Jason Dillaman) -* librbd: object copy state machine might dereference a deleted object (`issue#36220 <http://tracker.ceph.com/issues/36220>`_, `pr#24293 <https://github.com/ceph/ceph/pull/24293>`_, Jason Dillaman) -* librbd: object map improperly flagged as invalidated (`issue#24516 <http://tracker.ceph.com/issues/24516>`_, `pr#24105 <https://github.com/ceph/ceph/pull/24105>`_, Jason Dillaman) -* librbd: optionally limit journal in-flight appends (`pr#22983 <https://github.com/ceph/ceph/pull/22983>`_, Mykola Golub) -* librbd:optionally support FUA (force unit access) on write requests (`issue#19366 <http://tracker.ceph.com/issues/19366>`_, `pr#22945 <https://github.com/ceph/ceph/pull/22945>`_, ningtao) -* librbd: pool and image level config overrides (`pr#23743 <https://github.com/ceph/ceph/pull/23743>`_, Mykola Golub) -* librbd: potential object map race with copyup state machine (`issue#24516 <http://tracker.ceph.com/issues/24516>`_, `pr#24253 <https://github.com/ceph/ceph/pull/24253>`_, Jason Dillaman) -* librbd: potential race on image create request complete (`issue#24910 <http://tracker.ceph.com/issues/24910>`_, `pr#23639 <https://github.com/ceph/ceph/pull/23639>`_, Mykola Golub) -* librbd: prevent the use of internal feature bits from external users (`issue#24165 <http://tracker.ceph.com/issues/24165>`_, `pr#22072 <https://github.com/ceph/ceph/pull/22072>`_, Jason Dillaman) -* librbd: prevent use of namespaces on pre-nautilus OSDs (`pr#23823 <https://github.com/ceph/ceph/pull/23823>`_, Jason Dillaman) -* librbd: properly filter out trashed non-user images on purge (`pr#26079 <https://github.com/ceph/ceph/pull/26079>`_, Mykola Golub) -* librbd: properly handle potential object map failures (`issue#36074 <http://tracker.ceph.com/issues/36074>`_, `pr#24179 <https://github.com/ceph/ceph/pull/24179>`_, Jason Dillaman) -* librbd: race condition possible when validating RBD pool (`issue#38500 <http://tracker.ceph.com/issues/38500>`_, `pr#26683 <https://github.com/ceph/ceph/pull/26683>`_, Jason Dillaman) -* librbd: reduce the TokenBucket fill cycle and support bursting io configuration (`pr#24214 <https://github.com/ceph/ceph/pull/24214>`_, Shiyang Ruan) -* librbd: remove template declaration of a non-template function (`pr#23790 <https://github.com/ceph/ceph/pull/23790>`_, Shiyang Ruan) -* librbd: reset snaps in rbd_snap_list() (`issue#37508 <http://tracker.ceph.com/issues/37508>`_, `pr#25379 <https://github.com/ceph/ceph/pull/25379>`_, Kefu Chai) -* librbd: restart io if migration parent gone (`issue#36710 <http://tracker.ceph.com/issues/36710>`_, `pr#25175 <https://github.com/ceph/ceph/pull/25175>`_, Mykola Golub) -* librbd: send_copyup() fixes and cleanups (`pr#26483 <https://github.com/ceph/ceph/pull/26483>`_, Ilya Dryomov) -* librbd: simplify config override handling (`pr#24450 <https://github.com/ceph/ceph/pull/24450>`_, Jason Dillaman) -* librbd: skip small, unaligned discard extents by default (`issue#38146 <http://tracker.ceph.com/issues/38146>`_, `pr#26432 <https://github.com/ceph/ceph/pull/26432>`_, Jason Dillaman) -* librbd: support bps throttle and throttle read and write seperately (`pr#21635 <https://github.com/ceph/ceph/pull/21635>`_, Dongsheng Yang) -* librbd: support migrating images with minimal downtime (`issue#18430 <http://tracker.ceph.com/issues/18430>`_, `issue#24439 <http://tracker.ceph.com/issues/24439>`_, `issue#26874 <http://tracker.ceph.com/issues/26874>`_, `issue#23659 <http://tracker.ceph.com/issues/23659>`_, `pr#15831 <https://github.com/ceph/ceph/pull/15831>`_, Patrick Donnelly, Sage Weil, Alfredo Deza, Kefu Chai, Patrick Nawracay, Pavani Rajula, Mykola Golub, Casey Bodley, Yingxin, Jason Dillaman) -* librbd: support v2 cloning across namespaces (`pr#23662 <https://github.com/ceph/ceph/pull/23662>`_, Jason Dillaman) -* librbd: use object map when doing snap rollback (`pr#23110 <https://github.com/ceph/ceph/pull/23110>`_, songweibin) -* librbd: utilize the journal disabled policy when removing images (`issue#23512 <http://tracker.ceph.com/issues/23512>`_, `pr#22327 <https://github.com/ceph/ceph/pull/22327>`_, Jason Dillaman) -* librbd: validate data pool for self-managed snapshot support (`pr#22737 <https://github.com/ceph/ceph/pull/22737>`_, Mykola Golub) -* librbd: workaround an ICE of GCC (`issue#37719 <http://tracker.ceph.com/issues/37719>`_, `pr#25733 <https://github.com/ceph/ceph/pull/25733>`_, Kefu Chai) -* log: avoid heap allocations for most log entries (`pr#23721 <https://github.com/ceph/ceph/pull/23721>`_, Patrick Donnelly) -* lvm: when osd creation fails log the exception (`issue#24456 <http://tracker.ceph.com/issues/24456>`_, `pr#22627 <https://github.com/ceph/ceph/pull/22627>`_, Andrew Schoen) -* mailmap,organization: Update sangfor affiliation (`pr#25225 <https://github.com/ceph/ceph/pull/25225>`_, Zengran Zhang) -* mds: add reference when setting Connection::priv to existing session (`pr#22384 <https://github.com/ceph/ceph/pull/22384>`_, "Yan, Zheng") -* mds: fix leak of MDSCacheObject::waiting (`issue#24289 <http://tracker.ceph.com/issues/24289>`_, `pr#22307 <https://github.com/ceph/ceph/pull/22307>`_, "Yan, Zheng") -* mds: fix some memory leak (`issue#24289 <http://tracker.ceph.com/issues/24289>`_, `pr#22240 <https://github.com/ceph/ceph/pull/22240>`_, "Yan, Zheng") -* mds,messages: silence -Wclass-memaccess warnings (`pr#21845 <https://github.com/ceph/ceph/pull/21845>`_, Kefu Chai) -* mds: properly journal root inode's snaprealm (`issue#24343 <http://tracker.ceph.com/issues/24343>`_, `pr#22320 <https://github.com/ceph/ceph/pull/22320>`_, "Yan, Zheng") -* mds: remove obsolete comments (`pr#25549 <https://github.com/ceph/ceph/pull/25549>`_, Patrick Donnelly) -* mds: reply session reject for open request from blacklisted client (`pr#21941 <https://github.com/ceph/ceph/pull/21941>`_, Yan, Zheng, "Yan, Zheng") -* mgr: Add ability to trigger a cluster/audit log message from Python (`pr#24239 <https://github.com/ceph/ceph/pull/24239>`_, Volker Theile) -* mgr: Add `HandleCommandResult` namedtuple (`pr#25261 <https://github.com/ceph/ceph/pull/25261>`_, Sebastian Wagner) -* mgr: add limit param to osd perf query (`pr#25151 <https://github.com/ceph/ceph/pull/25151>`_, Mykola Golub) -* mgr: add per pool force-recovery/backfill commands (`issue#38456 <http://tracker.ceph.com/issues/38456>`_, `pr#26560 <https://github.com/ceph/ceph/pull/26560>`_, xie xingguo) -* mgr: add per pool scrub commands (`pr#26532 <https://github.com/ceph/ceph/pull/26532>`_, xie xingguo) -* mgr: Allow modules to get/set other module options (`pr#25651 <https://github.com/ceph/ceph/pull/25651>`_, Volker Theile) -* mgr: Allow rook to scale the mon count (`pr#26405 <https://github.com/ceph/ceph/pull/26405>`_, Jeff Layton) -* mgr: always on modules v2 (`pr#23970 <https://github.com/ceph/ceph/pull/23970>`_, Noah Watkins) -* mgr/ansible: Add/remove hosts (`pr#26241 <https://github.com/ceph/ceph/pull/26241>`_, Juan Miguel Olmo Martínez) -* mgr/ansible: Replace Ansible playbook used to retrieve storage devices data (`pr#26023 <https://github.com/ceph/ceph/pull/26023>`_, Juan Miguel Olmo Martínez) -* mgr/ansible: Replace deprecated <get_config> calls (`pr#25964 <https://github.com/ceph/ceph/pull/25964>`_, Juan Miguel Olmo Martínez) -* mgr: Centralize PG_STATES to MgrModule (`pr#22594 <https://github.com/ceph/ceph/pull/22594>`_, Wido den Hollander) -* mgr: ceph-mgr: hold lock while accessing the request list and submitting request (`pr#25048 <https://github.com/ceph/ceph/pull/25048>`_, Jerry Lee) -* mgr: change 'bytes' dynamic perf counters to COUNTER type (`pr#25908 <https://github.com/ceph/ceph/pull/25908>`_, Mykola Golub) -* mgr: create always on class of modules (`pr#23106 <https://github.com/ceph/ceph/pull/23106>`_, Noah Watkins) -* mgr: create shell OSD performance query class (`pr#24117 <https://github.com/ceph/ceph/pull/24117>`_, Mykola Golub) -* mgr/dashboard: About modal proposed changes (`issue#35693 <http://tracker.ceph.com/issues/35693>`_, `pr#25376 <https://github.com/ceph/ceph/pull/25376>`_, Kanika Murarka) -* mgr/dashboard: Add ability to list,set and unset cluster-wide OSD flags to the backend (`issue#24056 <http://tracker.ceph.com/issues/24056>`_, `pr#21998 <https://github.com/ceph/ceph/pull/21998>`_, Patrick Nawracay) -* mgr/dashboard: Add a 'clear filter' button to configuration page (`issue#36173 <http://tracker.ceph.com/issues/36173>`_, `pr#25712 <https://github.com/ceph/ceph/pull/25712>`_, familyuu) -* mgr/dashboard: add a script to run an API request on a rook cluster (`pr#25991 <https://github.com/ceph/ceph/pull/25991>`_, Jeff Layton) -* mgr/dashboard: Add a unit test form helper class (`pr#24633 <https://github.com/ceph/ceph/pull/24633>`_, Stephan Müller) -* mgr/dashboard: Add backend support for changing dashboard configuration settings via the REST API (`pr#22457 <https://github.com/ceph/ceph/pull/22457>`_, Patrick Nawracay) -* mgr/dashboard: Add breadcrumbs component (`issue#24781 <http://tracker.ceph.com/issues/24781>`_, `pr#23414 <https://github.com/ceph/ceph/pull/23414>`_, Tiago Melo) -* mgr/dashboard: add columns to Pools table (`pr#25791 <https://github.com/ceph/ceph/pull/25791>`_, Alfonso Martínez) -* mgr/dashboard: Add decorator to skip parameter encoding (`issue#26856 <http://tracker.ceph.com/issues/26856>`_, `pr#23419 <https://github.com/ceph/ceph/pull/23419>`_, Tiago Melo) -* mgr/dashboard: Add description to menu items on mobile navigation (`pr#26198 <https://github.com/ceph/ceph/pull/26198>`_, Sebastian Krah) -* mgr/dashboard: added command to tox.ini (`pr#26073 <https://github.com/ceph/ceph/pull/26073>`_, Alfonso Martínez) -* mgr/dashboard: added 'env_build' to 'npm run e2e' (`pr#26165 <https://github.com/ceph/ceph/pull/26165>`_, Alfonso Martínez) -* mgr/dashboard: Added new validators (`pr#22526 <https://github.com/ceph/ceph/pull/22526>`_, Stephan Müller) -* mgr/dashboard: Add error handling on the frontend (`pr#21820 <https://github.com/ceph/ceph/pull/21820>`_, Tiago Melo) -* mgr/dashboard: add Feature Toggles (`issue#37530 <http://tracker.ceph.com/issues/37530>`_, `pr#26102 <https://github.com/ceph/ceph/pull/26102>`_, Ernesto Puerta) -* mgr/dashboard: Add Filesystems list component (`pr#21913 <https://github.com/ceph/ceph/pull/21913>`_, Tiago Melo) -* mgr/dashboard: Add filtered rows number in table footer (`pr#22504 <https://github.com/ceph/ceph/pull/22504>`_, Tiago Melo) -* mgr/dashboard: Add gap between panel footer buttons (`pr#23796 <https://github.com/ceph/ceph/pull/23796>`_, Volker Theile) -* mgr/dashboard: Add guideline how to brand the UI and update the color scheme (`pr#25988 <https://github.com/ceph/ceph/pull/25988>`_, Sebastian Krah) -* mgr/dashboard: Add help menu entry (`pr#22303 <https://github.com/ceph/ceph/pull/22303>`_, Ricardo Marques) -* mgr/dashboard: Add i18n support (`pr#24803 <https://github.com/ceph/ceph/pull/24803>`_, Sebastian Krah, Tiago Melo) -* mgr/dashboard: Add implicit wait in e2e tests (`pr#26384 <https://github.com/ceph/ceph/pull/26384>`_, Tiago Melo) -* mgr/dashboard: Add info to Pools table (`pr#25489 <https://github.com/ceph/ceph/pull/25489>`_, Alfonso Martínez) -* mgr/dashboard: Add iSCSI discovery authentication UI (`pr#26320 <https://github.com/ceph/ceph/pull/26320>`_, Tiago Melo) -* mgr/dashboard: Add iSCSI Target Edit UI (`issue#38014 <http://tracker.ceph.com/issues/38014>`_, `pr#26367 <https://github.com/ceph/ceph/pull/26367>`_, Tiago Melo) -* mgr/dashboard: Add left padding to helper icon (`pr#24631 <https://github.com/ceph/ceph/pull/24631>`_, Stephan Müller) -* mgr/dashboard: Add missing frontend I18N (`issue#36719 <http://tracker.ceph.com/issues/36719>`_, `pr#25654 <https://github.com/ceph/ceph/pull/25654>`_, Tiago Melo) -* mgr/dashboard: Add missing test requirement "werkzeug" (`pr#24628 <https://github.com/ceph/ceph/pull/24628>`_, Stephan Müller) -* mgr/dashboard: Add NFS status endpoint (`issue#38399 <http://tracker.ceph.com/issues/38399>`_, `pr#26539 <https://github.com/ceph/ceph/pull/26539>`_, Tiago Melo) -* mgr/dashboard: Add 'no-unused-variable' rule to tslint (`pr#22328 <https://github.com/ceph/ceph/pull/22328>`_, Tiago Melo) -* mgr/dashboard: Add permission validation to the "Purge Trash" button (`issue#36272 <http://tracker.ceph.com/issues/36272>`_, `pr#24370 <https://github.com/ceph/ceph/pull/24370>`_, Tiago Melo) -* mgr/dashboard: Add pool cache tiering details tab (`issue#25158 <http://tracker.ceph.com/issues/25158>`_, `pr#25602 <https://github.com/ceph/ceph/pull/25602>`_, familyuu) -* mgr/dashboard: Add Pool update endpoint (`pr#21881 <https://github.com/ceph/ceph/pull/21881>`_, Sebastian Wagner, Stephan Müller) -* mgr/dashboard: Add Prettier formatter to the frontend (`pr#21819 <https://github.com/ceph/ceph/pull/21819>`_, Tiago Melo) -* mgr/dashboard: add profiles to set cluster's rebuild performance (`pr#24968 <https://github.com/ceph/ceph/pull/24968>`_, Tatjana Dehler) -* mgr/dashboard: add pytest plugin: faulthandler (`pr#25053 <https://github.com/ceph/ceph/pull/25053>`_, Alfonso Martínez) -* mgr/dashboard: Add REST API for role management (`pr#23322 <https://github.com/ceph/ceph/pull/23322>`_, Ricardo Marques) -* mgr/dashboard: Add scrub action to the OSDs table (`pr#22122 <https://github.com/ceph/ceph/pull/22122>`_, Tiago Melo) -* mgr/dashboard: Adds custom timepicker for grafana iframes (`pr#25583 <https://github.com/ceph/ceph/pull/25583>`_, Kanika Murarka) -* mgr/dashboard: Adds ECP management to the frontend (`pr#24627 <https://github.com/ceph/ceph/pull/24627>`_, Stephan Müller) -* mgr/dashboard: Add shared Confirmation Modal (`pr#22601 <https://github.com/ceph/ceph/pull/22601>`_, Tiago Melo) -* mgr/dashboard: add supported flag information to config options documentation (`pr#22760 <https://github.com/ceph/ceph/pull/22760>`_, Tatjana Dehler) -* mgr/dashboard: Add support for iSCSI's multi backstores (UI) (`pr#26575 <https://github.com/ceph/ceph/pull/26575>`_, Tiago Melo) -* mgr/dashboard: Add support for managing individual OSD settings/characteristics in the frontend (`issue#36487 <http://tracker.ceph.com/issues/36487>`_, `issue#36444 <http://tracker.ceph.com/issues/36444>`_, `issue#35448 <http://tracker.ceph.com/issues/35448>`_, `issue#36188 <http://tracker.ceph.com/issues/36188>`_, `issue#35811 <http://tracker.ceph.com/issues/35811>`_, `issue#35816 <http://tracker.ceph.com/issues/35816>`_, `issue#36086 <http://tracker.ceph.com/issues/36086>`_, `pr#24606 <https://github.com/ceph/ceph/pull/24606>`_, Patrick Nawracay) -* mgr/dashboard: Add support for managing individual OSD settings in the backend (`issue#24270 <http://tracker.ceph.com/issues/24270>`_, `pr#23491 <https://github.com/ceph/ceph/pull/23491>`_, Patrick Nawracay) -* mgr/dashboard: Add support for managing RBD QoS (`issue#37572 <http://tracker.ceph.com/issues/37572>`_, `issue#38004 <http://tracker.ceph.com/issues/38004>`_, `issue#37570 <http://tracker.ceph.com/issues/37570>`_, `issue#37936 <http://tracker.ceph.com/issues/37936>`_, `issue#37574 <http://tracker.ceph.com/issues/37574>`_, `issue#36191 <http://tracker.ceph.com/issues/36191>`_, `issue#37845 <http://tracker.ceph.com/issues/37845>`_, `issue#37569 <http://tracker.ceph.com/issues/37569>`_, `pr#25233 <https://github.com/ceph/ceph/pull/25233>`_, Patrick Nawracay) -* mgr/dashboard: Add support for RBD Trash (`issue#24272 <http://tracker.ceph.com/issues/24272>`_, `pr#23351 <https://github.com/ceph/ceph/pull/23351>`_, Tiago Melo) -* mgr/dashboard: Add support for URI encode (`issue#24621 <http://tracker.ceph.com/issues/24621>`_, `pr#22672 <https://github.com/ceph/ceph/pull/22672>`_, Tiago Melo) -* mgr/dashboard: Add table actions component (`pr#23779 <https://github.com/ceph/ceph/pull/23779>`_, Stephan Müller) -* mgr/dashboard: Add table of contents to HACKING.rst (`pr#25812 <https://github.com/ceph/ceph/pull/25812>`_, Sebastian Krah) -* mgr/dashboard: Add token authentication to Grafana proxy (`pr#22459 <https://github.com/ceph/ceph/pull/22459>`_, Patrick Nawracay) -* mgr/dashboard: Add TSLint rule "no-unused-variable" (`pr#24699 <https://github.com/ceph/ceph/pull/24699>`_, Alfonso Martínez) -* mgr/dashboard: Add UI for Cluster-wide OSD Flags configuration (`pr#22461 <https://github.com/ceph/ceph/pull/22461>`_, Tiago Melo) -* mgr/dashboard: Add UI for disabling ACL authentication (`issue#38218 <http://tracker.ceph.com/issues/38218>`_, `pr#26388 <https://github.com/ceph/ceph/pull/26388>`_, Tiago Melo) -* mgr/dashboard: Add UI to configure the telemetry mgr plugin (`pr#25989 <https://github.com/ceph/ceph/pull/25989>`_, Volker Theile) -* mgr/dashboard: Add unique validator (`pr#23802 <https://github.com/ceph/ceph/pull/23802>`_, Volker Theile) -* mgr/dashboard: Allow "/" in pool name (`issue#38302 <http://tracker.ceph.com/issues/38302>`_, `pr#26408 <https://github.com/ceph/ceph/pull/26408>`_, Tiago Melo) -* mgr/dashboard: Allow insecure HTTPS in run-backend-api-request (`pr#21882 <https://github.com/ceph/ceph/pull/21882>`_, Sebastian Wagner) -* mgr/dashboard: Allow renaming an existing Pool (`issue#36560 <http://tracker.ceph.com/issues/36560>`_, `pr#25107 <https://github.com/ceph/ceph/pull/25107>`_, guodan1) -* mgr/dashboard: Audit REST API calls (`pr#24475 <https://github.com/ceph/ceph/pull/24475>`_, Volker Theile) -* mgr/dashboard: Auto-create a name for RBD image snapshots (`pr#23735 <https://github.com/ceph/ceph/pull/23735>`_, Volker Theile) -* mgr/dashboard: avoid blank content in Read/Write Card (`pr#25563 <https://github.com/ceph/ceph/pull/25563>`_, Alfonso Martínez) -* mgr/dashboard: awsauth: fix python3 string decode problem (`pr#21794 <https://github.com/ceph/ceph/pull/21794>`_, Ricardo Dias) -* mgr/dashboard: Can't handle user editing when tenants are specified (`pr#24757 <https://github.com/ceph/ceph/pull/24757>`_, Volker Theile) -* mgr/dashboard: Catch LookupError when checking the RGW status (`pr#24028 <https://github.com/ceph/ceph/pull/24028>`_, Volker Theile) -* mgr/dashboard: CdFormGroup (`pr#22644 <https://github.com/ceph/ceph/pull/22644>`_, Stephan Müller) -* mgr/dashboard: Ceph dashboard user management from the UI (`pr#22758 <https://github.com/ceph/ceph/pull/22758>`_, Ricardo Marques) -* mgr/dashboard: Change 'Client Recovery' title (`pr#26883 <https://github.com/ceph/ceph/pull/26883>`_, Ernesto Puerta) -* mgr/dashboard: Changed background color of Masthead to brand gray (`issue#35690 <http://tracker.ceph.com/issues/35690>`_, `pr#25628 <https://github.com/ceph/ceph/pull/25628>`_, Neha Gupta) -* mgr/dashboard: Changed default value of decimal point to 1 (`pr#22386 <https://github.com/ceph/ceph/pull/22386>`_, Tiago Melo) -* mgr/dashboard: Change icon color in notifications (`pr#26586 <https://github.com/ceph/ceph/pull/26586>`_, Volker Theile) -* mgr/dashboard: Check content-type before decode json response (`pr#24350 <https://github.com/ceph/ceph/pull/24350>`_, Ricardo Marques) -* mgr/dashboard: check for existence of Grafana dashboard (`issue#36356 <http://tracker.ceph.com/issues/36356>`_, `pr#25154 <https://github.com/ceph/ceph/pull/25154>`_, Kanika Murarka) -* mgr/dashboard: Cleanup of OSD list methods (`pr#24823 <https://github.com/ceph/ceph/pull/24823>`_, Stephan Müller) -* mgr/dashboard: Cleanup of the cluster and audit log (`pr#26188 <https://github.com/ceph/ceph/pull/26188>`_, Sebastian Krah) -* mgr/dashboard: Cleanup (`pr#24831 <https://github.com/ceph/ceph/pull/24831>`_, Patrick Nawracay) -* mgr/dashboard: Clean up pylint's `disable:no-else-return` (`pr#26509 <https://github.com/ceph/ceph/pull/26509>`_, Patrick Nawracay) -* mgr/dashboard: Cleanup Python code (`pr#26743 <https://github.com/ceph/ceph/pull/26743>`_, Volker Theile) -* mgr/dashboard: Cleanup RGW config checks (`pr#22669 <https://github.com/ceph/ceph/pull/22669>`_, Volker Theile) -* mgr/dashboard: Close modal dialogs on login screen (`pr#23328 <https://github.com/ceph/ceph/pull/23328>`_, Volker Theile) -* mgr/dashboard: code cleanup (`pr#25502 <https://github.com/ceph/ceph/pull/25502>`_, Alfonso Martínez) -* mgr/dashboard: Color variables for color codes (`issue#24575 <http://tracker.ceph.com/issues/24575>`_, `pr#22695 <https://github.com/ceph/ceph/pull/22695>`_, Kanika Murarka) -* mgr/dashboard config options add (`issue#34528 <http://tracker.ceph.com/issues/34528>`_, `issue#24996 <http://tracker.ceph.com/issues/24996>`_, `issue#24455 <http://tracker.ceph.com/issues/24455>`_, `issue#36173 <http://tracker.ceph.com/issues/36173>`_, `pr#23230 <https://github.com/ceph/ceph/pull/23230>`_, Tatjana Dehler) -* mgr/dashboard: Config options integration (read-only) depends on #22422 (`pr#21460 <https://github.com/ceph/ceph/pull/21460>`_, Tatjana Dehler) -* mgr/dashboard: config options table cleanup (`issue#34533 <http://tracker.ceph.com/issues/34533>`_, `pr#24523 <https://github.com/ceph/ceph/pull/24523>`_, Tatjana Dehler) -* mgr/dashboard: config option type names update (`issue#37843 <http://tracker.ceph.com/issues/37843>`_, `pr#25876 <https://github.com/ceph/ceph/pull/25876>`_, Tatjana Dehler) -* mgr/dashboard: configs textarea disallow horizontal resize (`issue#36452 <http://tracker.ceph.com/issues/36452>`_, `pr#24614 <https://github.com/ceph/ceph/pull/24614>`_, Tatjana Dehler) -* mgr/dashboard: Configure all mgr modules in UI (`pr#26116 <https://github.com/ceph/ceph/pull/26116>`_, Volker Theile) -* mgr/dashboard: Confirmation modal doesn't close (`pr#24544 <https://github.com/ceph/ceph/pull/24544>`_, Volker Theile) -* mgr/dashboard: Confusing tilted time stamps in the CephFS performance graph (`pr#25909 <https://github.com/ceph/ceph/pull/25909>`_, Volker Theile) -* mgr/dashboard: consider config option default values (`issue#37683 <http://tracker.ceph.com/issues/37683>`_, `pr#25616 <https://github.com/ceph/ceph/pull/25616>`_, Tatjana Dehler) -* mgr/dashboard: controller infrastructure refactor and new features (`pr#22210 <https://github.com/ceph/ceph/pull/22210>`_, Patrick Nawracay, Ricardo Dias) -* mgr/dashboard: Correct permission decorator (`pr#26135 <https://github.com/ceph/ceph/pull/26135>`_, Tina Kallio) -* mgr/dashboard: CRUSH map viewer (`issue#35684 <http://tracker.ceph.com/issues/35684>`_, `pr#24766 <https://github.com/ceph/ceph/pull/24766>`_, familyuu) -* mgr/dashboard: CRUSH map viewer RFE (`issue#37794 <http://tracker.ceph.com/issues/37794>`_, `pr#26162 <https://github.com/ceph/ceph/pull/26162>`_, familyuu) -* mgr/dashboard: Dashboard info cards refactoring (`pr#22902 <https://github.com/ceph/ceph/pull/22902>`_, Alfonso Martínez) -* mgr/dashboard: Datatable error panel blinking on page loading (`pr#23316 <https://github.com/ceph/ceph/pull/23316>`_, Volker Theile) -* mgr/dashboard: Deletion dialog falsely executes deletion when pressing 'Cancel' (`pr#22003 <https://github.com/ceph/ceph/pull/22003>`_, Volker Theile) -* mgr/dashboard: Disable package-lock.json creation (`pr#22061 <https://github.com/ceph/ceph/pull/22061>`_, Tiago Melo) -* mgr/dashboard: Disable RBD actions during task execution (`pr#23445 <https://github.com/ceph/ceph/pull/23445>`_, Ricardo Marques) -* mgr/dashboard: disallow editing read-only config options (part 2) (`pr#26450 <https://github.com/ceph/ceph/pull/26450>`_, Tatjana Dehler) -* mgr/dashboard: disallow editing read-only config options (`pr#26297 <https://github.com/ceph/ceph/pull/26297>`_, Tatjana Dehler) -* mgr/dashboard: Display logged in user (`issue#24822 <http://tracker.ceph.com/issues/24822>`_, `pr#24213 <https://github.com/ceph/ceph/pull/24213>`_, guodan1, guodan) -* mgr/dashboard: Display notification if RGW is not configured (`pr#21785 <https://github.com/ceph/ceph/pull/21785>`_, Volker Theile) -* mgr/dashboard: Display RGW user/bucket quota max size in human readable form (`pr#23842 <https://github.com/ceph/ceph/pull/23842>`_, Volker Theile) -* mgr/dashboard: Do not fetch pool list on RBD edit (`pr#22404 <https://github.com/ceph/ceph/pull/22404>`_, Ricardo Marques) -* mgr/dashboard: Do not require cert for http (`issue#36069 <http://tracker.ceph.com/issues/36069>`_, `pr#24103 <https://github.com/ceph/ceph/pull/24103>`_, Boris Ranto) -* mgr/dashboard: Drop iSCSI gateway name parameter (`pr#26984 <https://github.com/ceph/ceph/pull/26984>`_, Ricardo Marques) -* mgr/dashboard: enable coverage for API tests (`pr#26851 <https://github.com/ceph/ceph/pull/26851>`_, Alfonso Martínez) -* mgr/dashboard: Escape regex pattern in DeletionModalComponent (`issue#24902 <http://tracker.ceph.com/issues/24902>`_, `pr#23420 <https://github.com/ceph/ceph/pull/23420>`_, Tiago Melo) -* mgr/dashboard: Exception.message doesn't exist on Python 3 (`pr#24349 <https://github.com/ceph/ceph/pull/24349>`_, Ricardo Marques) -* mgr/dashboard: Extract/Refactor Task merge (`pr#23555 <https://github.com/ceph/ceph/pull/23555>`_, Stephan Müller, Tiago Melo) -* mgr/dashboard: Filter out tasks depending on permissions (`pr#25426 <https://github.com/ceph/ceph/pull/25426>`_, Tina Kallio) -* mgr/dashboard: Fix /api/grafana/validation (`pr#25997 <https://github.com/ceph/ceph/pull/25997>`_, Zack Cerza) -* mgr/dashboard: Fix bug in user form when changing password (`pr#23939 <https://github.com/ceph/ceph/pull/23939>`_, Volker Theile) -* mgr/dashboard: Fix cherrypy static content URL prefix config (`pr#23183 <https://github.com/ceph/ceph/pull/23183>`_, Ricardo Marques) -* mgr/dashboard: Fix duplicate error messages (`pr#23287 <https://github.com/ceph/ceph/pull/23287>`_, Stephan Müller) -* mgr/dashboard: Fix duplicate tasks (`pr#24930 <https://github.com/ceph/ceph/pull/24930>`_, Tiago Melo) -* mgr/dashboard: Fix e2e script (`pr#22903 <https://github.com/ceph/ceph/pull/22903>`_, Tiago Melo) -* mgr/dashboard: Fixed performance details context for host list row selection (`issue#37854 <http://tracker.ceph.com/issues/37854>`_, `pr#26020 <https://github.com/ceph/ceph/pull/26020>`_, Neha Gupta) -* mgr/dashboard: Fixed typos in environment.build.js (`pr#26650 <https://github.com/ceph/ceph/pull/26650>`_, Lenz Grimmer) -* mgr/dashboard: Fix error when clicking on newly created OSD (`issue#36245 <http://tracker.ceph.com/issues/36245>`_, `pr#24369 <https://github.com/ceph/ceph/pull/24369>`_, Patrick Nawracay) -* mgr/dashboard: Fixes documentation link- to open in new tab (`pr#22237 <https://github.com/ceph/ceph/pull/22237>`_, a2batic) -* mgr/dashboard: Fixes Grafana 500 error (`issue#37809 <http://tracker.ceph.com/issues/37809>`_, `pr#25830 <https://github.com/ceph/ceph/pull/25830>`_, Kanika Murarka) -* mgr/dashboard: Fix failing QA test: test_safe_to_destroy (`issue#37290 <http://tracker.ceph.com/issues/37290>`_, `pr#25149 <https://github.com/ceph/ceph/pull/25149>`_, Patrick Nawracay) -* mgr/dashboard: Fix flaky QA tests (`pr#24024 <https://github.com/ceph/ceph/pull/24024>`_, Patrick Nawracay) -* mgr/dashboard: Fix Forbidden Error with some roles (`issue#37293 <http://tracker.ceph.com/issues/37293>`_, `pr#25141 <https://github.com/ceph/ceph/pull/25141>`_, Ernesto Puerta) -* mgr/dashboard: fix for 'Cluster >> Hosts' page (`pr#24974 <https://github.com/ceph/ceph/pull/24974>`_, Alfonso Martínez) -* mgr/dashboard: Fix formatter service unit test (`pr#22323 <https://github.com/ceph/ceph/pull/22323>`_, Tiago Melo) -* mgr/dashboard: fix for using '::' on hosts without ipv6 (`pr#26635 <https://github.com/ceph/ceph/pull/26635>`_, Noah Watkins) -* mgr/dashboard: Fix growing table in firefox (`issue#26999 <http://tracker.ceph.com/issues/26999>`_, `pr#23711 <https://github.com/ceph/ceph/pull/23711>`_, Tiago Melo) -* mgr/dashboard: Fix HttpClient Module imports in unit tests (`pr#24679 <https://github.com/ceph/ceph/pull/24679>`_, Tiago Melo) -* mgr/dashboard: Fix iSCSI mutual password input type (`pr#26854 <https://github.com/ceph/ceph/pull/26854>`_, Ricardo Marques) -* mgr/dashboard: Fix iSCSI service unit tests (`pr#26319 <https://github.com/ceph/ceph/pull/26319>`_, Tiago Melo) -* mgr/dashboard: Fix issues in controllers/docs (`pr#26738 <https://github.com/ceph/ceph/pull/26738>`_, Volker Theile) -* mgr/dashboard: Fix Jest conflict with coverage files (`pr#22155 <https://github.com/ceph/ceph/pull/22155>`_, Tiago Melo) -* mgr/dashboard: Fix layout issues in UI (`issue#24525 <http://tracker.ceph.com/issues/24525>`_, `pr#22597 <https://github.com/ceph/ceph/pull/22597>`_, Volker Theile) -* mgr/dashboard: Fix links to external documentation (`pr#24829 <https://github.com/ceph/ceph/pull/24829>`_, Patrick Nawracay) -* mgr/dashboard: fix lint error caused by codelyzer update (`pr#22693 <https://github.com/ceph/ceph/pull/22693>`_, Tiago Melo) -* mgr/dashboard: fix lint error (`pr#22417 <https://github.com/ceph/ceph/pull/22417>`_, Tiago Melo) -* mgr/dashboard: Fix long running RBD cloning / copying message (`pr#24641 <https://github.com/ceph/ceph/pull/24641>`_, Ricardo Marques) -* mgr/dashboard: Fix missing failed restore notification (`issue#36513 <http://tracker.ceph.com/issues/36513>`_, `pr#24664 <https://github.com/ceph/ceph/pull/24664>`_, Tiago Melo) -* mgr/dashboard: Fix modified files only (frontend) (`pr#25346 <https://github.com/ceph/ceph/pull/25346>`_, Patrick Nawracay) -* mgr/dashboard: Fix moment.js deprecation warning (`pr#21981 <https://github.com/ceph/ceph/pull/21981>`_, Tiago Melo) -* mgr/dashboard: Fix more layout issues in UI (`pr#22600 <https://github.com/ceph/ceph/pull/22600>`_, Volker Theile) -* mgr/dashboard: Fix navbar focused color (`pr#25769 <https://github.com/ceph/ceph/pull/25769>`_, Volker Theile) -* mgr/dashboard: Fix notifications in user list and form (`pr#23797 <https://github.com/ceph/ceph/pull/23797>`_, Volker Theile) -* mgr/dashboard: Fix OSD down error display (`issue#24530 <http://tracker.ceph.com/issues/24530>`_, `pr#23754 <https://github.com/ceph/ceph/pull/23754>`_, Patrick Nawracay) -* mgr/dashboard: Fix pool usage not displaying on filesystem page (`pr#22453 <https://github.com/ceph/ceph/pull/22453>`_, Tiago Melo) -* mgr/dashboard: Fix problem with ErasureCodeProfileService (`pr#24694 <https://github.com/ceph/ceph/pull/24694>`_, Tiago Melo) -* mgr/dashboard: Fix Python3 issue (`pr#24617 <https://github.com/ceph/ceph/pull/24617>`_, Patrick Nawracay) -* mgr/dashboard: fix query parameters in task annotated endpoints (`issue#25096 <http://tracker.ceph.com/issues/25096>`_, `pr#23229 <https://github.com/ceph/ceph/pull/23229>`_, Ricardo Dias) -* mgr/dashboard: Fix RBD actions disable (`pr#24637 <https://github.com/ceph/ceph/pull/24637>`_, Ricardo Marques) -* mgr/dashboard: Fix RBD features style (`pr#22759 <https://github.com/ceph/ceph/pull/22759>`_, Ricardo Marques) -* mgr/dashboard: Fix RBD object size dropdown options (`pr#22830 <https://github.com/ceph/ceph/pull/22830>`_, Ricardo Marques) -* mgr/dashboard: Fix RBD task metadata (`pr#22088 <https://github.com/ceph/ceph/pull/22088>`_, Tiago Melo) -* mgr/dashboard: Fix redirect to login page on session lost (`pr#23388 <https://github.com/ceph/ceph/pull/23388>`_, Ricardo Marques) -* mgr/dashboard: fix reference to oA (`pr#24343 <https://github.com/ceph/ceph/pull/24343>`_, Joao Eduardo Luis) -* mgr/dashboard: Fix regression on rbd form component (`issue#24757 <http://tracker.ceph.com/issues/24757>`_, `pr#22829 <https://github.com/ceph/ceph/pull/22829>`_, Tiago Melo) -* mgr/dashboard: Fix reloading of pool listing (`pr#26182 <https://github.com/ceph/ceph/pull/26182>`_, Patrick Nawracay) -* mgr/dashboard: Fix renaming of pools (`pr#25423 <https://github.com/ceph/ceph/pull/25423>`_, Patrick Nawracay) -* mgr/dashboard: Fix search in `Source` column of RBD configuration list (`issue#37569 <http://tracker.ceph.com/issues/37569>`_, `pr#26765 <https://github.com/ceph/ceph/pull/26765>`_, Patrick Nawracay) -* mgr/dashboard: fix skipped backend API tests (`pr#26172 <https://github.com/ceph/ceph/pull/26172>`_, Alfonso Martínez) -* mgr/dashboard: Fix some datatable CSS issues (`pr#22216 <https://github.com/ceph/ceph/pull/22216>`_, Volker Theile) -* mgr/dashboard: Fix spaces around status labels on OSD list (`pr#24607 <https://github.com/ceph/ceph/pull/24607>`_, Patrick Nawracay) -* mgr/dashboard: Fix summary refresh call stack (`pr#25984 <https://github.com/ceph/ceph/pull/25984>`_, Tiago Melo) -* mgr/dashboard: Fix test_full_health test (`issue#37872 <http://tracker.ceph.com/issues/37872>`_, `pr#25913 <https://github.com/ceph/ceph/pull/25913>`_, Tatjana Dehler) -* mgr/dashboard: Fix test_remove_not_expired_trash qa test (`issue#37354 <http://tracker.ceph.com/issues/37354>`_, `pr#25221 <https://github.com/ceph/ceph/pull/25221>`_, Tiago Melo) -* mgr/dashboard: fix: toast notifications hiding utility menu (`pr#26429 <https://github.com/ceph/ceph/pull/26429>`_, Alfonso Martínez) -* mgr/dashboard: fix: tox not detecting deps changes (`pr#26409 <https://github.com/ceph/ceph/pull/26409>`_, Alfonso Martínez) -* mgr/dashboard: Fix ts error on iSCSI page (`pr#24715 <https://github.com/ceph/ceph/pull/24715>`_, Ricardo Marques) -* mgr/dashboard: Fix typo in NoOrchesrtatorConfiguredException class name (`pr#26334 <https://github.com/ceph/ceph/pull/26334>`_, Volker Theile) -* mgr/dashboard: Fix typo in pools management (`pr#26323 <https://github.com/ceph/ceph/pull/26323>`_, Lenz Grimmer) -* mgr/dashboard: Fix typo (`pr#23363 <https://github.com/ceph/ceph/pull/23363>`_, Volker Theile) -* mgr/dashboard: Fix unit tests cli warnings (`pr#21933 <https://github.com/ceph/ceph/pull/21933>`_, Tiago Melo) -* mgr/dashboard: Format small numbers correctly (`issue#24081 <http://tracker.ceph.com/issues/24081>`_, `pr#21980 <https://github.com/ceph/ceph/pull/21980>`_, Stephan Müller) -* mgr/dashboard: Get user ID via RGW Admin Ops API (`pr#22416 <https://github.com/ceph/ceph/pull/22416>`_, Volker Theile) -* mgr/dashboard: Grafana dashboard updates and additions (`pr#24314 <https://github.com/ceph/ceph/pull/24314>`_, Paul Cuzner) -* mgr/dashboard: Grafana graphs integration with dashboard (`pr#23666 <https://github.com/ceph/ceph/pull/23666>`_, Kanika Murarka) -* mgr/dashboard: Grafana proxy backend (`pr#21644 <https://github.com/ceph/ceph/pull/21644>`_, Patrick Nawracay) -* mgr/dashboard: Group buttons together into one menu on OSD page (`issue#37380 <http://tracker.ceph.com/issues/37380>`_, `pr#26189 <https://github.com/ceph/ceph/pull/26189>`_, Tatjana Dehler) -* mgr/dashboard: Handle class objects as regular objects in KV-table (`pr#24632 <https://github.com/ceph/ceph/pull/24632>`_, Stephan Müller) -* mgr/dashboard: Handle errors during deletion (`pr#22002 <https://github.com/ceph/ceph/pull/22002>`_, Volker Theile) -* mgr/dashboard: Hide empty fields and render all objects in KV-table (`pr#25894 <https://github.com/ceph/ceph/pull/25894>`_, Stephan Müller) -* mgr/dashboard: Hide progress bar in case of an error (`pr#22419 <https://github.com/ceph/ceph/pull/22419>`_, Volker Theile) -* mgr/dashboard: Implement OSD purge (`issue#35811 <http://tracker.ceph.com/issues/35811>`_, `pr#26242 <https://github.com/ceph/ceph/pull/26242>`_, Patrick Nawracay) -* mgr/dashboard: Improve CRUSH map viewer (`pr#24934 <https://github.com/ceph/ceph/pull/24934>`_, Volker Theile) -* mgr/dashboard: Improved support for generating OpenAPI Spec documentation (`issue#24763 <http://tracker.ceph.com/issues/24763>`_, `pr#26227 <https://github.com/ceph/ceph/pull/26227>`_, Tina Kallio) -* mgr/dashboard: Improve error message handling (`pr#24322 <https://github.com/ceph/ceph/pull/24322>`_, Volker Theile) -* mgr/dashboard: Improve error panel (`pr#21851 <https://github.com/ceph/ceph/pull/21851>`_, Volker Theile) -* mgr/dashboard: Improve exception handling in /api/rgw/status (`pr#25836 <https://github.com/ceph/ceph/pull/25836>`_, Volker Theile) -* mgr/dashboard: Improve exception handling (`issue#23823 <http://tracker.ceph.com/issues/23823>`_, `pr#21066 <https://github.com/ceph/ceph/pull/21066>`_, Sebastian Wagner) -* mgr/dashboard: Improve `HACKING.rst` (`pr#22281 <https://github.com/ceph/ceph/pull/22281>`_, Patrick Nawracay) -* mgr/dashboard: Improve 'no pool' message on rbd form (`pr#22150 <https://github.com/ceph/ceph/pull/22150>`_, Ricardo Marques) -* mgr/dashboard: Improve RBD form (`issue#38303 <http://tracker.ceph.com/issues/38303>`_, `pr#26433 <https://github.com/ceph/ceph/pull/26433>`_, Tiago Melo) -* mgr/dashboard: Improve RGW address parser (`pr#25870 <https://github.com/ceph/ceph/pull/25870>`_, Volker Theile) -* mgr/dashboard: Improve RgwUser controller (`pr#25300 <https://github.com/ceph/ceph/pull/25300>`_, Volker Theile) -* mgr/dashboard: Improves documentation for Grafana Setting (`issue#36371 <http://tracker.ceph.com/issues/36371>`_, `pr#24511 <https://github.com/ceph/ceph/pull/24511>`_, Kanika Murarka) -* mgr/dashboard: Improve str_to_bool (`pr#22757 <https://github.com/ceph/ceph/pull/22757>`_, Volker Theile) -* mgr/dashboard: Improve SummaryService and TaskWrapperService (`pr#22906 <https://github.com/ceph/ceph/pull/22906>`_, Tiago Melo) -* mgr/dashboard: Improve table pagination style (`pr#22065 <https://github.com/ceph/ceph/pull/22065>`_, Ricardo Marques) -* mgr/dashboard: Introduce pipe to convert bool to text (`pr#26507 <https://github.com/ceph/ceph/pull/26507>`_, Volker Theile) -* mgr/dashboard: iscsi: adds CLI command to enable/disable API SSL verification (`pr#26891 <https://github.com/ceph/ceph/pull/26891>`_, Ricardo Dias) -* mgr/dashboard: iSCSI - Adds support for pool/image names with dots (`pr#26503 <https://github.com/ceph/ceph/pull/26503>`_, Ricardo Marques) -* mgr/dashboard: iSCSI - Add support for disabling ACL authentication (backend) (`pr#26382 <https://github.com/ceph/ceph/pull/26382>`_, Ricardo Marques) -* mgr/dashboard: iSCSI discovery authentication API (`pr#26115 <https://github.com/ceph/ceph/pull/26115>`_, Ricardo Marques) -* mgr/dashboard: iSCSI - Infrastructure for multiple backstores (backend) (`pr#26506 <https://github.com/ceph/ceph/pull/26506>`_, Ricardo Marques) -* mgr/dashboard: iSCSI management API (`pr#25638 <https://github.com/ceph/ceph/pull/25638>`_, Ricardo Marques, Ricardo Dias) -* mgr/dashboard: iSCSI management UI (`pr#25995 <https://github.com/ceph/ceph/pull/25995>`_, Ricardo Marques, Tiago Melo) -* mgr/dashboard: iSCSI - Support iSCSI passwords with '/' (`pr#26790 <https://github.com/ceph/ceph/pull/26790>`_, Ricardo Marques) -* mgr/dashboard: JWT authentication (`pr#22833 <https://github.com/ceph/ceph/pull/22833>`_, Ricardo Dias) -* mgr/dashboard: Landing Page: chart improvements (`pr#24810 <https://github.com/ceph/ceph/pull/24810>`_, Alfonso Martínez) -* mgr/dashboard: Landing Page: info visibility (`pr#24513 <https://github.com/ceph/ceph/pull/24513>`_, Alfonso Martínez) -* mgr/dashboard: Log frontend errors + @UiController (`pr#22285 <https://github.com/ceph/ceph/pull/22285>`_, Ricardo Marques) -* mgr/dashboard: Login failure should return HTTP 400 (`pr#22403 <https://github.com/ceph/ceph/pull/22403>`_, Ricardo Marques) -* mgr/dashboard: 'Logs' links permission in Landing Page (`pr#25231 <https://github.com/ceph/ceph/pull/25231>`_, Alfonso Martínez) -* mgr/dashboard: Make deletion dialog more touch device friendly (`pr#23897 <https://github.com/ceph/ceph/pull/23897>`_, Volker Theile) -* mgr/dashboard: Map dev 'releases' to master (`pr#24763 <https://github.com/ceph/ceph/pull/24763>`_, Zack Cerza) -* mgr/dashboard: Module dashboard.services.ganesha has several lint issues (`pr#26378 <https://github.com/ceph/ceph/pull/26378>`_, Volker Theile) -* mgr/dashboard: More configs for table `updateSelectionOnRefresh` (`pr#24015 <https://github.com/ceph/ceph/pull/24015>`_, Ricardo Marques) -* mgr/dashboard: Move Cluster/Audit logs from front page to dedicated Logs page (`pr#23834 <https://github.com/ceph/ceph/pull/23834>`_, Diksha Godbole) -* mgr/dashboard: Move unit-test-helper into the new testing folder (`pr#22857 <https://github.com/ceph/ceph/pull/22857>`_, Tiago Melo) -* mgr/dashboard: Navbar dropdown button does not respond for mobile browsers (`pr#21967 <https://github.com/ceph/ceph/pull/21967>`_, Volker Theile) -* mgr/dashboard: New Landing Page: Milestone 2 (`pr#24326 <https://github.com/ceph/ceph/pull/24326>`_, Alfonso Martínez) -* mgr/dashboard: New Landing Page (`pr#23568 <https://github.com/ceph/ceph/pull/23568>`_, Alfonso Martínez) -* mgr/dashboard: nfs-ganesha: controller API documentation (`pr#26716 <https://github.com/ceph/ceph/pull/26716>`_, Ricardo Dias) -* mgr/dashboard: NFS management UI (`pr#26085 <https://github.com/ceph/ceph/pull/26085>`_, Tiago Melo) -* mgr/dashboard: ng serve bind to 0.0.0.0 (`pr#22058 <https://github.com/ceph/ceph/pull/22058>`_, Ricardo Marques) -* mgr/dashboard: no side-effects on failed user creation (`pr#24200 <https://github.com/ceph/ceph/pull/24200>`_, Joao Eduardo Luis) -* mgr/dashboard: Notification queue (`pr#25325 <https://github.com/ceph/ceph/pull/25325>`_, Stephan Müller) -* mgr/dashboard: npm run e2e:dev (`pr#25136 <https://github.com/ceph/ceph/pull/25136>`_, Stephan Müller) -* mgr/dashboard: Performance counter progress bar keeps infinitely looping (`pr#24448 <https://github.com/ceph/ceph/pull/24448>`_, Volker Theile) -* mgr/dashboard: permanent pie chart slice hiding (`pr#25276 <https://github.com/ceph/ceph/pull/25276>`_, Alfonso Martínez) -* mgr/dashboard: PGs will update as expected (`pr#26589 <https://github.com/ceph/ceph/pull/26589>`_, Stephan Müller) -* mgr/dashboard: Pool management (`pr#21614 <https://github.com/ceph/ceph/pull/21614>`_, Stephan Müller) -* mgr/dashboard: pool stats not returned by default (`pr#25635 <https://github.com/ceph/ceph/pull/25635>`_, Alfonso Martínez) -* mgr/dashboard: Possible fix for some dashboard timing issues (`issue#36107 <http://tracker.ceph.com/issues/36107>`_, `pr#24219 <https://github.com/ceph/ceph/pull/24219>`_, Patrick Nawracay) -* mgr/dashboard: Prettify package.json (`pr#22401 <https://github.com/ceph/ceph/pull/22401>`_, Ricardo Marques) -* mgr/dashboard: Prettify RGW JS code (`pr#22278 <https://github.com/ceph/ceph/pull/22278>`_, Volker Theile) -* mgr/dashboard: Prevent API call on every keystroke (`pr#23391 <https://github.com/ceph/ceph/pull/23391>`_, Volker Theile) -* mgr/dashboard: Print a blank space between value and unit (`pr#22387 <https://github.com/ceph/ceph/pull/22387>`_, Volker Theile) -* mgr/dashboard: Progress bar does not stop in TableKeyValueComponent (`pr#24016 <https://github.com/ceph/ceph/pull/24016>`_, Volker Theile) -* mgr/dashboard: Prometheus integration (`pr#25309 <https://github.com/ceph/ceph/pull/25309>`_, Stephan Müller) -* mgr/dashboard: Provide all four 'mandatory' OSD flags (`issue#37857 <http://tracker.ceph.com/issues/37857>`_, `pr#25905 <https://github.com/ceph/ceph/pull/25905>`_, Tatjana Dehler) -* mgr/dashboard/qa: Fix ECP creation test (`pr#25120 <https://github.com/ceph/ceph/pull/25120>`_, Stephan Müller) -* mgr/dashboard/qa: Fix various vstart_runner.py issues (`issue#36581 <http://tracker.ceph.com/issues/36581>`_, `pr#24767 <https://github.com/ceph/ceph/pull/24767>`_, Volker Theile) -* mgr/dashboard: Redirect /block to /block/rbd (`pr#24722 <https://github.com/ceph/ceph/pull/24722>`_, Zack Cerza) -* mgr/dashboard: Reduce Jest logs in CI (`pr#24764 <https://github.com/ceph/ceph/pull/24764>`_, Tiago Melo) -* mgr/dashboard: Refactor autofocus directive (`pr#23910 <https://github.com/ceph/ceph/pull/23910>`_, Volker Theile) -* mgr/dashboard: Refactoring of `DeletionModalComponent` (`pr#24005 <https://github.com/ceph/ceph/pull/24005>`_, Patrick Nawracay) -* mgr/dashboard: Refactor perf counters (`pr#21673 <https://github.com/ceph/ceph/pull/21673>`_, Volker Theile) -* mgr/dashboard: Refactor RGW backend (`pr#21784 <https://github.com/ceph/ceph/pull/21784>`_, Volker Theile) -* mgr/dashboard: Refactor role management (`pr#23960 <https://github.com/ceph/ceph/pull/23960>`_, Volker Theile) -* mgr/dashboard: Relocate empty pipe (`pr#26588 <https://github.com/ceph/ceph/pull/26588>`_, Volker Theile) -* mgr/dashboard: Removed unnecessary fake services from unit tests (`pr#22473 <https://github.com/ceph/ceph/pull/22473>`_, Stephan Müller) -* mgr/dashboard: Remove fieldsets when using CdTable (`pr#23730 <https://github.com/ceph/ceph/pull/23730>`_, Tiago Melo) -* mgr/dashboard: Remove _filterValue from CdFormGroup (`issue#26861 <http://tracker.ceph.com/issues/26861>`_, `pr#24719 <https://github.com/ceph/ceph/pull/24719>`_, Stephan Müller) -* mgr/dashboard: Remove husky package (`pr#21971 <https://github.com/ceph/ceph/pull/21971>`_, Tiago Melo) -* mgr/dashboard: Remove karma packages (`pr#23181 <https://github.com/ceph/ceph/pull/23181>`_, Tiago Melo) -* mgr/dashboard: Remove param when calling notificationService.show (`pr#26447 <https://github.com/ceph/ceph/pull/26447>`_, Volker Theile) -* mgr/dashboard: Remove top-right actions text and add "About" page (`pr#22762 <https://github.com/ceph/ceph/pull/22762>`_, Ricardo Marques) -* mgr/dashboard: Remove unused code (`pr#25439 <https://github.com/ceph/ceph/pull/25439>`_, Patrick Nawracay) -* mgr/dashboard: Remove useless code (`pr#23911 <https://github.com/ceph/ceph/pull/23911>`_, Volker Theile) -* mgr/dashboard: Remove useless observable unsubscriptions (`pr#21928 <https://github.com/ceph/ceph/pull/21928>`_, Ricardo Marques) -* mgr/dashboard: replace configuration html table with cd-table (`pr#21643 <https://github.com/ceph/ceph/pull/21643>`_, Tatjana Dehler) -* mgr/dashboard: Replaced "Pool" with "Pools" in navigation bar (`pr#22715 <https://github.com/ceph/ceph/pull/22715>`_, Lenz Grimmer) -* mgr/dashboard: Replace RGW proxy controller (`issue#24436 <http://tracker.ceph.com/issues/24436>`_, `pr#22470 <https://github.com/ceph/ceph/pull/22470>`_, Volker Theile) -* mgr/dashboard: Reset settings to their default values (`pr#22298 <https://github.com/ceph/ceph/pull/22298>`_, Patrick Nawracay) -* mgr/dashboard: Resolve TestBed performance issue (`pr#21783 <https://github.com/ceph/ceph/pull/21783>`_, Stephan Müller) -* mgr/dashboard: rest: add support for query params (`pr#22318 <https://github.com/ceph/ceph/pull/22318>`_, Ricardo Dias) -* mgr/dashboard: RestClient can't handle ProtocolError exceptions (`pr#23347 <https://github.com/ceph/ceph/pull/23347>`_, Volker Theile) -* mgr/dashboard: restcontroller: minor improvements and bug fixes (`pr#22528 <https://github.com/ceph/ceph/pull/22528>`_, Ricardo Dias) -* mgr/dashboard: RGW is not working if an URL prefix is defined (`pr#23200 <https://github.com/ceph/ceph/pull/23200>`_, Volker Theile) -* mgr/dashboard: RGW proxy can't handle self-signed SSL certificates (`pr#22735 <https://github.com/ceph/ceph/pull/22735>`_, Volker Theile) -* mgr/dashboard: role based authentication/authorization system (`issue#23796 <http://tracker.ceph.com/issues/23796>`_, `pr#22283 <https://github.com/ceph/ceph/pull/22283>`_, Ricardo Marques, Ricardo Dias) -* mgr/dashboard: Role management from the UI (`pr#23409 <https://github.com/ceph/ceph/pull/23409>`_, Ricardo Marques) -* mgr/dashboard: Search broken for entries with null values (`issue#38583 <http://tracker.ceph.com/issues/38583>`_, `pr#26766 <https://github.com/ceph/ceph/pull/26766>`_, Patrick Nawracay) -* mgr/dashboard: set errno via the parent class (`pr#21945 <https://github.com/ceph/ceph/pull/21945>`_, Kefu Chai, Ricardo Dias) -* mgr/dashboard: Set MODULE_OPTIONS types and defaults (`pr#26386 <https://github.com/ceph/ceph/pull/26386>`_, Volker Theile) -* mgr/dashboard: Set timeout in RestClient calls (`pr#23224 <https://github.com/ceph/ceph/pull/23224>`_, Volker Theile) -* mgr/dashboard: Settings service (`pr#25327 <https://github.com/ceph/ceph/pull/25327>`_, Stephan Müller) -* mgr/dashboard: Show/Hide Grafana tabs according to user role (`issue#36655 <http://tracker.ceph.com/issues/36655>`_, `pr#24851 <https://github.com/ceph/ceph/pull/24851>`_, Kanika Murarka) -* mgr/dashboard: Show pool dropdown for block-mgr (`issue#37295 <http://tracker.ceph.com/issues/37295>`_, `pr#25144 <https://github.com/ceph/ceph/pull/25144>`_, Ernesto Puerta) -* mgr/dashboard: Show success notification in RGW forms (`pr#26482 <https://github.com/ceph/ceph/pull/26482>`_, Volker Theile) -* mgr/dashboard: Simplification of PoolForm method (`pr#24892 <https://github.com/ceph/ceph/pull/24892>`_, Patrick Nawracay) -* mgr/dashboard: Simplify OSD disabled action test (`pr#24824 <https://github.com/ceph/ceph/pull/24824>`_, Stephan Müller) -* mgr/dashboard: special casing for minikube in run-backend-rook-api-request.sh (`pr#26600 <https://github.com/ceph/ceph/pull/26600>`_, Jeff Layton) -* mgr/dashboard: SSO - SAML 2.0 support (`pr#24489 <https://github.com/ceph/ceph/pull/24489>`_, Ricardo Marques, Ricardo Dias) -* mgr/dashboard: SSO - UserDoesNotExist page (`pr#26058 <https://github.com/ceph/ceph/pull/26058>`_, Alfonso Martínez) -* mgr/dashboard: Stacktrace is optional on 'js-error' endpoint (`pr#22402 <https://github.com/ceph/ceph/pull/22402>`_, Ricardo Marques) -* mgr/dashboard: Status info cards' improvements (`pr#25155 <https://github.com/ceph/ceph/pull/25155>`_, Alfonso Martínez) -* mgr/dashboard: Store user table configurations (`pr#20822 <https://github.com/ceph/ceph/pull/20822>`_, Stephan Müller) -* mgr/dashboard: Stringify object[] in KV-table (`pr#22422 <https://github.com/ceph/ceph/pull/22422>`_, Stephan Müller) -* mgr/dashboard: Swagger-UI based Dashboard REST API page (`issue#23898 <http://tracker.ceph.com/issues/23898>`_, `pr#22282 <https://github.com/ceph/ceph/pull/22282>`_, Ricardo Dias) -* mgr/dashboard: Sync column style with the rest of the UI (`pr#26407 <https://github.com/ceph/ceph/pull/26407>`_, Volker Theile) -* mgr/dashboard: tasks.mgr.dashboard.test_osd.OsdTest failures (`pr#24947 <https://github.com/ceph/ceph/pull/24947>`_, Volker Theile) -* mgr/dashboard: Task wrapper service (`pr#22014 <https://github.com/ceph/ceph/pull/22014>`_, Stephan Müller) -* mgr/dashboard: The RGW backend doesn't handle IPv6 properly (`pr#24222 <https://github.com/ceph/ceph/pull/24222>`_, Volker Theile) -* mgr/dashboard: typescript cleanup (`pr#26338 <https://github.com/ceph/ceph/pull/26338>`_, Alfonso Martínez) -* mgr/dashboard: Unit Tests cleanup (`pr#24591 <https://github.com/ceph/ceph/pull/24591>`_, Tiago Melo) -* mgr/dashboard: Update Angular packages (`pr#23706 <https://github.com/ceph/ceph/pull/23706>`_, Tiago Melo) -* mgr/dashboard: Update Angular to version 6 (`pr#22082 <https://github.com/ceph/ceph/pull/22082>`_, Tiago Melo) -* mgr/dashboard: Update bootstrap to v3.4.1 (`pr#26410 <https://github.com/ceph/ceph/pull/26410>`_, Tiago Melo) -* mgr/dashboard: Updated colors in PG Status chart (`pr#26203 <https://github.com/ceph/ceph/pull/26203>`_, Alfonso Martínez) -* mgr/dashboard: updated health API test (`pr#25813 <https://github.com/ceph/ceph/pull/25813>`_, Alfonso Martínez) -* mgr/dashboard: Updated image on 404 page (`pr#23820 <https://github.com/ceph/ceph/pull/23820>`_, Lenz Grimmer) -* mgr/dashboard: Update frontend packages (`pr#23466 <https://github.com/ceph/ceph/pull/23466>`_, Tiago Melo) -* mgr/dashboard: Update I18N translation (`pr#26649 <https://github.com/ceph/ceph/pull/26649>`_, Tiago Melo) -* mgr/dashboard: Update npm packages (`pr#24681 <https://github.com/ceph/ceph/pull/24681>`_, Tiago Melo) -* mgr/dashboard: Update npm packages (`pr#25656 <https://github.com/ceph/ceph/pull/25656>`_, Tiago Melo) -* mgr/dashboard: Update npm packages (`pr#26437 <https://github.com/ceph/ceph/pull/26437>`_, Tiago Melo) -* mgr/dashboard: Update npm packages (`pr#26647 <https://github.com/ceph/ceph/pull/26647>`_, Tiago Melo) -* mgr/dashboard: update python dependency (`pr#24928 <https://github.com/ceph/ceph/pull/24928>`_, Alfonso Martínez) -* mgr/dashboard: Update RxJS to version 6 (`pr#21826 <https://github.com/ceph/ceph/pull/21826>`_, Tiago Melo) -* mgr/dashboard: upgraded python dev dependencies (`pr#26007 <https://github.com/ceph/ceph/pull/26007>`_, Alfonso Martínez) -* mgr/dashboard: Upgrade Swimlane's data-table (`pr#21880 <https://github.com/ceph/ceph/pull/21880>`_, Volker Theile) -* mgr/dashboard: Use HTTPS in dev proxy configuration and HACKING.rst (`pr#21777 <https://github.com/ceph/ceph/pull/21777>`_, Volker Theile) -* mgr/dashboard: Use human readable units on the sparkline graphs (`issue#25075 <http://tracker.ceph.com/issues/25075>`_, `pr#23446 <https://github.com/ceph/ceph/pull/23446>`_, Tiago Melo) -* mgr/dashboard: User password should be optional (`pr#24128 <https://github.com/ceph/ceph/pull/24128>`_, Ricardo Marques) -* mgr/dashboard: Validate the OSD recovery priority form input values (`issue#37436 <http://tracker.ceph.com/issues/37436>`_, `pr#25472 <https://github.com/ceph/ceph/pull/25472>`_, Tatjana Dehler) -* mgr/dashboard: Validation for duplicate RGW user email (`issue#37369 <http://tracker.ceph.com/issues/37369>`_, `pr#25334 <https://github.com/ceph/ceph/pull/25334>`_, Kanika Murarka) -* mgr: define option defaults for MgrStandbyModule as well (`pr#25734 <https://github.com/ceph/ceph/pull/25734>`_, Kefu Chai) -* mgr: devicehealth: dont error on dict iteritems (`pr#22827 <https://github.com/ceph/ceph/pull/22827>`_, Abhishek Lekshmanan) -* mgr: Diskprediction cloud activate when config changes (`pr#25165 <https://github.com/ceph/ceph/pull/25165>`_, Rick Chen) -* mgr: don't write to output if EOPNOTSUPP (`issue#37444 <http://tracker.ceph.com/issues/37444>`_, `pr#25317 <https://github.com/ceph/ceph/pull/25317>`_, Kefu Chai) -* mgr: enable inter-module calls (`pr#22951 <https://github.com/ceph/ceph/pull/22951>`_, John Spray) -* mgr: Expose avgcount to the python modules (`pr#22010 <https://github.com/ceph/ceph/pull/22010>`_, Boris Ranto) -* mgr: expose avg data for long running avgs (`pr#22420 <https://github.com/ceph/ceph/pull/22420>`_, Boris Ranto) -* mgr: expose ec profiles through manager (`pr#23010 <https://github.com/ceph/ceph/pull/23010>`_, Noah Watkins) -* mgr: Extend batch to accept explicit device lists (`issue#37502 <http://tracker.ceph.com/issues/37502>`_, `issue#37086 <http://tracker.ceph.com/issues/37086>`_, `issue#37590 <http://tracker.ceph.com/issues/37590>`_, `pr#25542 <https://github.com/ceph/ceph/pull/25542>`_, Jan Fajerski) -* mgr: fix beacon interruption caused by deadlock (`pr#23482 <https://github.com/ceph/ceph/pull/23482>`_, Yan Jun) -* mgr: fix crash due to multiple sessions from daemons with same name (`pr#25534 <https://github.com/ceph/ceph/pull/25534>`_, Mykola Golub) -* mgr: fix permissions on `balancer execute` (`issue#25345 <http://tracker.ceph.com/issues/25345>`_, `pr#23387 <https://github.com/ceph/ceph/pull/23387>`_, John Spray) -* mgr: Fix rook spec and have service_describe provide rados_config_location field for nfs services (`pr#25970 <https://github.com/ceph/ceph/pull/25970>`_, Jeff Layton) -* mgr: fix typo in variable name and cleanups (`pr#22069 <https://github.com/ceph/ceph/pull/22069>`_, Kefu Chai) -* mgr: fixup pgs show in unknown state (`issue#25103 <http://tracker.ceph.com/issues/25103>`_, `pr#23622 <https://github.com/ceph/ceph/pull/23622>`_, huanwen ren) -* mgr: Ignore daemon if no metadata was returned (`pr#22794 <https://github.com/ceph/ceph/pull/22794>`_, Wido den Hollander) -* mgr: Ignore __pycache__ and wheelhouse dirs (`pr#26481 <https://github.com/ceph/ceph/pull/26481>`_, Volker Theile) -* mgr: Improve ActivePyModules::get_typed_config implementation (`pr#26149 <https://github.com/ceph/ceph/pull/26149>`_, Volker Theile) -* mgr: improve docs for MgrModule methods (`pr#22792 <https://github.com/ceph/ceph/pull/22792>`_, John Spray) -* mgr: improvements for dynamic osd perf counters (`pr#25488 <https://github.com/ceph/ceph/pull/25488>`_, Mykola Golub) -* mgr: Include daemon details in SLOW_OPS output (`issue#23205 <http://tracker.ceph.com/issues/23205>`_, `pr#21750 <https://github.com/ceph/ceph/pull/21750>`_, Brad Hubbard) -* mgr: `#include <vector>` for clang (`pr#22756 <https://github.com/ceph/ceph/pull/22756>`_, Willem Jan Withagen) -* mgr: keep status, balancer always on (`pr#23558 <https://github.com/ceph/ceph/pull/23558>`_, Sage Weil) -* mgr: make module error message more descriptive (`pr#25537 <https://github.com/ceph/ceph/pull/25537>`_, Joao Eduardo Luis) -* mgr: mgr/ansible: Ansible orchestrator module (`pr#24445 <https://github.com/ceph/ceph/pull/24445>`_, Juan Miguel Olmo Martínez) -* mgr: mgr/ansible: Create/Remove OSDs (`pr#25497 <https://github.com/ceph/ceph/pull/25497>`_, Juan Miguel Olmo Martínez) -* mgr: mgr/ansible: Python 3 fix (`pr#25645 <https://github.com/ceph/ceph/pull/25645>`_, Sebastian Wagner) -* mgr: mgr/balancer: add min/max fields for weekday and be compatible with C (`pr#26505 <https://github.com/ceph/ceph/pull/26505>`_, xie xingguo) -* mgr: mgr/balancer: auto balance a list of pools (`pr#25940 <https://github.com/ceph/ceph/pull/25940>`_, xie xingguo) -* mgr: mgr/balancer: blame if upmap won't actually work (`pr#25941 <https://github.com/ceph/ceph/pull/25941>`_, xie xingguo) -* mgr: mgr/balancer: deepcopy best plan - otherwise we get latest (`issue#27000 <http://tracker.ceph.com/issues/27000>`_, `pr#23682 <https://github.com/ceph/ceph/pull/23682>`_, Stefan Priebe) -* mgr: mgr/balancer: restrict automatic balancing to specific weekdays (`pr#26440 <https://github.com/ceph/ceph/pull/26440>`_, xie xingguo) -* mgr: mgr/balancer: skip auto-balancing for pools with pending pg-merge (`pr#25626 <https://github.com/ceph/ceph/pull/25626>`_, xie xingguo) -* mgr: mgrc: enable disabling stats via mgr_stats_threshold (`issue#25197 <http://tracker.ceph.com/issues/25197>`_, `pr#23352 <https://github.com/ceph/ceph/pull/23352>`_, John Spray) -* mgr: mgr/crash: add hour granularity crash summary (`pr#23121 <https://github.com/ceph/ceph/pull/23121>`_, Noah Watkins) -* mgr: mgr/crash: add process name to crash metadata (`pr#25244 <https://github.com/ceph/ceph/pull/25244>`_, Mykola Golub) -* mgr: mgr/crash: fix python3 invalid syntax problems (`pr#23800 <https://github.com/ceph/ceph/pull/23800>`_, Ricardo Dias) -* mgr: mgr/DaemonServer: add js-output for "ceph osd safe-to-destroy" (`pr#24799 <https://github.com/ceph/ceph/pull/24799>`_, xie xingguo) -* mgr: mgr/DaemonServer: log pgmap usage to cluster log (`pr#26105 <https://github.com/ceph/ceph/pull/26105>`_, Neha Ojha) -* mgr: mgr/dashboard: Add option to disable SSL (`pr#22593 <https://github.com/ceph/ceph/pull/22593>`_, Wido den Hollander) -* mgr: mgr/dashboard: disable backend tests coverage (`pr#24193 <https://github.com/ceph/ceph/pull/24193>`_, Alfonso Martínez) -* mgr: mgr/dashboard: Fix dashboard shutdown/restart (`pr#22159 <https://github.com/ceph/ceph/pull/22159>`_, Boris Ranto) -* mgr: mgr/dashboard: Listen on port 8443 by default and not 8080 (`pr#22409 <https://github.com/ceph/ceph/pull/22409>`_, Wido den Hollander) -* mgr: mgr/dashboard: use the orchestrator_cli backend setting (`pr#26325 <https://github.com/ceph/ceph/pull/26325>`_, Jeff Layton) -* mgr: mgr/deepsea: always use 'password' parameter for salt-api auth (`pr#26904 <https://github.com/ceph/ceph/pull/26904>`_, Tim Serong) -* mgr: mgr/deepsea: check for inflight completions when starting event reader, cleanup logging and comments (`pr#25391 <https://github.com/ceph/ceph/pull/25391>`_, Tim Serong) -* mgr: mgr/deepsea: DeepSea orchestrator module (`pr#24610 <https://github.com/ceph/ceph/pull/24610>`_, Tim Serong) -* mgr: mgr/devicehealth: clean up error handling (`pr#23205 <https://github.com/ceph/ceph/pull/23205>`_, John Spray) -* mgr: mgr/devicehealth: fix is_valid_daemon_name typo error (`pr#24822 <https://github.com/ceph/ceph/pull/24822>`_, Lan Liu) -* mgr: mgr/diskprediction_cloud: fix divide by zero when total_size is 0 (`pr#26045 <https://github.com/ceph/ceph/pull/26045>`_, Rick Chen) -* mgr: mgr/diskprediction_cloud: Remove needless library in the requirements file (`issue#37533 <http://tracker.ceph.com/issues/37533>`_, `pr#25433 <https://github.com/ceph/ceph/pull/25433>`_, Rick Chen) -* mgr: mgr/influx: Use Queue to store points which need to be written (`pr#23464 <https://github.com/ceph/ceph/pull/23464>`_, Wido den Hollander) -* mgr: mgr/insights: insights reporting module (`pr#23497 <https://github.com/ceph/ceph/pull/23497>`_, Noah Watkins) -* mgr: mgr/mgr_module.py: fix doc for set_store/set_store_json (`pr#22654 <https://github.com/ceph/ceph/pull/22654>`_, Dan Mick) -* mgr: mgr/orchestrator: Add RGW service support (`pr#23702 <https://github.com/ceph/ceph/pull/23702>`_, Rubab-Syed) -* mgr: mgr/orchestrator: Add service_action method (`pr#25649 <https://github.com/ceph/ceph/pull/25649>`_, Tim Serong) -* mgr: mgr/orchestrator: Add support for "ceph orchestrator service ls" (`pr#24863 <https://github.com/ceph/ceph/pull/24863>`_, Jeff Layton) -* mgr: mgr/orchestrator: Improve debuggability (`pr#24147 <https://github.com/ceph/ceph/pull/24147>`_, Sebastian Wagner) -* mgr: mgr/orchestrator: Improve docstrings, add type hinting (`pr#25669 <https://github.com/ceph/ceph/pull/25669>`_, Sebastian Wagner) -* mgr: mgr/orchestrator: Simplify Orchestrator wait implementation (`pr#25401 <https://github.com/ceph/ceph/pull/25401>`_, Juan Miguel Olmo Martínez) -* mgr: mgr/orchestrator: use result property in Completion classes (`pr#24672 <https://github.com/ceph/ceph/pull/24672>`_, Tim Serong) -* mgr: mgr/progress: improve+test OSD out handling (`pr#23146 <https://github.com/ceph/ceph/pull/23146>`_, John Spray) -* mgr: mgr/progress: introduce the `progress` module (`pr#22993 <https://github.com/ceph/ceph/pull/22993>`_, John Spray) -* mgr: mgr/prometheus: Add recovery metrics (`pr#26880 <https://github.com/ceph/ceph/pull/26880>`_, Paul Cuzner) -* mgr: mgr/prometheus: get osd_objectstore once instead twice (`pr#26558 <https://github.com/ceph/ceph/pull/26558>`_, Konstantin Shalygin) -* mgr: mgr/restful: Fix deep-scrub typo (`issue#36720 <http://tracker.ceph.com/issues/36720>`_, `pr#24841 <https://github.com/ceph/ceph/pull/24841>`_, Boris Ranto) -* mgr: mgr/restful: fix py got exception when get osd info (`pr#21138 <https://github.com/ceph/ceph/pull/21138>`_, zouaiguo) -* mgr: mgr/restful: updated string formatting to str.format() (`pr#26210 <https://github.com/ceph/ceph/pull/26210>`_, James McClune) -* mgr: mgr/rook: fix API version and object types for recent rook changes (`pr#25452 <https://github.com/ceph/ceph/pull/25452>`_, Jeff Layton) -* mgr: mgr/rook: Fix Rook cluster name detection (`pr#24560 <https://github.com/ceph/ceph/pull/24560>`_, Sebastian Wagner) -* mgr: mgr/rook: update for v1beta1 API (`pr#23570 <https://github.com/ceph/ceph/pull/23570>`_, John Spray) -* mgr: mgr/status: Add standby-replay MDS ceph version (`pr#23624 <https://github.com/ceph/ceph/pull/23624>`_, Zhi Zhang) -* mgr: mgr/status: output to stdout, not stderr (`issue#24175 <http://tracker.ceph.com/issues/24175>`_, `pr#22089 <https://github.com/ceph/ceph/pull/22089>`_, John Spray) -* mgr: mgr/telegraf: Send more PG status information to Telegraf (`pr#22436 <https://github.com/ceph/ceph/pull/22436>`_, Wido den Hollander) -* mgr: mgr/telegraf: Telegraf module for Ceph Mgr (`pr#21782 <https://github.com/ceph/ceph/pull/21782>`_, Wido den Hollander) -* mgr: mgr/telegraf: Use Python generator and catch OSError (`pr#22418 <https://github.com/ceph/ceph/pull/22418>`_, Wido den Hollander) -* mgr: mgr/telemetry: Add Ceph Telemetry module to send reports back to project (`pr#21982 <https://github.com/ceph/ceph/pull/21982>`_, Wido den Hollander) -* mgr: mgr/telemetry: Check if boolean is False or not present (`pr#22223 <https://github.com/ceph/ceph/pull/22223>`_, Wido den Hollander) -* mgr: mgr/telemetry: Fix various issues (`pr#25770 <https://github.com/ceph/ceph/pull/25770>`_, Volker Theile) -* mgr: mgr/volumes: fix orchestrator remove operation (`pr#25339 <https://github.com/ceph/ceph/pull/25339>`_, Jeff Layton) -* mgr: mgr/zabbix: drop "total_objects" field (`pr#26052 <https://github.com/ceph/ceph/pull/26052>`_, Kefu Chai) -* mgr: mgr/zabbix: Send more PG information to Zabbix (`pr#22434 <https://github.com/ceph/ceph/pull/22434>`_, Wido den Hollander) -* mgr: Miscellaneous small mgr fixes (`pr#22893 <https://github.com/ceph/ceph/pull/22893>`_, John Spray) -* mgr: modules CLI commands declaration using @CLICommand decorator (`pr#25543 <https://github.com/ceph/ceph/pull/25543>`_, Ricardo Dias) -* mgr,mon: mgr,mon: fix to apply changed mon_stat_smooth_intervals (`pr#23481 <https://github.com/ceph/ceph/pull/23481>`_, Yan Jun) -* mgr/orchestrator: added useful attributes to ServiceDescription (`pr#25468 <https://github.com/ceph/ceph/pull/25468>`_, Ricardo Dias) -* mgr/orchestrator: Add host mon mgr management to interface (`pr#26314 <https://github.com/ceph/ceph/pull/26314>`_, Sebastian Wagner, Noah Watkins) -* mgr/orchestrator: Add JSON output to CLI commands (`pr#25340 <https://github.com/ceph/ceph/pull/25340>`_, Sebastian Wagner) -* mgr: orchestrator: add the ability to remove services (`pr#25366 <https://github.com/ceph/ceph/pull/25366>`_, Jeff Layton) -* mgr/orchestrator: Allow the orchestrator to scale the NFS server count (`pr#26633 <https://github.com/ceph/ceph/pull/26633>`_, Jeff Layton) -* mgr/orchestrator: clarify error message about kubernetes python module (`pr#24525 <https://github.com/ceph/ceph/pull/24525>`_, Jeff Layton) -* mgr/orchestrator_cli: Fix README.md (`pr#26443 <https://github.com/ceph/ceph/pull/26443>`_, Sebastian Wagner) -* mgr/orchestrator: Extend DriveGroupSpec (`pr#25912 <https://github.com/ceph/ceph/pull/25912>`_, Sebastian Wagner) -* mgr/orchestrator: fix device pretty print with None attributes (`pr#26357 <https://github.com/ceph/ceph/pull/26357>`_, Ricardo Dias) -* mgr/orchestrator: fix _list_services display (`pr#25610 <https://github.com/ceph/ceph/pull/25610>`_, Jeff Layton) -* mgr/orchestrator: Fix up rook osd create dispatcher (`pr#26317 <https://github.com/ceph/ceph/pull/26317>`_, Jeff Layton) -* mgr/orchestrator: make use of @CLICommand (`pr#26094 <https://github.com/ceph/ceph/pull/26094>`_, Sebastian Wagner) -* mgr/orchestrator: remove unicode whitespaces (`pr#25323 <https://github.com/ceph/ceph/pull/25323>`_, Sebastian Wagner) -* mgr/orchestrator/rook: allow the creation of OSDs in directories (`pr#26570 <https://github.com/ceph/ceph/pull/26570>`_, Jeff Layton) -* mgr/orchestrator: Unify `osd create` and `osd add` (`pr#26171 <https://github.com/ceph/ceph/pull/26171>`_, Sebastian Wagner) -* mgr/orch: refresh option for inventory query (`pr#26346 <https://github.com/ceph/ceph/pull/26346>`_, Noah Watkins) -* mgr: prometheus: added bluestore db and wal/journal devices to ceph_disk_occupation metric (`issue#36627 <http://tracker.ceph.com/issues/36627>`_, `pr#24821 <https://github.com/ceph/ceph/pull/24821>`_, Konstantin Shalygin) -* mgr: prometheus: Expose number of degraded/misplaced/unfound objects (`pr#21793 <https://github.com/ceph/ceph/pull/21793>`_, Boris Ranto) -* mgr: prometheus: Fix metric resets (`pr#22732 <https://github.com/ceph/ceph/pull/22732>`_, Boris Ranto) -* mgr: prometheus: Fix prometheus shutdown/restart (`pr#21748 <https://github.com/ceph/ceph/pull/21748>`_, Boris Ranto) -* mgr: pybind/mgr: add osd space utilization to insights report (`pr#25122 <https://github.com/ceph/ceph/pull/25122>`_, Noah Watkins) -* mgr: pybind/mgr: PEP 8 code clean and fix typo (`pr#26181 <https://github.com/ceph/ceph/pull/26181>`_, Lei Liu) -* mgr,pybind: mgr/prometheus: add interface and objectstore to osd metadata (`pr#25234 <https://github.com/ceph/ceph/pull/25234>`_, Jan Fajerski) -* mgr: pybind/mgr/restful: Decode the output of b64decode (`issue#38522 <http://tracker.ceph.com/issues/38522>`_, `pr#26712 <https://github.com/ceph/ceph/pull/26712>`_, Brad Hubbard) -* mgr,pybind: mgr/rook: fix urljoin import (`pr#24626 <https://github.com/ceph/ceph/pull/24626>`_, Jeff Layton) -* mgr,pybind: mgr/volumes: Fix Python 3 import error (`pr#25344 <https://github.com/ceph/ceph/pull/25344>`_, Sebastian Wagner) -* mgr,pybind: pybind/mgr: drop unnecessary iterkeys usage to make py-3 compatible (`issue#37581 <http://tracker.ceph.com/issues/37581>`_, `pr#25457 <https://github.com/ceph/ceph/pull/25457>`_, Mykola Golub) -* mgr,pybind: pybind/mgr: identify invalid fs (`pr#24392 <https://github.com/ceph/ceph/pull/24392>`_, Jos Collin) -* mgr,pybind: src/script: add run_mypy to run static type checking on Python code (`pr#26715 <https://github.com/ceph/ceph/pull/26715>`_, Sebastian Wagner) -* mgr: race between daemon state and service map in 'service status' (`issue#36656 <http://tracker.ceph.com/issues/36656>`_, `pr#24878 <https://github.com/ceph/ceph/pull/24878>`_, Mykola Golub) -* mgr,rbd: mgr/prometheus: provide RBD stats via osd dynamic perf counters (`pr#25358 <https://github.com/ceph/ceph/pull/25358>`_, Mykola Golub) -* mgr,rbd: pybind/mgr/prometheus: improve 'rbd_stats_pools' param parsing (`pr#25860 <https://github.com/ceph/ceph/pull/25860>`_, Mykola Golub) -* mgr,rbd: pybind/mgr/prometheus: rbd stats namespace support (`pr#25636 <https://github.com/ceph/ceph/pull/25636>`_, Mykola Golub) -* mgr: replace "Unknown error" string on always_on (`pr#23645 <https://github.com/ceph/ceph/pull/23645>`_, John Spray) -* mgr: restful: Fix regression when traversing leaf nodes (`pr#26421 <https://github.com/ceph/ceph/pull/26421>`_, Boris Ranto) -* mgr/rook: remove dead code and fix bug in url fetching code (`pr#26032 <https://github.com/ceph/ceph/pull/26032>`_, Jeff Layton) -* mgr: silence GCC warning (`pr#25199 <https://github.com/ceph/ceph/pull/25199>`_, Kefu Chai) -* mgr/ssh: fix type and doc errors (`pr#26630 <https://github.com/ceph/ceph/pull/26630>`_, Sebastian Wagner) -* mgr/telemetry: fix total_objects (`issue#37976 <http://tracker.ceph.com/issues/37976>`_, `pr#26046 <https://github.com/ceph/ceph/pull/26046>`_, Sage Weil) -* mgr,tests: mgr/dashboard: use dedicated tox working dir (`pr#25290 <https://github.com/ceph/ceph/pull/25290>`_, Noah Watkins) -* mgr,tests: mgr/insights: use dedicated tox working dir (`pr#25146 <https://github.com/ceph/ceph/pull/25146>`_, Noah Watkins) -* mgr,tests: mgr/selftest: fix disabled module selection (`pr#24517 <https://github.com/ceph/ceph/pull/24517>`_, John Spray) -* mgr: timely health updates between monitor and manager (`pr#23294 <https://github.com/ceph/ceph/pull/23294>`_, Noah Watkins) -* mgr: update daemon_state when necessary (`issue#37753 <http://tracker.ceph.com/issues/37753>`_, `pr#25725 <https://github.com/ceph/ceph/pull/25725>`_, Xinying Song) -* mgr: update MMgrConfigure message to include optional OSD perf queries (`pr#24180 <https://github.com/ceph/ceph/pull/24180>`_, Julien Collet) -* mgr: Use Py_BuildValue to create the argument tuple (`pr#26240 <https://github.com/ceph/ceph/pull/26240>`_, Volker Theile) -* mgr: volumes mgr module fixes (`pr#25331 <https://github.com/ceph/ceph/pull/25331>`_, Jeff Layton) -* misc: mark functions with 'override' specifier (`pr#21790 <https://github.com/ceph/ceph/pull/21790>`_, Danny Al-Gaaf) -* mon: add 'osd destroy-new' command that only destroys NEW osd slots (`issue#24428 <http://tracker.ceph.com/issues/24428>`_, `pr#22429 <https://github.com/ceph/ceph/pull/22429>`_, Sage Weil) -* mon: A PG with PG_STATE_REPAIR doesn't mean damaged data, PG_STATE_IN… (`issue#38070 <http://tracker.ceph.com/issues/38070>`_, `pr#26178 <https://github.com/ceph/ceph/pull/26178>`_, David Zafman) -* mon: change monitor compact command to run asynchronously (`issue#24160 <http://tracker.ceph.com/issues/24160>`_, `issue#24159 <http://tracker.ceph.com/issues/24159>`_, `pr#22056 <https://github.com/ceph/ceph/pull/22056>`_, penglaiyxy) -* mon: common/cmdparse: cmd_getval_throws -> cmd_getval (`pr#23557 <https://github.com/ceph/ceph/pull/23557>`_, Sage Weil) -* mon: don't commit osdmap on no-op application ops (`pr#23528 <https://github.com/ceph/ceph/pull/23528>`_, John Spray) -* mon: fix mgr module config option handling (`issue#35076 <http://tracker.ceph.com/issues/35076>`_, `pr#23846 <https://github.com/ceph/ceph/pull/23846>`_, Sage Weil) -* mon: fix pg_sum_old not copied correctly (`pr#26110 <https://github.com/ceph/ceph/pull/26110>`_, Yao Zongyou) -* monitoring/grafana: Fix OSD Capacity Utlization Grafana graph (`pr#24426 <https://github.com/ceph/ceph/pull/24426>`_, Maxime) -* mon: make rank ordering explicit (not tied to mon address sort order) (`pr#22193 <https://github.com/ceph/ceph/pull/22193>`_, Sage Weil) -* mon: mon/config-key: increase max key entry size (`pr#24250 <https://github.com/ceph/ceph/pull/24250>`_, Joao Eduardo Luis) -* mon: mon/MonClient: drop my_addr (`pr#26449 <https://github.com/ceph/ceph/pull/26449>`_, Kefu Chai) -* mon: mon/MonClient: use mon_client_ping_timeout during ping_monitor (`pr#23563 <https://github.com/ceph/ceph/pull/23563>`_, Yao Zongyou) -* mon: mon/MonMap: add more const'ness to its methods (`pr#23709 <https://github.com/ceph/ceph/pull/23709>`_, Kefu Chai) -* mon: mon/MonMap: remove duplicate code in get_rank (`pr#23547 <https://github.com/ceph/ceph/pull/23547>`_, Yao Zongyou) -* mon: mon,osd: avoid str copy in parse (`pr#25640 <https://github.com/ceph/ceph/pull/25640>`_, Jos Collin) -* mon: mon/OSDMonitor: add boundary check for pool recovery_priority (`issue#38578 <http://tracker.ceph.com/issues/38578>`_, `pr#26729 <https://github.com/ceph/ceph/pull/26729>`_, xie xingguo) -* mon: mon/PGMap: add more #include (`pr#26420 <https://github.com/ceph/ceph/pull/26420>`_, Kefu Chai) -* mon: mon/PGMap: command 'ceph df -f json' output add total_percent_used (`pr#23588 <https://github.com/ceph/ceph/pull/23588>`_, Yanhu Cao) -* mon: only share monmap after authenticating (`pr#23741 <https://github.com/ceph/ceph/pull/23741>`_, Sage Weil) -* mon: shutdown messenger early to avoid accessing deleted logger (`issue#37780 <http://tracker.ceph.com/issues/37780>`_, `pr#25760 <https://github.com/ceph/ceph/pull/25760>`_, ningtao) -* mon: some tiny cleanups related class forward declaration (`pr#26219 <https://github.com/ceph/ceph/pull/26219>`_, Yao Zongyou) -* mon,tests: qa/cephtool: test bounds on pool's `hit_set_\*` (`pr#24858 <https://github.com/ceph/ceph/pull/24858>`_, Joao Eduardo Luis) -* mon:validate hit_set values before set (`issue#22659 <http://tracker.ceph.com/issues/22659>`_, `pr#19983 <https://github.com/ceph/ceph/pull/19983>`_, lijing) -* msg: addr -> addrvec (part 1) (`pr#22306 <https://github.com/ceph/ceph/pull/22306>`_, Sage Weil) -* msg/async: do not force updating rotating keys inline (`pr#25859 <https://github.com/ceph/ceph/pull/25859>`_, yanjun, xie xingguo) -* msg/async/Protocol\*: send keep alive if existing wins (`issue#38493 <http://tracker.ceph.com/issues/38493>`_, `pr#26668 <https://github.com/ceph/ceph/pull/26668>`_, xie xingguo) -* msg/async/rdma: add iWARP RDMA protocol support (`pr#20297 <https://github.com/ceph/ceph/pull/20297>`_, Haodong Tang) -* msg/async/rdma: Delete duplicate header file (`pr#25392 <https://github.com/ceph/ceph/pull/25392>`_, Jianpeng Ma) -* msg/async/rdma: parse IBSYNMsg.lid as hex when receiving message (`pr#26525 <https://github.com/ceph/ceph/pull/26525>`_, Peng Liu) -* msg/async: reduce additional ceph_msg_header copy (`pr#25938 <https://github.com/ceph/ceph/pull/25938>`_, Jianpeng Ma) -* msg/async: the ceph_abort is needless in handle_connect_msg (`pr#21751 <https://github.com/ceph/ceph/pull/21751>`_, shangfufei) -* msg: ceph_abort() when there are enough accepter errors in msg server (`issue#23649 <http://tracker.ceph.com/issues/23649>`_, `pr#23306 <https://github.com/ceph/ceph/pull/23306>`_, penglaiyxy@gmail.com) -* msg: clear message middle when clearing encoded message buffer (`pr#24289 <https://github.com/ceph/ceph/pull/24289>`_, "Yan, Zheng") -* msg: entity_addr_t::parse doesn't do memset(this, 0, ...) for clean-up (`issue#26937 <http://tracker.ceph.com/issues/26937>`_, `pr#23573 <https://github.com/ceph/ceph/pull/23573>`_, Radoslaw Zarzynski) -* nautilus: mgr/dashboard: Validate `ceph-iscsi` config version (`pr#26951 <https://github.com/ceph/ceph/pull/26951>`_, Ricardo Marques) -* objecter: avoid race when reset down osd's session (`pr#25437 <https://github.com/ceph/ceph/pull/25437>`_, Zengran Zhang) -* orchestrator_cli: fix HandleCommandResult invocations in _status() (`pr#25329 <https://github.com/ceph/ceph/pull/25329>`_, Jeff Layton) -* osd: add creating to pg_string_state (`issue#36174 <http://tracker.ceph.com/issues/36174>`_, `pr#24262 <https://github.com/ceph/ceph/pull/24262>`_, Dan van der Ster) -* osd: add --dump-journal option in ceph-osd help info (`pr#24969 <https://github.com/ceph/ceph/pull/24969>`_, yuliyang) -* osd: Additional fields for osd "bench" command (`pr#21962 <https://github.com/ceph/ceph/pull/21962>`_, Коренберг Маркr) -* osd: add log when pg reg next scrub (`pr#23690 <https://github.com/ceph/ceph/pull/23690>`_, lvshuhua) -* osd: add required cls libraries as dependencies of osd (`pr#24373 <https://github.com/ceph/ceph/pull/24373>`_, Mohamad Gebai) -* osd: Allow repair of an object with a bad data_digest in object_info on all replicas (`pr#23217 <https://github.com/ceph/ceph/pull/23217>`_, David Zafman) -* osd: always set query_epoch explicitly for MOSDPGLog (`pr#22487 <https://github.com/ceph/ceph/pull/22487>`_, Kefu Chai) -* osd: avoid using null agent_state (`pr#25393 <https://github.com/ceph/ceph/pull/25393>`_, Zengran Zhang) -* osd: Change assert() to ceph_assert() missed in the transition (`pr#23918 <https://github.com/ceph/ceph/pull/23918>`_, David Zafman) -* osd: Change osd_skip_data_digest default to false and make it LEVEL_DEV (`issue#24950 <http://tracker.ceph.com/issues/24950>`_, `pr#23083 <https://github.com/ceph/ceph/pull/23083>`_, Sage Weil, David Zafman) -* osdc: invoke notify finish context on linger commit failure (`issue#23966 <http://tracker.ceph.com/issues/23966>`_, `pr#21831 <https://github.com/ceph/ceph/pull/21831>`_, Kefu Chai, Jason Dillaman) -* osd: clean up and avoid extra ref-counting in PrimaryLogPG::log_op_stats (`pr#23016 <https://github.com/ceph/ceph/pull/23016>`_, Radoslaw Zarzynski) -* osd: clean up smart probe (`issue#23899 <http://tracker.ceph.com/issues/23899>`_, `pr#21950 <https://github.com/ceph/ceph/pull/21950>`_, Sage Weil, Gu Zhongyan) -* osd: collect client perf stats when query is enabled (`pr#24265 <https://github.com/ceph/ceph/pull/24265>`_, Julien Collet, Mykola Golub) -* osd: combine recovery/scrub/snap sleep timer into one (`pr#21711 <https://github.com/ceph/ceph/pull/21711>`_, Jianpeng Ma) -* osd: Deny reservation if expected backfill size would put us over bac… (`issue#24801 <http://tracker.ceph.com/issues/24801>`_, `issue#19753 <http://tracker.ceph.com/issues/19753>`_, `pr#22797 <https://github.com/ceph/ceph/pull/22797>`_, David Zafman) -* osd: do not include Messenger.h if not necessary (`pr#22483 <https://github.com/ceph/ceph/pull/22483>`_, Kefu Chai) -* osd: do not overestimate the size of the object for reads with trimtrunc (`issue#21931 <http://tracker.ceph.com/issues/21931>`_, `issue#22330 <http://tracker.ceph.com/issues/22330>`_, `pr#24564 <https://github.com/ceph/ceph/pull/24564>`_, Neha Ojha) -* osd: do not treat an IO hint as an IOP for PG stats (`issue#24909 <http://tracker.ceph.com/issues/24909>`_, `pr#23029 <https://github.com/ceph/ceph/pull/23029>`_, Jason Dillaman) -* osd: don't check overwrite flag when handling copy-get (`issue#21756 <http://tracker.ceph.com/issues/21756>`_, `pr#18241 <https://github.com/ceph/ceph/pull/18241>`_, huangjun) -* osd: Don't evict even when preemption has restarted with smaller chunk (`pr#21892 <https://github.com/ceph/ceph/pull/21892>`_, David Zafman) -* osd: do_sparse_read(): Verify checksum earlier so we will try to repair (`issue#24875 <http://tracker.ceph.com/issues/24875>`_, `pr#23377 <https://github.com/ceph/ceph/pull/23377>`_, David Zafman) -* osd: drop the unused request_redirect_t::osd_instructions (`pr#24458 <https://github.com/ceph/ceph/pull/24458>`_, Radoslaw Zarzynski) -* osd: ec saves a write access to the memory under most circumstances (`pr#26053 <https://github.com/ceph/ceph/pull/26053>`_, Zengran Zhang, Kefu Chai) -* osd: fix build_incremental_map_msg (`issue#38282 <http://tracker.ceph.com/issues/38282>`_, `pr#26413 <https://github.com/ceph/ceph/pull/26413>`_, Sage Weil) -* osd: fix memory leak in EC fast and error read (`pr#22500 <https://github.com/ceph/ceph/pull/22500>`_, xiaofei cui) -* osd: Fix recovery and backfill priority handling (`issue#38041 <http://tracker.ceph.com/issues/38041>`_, `pr#26213 <https://github.com/ceph/ceph/pull/26213>`_, David Zafman) -* osd: fix shard_info_wrapper encode (`issue#37653 <http://tracker.ceph.com/issues/37653>`_, `pr#25548 <https://github.com/ceph/ceph/pull/25548>`_, David Zafman) -* osd: Handle omap and data digests independently (`issue#24366 <http://tracker.ceph.com/issues/24366>`_, `pr#22346 <https://github.com/ceph/ceph/pull/22346>`_, David Zafman) -* osd: increase default hard pg limit (`pr#22187 <https://github.com/ceph/ceph/pull/22187>`_, Josh Durgin) -* osd: keep using cache even if op will invalid cache (`pr#25490 <https://github.com/ceph/ceph/pull/25490>`_, Zengran Zhang) -* osd: limit pg log length under all circumstances (`pr#23098 <https://github.com/ceph/ceph/pull/23098>`_, Neha Ojha) -* osd: make OSD::HEARTBEAT_MAX_CONN inline (`pr#23424 <https://github.com/ceph/ceph/pull/23424>`_, Kefu Chai) -* osd: make random shuffle comply with C++17 (`pr#23533 <https://github.com/ceph/ceph/pull/23533>`_, Willem Jan Withagen) -* osd/OSDMap: add osd status to utilization dumper (`issue#35544 <http://tracker.ceph.com/issues/35544>`_, `pr#23921 <https://github.com/ceph/ceph/pull/23921>`_, Paul Emmerich) -* osd: per-pool osd stats collection (`pr#19454 <https://github.com/ceph/ceph/pull/19454>`_, Igor Fedotv, Igor Fedotov) -* osd: Prevent negative local num_bytes sent to peer for backfill reser… (`issue#38344 <http://tracker.ceph.com/issues/38344>`_, `pr#26465 <https://github.com/ceph/ceph/pull/26465>`_, David Zafman) -* osd: read object attrs failed at EC recovery (`pr#22196 <https://github.com/ceph/ceph/pull/22196>`_, xiaofei cui) -* osd: refuse to start if we're > N+2 from recorded require_osd_release (`issue#38076 <http://tracker.ceph.com/issues/38076>`_, `pr#26177 <https://github.com/ceph/ceph/pull/26177>`_, Sage Weil) -* osd: reliably send pg_created messages to the mon (`issue#37775 <http://tracker.ceph.com/issues/37775>`_, `pr#25731 <https://github.com/ceph/ceph/pull/25731>`_, Sage Weil) -* osd: Remove old bft= which has been superceded by backfill (`issue#36170 <http://tracker.ceph.com/issues/36170>`_, `pr#24256 <https://github.com/ceph/ceph/pull/24256>`_, David Zafman) -* osd: remove stray derr (`pr#24042 <https://github.com/ceph/ceph/pull/24042>`_, Sage Weil) -* osd: remove unused class read_log_and_missing_error (`pr#26057 <https://github.com/ceph/ceph/pull/26057>`_, Yao Zongyou) -* osd: remove unused fields (`pr#26021 <https://github.com/ceph/ceph/pull/26021>`_, Jianpeng Ma) -* osd: remove unused function (`pr#26223 <https://github.com/ceph/ceph/pull/26223>`_, Jianpeng Ma) -* osd: Remove useless conditon (`pr#21766 <https://github.com/ceph/ceph/pull/21766>`_, Jianpeng Ma) -* osd: some recovery improvements and cleanups (`pr#23663 <https://github.com/ceph/ceph/pull/23663>`_, xie xingguo) -* osd: two heartbeat fixes (`pr#25126 <https://github.com/ceph/ceph/pull/25126>`_, xie xingguo) -* osd: unlock osd_lock when tweaking osd settings (`issue#37751 <http://tracker.ceph.com/issues/37751>`_, `pr#25726 <https://github.com/ceph/ceph/pull/25726>`_, Kefu Chai) -* osd: unmount store after service.shutdown() (`issue#37975 <http://tracker.ceph.com/issues/37975>`_, `pr#26043 <https://github.com/ceph/ceph/pull/26043>`_, Kefu Chai) -* osd: Weighted Random Sampling for dynamic perf stats (`pr#25582 <https://github.com/ceph/ceph/pull/25582>`_, Mykola Golub) -* osd: When possible check CRC in build_push_op() so repair can eventually stop (`issue#25084 <http://tracker.ceph.com/issues/25084>`_, `pr#23518 <https://github.com/ceph/ceph/pull/23518>`_, David Zafman) -* osd: write "bench" output to stdout (`issue#24022 <http://tracker.ceph.com/issues/24022>`_, `pr#21905 <https://github.com/ceph/ceph/pull/21905>`_, John Spray) -* os: Minor fixes in comments describing a transaction (`pr#22329 <https://github.com/ceph/ceph/pull/22329>`_, Bryan Stillwell) -* performance: Add performance counters breadcrumb (`pr#22060 <https://github.com/ceph/ceph/pull/22060>`_, Ricardo Marques) -* performance: mgr/dashboard: Enable gzip compression (`issue#36453 <http://tracker.ceph.com/issues/36453>`_, `pr#24727 <https://github.com/ceph/ceph/pull/24727>`_, Zack Cerza) -* performance: mgr/dashboard: Replace dashboard service (`issue#36675 <http://tracker.ceph.com/issues/36675>`_, `pr#24900 <https://github.com/ceph/ceph/pull/24900>`_, Zack Cerza) -* performance: msg/async: improve read-prefetch logic (`pr#25758 <https://github.com/ceph/ceph/pull/25758>`_, xie xingguo) -* performance: qa/tasks/cbt.py: changes to run on bionic (`pr#22405 <https://github.com/ceph/ceph/pull/22405>`_, Neha Ojha) -* performance,rbd: common/Throttle: TokenBucketThrottle: use reference to m_blockers.front() (`issue#36475 <http://tracker.ceph.com/issues/36475>`_, `pr#24604 <https://github.com/ceph/ceph/pull/24604>`_, Dongsheng Yang) -* performance,rbd: pybind/rbd: optimize rbd_list2 (`pr#25445 <https://github.com/ceph/ceph/pull/25445>`_, Mykola Golub) -* Prevent duplicated rows during async tasks (`pr#22148 <https://github.com/ceph/ceph/pull/22148>`_, Ricardo Marques) -* prometheus: Fix order of occupation values (`pr#22149 <https://github.com/ceph/ceph/pull/22149>`_, Boris Ranto) -* pybind: do not check MFLAGS (`pr#23601 <https://github.com/ceph/ceph/pull/23601>`_, Kefu Chai) -* pybind: pybind/ceph_daemon: expand the order of magnitude of daemonperf statistics to ZB (`issue#23962 <http://tracker.ceph.com/issues/23962>`_, `pr#21765 <https://github.com/ceph/ceph/pull/21765>`_, Guan yunfei) -* pybind: pybind/rbd: make the code more concise (`pr#23664 <https://github.com/ceph/ceph/pull/23664>`_, Zheng Yin) -* pybind,rbd: pybind/rbd: add allow_shrink=True as a parameter to def resize (`pr#23605 <https://github.com/ceph/ceph/pull/23605>`_, Zheng Yin) -* pybind,rbd: pybind/rbd: fix a typo in metadata_get comments (`pr#26138 <https://github.com/ceph/ceph/pull/26138>`_, songweibin) -* pybind,rgw: pybind/rgw: pass the flags to callback function (`pr#25766 <https://github.com/ceph/ceph/pull/25766>`_, Kefu Chai) -* pybind: simplify timeout handling in run_in_thread() (`pr#24733 <https://github.com/ceph/ceph/pull/24733>`_, Kefu Chai) -* qa/btrfs/test_rmdir_async_snap: remove binary file (`pr#24108 <https://github.com/ceph/ceph/pull/24108>`_, Cleber Rosa) -* qa,pybind,tools: Correct usage of collections.abc (`pr#25318 <https://github.com/ceph/ceph/pull/25318>`_, James Page) -* qa/test: Added rados, rbd and fs to run two time a week only (`pr#21839 <https://github.com/ceph/ceph/pull/21839>`_, Yuri Weinstein) -* qa/tests: added 1st draft of mimic-x suite (`pr#23292 <https://github.com/ceph/ceph/pull/23292>`_, Yuri Weinstein) -* qa/tests - added all supported distro (`pr#22647 <https://github.com/ceph/ceph/pull/22647>`_, Yuri Weinstein) -* qa/tests - added all supported distro to the mix, … (`pr#22674 <https://github.com/ceph/ceph/pull/22674>`_, Yuri Weinstein) -* qa/tests: added client-upgrade-luminous suit (`pr#21947 <https://github.com/ceph/ceph/pull/21947>`_, Yuri Weinstein) -* qa/tests: added --filter-out="ubuntu_14.04" (`pr#21949 <https://github.com/ceph/ceph/pull/21949>`_, Yuri Weinstein) -* qa/tests - added luminous-p2p suite to the schedule (`pr#22666 <https://github.com/ceph/ceph/pull/22666>`_, Yuri Weinstein) -* qa/tests: added mimic-x to the schedule (`pr#23302 <https://github.com/ceph/ceph/pull/23302>`_, Yuri Weinstein) -* qa/tests - added powercycle suite to run on weekly basis on master and mimic (`pr#22606 <https://github.com/ceph/ceph/pull/22606>`_, Yuri Weinstein) -* qa/tests: added supported distro for powercycle suite (`pr#22185 <https://github.com/ceph/ceph/pull/22185>`_, Yuri Weinstein) -* qa/tests: changed ceph qa email address to bypass dreamhost's spam filter (`pr#23456 <https://github.com/ceph/ceph/pull/23456>`_, Yuri Weinstein) -* qa/tests: changed disto symlink to point to new way using supported OS'es (`pr#22536 <https://github.com/ceph/ceph/pull/22536>`_, Yuri Weinstein) -* qa/tests: fixed typo (`pr#21858 <https://github.com/ceph/ceph/pull/21858>`_, Yuri Weinstein) -* qa/tests: removed all jewel runs and reduced runs on ovh (`pr#22531 <https://github.com/ceph/ceph/pull/22531>`_, Yuri Weinstein) -* rbd: add 'config global' command to get/store overrides in mon config db (`pr#24428 <https://github.com/ceph/ceph/pull/24428>`_, Mykola Golub) -* rbd: add data pool support to trash purge (`issue#22872 <http://tracker.ceph.com/issues/22872>`_, `pr#21247 <https://github.com/ceph/ceph/pull/21247>`_, Mahati Chamarthy) -* rbd: add group snap rollback method (`issue#23550 <http://tracker.ceph.com/issues/23550>`_, `pr#23896 <https://github.com/ceph/ceph/pull/23896>`_, songweibin) -* rbd: add protected in snap list (`pr#23853 <https://github.com/ceph/ceph/pull/23853>`_, Zheng Yin) -* rbd: add snapshot count in rbd info (`pr#21292 <https://github.com/ceph/ceph/pull/21292>`_, Zheng Yin) -* rbd: add the judgment of resizing the image (`pr#21770 <https://github.com/ceph/ceph/pull/21770>`_, zhengyin) -* rbd: basic support for images within namespaces (`issue#24558 <http://tracker.ceph.com/issues/24558>`_, `pr#22673 <https://github.com/ceph/ceph/pull/22673>`_, Jason Dillaman) -* rbd: close image when bench is interrupted (`pr#26693 <https://github.com/ceph/ceph/pull/26693>`_, Mykola Golub) -* rbd: cls/lock: always store v1 addr in locker_info_t (`pr#25948 <https://github.com/ceph/ceph/pull/25948>`_, Sage Weil) -* rbd: cls/rbd: fix build (`pr#22078 <https://github.com/ceph/ceph/pull/22078>`_, Kefu Chai) -* rbd: cls/rbd: fixed uninitialized variable compiler warning (`pr#26896 <https://github.com/ceph/ceph/pull/26896>`_, Jason Dillaman) -* rbd: cls/rbd: fix method comment (`pr#23277 <https://github.com/ceph/ceph/pull/23277>`_, Zheng Yin) -* rbd: cls/rbd: silence the log of get metadata error (`pr#25436 <https://github.com/ceph/ceph/pull/25436>`_, songweibin) -* rbd: correct parameter of namespace and verify it before set_namespace (`pr#23770 <https://github.com/ceph/ceph/pull/23770>`_, songweibin) -* rbd: dashboard: support configuring block mirroring pools and peers (`pr#25210 <https://github.com/ceph/ceph/pull/25210>`_, Jason Dillaman) -* rbd: disable cache for actions that open multiple images (`issue#24092 <http://tracker.ceph.com/issues/24092>`_, `pr#21946 <https://github.com/ceph/ceph/pull/21946>`_, Jason Dillaman) -* rbd: disk-usage can now optionally compute exact on-disk usage (`issue#24064 <http://tracker.ceph.com/issues/24064>`_, `pr#21912 <https://github.com/ceph/ceph/pull/21912>`_, Jason Dillaman) -* rbd: Document new RBD feature flags and version support (`pr#25192 <https://github.com/ceph/ceph/pull/25192>`_, Valentin Lorentz) -* rbd: don't load config overrides from monitor initially (`pr#21910 <https://github.com/ceph/ceph/pull/21910>`_, Jason Dillaman) -* rbd: error if new size is equal to original size (`pr#22637 <https://github.com/ceph/ceph/pull/22637>`_, zhengyin) -* rbd: expose pool stats summary tool (`pr#24830 <https://github.com/ceph/ceph/pull/24830>`_, Jason Dillaman) -* rbd: filter out group/trash snapshots from snap_list (`pr#23638 <https://github.com/ceph/ceph/pull/23638>`_, songweibin) -* rbd: fix a typo in error output (`pr#25931 <https://github.com/ceph/ceph/pull/25931>`_, Dongsheng Yang) -* rbd: fix delay time calculation for trash move (`pr#25896 <https://github.com/ceph/ceph/pull/25896>`_, Mykola Golub) -* rbd: fix error import when the input is a pipe (`issue#34536 <http://tracker.ceph.com/issues/34536>`_, `pr#23835 <https://github.com/ceph/ceph/pull/23835>`_, songweibin) -* rbd: fix segmentation fault when rbd_group_image_list() getting -ENOENT (`issue#38468 <http://tracker.ceph.com/issues/38468>`_, `pr#26622 <https://github.com/ceph/ceph/pull/26622>`_, songweibin) -* rbd: fix some typos (`pr#25083 <https://github.com/ceph/ceph/pull/25083>`_, Shiyang Ruan) -* rbd: implement new 'rbd perf image iostat/iotop' commands (`issue#37913 <http://tracker.ceph.com/issues/37913>`_, `pr#26133 <https://github.com/ceph/ceph/pull/26133>`_, Jason Dillaman) -* rbd: improved trash snapshot namespace handling (`issue#23398 <http://tracker.ceph.com/issues/23398>`_, `pr#23191 <https://github.com/ceph/ceph/pull/23191>`_, Jason Dillaman) -* rbd: interlock object-map/fast-diff features together (`pr#21969 <https://github.com/ceph/ceph/pull/21969>`_, Mao Zhongyi) -* rbd: introduce abort_on_full option for rbd map (`pr#25662 <https://github.com/ceph/ceph/pull/25662>`_, Dongsheng Yang) -* rbd: journal: allow remove set when jounal pool is full (`pr#25166 <https://github.com/ceph/ceph/pull/25166>`_, kungf) -* rbd: journal: fix potential race when closing object recorder (`pr#26425 <https://github.com/ceph/ceph/pull/26425>`_, Mykola Golub) -* rbd: journal: set max journal order to 26 (`issue#37541 <http://tracker.ceph.com/issues/37541>`_, `pr#25743 <https://github.com/ceph/ceph/pull/25743>`_, Mykola Golub) -* rbd: krbd: support for images within namespaces (`pr#23841 <https://github.com/ceph/ceph/pull/23841>`_, Ilya Dryomov) -* rbd: librbd/api: misc fix migration (`pr#25765 <https://github.com/ceph/ceph/pull/25765>`_, songweibin) -* rbd: librbd: ensure exclusive lock acquired when removing sync point snapshots (`issue#24898 <http://tracker.ceph.com/issues/24898>`_, `pr#23095 <https://github.com/ceph/ceph/pull/23095>`_, Mykola Golub) -* rbd: librbd: misc fix potential invalid pointer (`pr#25462 <https://github.com/ceph/ceph/pull/25462>`_, songweibin) -* rbd: make sure the return-value 'r' will be returned (`pr#24891 <https://github.com/ceph/ceph/pull/24891>`_, Shiyang Ruan) -* rbd: mgr/dashboard: incorporate RBD overall performance grafana dashboard (`issue#37867 <http://tracker.ceph.com/issues/37867>`_, `pr#25927 <https://github.com/ceph/ceph/pull/25927>`_, Jason Dillaman) -* rbd-mirror: always attempt to restart canceled status update task (`issue#36500 <http://tracker.ceph.com/issues/36500>`_, `pr#24646 <https://github.com/ceph/ceph/pull/24646>`_, Jason Dillaman) -* rbd-mirror: bootstrap needs to handle local image id collision (`issue#24139 <http://tracker.ceph.com/issues/24139>`_, `pr#22043 <https://github.com/ceph/ceph/pull/22043>`_, Jason Dillaman) -* rbd-mirror: create and export replication perf counters to mgr (`pr#25834 <https://github.com/ceph/ceph/pull/25834>`_, Mykola Golub) -* rbd-mirror: ensure daemon can cleanly exit if pool is deleted (`pr#22348 <https://github.com/ceph/ceph/pull/22348>`_, Jason Dillaman) -* rbd-mirror: ensure remote demotion is replayed locally (`issue#24009 <http://tracker.ceph.com/issues/24009>`_, `pr#21823 <https://github.com/ceph/ceph/pull/21823>`_, Jason Dillaman) -* rbd-mirror: fixed potential crashes during shut down (`issue#24008 <http://tracker.ceph.com/issues/24008>`_, `pr#21817 <https://github.com/ceph/ceph/pull/21817>`_, Jason Dillaman) -* rbd-mirror: guard access to image replayer perf counters (`pr#26097 <https://github.com/ceph/ceph/pull/26097>`_, Mykola Golub) -* rbd-mirror: instantiate the status formatter before changing state (`issue#36084 <http://tracker.ceph.com/issues/36084>`_, `pr#24181 <https://github.com/ceph/ceph/pull/24181>`_, Jason Dillaman) -* rbd-mirror: optionally extract peer secrets from config-key (`issue#24688 <http://tracker.ceph.com/issues/24688>`_, `pr#24036 <https://github.com/ceph/ceph/pull/24036>`_, Jason Dillaman) -* rbd-mirror: optionally support active/active replication (`pr#21915 <https://github.com/ceph/ceph/pull/21915>`_, Mykola Golub, Jason Dillaman) -* rbd-mirror: potential deadlock when running asok 'flush' command (`issue#24141 <http://tracker.ceph.com/issues/24141>`_, `pr#22027 <https://github.com/ceph/ceph/pull/22027>`_, Mykola Golub) -* rbd-mirror: prevent creation of clones when parents are syncing (`issue#24140 <http://tracker.ceph.com/issues/24140>`_, `pr#24063 <https://github.com/ceph/ceph/pull/24063>`_, Jason Dillaman) -* rbd-mirror: schedule rebalancer to level-load instances (`issue#24161 <http://tracker.ceph.com/issues/24161>`_, `pr#22304 <https://github.com/ceph/ceph/pull/22304>`_, Venky Shankar) -* rbd-mirror: update mirror status when stopping (`issue#36659 <http://tracker.ceph.com/issues/36659>`_, `pr#24864 <https://github.com/ceph/ceph/pull/24864>`_, Jason Dillaman) -* rbd-mirror: use active/active policy by default (`issue#38453 <http://tracker.ceph.com/issues/38453>`_, `pr#26603 <https://github.com/ceph/ceph/pull/26603>`_, Jason Dillaman) -* rbd: move image to trash as first step when removing (`issue#24226 <http://tracker.ceph.com/issues/24226>`_, `issue#38404 <http://tracker.ceph.com/issues/38404>`_, `pr#25438 <https://github.com/ceph/ceph/pull/25438>`_, Mahati Chamarthy, Jason Dillaman) -* rbd-nbd: do not ceph_abort() after print the usages (`issue#36660 <http://tracker.ceph.com/issues/36660>`_, `pr#24815 <https://github.com/ceph/ceph/pull/24815>`_, Shiyang Ruan) -* rbd-nbd: support namespaces (`issue#24609 <http://tracker.ceph.com/issues/24609>`_, `pr#25260 <https://github.com/ceph/ceph/pull/25260>`_, Mykola Golub) -* rbd: not allowed to restore an image when it is being deleted (`issue#25346 <http://tracker.ceph.com/issues/25346>`_, `pr#24078 <https://github.com/ceph/ceph/pull/24078>`_, songweibin) -* rbd: online re-sparsify of images (`pr#26226 <https://github.com/ceph/ceph/pull/26226>`_, Mykola Golub) -* rbd: pybind/rbd: add namespace helper API methods (`issue#36622 <http://tracker.ceph.com/issues/36622>`_, `pr#25206 <https://github.com/ceph/ceph/pull/25206>`_, Jason Dillaman) -* rbd: qa/workunits: fixed mon address parsing for rbd-mirror (`issue#38385 <http://tracker.ceph.com/issues/38385>`_, `pr#26521 <https://github.com/ceph/ceph/pull/26521>`_, Jason Dillaman) -* rbd: rbd: fix error parse arg when getting key (`pr#25152 <https://github.com/ceph/ceph/pull/25152>`_, songweibin) -* rbd: rbd-fuse: look for ceph.conf in standard locations (`issue#12219 <http://tracker.ceph.com/issues/12219>`_, `pr#20598 <https://github.com/ceph/ceph/pull/20598>`_, Jason Dillaman) -* rbd: rbd-fuse: namespace support (`pr#25265 <https://github.com/ceph/ceph/pull/25265>`_, Mykola Golub) -* rbd: rbd-ggate: support namespaces (`issue#24608 <http://tracker.ceph.com/issues/24608>`_, `pr#25266 <https://github.com/ceph/ceph/pull/25266>`_, Mykola Golub) -* rbd: rbd-ggate: tag "level" with need_dynamic (`pr#22557 <https://github.com/ceph/ceph/pull/22557>`_, Kefu Chai) -* rbd: rbd_mirror: assert no requests on destroying InstanceWatcher (`pr#25666 <https://github.com/ceph/ceph/pull/25666>`_, Mykola Golub) -* rbd: rbd_mirror: don't report error if image replay canceled (`pr#25789 <https://github.com/ceph/ceph/pull/25789>`_, Mykola Golub) -* rbd: rbd-mirror: use pool level config overrides (`pr#24348 <https://github.com/ceph/ceph/pull/24348>`_, Mykola Golub) -* rbd: rbd: show info about mirror daemon instance in image mirror status output (`pr#24717 <https://github.com/ceph/ceph/pull/24717>`_, Mykola Golub) -* rbd: return error code when the source and distination namespace are different (`pr#24893 <https://github.com/ceph/ceph/pull/24893>`_, Shiyang Ruan) -* rbd: simplified code to remove do_clear_limit function (`pr#23954 <https://github.com/ceph/ceph/pull/23954>`_, Zheng Yin) -* rbd: support namespaces for image migration (`issue#26951 <http://tracker.ceph.com/issues/26951>`_, `pr#24836 <https://github.com/ceph/ceph/pull/24836>`_, Jason Dillaman) -* rbd: systemd/rbdmap.service: order us before remote-fs-pre.target (`issue#24713 <http://tracker.ceph.com/issues/24713>`_, `pr#22769 <https://github.com/ceph/ceph/pull/22769>`_, Ilya Dryomov) -* rbd: test/librbd: drop unused variable ‘num_aios’ (`pr#23085 <https://github.com/ceph/ceph/pull/23085>`_, songweibin) -* rbd,tests: krbd: alloc_size map option and tests (`pr#26244 <https://github.com/ceph/ceph/pull/26244>`_, Ilya Dryomov) -* rbd,tests: librbd,test: remove unused context_cb() function, silence GCC warnings (`pr#24673 <https://github.com/ceph/ceph/pull/24673>`_, Kefu Chai) -* rbd,tests: pybind/rbd: add assert_raise in test set_snap (`pr#22570 <https://github.com/ceph/ceph/pull/22570>`_, Zheng Yin) -* rbd,tests: qa: krbd_exclusive_option.sh: bump lock_timeout to 60 seconds (`issue#25080 <http://tracker.ceph.com/issues/25080>`_, `pr#22648 <https://github.com/ceph/ceph/pull/22648>`_, Ilya Dryomov) -* rbd,tests: qa: krbd_msgr_segments.t: filter lvcreate output (`pr#22665 <https://github.com/ceph/ceph/pull/22665>`_, Ilya Dryomov) -* rbd,tests: qa: krbd namespaces test (`pr#26339 <https://github.com/ceph/ceph/pull/26339>`_, Ilya Dryomov) -* rbd,tests: qa: objectstore snippets for krbd (`pr#26279 <https://github.com/ceph/ceph/pull/26279>`_, Ilya Dryomov) -* rbd,tests: qa: rbd_workunit_kernel_untar_build: install build dependencies (`issue#35074 <http://tracker.ceph.com/issues/35074>`_, `pr#23840 <https://github.com/ceph/ceph/pull/23840>`_, Ilya Dryomov) -* rbd,tests: qa: rbd/workunits : Replace "rbd bench-write" with "rbd bench --io-type write" (`pr#26168 <https://github.com/ceph/ceph/pull/26168>`_, Shyukri Shyukriev) -* rbd,tests: qa/suites/krbd: more fsx tests (`pr#24354 <https://github.com/ceph/ceph/pull/24354>`_, Ilya Dryomov) -* rbd,tests: qa/suites/rbd: randomly select a supported distro (`pr#22008 <https://github.com/ceph/ceph/pull/22008>`_, Jason Dillaman) -* rbd,tests: qa/tasks/cram: tasks now must live in the repository (`pr#23976 <https://github.com/ceph/ceph/pull/23976>`_, Ilya Dryomov) -* rbd,tests: qa/tasks/cram: use suite_repo repository for all cram jobs (`pr#23905 <https://github.com/ceph/ceph/pull/23905>`_, Ilya Dryomov) -* rbd,tests: qa/tasks/qemu: use unique clone directory to avoid race with workunit (`issue#36542 <http://tracker.ceph.com/issues/36542>`_, `pr#24696 <https://github.com/ceph/ceph/pull/24696>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: fix cli generic namespace test (`pr#24457 <https://github.com/ceph/ceph/pull/24457>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: force v2 image format for namespace test (`pr#24512 <https://github.com/ceph/ceph/pull/24512>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: replace usage of 'rados mkpool' (`pr#23938 <https://github.com/ceph/ceph/pull/23938>`_, Jason Dillaman) -* rbd,tests: qa/workunits: replace 'realpath' with 'readlink -f' in fsstress.sh (`issue#36409 <http://tracker.ceph.com/issues/36409>`_, `pr#24550 <https://github.com/ceph/ceph/pull/24550>`_, Jason Dillaman) -* rbd,tests: test/cli-integration/rbd: added new parent image attributes (`pr#25415 <https://github.com/ceph/ceph/pull/25415>`_, Jason Dillaman) -* rbd,tests: test/librados_test_stub: deterministically load cls shared libraries (`pr#21524 <https://github.com/ceph/ceph/pull/21524>`_, Jason Dillaman) -* rbd,tests: test/librados_test_stub: handle object doesn't exist gracefully (`pr#25667 <https://github.com/ceph/ceph/pull/25667>`_, Mykola Golub) -* rbd,tests: test/librbd: fix compiler -Wsign-compare warnings (`pr#23657 <https://github.com/ceph/ceph/pull/23657>`_, Mykola Golub) -* rbd,tests: test/librbd: fix gmock warning in snapshot rollback test (`pr#23736 <https://github.com/ceph/ceph/pull/23736>`_, Jason Dillaman) -* rbd,tests: test/librbd: fix gmock warning in TestMockIoImageRequestWQ.AcquireLockError (`pr#22778 <https://github.com/ceph/ceph/pull/22778>`_, Mykola Golub) -* rbd,tests: test/librbd: fix gmock warnings for get_modify_timestamp call (`pr#23707 <https://github.com/ceph/ceph/pull/23707>`_, Mykola Golub) -* rbd,tests: test/librbd: fix 'Uninteresting mock function call' warning (`pr#26322 <https://github.com/ceph/ceph/pull/26322>`_, Mykola Golub) -* rbd,tests: test/librbd: fix valgrind warnings (`pr#23827 <https://github.com/ceph/ceph/pull/23827>`_, Mykola Golub) -* rbd,tests: test/librbd: fix -Wsign-compare warnings (`pr#23608 <https://github.com/ceph/ceph/pull/23608>`_, Kefu Chai) -* rbd,tests: test/librbd: metadata key for config should be prefixed with ``conf_`` (`pr#25209 <https://github.com/ceph/ceph/pull/25209>`_, runsisi) -* rbd,tests: test/librbd: migration supporting namespace tests (`pr#24919 <https://github.com/ceph/ceph/pull/24919>`_, Mykola Golub) -* rbd,tests: test/librbd: migration tests did not delete additional pool (`pr#24009 <https://github.com/ceph/ceph/pull/24009>`_, Mykola Golub) -* rbd,tests: test: move OpenStack devstack test to rocky release (`issue#36410 <http://tracker.ceph.com/issues/36410>`_, `pr#24563 <https://github.com/ceph/ceph/pull/24563>`_, Jason Dillaman) -* rbd,tests: test/pybind: fix test_rbd.TestClone.test_trash_snapshot (`issue#25114 <http://tracker.ceph.com/issues/25114>`_, `pr#23256 <https://github.com/ceph/ceph/pull/23256>`_, Mykola Golub) -* rbd,tests: test/pybind/test_rbd: filter out unknown list_children2 keys (`issue#37729 <http://tracker.ceph.com/issues/37729>`_, `pr#25832 <https://github.com/ceph/ceph/pull/25832>`_, Mykola Golub) -* rbd,tests: test/rbd-mirror: disable use of gtest-parallel (`pr#22694 <https://github.com/ceph/ceph/pull/22694>`_, Jason Dillaman) -* rbd,tests: test/rbd_mirror: fix gmock warnings (`pr#25863 <https://github.com/ceph/ceph/pull/25863>`_, Mykola Golub) -* rbd,tests: test/rbd_mirror: race in TestMockImageMap.AddInstancePingPongImageTest (`issue#36683 <http://tracker.ceph.com/issues/36683>`_, `pr#24897 <https://github.com/ceph/ceph/pull/24897>`_, Mykola Golub) -* rbd,tests: test/rbd_mirror: race in WaitingOnLeaderReleaseLeader (`issue#36236 <http://tracker.ceph.com/issues/36236>`_, `pr#24300 <https://github.com/ceph/ceph/pull/24300>`_, Mykola Golub) -* rbd,tests: test/rbd_mirror: wait for release leader lock fully complete (`pr#25935 <https://github.com/ceph/ceph/pull/25935>`_, Mykola Golub) -* rbd,tests: test/rbd: rbd_ggate test improvements (`pr#23630 <https://github.com/ceph/ceph/pull/23630>`_, Willem Jan Withagen) -* rbd,tests: test: silence -Wsign-compare warnings (`pr#23655 <https://github.com/ceph/ceph/pull/23655>`_, Kefu Chai) -* rbd: tools/rbd/action: align column headers left (`pr#22566 <https://github.com/ceph/ceph/pull/22566>`_, Sage Weil) -* rbd: tools/rbd: assert(g_ceph_context) not g_conf (`pr#23167 <https://github.com/ceph/ceph/pull/23167>`_, Kefu Chai) -* rbd: tools/rbd: minor fixes for rbd du display (`pr#23311 <https://github.com/ceph/ceph/pull/23311>`_, songweibin) -* rbd,tools: rbd-mirror,common: fix typos in logging messages and comments (`pr#25197 <https://github.com/ceph/ceph/pull/25197>`_, Shiyang Ruan) -* rbd,tools: tools/rbd: assert(g_ceph_context) not g_conf (`pr#23008 <https://github.com/ceph/ceph/pull/23008>`_, Kefu Chai) -* rbd: wait for all io complete when bench is interrupted (`pr#26918 <https://github.com/ceph/ceph/pull/26918>`_, Mykola Golub) -* rbd: workaround for llvm linker problem, avoid std:pair dtor (`pr#25301 <https://github.com/ceph/ceph/pull/25301>`_, Willem Jan Withagen) -* Revert "cephfs-journal-tool: enable purge_queue journal's event comma… (`pr#23465 <https://github.com/ceph/ceph/pull/23465>`_, "Yan, Zheng") -* Revert "ceph-fuse: Delete inode's bufferhead was in Tx state would le… (`pr#21975 <https://github.com/ceph/ceph/pull/21975>`_, "Yan, Zheng") -* rgw: abort_bucket_multiparts() ignores individual NoSuchUpload errors (`issue#35986 <http://tracker.ceph.com/issues/35986>`_, `pr#24110 <https://github.com/ceph/ceph/pull/24110>`_, Casey Bodley) -* rgw: adapt AioThrottle for RGWGetObj (`pr#25208 <https://github.com/ceph/ceph/pull/25208>`_, Casey Bodley) -* rgw: Add append object api (`pr#22755 <https://github.com/ceph/ceph/pull/22755>`_, zhang Shaowen, Zhang Shaowen) -* rgw: add bucket as option when show/trim usage (`pr#23819 <https://github.com/ceph/ceph/pull/23819>`_, lvshuhua) -* rgw: add configurable AWS-compat invalid range get behavior (`issue#24317 <http://tracker.ceph.com/issues/24317>`_, `pr#22231 <https://github.com/ceph/ceph/pull/22231>`_, Matt Benjamin) -* rgw: add curl_low_speed_limit and curl_low_speed_time config to avoid (`pr#23058 <https://github.com/ceph/ceph/pull/23058>`_, Mark Kogan, Zhang Shaowen) -* rgw: add Http header 'Server' in response headers (`pr#23282 <https://github.com/ceph/ceph/pull/23282>`_, Zhang Shaowen) -* rgw: Adding documentation for Roles (`pr#24714 <https://github.com/ceph/ceph/pull/24714>`_, Pritha Srivastava) -* rgw: add latency info in the log of req done (`pr#23906 <https://github.com/ceph/ceph/pull/23906>`_, lvshuhua) -* rgw: add list user admin OP API (`pr#25073 <https://github.com/ceph/ceph/pull/25073>`_, Oshyn Song) -* rgw: add --op-mask in radosgw-admin help info (`pr#24848 <https://github.com/ceph/ceph/pull/24848>`_, yuliyang) -* rgw: add optional_yield to block_while_resharding() (`pr#25357 <https://github.com/ceph/ceph/pull/25357>`_, Casey Bodley) -* rgw: add option for relaxed region enforcement (`issue#24507 <http://tracker.ceph.com/issues/24507>`_, `pr#22533 <https://github.com/ceph/ceph/pull/22533>`_, Matt Benjamin) -* rgw: Add rgw xml unit tests (`pr#26682 <https://github.com/ceph/ceph/pull/26682>`_, Yuval Lifshitz) -* rgw: add s3 notification sub resources (`pr#23405 <https://github.com/ceph/ceph/pull/23405>`_, yuliyang) -* rgw: admin rest api support op-mask (`pr#24869 <https://github.com/ceph/ceph/pull/24869>`_, yuliyang) -* rgw: admin/user ops dump user 'system' flag (`pr#17414 <https://github.com/ceph/ceph/pull/17414>`_, fang.yuxiang) -* rgw: All Your Fault (`issue#24962 <http://tracker.ceph.com/issues/24962>`_, `pr#23099 <https://github.com/ceph/ceph/pull/23099>`_, Adam C. Emerson) -* rgw: apply quota config to users created via external auth (`issue#24595 <http://tracker.ceph.com/issues/24595>`_, `pr#24177 <https://github.com/ceph/ceph/pull/24177>`_, Casey Bodley) -* rgw: archive zone (`pr#25137 <https://github.com/ceph/ceph/pull/25137>`_, Yehuda Sadeh, Javier M. Mellid) -* rgw: async sync_object and remove_object does not access coroutine me… (`issue#35905 <http://tracker.ceph.com/issues/35905>`_, `pr#24007 <https://github.com/ceph/ceph/pull/24007>`_, Tianshan Qu) -* rgw: async watch registration (`pr#21838 <https://github.com/ceph/ceph/pull/21838>`_, Yehuda Sadeh) -* rgw: avoid race condition in RGWHTTPClient::wait() (`pr#21767 <https://github.com/ceph/ceph/pull/21767>`_, cfanz) -* rgw: beast frontend logs socket errors at level 4 (`pr#24677 <https://github.com/ceph/ceph/pull/24677>`_, Casey Bodley) -* rgw: beast frontend parses ipv6 addrs (`issue#36662 <http://tracker.ceph.com/issues/36662>`_, `pr#24887 <https://github.com/ceph/ceph/pull/24887>`_, Casey Bodley) -* rgw: beast frontend reworks pause/stop and yields during body io (`pr#21271 <https://github.com/ceph/ceph/pull/21271>`_, Casey Bodley) -* rgw: bucket full sync handles delete markers (`issue#38007 <http://tracker.ceph.com/issues/38007>`_, `pr#26081 <https://github.com/ceph/ceph/pull/26081>`_, Casey Bodley) -* rgw: bucket limit check misbehaves for > max-entries buckets (usually… (`pr#26800 <https://github.com/ceph/ceph/pull/26800>`_, Matt Benjamin) -* rgw: bucket sync status improvements, part 1 (`pr#21788 <https://github.com/ceph/ceph/pull/21788>`_, Casey Bodley) -* rgw: bug in versioning concurrent, list and get have consistency issue (`pr#26197 <https://github.com/ceph/ceph/pull/26197>`_, Wang Hao) -* rgw: catch exceptions from librados::NObjectIterator (`issue#37091 <http://tracker.ceph.com/issues/37091>`_, `pr#25081 <https://github.com/ceph/ceph/pull/25081>`_, Casey Bodley) -* rgw: change default rgw_thread_pool_size to 512 (`issue#24544 <http://tracker.ceph.com/issues/24544>`_, `pr#22581 <https://github.com/ceph/ceph/pull/22581>`_, Douglas Fuller) -* rgw: change the "rgw admin status" 'num_shards' output to signed int (`issue#37645 <http://tracker.ceph.com/issues/37645>`_, `pr#25538 <https://github.com/ceph/ceph/pull/25538>`_, Mark Kogan) -* rgw: check for non-existent bucket in RGWGetACLs (`pr#26212 <https://github.com/ceph/ceph/pull/26212>`_, Matt Benjamin) -* rgw: civetweb: update for url validation fixes (`issue#24158 <http://tracker.ceph.com/issues/24158>`_, `pr#22054 <https://github.com/ceph/ceph/pull/22054>`_, Abhishek Lekshmanan) -* rgw: civetweb: use poll instead of select while waiting on sockets (`issue#24364 <http://tracker.ceph.com/issues/24364>`_, `pr#24027 <https://github.com/ceph/ceph/pull/24027>`_, Abhishek Lekshmanan) -* rgw: clean-up -- insure C++ source code files contain editor directives (`pr#25495 <https://github.com/ceph/ceph/pull/25495>`_, J. Eric Ivancich) -* rgw: cleanups for sync tracing (`pr#23828 <https://github.com/ceph/ceph/pull/23828>`_, Casey Bodley) -* rgw: clean-up -- use enum class for stats category (`pr#25450 <https://github.com/ceph/ceph/pull/25450>`_, J. Eric Ivancich) -* rgw: cls/rgw: don't assert in decode_list_index_key() (`issue#24117 <http://tracker.ceph.com/issues/24117>`_, `pr#22440 <https://github.com/ceph/ceph/pull/22440>`_, Yehuda Sadeh) -* rgw: cls/rgw: raise debug level of bi_log_iterate_entries output (`pr#25570 <https://github.com/ceph/ceph/pull/25570>`_, Casey Bodley) -* rgw: cls/user: cls_user_remove_bucket writes modified header (`issue#36496 <http://tracker.ceph.com/issues/36496>`_, `pr#24645 <https://github.com/ceph/ceph/pull/24645>`_, Casey Bodley) -* rgw: Code for STS Authentication (`pr#23504 <https://github.com/ceph/ceph/pull/23504>`_, Pritha Srivastava) -* rgw: common/options: correct the description of rgw_enable_lc_threads option (`pr#23511 <https://github.com/ceph/ceph/pull/23511>`_, excellentkf) -* rgw: continue enoent index in dir_suggest (`issue#24640 <http://tracker.ceph.com/issues/24640>`_, `pr#22937 <https://github.com/ceph/ceph/pull/22937>`_, Tianshan Qu) -* rgw: copy actual stats from the source shards during reshard (`issue#36290 <http://tracker.ceph.com/issues/36290>`_, `pr#24444 <https://github.com/ceph/ceph/pull/24444>`_, Abhishek Lekshmanan) -* rgw: Copying object data should generate new tail tag for the new object (`issue#24562 <http://tracker.ceph.com/issues/24562>`_, `pr#22613 <https://github.com/ceph/ceph/pull/22613>`_, Zhang Shaowen) -* rgw: Correcting logic for signature calculation for non s3 ops (`pr#26098 <https://github.com/ceph/ceph/pull/26098>`_, Pritha Srivastava) -* rgw: cors rules num limit (`pr#23434 <https://github.com/ceph/ceph/pull/23434>`_, yuliyang) -* rgw: crypto: add openssl support for RGW encryption (`pr#15168 <https://github.com/ceph/ceph/pull/15168>`_, Qiaowei Ren) -* rgw: data sync accepts ERR_PRECONDITION_FAILED on remove_object() (`issue#37448 <http://tracker.ceph.com/issues/37448>`_, `pr#25310 <https://github.com/ceph/ceph/pull/25310>`_, Casey Bodley) -* rgw: data sync drains lease stack on lease failure (`issue#38479 <http://tracker.ceph.com/issues/38479>`_, `pr#26639 <https://github.com/ceph/ceph/pull/26639>`_, Casey Bodley) -* rgw: data sync respects error_retry_time for backoff on error_repo (`issue#26938 <http://tracker.ceph.com/issues/26938>`_, `pr#23571 <https://github.com/ceph/ceph/pull/23571>`_, Casey Bodley) -* rgw: delete multi object num limit (`pr#23544 <https://github.com/ceph/ceph/pull/23544>`_, yuliyang) -* rgw: delete some unused code about std::regex (`pr#23221 <https://github.com/ceph/ceph/pull/23221>`_, Xueyu Bai) -* rgw: [DNM] rgw: Controlling STS authentication via a Policy (`pr#24818 <https://github.com/ceph/ceph/pull/24818>`_, Pritha Srivastava) -* rgw: do not ignore EEXIST in RGWPutObj::execute (`issue#22790 <http://tracker.ceph.com/issues/22790>`_, `pr#23033 <https://github.com/ceph/ceph/pull/23033>`_, Matt Benjamin) -* rgw: Do not modify email if argument is not set (`pr#22024 <https://github.com/ceph/ceph/pull/22024>`_, Volker Theile) -* rgw: dont access rgw_http_req_data::client of canceled request (`issue#35851 <http://tracker.ceph.com/issues/35851>`_, `pr#23988 <https://github.com/ceph/ceph/pull/23988>`_, Casey Bodley) -* rgw: Don't treat colons specially when matching resource field of ARNs in S3 Policy (`issue#23817 <http://tracker.ceph.com/issues/23817>`_, `pr#25145 <https://github.com/ceph/ceph/pull/25145>`_, Adam C. Emerson) -* rgw: drop unused tmp in main() (`pr#23899 <https://github.com/ceph/ceph/pull/23899>`_, luomuyao) -* rgw: escape markers in RGWOp_Metadata_List::execute (`issue#23099 <http://tracker.ceph.com/issues/23099>`_, `pr#22721 <https://github.com/ceph/ceph/pull/22721>`_, Matt Benjamin) -* rgw: ES sync: be more restrictive on object system attrs (`issue#36233 <http://tracker.ceph.com/issues/36233>`_, `pr#24492 <https://github.com/ceph/ceph/pull/24492>`_, Abhishek Lekshmanan) -* rgw: etag in rgw copy result response body rather in header (`pr#23751 <https://github.com/ceph/ceph/pull/23751>`_, yuliyang) -* rgw: feature -- log successful bucket resharding events (`pr#25510 <https://github.com/ceph/ceph/pull/25510>`_, J. Eric Ivancich) -* rgw: fetch_remote_obj filters out olh attrs (`issue#37792 <http://tracker.ceph.com/issues/37792>`_, `pr#25794 <https://github.com/ceph/ceph/pull/25794>`_, Casey Bodley) -* rgw: fix bad user stats on versioned bucket after reshard (`pr#25414 <https://github.com/ceph/ceph/pull/25414>`_, J. Eric Ivancich) -* rgw: fix build (`pr#22194 <https://github.com/ceph/ceph/pull/22194>`_, Yehuda Sadeh) -* rgw: fix build (`pr#23248 <https://github.com/ceph/ceph/pull/23248>`_, Matt Benjamin) -* rgw: fix chunked-encoding for chunks >1MiB (`issue#35990 <http://tracker.ceph.com/issues/35990>`_, `pr#24114 <https://github.com/ceph/ceph/pull/24114>`_, Robin H. Johnson) -* rgw: fix compilation after pubsub conflict (`pr#25568 <https://github.com/ceph/ceph/pull/25568>`_, Casey Bodley) -* rgw: fix copy response header etag format not correct (`issue#24563 <http://tracker.ceph.com/issues/24563>`_, `pr#22614 <https://github.com/ceph/ceph/pull/22614>`_, Tianshan Qu) -* rgw: fix CreateBucket with BucketLocation parameter failed under default zonegroup (`pr#22312 <https://github.com/ceph/ceph/pull/22312>`_, Enming Zhang) -* rgw: fix deadlock on RGWIndexCompletionManager::stop (`issue#26949 <http://tracker.ceph.com/issues/26949>`_, `pr#23590 <https://github.com/ceph/ceph/pull/23590>`_, Yao Zongyou) -* rgw: fix dependencies/target_link_libraries (`pr#23056 <https://github.com/ceph/ceph/pull/23056>`_, Michal Jarzabek) -* rgw: fixes for sync of versioned objects (`issue#24367 <http://tracker.ceph.com/issues/24367>`_, `pr#22347 <https://github.com/ceph/ceph/pull/22347>`_, Casey Bodley) -* rgw: Fixes to permission evaluation related to user policies (`pr#25180 <https://github.com/ceph/ceph/pull/25180>`_, Pritha Srivastava) -* rgw: fix Etag error in multipart copy response (`pr#23749 <https://github.com/ceph/ceph/pull/23749>`_, yuliyang) -* rgw: Fix for buffer overflow in STS op_post() (`issue#36579 <http://tracker.ceph.com/issues/36579>`_, `pr#24510 <https://github.com/ceph/ceph/pull/24510>`_, Pritha Srivastava, Marcus Watts) -* rgw: Fix for SignatureMismatchError in s3 commands (`pr#26204 <https://github.com/ceph/ceph/pull/26204>`_, Pritha Srivastava) -* rgw: fix FTBFS introduced by abca9805 (`pr#23046 <https://github.com/ceph/ceph/pull/23046>`_, Kefu Chai) -* rgw: fix index complete miss zones_trace set (`issue#24590 <http://tracker.ceph.com/issues/24590>`_, `pr#22632 <https://github.com/ceph/ceph/pull/22632>`_, Tianshan Qu) -* rgw: fix index update in dir_suggest_changes (`issue#24280 <http://tracker.ceph.com/issues/24280>`_, `pr#22217 <https://github.com/ceph/ceph/pull/22217>`_, Tianshan Qu) -* rgw: fix ldap secret parsing (`pr#25796 <https://github.com/ceph/ceph/pull/25796>`_, Matt Benjamin) -* rgw: fix leak of curl handle on shutdown (`issue#35715 <http://tracker.ceph.com/issues/35715>`_, `pr#23986 <https://github.com/ceph/ceph/pull/23986>`_, Casey Bodley) -* rgw: Fix log level of gc_iterate_entries (`issue#23801 <http://tracker.ceph.com/issues/23801>`_, `pr#22868 <https://github.com/ceph/ceph/pull/22868>`_, iliul) -* rgw: fix max-size in radosgw-admin and REST Admin API (`pr#24062 <https://github.com/ceph/ceph/pull/24062>`_, Nick Erdmann) -* rgw: fix meta and data notify thread miss stop cr manager (`issue#24589 <http://tracker.ceph.com/issues/24589>`_, `pr#22631 <https://github.com/ceph/ceph/pull/22631>`_, Tianshan Qu) -* rgw: fix obj can still be deleted even if deleteobject policy is set (`issue#37403 <http://tracker.ceph.com/issues/37403>`_, `pr#25278 <https://github.com/ceph/ceph/pull/25278>`_, Enming.Zhang) -* rgw: fix radosgw-admin build error (`pr#21599 <https://github.com/ceph/ceph/pull/21599>`_, cfanz) -* rgw: fix rgw_data_sync_info::json_decode() (`issue#38373 <http://tracker.ceph.com/issues/38373>`_, `pr#26494 <https://github.com/ceph/ceph/pull/26494>`_, Casey Bodley) -* rgw: fix RGWSyncTraceNode crash in reload (`issue#24432 <http://tracker.ceph.com/issues/24432>`_, `pr#22432 <https://github.com/ceph/ceph/pull/22432>`_, Tianshan Qu) -* rgw: fix stats for versioned buckets after reshard (`pr#25333 <https://github.com/ceph/ceph/pull/25333>`_, J. Eric Ivancich) -* rgw: fix uninitialized access (`pr#25002 <https://github.com/ceph/ceph/pull/25002>`_, Yehuda Sadeh) -* rgw: fix unordered bucket listing when object names are adorned (`issue#38486 <http://tracker.ceph.com/issues/38486>`_, `pr#26658 <https://github.com/ceph/ceph/pull/26658>`_, J. Eric Ivancich) -* rgw: fix vector index out of range in RGWReadDataSyncRecoveringShardsCR (`issue#36537 <http://tracker.ceph.com/issues/36537>`_, `pr#24680 <https://github.com/ceph/ceph/pull/24680>`_, Casey Bodley) -* rgw: fix version bucket stats (`issue#21429 <http://tracker.ceph.com/issues/21429>`_, `pr#17789 <https://github.com/ceph/ceph/pull/17789>`_, Shasha Lu) -* rgw: fix versioned obj copy generating tags (`issue#37588 <http://tracker.ceph.com/issues/37588>`_, `pr#25473 <https://github.com/ceph/ceph/pull/25473>`_, Abhishek Lekshmanan) -* rgw: fix wrong debug related to user ACLs in rgw_build_bucket_policies() (`issue#19514 <http://tracker.ceph.com/issues/19514>`_, `pr#14369 <https://github.com/ceph/ceph/pull/14369>`_, Radoslaw Zarzynski) -* rgw: get or set realm zonegroup zone need check user's caps (`pr#25178 <https://github.com/ceph/ceph/pull/25178>`_, yuliyang, Casey Bodley) -* rgw: Get the user metadata of the user used to sign the request (`pr#22390 <https://github.com/ceph/ceph/pull/22390>`_, Volker Theile) -* rgw: handle cases around zone deletion (`issue#37328 <http://tracker.ceph.com/issues/37328>`_, `pr#25160 <https://github.com/ceph/ceph/pull/25160>`_, Abhishek Lekshmanan) -* rgw: handle S3 version 2 pre-signed urls with meta-data (`pr#24683 <https://github.com/ceph/ceph/pull/24683>`_, Matt Benjamin) -* rgw: have a configurable authentication order (`issue#23089 <http://tracker.ceph.com/issues/23089>`_, `pr#21494 <https://github.com/ceph/ceph/pull/21494>`_, Abhishek Lekshmanan) -* rgw: http client: print curl error messages during curl failures (`pr#23318 <https://github.com/ceph/ceph/pull/23318>`_, Abhishek Lekshmanan) -* rgw: Improvements to STS Lite documentation (`pr#24847 <https://github.com/ceph/ceph/pull/24847>`_, Pritha Srivastava) -* rgw: Initial commit for AssumeRoleWithWebIdentity (`pr#26002 <https://github.com/ceph/ceph/pull/26002>`_, Pritha Srivastava) -* rgw: initial RGWRados refactoring work (`pr#24014 <https://github.com/ceph/ceph/pull/24014>`_, Yehuda Sadeh, Casey Bodley) -* rgw: Initial work for OPA-Ceph integration (`pr#22624 <https://github.com/ceph/ceph/pull/22624>`_, Ashutosh Narkar) -* rgw: librgw: initialize curl and http client for multisite (`issue#36302 <http://tracker.ceph.com/issues/36302>`_, `pr#24402 <https://github.com/ceph/ceph/pull/24402>`_, Casey Bodley) -* rgw: librgw: support symbolic link (`pr#19684 <https://github.com/ceph/ceph/pull/19684>`_, Tao Chen) -* rgw: lifcycle: don't reject compound rules with empty prefix (`issue#37879 <http://tracker.ceph.com/issues/37879>`_, `pr#25926 <https://github.com/ceph/ceph/pull/25926>`_, Matt Benjamin) -* rgw: Limit the number of lifecycle rules on one bucket (`issue#24572 <http://tracker.ceph.com/issues/24572>`_, `pr#22623 <https://github.com/ceph/ceph/pull/22623>`_, Zhang Shaowen) -* rgw: list bucket can not show the object uploaded by RGWPostObj when enable bucket versioning (`pr#24341 <https://github.com/ceph/ceph/pull/24341>`_, yuliyang) -* rgw: log http status with op prefix if available (`pr#25102 <https://github.com/ceph/ceph/pull/25102>`_, Casey Bodley) -* rgw: log refactoring for data sync (`pr#23843 <https://github.com/ceph/ceph/pull/23843>`_, Casey Bodley) -* rgw: log refactoring for meta sync (`pr#23950 <https://github.com/ceph/ceph/pull/23950>`_, Casey Bodley, Ali Maredia) -* rgw: make beast the default for rgw_frontends (`pr#26599 <https://github.com/ceph/ceph/pull/26599>`_, Casey Bodley) -* rgw: Minor fixes to AssumeRole for boto compliance (`pr#24845 <https://github.com/ceph/ceph/pull/24845>`_, Pritha Srivastava) -* rgw: Minor fixes to radosgw-admin commands for a role (`pr#24730 <https://github.com/ceph/ceph/pull/24730>`_, Pritha Srivastava) -* rgw: move all reshard config options out of legacy_config_options (`pr#25356 <https://github.com/ceph/ceph/pull/25356>`_, J. Eric Ivancich) -* rgw: move keystone secrets from ceph.conf to files (`issue#36621 <http://tracker.ceph.com/issues/36621>`_, `pr#24816 <https://github.com/ceph/ceph/pull/24816>`_, Matt Benjamin) -* rgw: multiple es related fixes and improvements (`issue#22877 <http://tracker.ceph.com/issues/22877>`_, `issue#38028 <http://tracker.ceph.com/issues/38028>`_, `issue#38030 <http://tracker.ceph.com/issues/38030>`_, `issue#36092 <http://tracker.ceph.com/issues/36092>`_, `pr#26106 <https://github.com/ceph/ceph/pull/26106>`_, Yehuda Sadeh, Abhishek Lekshmanan) -* rgw: need to give a type in list constructor (`pr#25161 <https://github.com/ceph/ceph/pull/25161>`_, Willem Jan Withagen) -* rgw: new librgw_admin_us (`pr#21439 <https://github.com/ceph/ceph/pull/21439>`_, Orit Wasserman, Matt Benjamin) -* rgw: policy: fix NotAction, NotPricipal, NotResource does not take effect (`pr#23625 <https://github.com/ceph/ceph/pull/23625>`_, xiangxiang) -* rgw: policy: fix s3:x-amz-grant-read-acp keyword error (`pr#23610 <https://github.com/ceph/ceph/pull/23610>`_, xiangxiang) -* rgw: policy: modify some operation permission keyword (`issue#24061 <http://tracker.ceph.com/issues/24061>`_, `pr#20974 <https://github.com/ceph/ceph/pull/20974>`_, xiangxiang) -* rgw: pub-sub (`pr#23298 <https://github.com/ceph/ceph/pull/23298>`_, Yehuda Sadeh) -* rgw: qa/suites/rgw/verify/tasks/cls_rgw: test cls_rgw (`pr#22919 <https://github.com/ceph/ceph/pull/22919>`_, Sage Weil) -* rgw: radogw-admin reshard status command should print text for reshard status (`issue#23257 <http://tracker.ceph.com/issues/23257>`_, `pr#20779 <https://github.com/ceph/ceph/pull/20779>`_, Orit Wasserman) -* rgw: radosgw-admin: add mfa related command and options (`pr#23416 <https://github.com/ceph/ceph/pull/23416>`_, Enming.Zhang) -* rgw: `radosgw-admin bucket rm ... --purge-objects` can hang (`issue#38134 <http://tracker.ceph.com/issues/38134>`_, `pr#26231 <https://github.com/ceph/ceph/pull/26231>`_, J. Eric Ivancich) -* rgw: "radosgw-admin objects expire" always returns ok even if the process fails (`issue#24592 <http://tracker.ceph.com/issues/24592>`_, `pr#22635 <https://github.com/ceph/ceph/pull/22635>`_, Zhang Shaowen) -* rgw: radosgw-admin: 'sync error trim' loops until complete (`issue#24873 <http://tracker.ceph.com/issues/24873>`_, `pr#23032 <https://github.com/ceph/ceph/pull/23032>`_, Casey Bodley) -* rgw: radosgw-admin: translate reshard status codes (trivial) (`issue#36486 <http://tracker.ceph.com/issues/36486>`_, `pr#24638 <https://github.com/ceph/ceph/pull/24638>`_, Matt Benjamin) -* rgw: RADOS::Obj::operate takes optional_yield (`pr#25068 <https://github.com/ceph/ceph/pull/25068>`_, Casey Bodley) -* rgw: rados tiering (`issue#19510 <http://tracker.ceph.com/issues/19510>`_, `pr#25774 <https://github.com/ceph/ceph/pull/25774>`_, yuliyang, Yehuda Sadeh, Zhang Shaowen) -* rgw: raise debug level on redundant data sync error messages (`issue#35830 <http://tracker.ceph.com/issues/35830>`_, `pr#23981 <https://github.com/ceph/ceph/pull/23981>`_, Casey Bodley) -* rgw: raise default rgw_curl_low_speed_time to 300 seconds (`issue#27989 <http://tracker.ceph.com/issues/27989>`_, `pr#23759 <https://github.com/ceph/ceph/pull/23759>`_, Casey Bodley) -* rgw: refactor logging in gc and lc (`pr#24530 <https://github.com/ceph/ceph/pull/24530>`_, Ali Maredia) -* rgw: refactor PutObjProcessor stack (`pr#24453 <https://github.com/ceph/ceph/pull/24453>`_, Casey Bodley) -* rgw: reject invalid methods in validate_cors_rule_method (`issue#24223 <http://tracker.ceph.com/issues/24223>`_, `pr#22145 <https://github.com/ceph/ceph/pull/22145>`_, Jeegn Chen) -* rgw: remove all traces of cls replica_log (`pr#21680 <https://github.com/ceph/ceph/pull/21680>`_, Casey Bodley) -* rgw: remove duplicated ``RGWRados::list_buckets_`` helpers (`pr#25240 <https://github.com/ceph/ceph/pull/25240>`_, Casey Bodley) -* rgw: remove expired entries from the cache (`issue#23379 <http://tracker.ceph.com/issues/23379>`_, `pr#22410 <https://github.com/ceph/ceph/pull/22410>`_, Mark Kogan) -* rgw: remove repetitive conditional statement in RGWHandler_REST_Obj_S3 (`pr#24162 <https://github.com/ceph/ceph/pull/24162>`_, Zhang Shaowen) -* rgw: remove rgw_aclparser.cc (`issue#36665 <http://tracker.ceph.com/issues/36665>`_, `pr#24866 <https://github.com/ceph/ceph/pull/24866>`_, Matt Benjamin) -* rgw: remove the useless is_cors_op in RGWHandler_REST_Obj_S3 (`pr#22114 <https://github.com/ceph/ceph/pull/22114>`_, Zhang Shaowen) -* rgw: remove unused aio helper functions (`pr#25239 <https://github.com/ceph/ceph/pull/25239>`_, Casey Bodley) -* rgw: renew resharding locks to prevent expiration (`issue#27219 <http://tracker.ceph.com/issues/27219>`_, `issue#34307 <http://tracker.ceph.com/issues/34307>`_, `pr#24406 <https://github.com/ceph/ceph/pull/24406>`_, Orit Wasserman, J. Eric Ivancich) -* rgw: repair olh attributes that were broken by sync (`issue#37792 <http://tracker.ceph.com/issues/37792>`_, `pr#26157 <https://github.com/ceph/ceph/pull/26157>`_, Casey Bodley) -* rgw: require --yes-i-really-mean-it to run radosgw-admin orphans find (`issue#24146 <http://tracker.ceph.com/issues/24146>`_, `pr#22036 <https://github.com/ceph/ceph/pull/22036>`_, Matt Benjamin) -* rgw: reshard add: fail correctly on a non existant bucket (`issue#36449 <http://tracker.ceph.com/issues/36449>`_, `pr#24594 <https://github.com/ceph/ceph/pull/24594>`_, Abhishek Lekshmanan) -* rgw: reshard clean-up and associated commits (`pr#25142 <https://github.com/ceph/ceph/pull/25142>`_, J. Eric Ivancich) -* rgw: reshard improvements (`pr#25003 <https://github.com/ceph/ceph/pull/25003>`_, J. Eric Ivancich) -* rgw: reshard stale instance cleanup (`issue#24082 <http://tracker.ceph.com/issues/24082>`_, `pr#24662 <https://github.com/ceph/ceph/pull/24662>`_, Abhishek Lekshmanan) -* rgw: resolve bugs and clean up garbage collection code (`issue#38454 <http://tracker.ceph.com/issues/38454>`_, `pr#26601 <https://github.com/ceph/ceph/pull/26601>`_, J. Eric Ivancich) -* rgw: resolve bug where marker was not advanced during garbage collection (`issue#38408 <http://tracker.ceph.com/issues/38408>`_, `pr#26545 <https://github.com/ceph/ceph/pull/26545>`_, J. Eric Ivancich) -* rgw: return err_malformed_xml when MaxAgeSeconds is an invalid integer (`issue#26957 <http://tracker.ceph.com/issues/26957>`_, `pr#23626 <https://github.com/ceph/ceph/pull/23626>`_, Chang Liu) -* rgw: Return tenant field in bucket_stats function (`pr#24895 <https://github.com/ceph/ceph/pull/24895>`_, Volker Theile) -* rgw: return valid Location element, PostObj (`issue#22927 <http://tracker.ceph.com/issues/22927>`_, `pr#20330 <https://github.com/ceph/ceph/pull/20330>`_, yuliyang) -* rgw: return x-amz-version-id: null when delete obj in versioning suspended bucket (`issue#35814 <http://tracker.ceph.com/issues/35814>`_, `pr#23927 <https://github.com/ceph/ceph/pull/23927>`_, yuliyang) -* rgw: Revert "rgw: lifcycle: don't reject compound rules with empty prefix" (`pr#26491 <https://github.com/ceph/ceph/pull/26491>`_, Matt Benjamin) -* rgw: rgw-admin: add "--trim-delay-ms" introduction for 'sync error trim' (`pr#23342 <https://github.com/ceph/ceph/pull/23342>`_, Enming.Zhang) -* rgw: rgw-admin: fix data sync report for master zone (`pr#23925 <https://github.com/ceph/ceph/pull/23925>`_, cfanz) -* rgw: RGWAsyncGetBucketInstanceInfo does not access coroutine memory (`issue#35812 <http://tracker.ceph.com/issues/35812>`_, `pr#23987 <https://github.com/ceph/ceph/pull/23987>`_, Casey Bodley) -* rgw: rgw/beast: drop privileges after binding ports (`issue#36041 <http://tracker.ceph.com/issues/36041>`_, `pr#24271 <https://github.com/ceph/ceph/pull/24271>`_, Paul Emmerich) -* rgw: RGWBucket::link supports tenant (`issue#22666 <http://tracker.ceph.com/issues/22666>`_, `pr#23119 <https://github.com/ceph/ceph/pull/23119>`_, Casey Bodley) -* rgw: rgw: change the way sysobj filters raw attributes, fix bucket sync state xattrs (`issue#37281 <http://tracker.ceph.com/issues/37281>`_, `pr#25123 <https://github.com/ceph/ceph/pull/25123>`_, Yehuda Sadeh) -* rgw: rgw, cls: remove cls_statelog and rgw opstate tracking (`pr#24059 <https://github.com/ceph/ceph/pull/24059>`_, Casey Bodley) -* rgw: rgw_file: deep stat handling (`issue#24915 <http://tracker.ceph.com/issues/24915>`_, `pr#23038 <https://github.com/ceph/ceph/pull/23038>`_, Matt Benjamin) -* rgw: rgw_file: not check max_objects when creating file (`pr#24846 <https://github.com/ceph/ceph/pull/24846>`_, Tao Chen) -* rgw: rgw_file: use correct secret key to check auth (`pr#26130 <https://github.com/ceph/ceph/pull/26130>`_, MinSheng Lin) -* rgw: rgw_file: user info never synced since librgw init (`pr#25406 <https://github.com/ceph/ceph/pull/25406>`_, Tao Chen) -* rgw: [rgw]: Fix help of radosgw-admin user info in case no uid (`pr#25078 <https://github.com/ceph/ceph/pull/25078>`_, Marc Koderer) -* rgw: rgwgc:process coredump in some special case (`issue#23199 <http://tracker.ceph.com/issues/23199>`_, `pr#25430 <https://github.com/ceph/ceph/pull/25430>`_, zhaokun) -* rgw: rgw multisite: async rados requests don't access coroutine memory (`issue#35543 <http://tracker.ceph.com/issues/35543>`_, `pr#23920 <https://github.com/ceph/ceph/pull/23920>`_, Casey Bodley) -* rgw: rgw multisite: bucket sync transitions back to StateInit on OP_SYNCSTOP (`issue#26895 <http://tracker.ceph.com/issues/26895>`_, `pr#23574 <https://github.com/ceph/ceph/pull/23574>`_, Casey Bodley) -* rgw: rgw multisite: enforce spawn_window for data full sync (`issue#26897 <http://tracker.ceph.com/issues/26897>`_, `pr#23534 <https://github.com/ceph/ceph/pull/23534>`_, Casey Bodley) -* rgw: rgw-multisite: fix endless loop in RGWBucketShardIncrementalSyncCR (`issue#24603 <http://tracker.ceph.com/issues/24603>`_, `pr#22660 <https://github.com/ceph/ceph/pull/22660>`_, cfanz) -* rgw: rgw multisite: incremental data sync uses truncated flag to detect end of listing (`issue#26952 <http://tracker.ceph.com/issues/26952>`_, `pr#23596 <https://github.com/ceph/ceph/pull/23596>`_, Casey Bodley) -* rgw: rgw multisite: only update last_trim marker on ENODATA (`issue#38075 <http://tracker.ceph.com/issues/38075>`_, `pr#26190 <https://github.com/ceph/ceph/pull/26190>`_, Casey Bodley) -* rgw: rgw multisite: uses local DataChangesLog to track active buckets for trim (`issue#36034 <http://tracker.ceph.com/issues/36034>`_, `pr#24221 <https://github.com/ceph/ceph/pull/24221>`_, Casey Bodley) -* rgw: rgw/pubsub: add amqp push endpoint (`pr#25866 <https://github.com/ceph/ceph/pull/25866>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: add pubsub tests (`pr#26299 <https://github.com/ceph/ceph/pull/26299>`_, Yuval Lifshitz) -* rgw: RGWRadosGetOmapKeysCR takes result by shared_ptr (`issue#21154 <http://tracker.ceph.com/issues/21154>`_, `pr#23634 <https://github.com/ceph/ceph/pull/23634>`_, Casey Bodley) -* rgw: RGWRadosGetOmapKeysCR uses 'more' flag from omap_get_keys2() (`pr#23401 <https://github.com/ceph/ceph/pull/23401>`_, Casey Bodley, Sage Weil) -* rgw: remove duplicate include header files in rgw_rados.cc (`pr#18578 <https://github.com/ceph/ceph/pull/18578>`_, Sibei Gao) -* rgw: rgw_sync: drop ENOENT error logs from mdlog (`pr#26971 <https://github.com/ceph/ceph/pull/26971>`_, Abhishek Lekshmanan) -* rgw: Robustly notify (`issue#24963 <http://tracker.ceph.com/issues/24963>`_, `pr#23100 <https://github.com/ceph/ceph/pull/23100>`_, Adam C. Emerson) -* rgw: s3: awsv4 drop special handling for x-amz-credential (`issue#26965 <http://tracker.ceph.com/issues/26965>`_, `pr#23652 <https://github.com/ceph/ceph/pull/23652>`_, Abhishek Lekshmanan) -* rgw: sanitize customer encryption keys from log output in v4 auth (`issue#37847 <http://tracker.ceph.com/issues/37847>`_, `pr#25881 <https://github.com/ceph/ceph/pull/25881>`_, Casey Bodley) -* rgw: scheduler (`pr#26008 <https://github.com/ceph/ceph/pull/26008>`_, Casey Bodley, Abhishek Lekshmanan) -* rgw: set cr state if aio_read err return in RGWCloneMetaLogCoroutine (`issue#24566 <http://tracker.ceph.com/issues/24566>`_, `pr#22617 <https://github.com/ceph/ceph/pull/22617>`_, Tianshan Qu) -* rgw: set default objecter_inflight_ops = 24576 (`issue#25109 <http://tracker.ceph.com/issues/25109>`_, `pr#23242 <https://github.com/ceph/ceph/pull/23242>`_, Matt Benjamin) -* rgw: should recode canonical_uri when caculate s3 v4 auth (`issue#23587 <http://tracker.ceph.com/issues/23587>`_, `pr#21286 <https://github.com/ceph/ceph/pull/21286>`_, yuliyang) -* rgw: some fix for es sync (`issue#23842 <http://tracker.ceph.com/issues/23842>`_, `issue#23841 <http://tracker.ceph.com/issues/23841>`_, `pr#21622 <https://github.com/ceph/ceph/pull/21622>`_, Tianshan Qu, Shang Ding) -* rgw: support admin rest api get user info through user's access-key (`pr#22790 <https://github.com/ceph/ceph/pull/22790>`_, yuliyang) -* rgw: support server-side encryption when SSL is terminated in a proxy (`issue#27221 <http://tracker.ceph.com/issues/27221>`_, `pr#24700 <https://github.com/ceph/ceph/pull/24700>`_, Casey Bodley) -* rgw: Swift SLO size_bytes member is optional (`issue#18936 <http://tracker.ceph.com/issues/18936>`_, `pr#22967 <https://github.com/ceph/ceph/pull/22967>`_, Matt Benjamin) -* rgw: Swift's TempURL can handle temp_url_expires written in ISO8601 (`issue#20795 <http://tracker.ceph.com/issues/20795>`_, `pr#16658 <https://github.com/ceph/ceph/pull/16658>`_, Radoslaw Zarzynski) -* rgw: sync module: avoid printing attrs of objects in log (`issue#37646 <http://tracker.ceph.com/issues/37646>`_, `pr#25541 <https://github.com/ceph/ceph/pull/25541>`_, Abhishek Lekshmanan) -* rgw: test bi list (`issue#24483 <http://tracker.ceph.com/issues/24483>`_, `pr#21772 <https://github.com/ceph/ceph/pull/21772>`_, Orit Wasserman) -* rgw: test/rgw: add ifdef for HAVE_BOOST_CONTEXT (`pr#25744 <https://github.com/ceph/ceph/pull/25744>`_, Casey Bodley) -* rgw,tests: qa: add test for https://github.com/ceph/ceph/pull/22790 (`pr#23143 <https://github.com/ceph/ceph/pull/23143>`_, yuliyang) -* rgw,tests: qa/rgw: add cls_lock/log/refcount/version tests to verify suite (`pr#25381 <https://github.com/ceph/ceph/pull/25381>`_, Casey Bodley) -* rgw,tests: qa/rgw: add missing import line (`pr#25298 <https://github.com/ceph/ceph/pull/25298>`_, Shilpa Jagannath) -* rgw,tests: qa/rgw: add radosgw-admin-rest task to singleton suite (`pr#23145 <https://github.com/ceph/ceph/pull/23145>`_, Casey Bodley) -* rgw,tests: qa/rgw: disable testing on ec-cache pools (`issue#23965 <http://tracker.ceph.com/issues/23965>`_, `pr#22126 <https://github.com/ceph/ceph/pull/22126>`_, Casey Bodley) -* rgw,tests: qa/rgw: fix invalid syntax error in radosgw_admin_rest.py (`issue#37440 <http://tracker.ceph.com/issues/37440>`_, `pr#25305 <https://github.com/ceph/ceph/pull/25305>`_, Casey Bodley) -* rgw,tests: qa/rgw: move ragweed upgrade test into upgrade/luminous-x (`pr#21707 <https://github.com/ceph/ceph/pull/21707>`_, Casey Bodley) -* rgw,tests: qa/rgw: override valgrind --max-threads for radosgw (`issue#25214 <http://tracker.ceph.com/issues/25214>`_, `pr#23372 <https://github.com/ceph/ceph/pull/23372>`_, Casey Bodley) -* rgw,tests: qa/rgw: patch keystone requirements.txt (`issue#23659 <http://tracker.ceph.com/issues/23659>`_, `pr#23402 <https://github.com/ceph/ceph/pull/23402>`_, Casey Bodley) -* rgw,tests: qa/rgw: reduce number of multisite log shards (`pr#24011 <https://github.com/ceph/ceph/pull/24011>`_, Casey Bodley) -* rgw,tests: qa/rgw: reorganize verify tasks (`pr#22249 <https://github.com/ceph/ceph/pull/22249>`_, Casey Bodley) -* rgw,tests: qa/rgw/tempest: either force os_type or select random distro (`pr#25996 <https://github.com/ceph/ceph/pull/25996>`_, Yehuda Sadeh) -* rgw,tests: test/rgw: fix for bucket checkpoints (`issue#24212 <http://tracker.ceph.com/issues/24212>`_, `pr#22124 <https://github.com/ceph/ceph/pull/22124>`_, Casey Bodley) -* rgw,tests: test/rgw: fix race in test_rgw_reshard_wait (`pr#26741 <https://github.com/ceph/ceph/pull/26741>`_, Casey Bodley) -* rgw,tests: test/rgw: silence -Wsign-compare warnings (`pr#26364 <https://github.com/ceph/ceph/pull/26364>`_, Kefu Chai) -* rgw: The delete markers generated by object expiration should have owner attribute (`issue#24568 <http://tracker.ceph.com/issues/24568>`_, `pr#22619 <https://github.com/ceph/ceph/pull/22619>`_, Zhang Shaowen) -* rgw: the error code returned by rgw is different from amz s3 when getting cors (`issue#26964 <http://tracker.ceph.com/issues/26964>`_, `pr#23646 <https://github.com/ceph/ceph/pull/23646>`_, ashitakasam) -* rgw: thread DoutPrefixProvider into RGW::Auth_S3::authorize (`pr#24409 <https://github.com/ceph/ceph/pull/24409>`_, Ali Maredia) -* rgw,tools: ceph-dencoder: add RGWRealm and RGWPeriod support (`pr#25057 <https://github.com/ceph/ceph/pull/25057>`_, yuliyang) -* rgw,tools: cls: refcount: add obj_refcount to ceph-dencoder (`pr#25441 <https://github.com/ceph/ceph/pull/25441>`_, Abhishek Lekshmanan) -* rgw,tools: cls/rgw: ready rgw_usage_log_entry for extraction via ceph-dencoder (`issue#34537 <http://tracker.ceph.com/issues/34537>`_, `pr#22344 <https://github.com/ceph/ceph/pull/22344>`_, Vaibhav Bhembre) -* rgw,tools: vstart: make beast as the default frontend for rgw (`pr#26566 <https://github.com/ceph/ceph/pull/26566>`_, Abhishek Lekshmanan) -* rgw,tools: vstart: rgw: disable the lc debug interval option (`pr#25487 <https://github.com/ceph/ceph/pull/25487>`_, Abhishek Lekshmanan) -* rgw,tools: vstart: set admin socket for RGW in conf (`pr#23983 <https://github.com/ceph/ceph/pull/23983>`_, Abhishek Lekshmanan) -* rgw: update cls_rgw.cc and cls_rgw_const.h (`pr#24001 <https://github.com/ceph/ceph/pull/24001>`_, yuliyang) -* rgw: update ObjectCacheInfo::time_added on overwrite (`issue#24346 <http://tracker.ceph.com/issues/24346>`_, `pr#22324 <https://github.com/ceph/ceph/pull/22324>`_, Casey Bodley) -* rgw: update --url in usage and doc (`pr#22100 <https://github.com/ceph/ceph/pull/22100>`_, Jos Collin) -* rgw: use chunked encoding to get partial results out faster (`issue#12713 <http://tracker.ceph.com/issues/12713>`_, `pr#23940 <https://github.com/ceph/ceph/pull/23940>`_, Robin H. Johnson) -* rgw: use coarse_real_clock for req_state::time (`pr#21893 <https://github.com/ceph/ceph/pull/21893>`_, Casey Bodley) -* rgw: use DoutPrefixProvider to add more context to log output (`pr#21700 <https://github.com/ceph/ceph/pull/21700>`_, Casey Bodley) -* rgw: use partial-order bucket listing in RGWLC, add configurable processing delay (`issue#23956 <http://tracker.ceph.com/issues/23956>`_, `pr#21755 <https://github.com/ceph/ceph/pull/21755>`_, Matt Benjamin) -* rgw: User Policy (`pr#21379 <https://github.com/ceph/ceph/pull/21379>`_, Pritha Srivastava) -* rgw: user stats account for resharded buckets (`pr#24595 <https://github.com/ceph/ceph/pull/24595>`_, Casey Bodley) -* rgw: warn if zone doesn't contain all zg's placement targets (`pr#22452 <https://github.com/ceph/ceph/pull/22452>`_, Abhishek Lekshmanan) -* rgw: website routing rules num limit (`pr#23429 <https://github.com/ceph/ceph/pull/23429>`_, yuliyang) -* rgw: when exclusive lock fails due existing lock, log add'l info (`issue#38171 <http://tracker.ceph.com/issues/38171>`_, `pr#26272 <https://github.com/ceph/ceph/pull/26272>`_, J. Eric Ivancich) -* rgw: zone service only provides const access to its data (`pr#25412 <https://github.com/ceph/ceph/pull/25412>`_, Casey Bodley) -* rocksdb: pick up a fix to be backward compatible (`issue#25146 <http://tracker.ceph.com/issues/25146>`_, `pr#25070 <https://github.com/ceph/ceph/pull/25070>`_, Kefu Chai) -* script: build-integration-branch: avoid Unicode error (`issue#24003 <http://tracker.ceph.com/issues/24003>`_, `pr#21807 <https://github.com/ceph/ceph/pull/21807>`_, Nathan Cutler) -* script/kubejacker: Add openSUSE based images (`pr#24055 <https://github.com/ceph/ceph/pull/24055>`_, Sebastian Wagner) -* scripts: backport-create-issue: complain about duplicates and support mimic (`issue#24071 <http://tracker.ceph.com/issues/24071>`_, `pr#21634 <https://github.com/ceph/ceph/pull/21634>`_, Nathan Cutler) -* seastar: pickup fix for segfault in POSIX stack (`pr#25861 <https://github.com/ceph/ceph/pull/25861>`_, Kefu Chai) -* spec: add missing rbd mirror bootstrap directory (`pr#24856 <https://github.com/ceph/ceph/pull/24856>`_, Sébastien Han) -* src: balance std::hex and std::dec manipulators (`pr#22287 <https://github.com/ceph/ceph/pull/22287>`_, Kefu Chai) -* src/ceph.in: dev mode: add build path to beginning of PATH, not end (`issue#24578 <http://tracker.ceph.com/issues/24578>`_, `pr#22628 <https://github.com/ceph/ceph/pull/22628>`_, Dan Mick) -* src: Eliminate new warnings in Fedora 28 (`pr#21898 <https://github.com/ceph/ceph/pull/21898>`_, Adam C. Emerson) -* test/crimson: fixes of unittest_seastar_echo (`pr#26419 <https://github.com/ceph/ceph/pull/26419>`_, Yingxin Cheng, Kefu Chai) -* test/fio: fix compiler failure (`pr#22728 <https://github.com/ceph/ceph/pull/22728>`_, Jianpeng Ma) -* test/fio: new option to control file preallocation (`pr#23410 <https://github.com/ceph/ceph/pull/23410>`_, Igor Fedotov) -* tests: Add hashinfo testing for dump command of ceph-objectstore-tool (`issue#38053 <http://tracker.ceph.com/issues/38053>`_, `pr#26158 <https://github.com/ceph/ceph/pull/26158>`_, David Zafman) -* tests: add ubuntu 18.04 dockerfile (`pr#25251 <https://github.com/ceph/ceph/pull/25251>`_, Kefu Chai) -* tests: auth, test: fix building on ARMs after the NSS -> OpenSSL transition (`pr#22129 <https://github.com/ceph/ceph/pull/22129>`_, Radoslaw Zarzynski) -* tests: ceph_kvstorebench: include <errno.h> not asm-generic/errno.h (`pr#25256 <https://github.com/ceph/ceph/pull/25256>`_, Kefu Chai) -* tests: ceph-volume: functional tests, add libvirt customization (`pr#25895 <https://github.com/ceph/ceph/pull/25895>`_, Jan Fajerski) -* tests: do not check for invalid k/m combinations (`issue#16500 <http://tracker.ceph.com/issues/16500>`_, `pr#25046 <https://github.com/ceph/ceph/pull/25046>`_, Kefu Chai) -* tests: Fixes for standalone tests (`pr#22480 <https://github.com/ceph/ceph/pull/22480>`_, David Zafman) -* tests: fix to check server_conn in MessengerTest.NameAddrTest (`pr#23931 <https://github.com/ceph/ceph/pull/23931>`_, Yingxin) -* tests: make ceph-admin-commands.sh log what it does (`issue#37089 <http://tracker.ceph.com/issues/37089>`_, `pr#25080 <https://github.com/ceph/ceph/pull/25080>`_, Nathan Cutler) -* tests: make test_ceph_argparse.py pass on py3-only systems (`issue#24816 <http://tracker.ceph.com/issues/24816>`_, `pr#22922 <https://github.com/ceph/ceph/pull/22922>`_, Nathan Cutler) -* tests: mgr/ansible: add install tox==2.9.1 (`pr#26313 <https://github.com/ceph/ceph/pull/26313>`_, Kefu Chai) -* tests: mgr/dashboard: Added additional breadcrumb and tab tests to Cluster menu (`pr#26151 <https://github.com/ceph/ceph/pull/26151>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added additional breadcrumb tests to Cluster (`pr#25010 <https://github.com/ceph/ceph/pull/25010>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added breadcrumb and tab tests to Pools menu (`pr#25572 <https://github.com/ceph/ceph/pull/25572>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added breadcrumb tests to Block menu items (`pr#25143 <https://github.com/ceph/ceph/pull/25143>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added breadcrumb tests to Filesystems menu (`pr#26592 <https://github.com/ceph/ceph/pull/26592>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added NFS Ganesha suite to QA tests (`pr#26510 <https://github.com/ceph/ceph/pull/26510>`_, Laura Paduano) -* tests: mgr/dashboard: Added tab tests to Block menu items (`pr#26243 <https://github.com/ceph/ceph/pull/26243>`_, Nathan Weinberg) -* tests: mgr/dashboard: Add Jest Runner (`pr#22031 <https://github.com/ceph/ceph/pull/22031>`_, Tiago Melo) -* tests: mgr/dashboard: Add unit test case for controller/erasure_code_profile.py (`pr#24789 <https://github.com/ceph/ceph/pull/24789>`_, Ranjitha G) -* tests: mgr/dashboard: Add unit test for frontend api services (`pr#22284 <https://github.com/ceph/ceph/pull/22284>`_, Tiago Melo) -* tests: mgr/dashboard: Add unit tests for all frontend pipes (`pr#22182 <https://github.com/ceph/ceph/pull/22182>`_, Tiago Melo) -* tests: mgr/dashboard: Add unit test to the frontend services (`pr#22244 <https://github.com/ceph/ceph/pull/22244>`_, Tiago Melo) -* tests: mgr/dashboard: Fix a broken ECP controller test (`pr#25363 <https://github.com/ceph/ceph/pull/25363>`_, Zack Cerza) -* tests: mgr/dashboard: Fix PYTHONPATH for test runner (`pr#25359 <https://github.com/ceph/ceph/pull/25359>`_, Zack Cerza) -* tests: mgr/dashboard: Improve max-line-length tslint rule (`pr#22279 <https://github.com/ceph/ceph/pull/22279>`_, Tiago Melo) -* tests: mgr/dashboard: RbdMirroringService test suite fails in dev mode (`issue#37841 <http://tracker.ceph.com/issues/37841>`_, `pr#25865 <https://github.com/ceph/ceph/pull/25865>`_, Stephan Müller) -* tests: mgr/dashboard: Small improvements for running teuthology tests (`pr#25121 <https://github.com/ceph/ceph/pull/25121>`_, Zack Cerza) -* tests: mgr/dashboard: updated API test (`pr#25653 <https://github.com/ceph/ceph/pull/25653>`_, Alfonso Martínez) -* tests: mgr/dashboard: updated API test to reflect changes in ModuleInfo (`pr#25761 <https://github.com/ceph/ceph/pull/25761>`_, Kefu Chai) -* tests: mgr/test_orchestrator: correct ceph-volume path (`issue#37773 <http://tracker.ceph.com/issues/37773>`_, `pr#25839 <https://github.com/ceph/ceph/pull/25839>`_, Kefu Chai) -* tests: object errors found in be_select_auth_object() aren't logged the same (`issue#25108 <http://tracker.ceph.com/issues/25108>`_, `pr#23376 <https://github.com/ceph/ceph/pull/23376>`_, David Zafman) -* tests: osd/OSDMap: set pg_autoscale_mode with setting from conf (`pr#25746 <https://github.com/ceph/ceph/pull/25746>`_, Kefu Chai) -* tests: os/tests: fix garbageCollection test case from store_test suite (`pr#23752 <https://github.com/ceph/ceph/pull/23752>`_, Igor Fedotov) -* tests: os/tests: silence -Wsign-compare warning (`pr#25072 <https://github.com/ceph/ceph/pull/25072>`_, Kefu Chai) -* tests: qa: add librados3 to exclude_packages for ugprade tests (`pr#25037 <https://github.com/ceph/ceph/pull/25037>`_, Kefu Chai) -* tests: qa: add test that builds example librados programs (`issue#35989 <http://tracker.ceph.com/issues/35989>`_, `issue#15100 <http://tracker.ceph.com/issues/15100>`_, `pr#23131 <https://github.com/ceph/ceph/pull/23131>`_, Nathan Cutler) -* tests: qa/ceph-ansible: Set ceph_stable_release to mimic (`issue#38231 <http://tracker.ceph.com/issues/38231>`_, `pr#26328 <https://github.com/ceph/ceph/pull/26328>`_, Brad Hubbard) -* tests: qa/distros: add openSUSE Leap 42.3 and 15.0 (`pr#24380 <https://github.com/ceph/ceph/pull/24380>`_, Nathan Cutler) -* tests: qa: Don't use sudo when moving logs (`pr#22763 <https://github.com/ceph/ceph/pull/22763>`_, David Zafman) -* tests: qa: downgrade librados2,librbd1 for thrash-old-clients tests (`issue#37618 <http://tracker.ceph.com/issues/37618>`_, `pr#25463 <https://github.com/ceph/ceph/pull/25463>`_, Kefu Chai) -* tests: qa: fix manager module paths (`pr#23637 <https://github.com/ceph/ceph/pull/23637>`_, Noah Watkins, David Zafman) -* tests/qa - fix mimic subset for nightlies (`pr#21931 <https://github.com/ceph/ceph/pull/21931>`_, Yuri Weinstein) -* tests: qa: fix test on "ceph fs set cephfs allow_new_snaps" (`pr#21829 <https://github.com/ceph/ceph/pull/21829>`_, Kefu Chai) -* tests: qa: fix upgrade tests and test_envlibrados_for_rocksdb.sh (`pr#25106 <https://github.com/ceph/ceph/pull/25106>`_, Kefu Chai) -* tests: qa: For teuthology copy logs to teuthology expected location (`pr#22702 <https://github.com/ceph/ceph/pull/22702>`_, David Zafman) -* tests: qa/mgr/dashboard: Fix type annotation error (`pr#25235 <https://github.com/ceph/ceph/pull/25235>`_, Sebastian Wagner) -* tests: qa/mon: fix cluster support for monmap bootstrap (`issue#38115 <http://tracker.ceph.com/issues/38115>`_, `pr#26205 <https://github.com/ceph/ceph/pull/26205>`_, Casey Bodley) -* tests: qa/standalone: Minor test improvements (`issue#35912 <http://tracker.ceph.com/issues/35912>`_, `pr#24018 <https://github.com/ceph/ceph/pull/24018>`_, David Zafman) -* tests: qa/standalone/scrub: When possible show side-by-side diff in addition to regular diff (`pr#22727 <https://github.com/ceph/ceph/pull/22727>`_, David Zafman) -* tests: qa/standalone: Standalone test corrections (`issue#35982 <http://tracker.ceph.com/issues/35982>`_, `pr#24088 <https://github.com/ceph/ceph/pull/24088>`_, David Zafman) -* tests: qa/suites/rados/upgrade: remove stray link (`pr#22460 <https://github.com/ceph/ceph/pull/22460>`_, Sage Weil) -* tests: qa/suites/rados/upgrade: set require-osd-release to nautilus (`issue#37432 <http://tracker.ceph.com/issues/37432>`_, `pr#25314 <https://github.com/ceph/ceph/pull/25314>`_, Kefu Chai) -* tests: qa/suites/rados/verify: remove random-distro$ (`pr#22057 <https://github.com/ceph/ceph/pull/22057>`_, Kefu Chai) -* tests: qa/suites/upgrade/mimic-x: fix rhel runs (`pr#25781 <https://github.com/ceph/ceph/pull/25781>`_, Neha Ojha) -* tests: qa/tasks/mgr: fix test_pool.py (`issue#24077 <http://tracker.ceph.com/issues/24077>`_, `pr#21943 <https://github.com/ceph/ceph/pull/21943>`_, Kefu Chai) -* tests: qa/tasks/thrashosds-health.yaml: whitelist slow requests (`issue#25104 <http://tracker.ceph.com/issues/25104>`_, `pr#23237 <https://github.com/ceph/ceph/pull/23237>`_, Neha Ojha) -* tests: qa/tasks: update mirror link for maven (`pr#23944 <https://github.com/ceph/ceph/pull/23944>`_, Vasu Kulkarni) -* tests: qa/tests: added filters to support distro tests for client-upgrade tests (`pr#22096 <https://github.com/ceph/ceph/pull/22096>`_, Yuri Weinstein) -* tests: qa/tests - added mimic-p2p suite (`pr#22726 <https://github.com/ceph/ceph/pull/22726>`_, Yuri Weinstein) -* tests: qa/tests: Added mimic runs, removed large suites (rados, rbd, etc) ru… (`pr#21827 <https://github.com/ceph/ceph/pull/21827>`_, Yuri Weinstein) -* tests: qa/tests: added "-n 7" to make sure mimic-x runs on built master branch (`pr#25038 <https://github.com/ceph/ceph/pull/25038>`_, Yuri Weinstein) -* tests: qa/tests: added rhel 7.6 (`pr#25919 <https://github.com/ceph/ceph/pull/25919>`_, Yuri Weinstein) -* tests: qa/tests: fix volume size when running in ovh (`pr#21961 <https://github.com/ceph/ceph/pull/21961>`_, Vasu Kulkarni) -* tests: qa/tests: Move ceph-ansible tests to ansible version 2.7 (`issue#37973 <http://tracker.ceph.com/issues/37973>`_, `pr#26068 <https://github.com/ceph/ceph/pull/26068>`_, Brad Hubbard) -* tests: qa/tests: remove ceph-disk tests from ceph-deploy and default all tests to use ceph-volume (`pr#22921 <https://github.com/ceph/ceph/pull/22921>`_, Vasu Kulkarni) -* tests: qa/upgrade: cleanup for nautilus (`pr#23305 <https://github.com/ceph/ceph/pull/23305>`_, Nathan Cutler) -* tests: qa: use $TESTDIR for testing mkfs (`pr#22246 <https://github.com/ceph/ceph/pull/22246>`_, Kefu Chai) -* tests: qa: wait longer for osd to flush pg stats (`issue#24321 <http://tracker.ceph.com/issues/24321>`_, `pr#22275 <https://github.com/ceph/ceph/pull/22275>`_, Kefu Chai) -* tests: qa/workunits/ceph-disk: --no-mon-config (`pr#21942 <https://github.com/ceph/ceph/pull/21942>`_, Kefu Chai) -* tests: qa/workunits/mon/test_mon_config_key.py: bump up the size limit (`issue#36260 <http://tracker.ceph.com/issues/36260>`_, `pr#24340 <https://github.com/ceph/ceph/pull/24340>`_, Kefu Chai) -* tests: qa/workunits/rados/test_envlibrados_for_rocksdb: install g++ not g++-4.7 (`pr#22103 <https://github.com/ceph/ceph/pull/22103>`_, Kefu Chai) -* tests: qa/workunits/rados/test_librados_build.sh: grab files from explicit git branch (`pr#25268 <https://github.com/ceph/ceph/pull/25268>`_, Nathan Cutler) -* tests: run-make-check: increase fs.aio-max-nr to 1048576 (`pr#23689 <https://github.com/ceph/ceph/pull/23689>`_, Kefu Chai) -* tests: test,common: silence GCC warnings (`pr#23692 <https://github.com/ceph/ceph/pull/23692>`_, Kefu Chai) -* tests: test/crimson: add dummy_auth to test_async_echo (`pr#26783 <https://github.com/ceph/ceph/pull/26783>`_, Yingxin Cheng) -* tests: test/crimson: fix build failure of test_alien_echo (`pr#26308 <https://github.com/ceph/ceph/pull/26308>`_, chunmei Liu) -* tests: test/crimson: fix FTBFS of unittest_seastar_perfcounters on arm64 (`pr#25647 <https://github.com/ceph/ceph/pull/25647>`_, Kefu Chai) -* tests: test/crimson: split async-msgr out of alien_echo (`pr#26620 <https://github.com/ceph/ceph/pull/26620>`_, Yingxin Cheng) -* tests: test/dashboard: fix segfault when importing dm.xmlsec.binding (`issue#37081 <http://tracker.ceph.com/issues/37081>`_, `pr#25139 <https://github.com/ceph/ceph/pull/25139>`_, Kefu Chai) -* tests: test: Disable duplicate request command test during scrub testing (`pr#25675 <https://github.com/ceph/ceph/pull/25675>`_, David Zafman) -* tests: test/docker-test-helper.sh: move "cp .git/HEAD" out of loop (`pr#22978 <https://github.com/ceph/ceph/pull/22978>`_, Kefu Chai) -* tests: test/encoding: Fix typo in encoding/types.h file (`pr#22332 <https://github.com/ceph/ceph/pull/22332>`_, TommyLike) -* tests: test/fio: pass config params to object store in a different manner (`pr#23267 <https://github.com/ceph/ceph/pull/23267>`_, Igor Fedotov) -* tests: test: fix compile error in test/crimson/test_config.cc (`pr#23724 <https://github.com/ceph/ceph/pull/23724>`_, Yingxin) -* tests: test: fix libc++ crash in Log.GarbleRecovery (`pr#25135 <https://github.com/ceph/ceph/pull/25135>`_, Casey Bodley) -* tests: test/librados: fix LibRadosList.ListObjectsNS (`pr#22771 <https://github.com/ceph/ceph/pull/22771>`_, Kefu Chai) -* tests: test: Limit loops waiting for force-backfill/force-recovery to happen (`issue#38309 <http://tracker.ceph.com/issues/38309>`_, `pr#26416 <https://github.com/ceph/ceph/pull/26416>`_, David Zafman) -* tests: test: Need to escape parens in log-whitelist for grep (`pr#22074 <https://github.com/ceph/ceph/pull/22074>`_, David Zafman) -* tests: test: osd-backfill-stats.sh Fix check of multi backfill OSDs, skip re… (`pr#26330 <https://github.com/ceph/ceph/pull/26330>`_, David Zafman) -* tests: test/pybind/test_rados.py: collect output in stdout for "bench" cmd (`pr#21957 <https://github.com/ceph/ceph/pull/21957>`_, Kefu Chai) -* tests: test: run-standalone.sh: point LD_LIBRARY_PATH to $(pwd)/lib (`issue#38262 <http://tracker.ceph.com/issues/38262>`_, `pr#26371 <https://github.com/ceph/ceph/pull/26371>`_, David Zafman) -* tests: tests/qa: trying $ distro mix (`pr#21895 <https://github.com/ceph/ceph/pull/21895>`_, Yuri Weinstein) -* tests: test: Start using GNU awk and fix archiving directory (`pr#23955 <https://github.com/ceph/ceph/pull/23955>`_, Willem Jan Withagen) -* tests: test/strtol: add test case for parsing hex numbers (`pr#21582 <https://github.com/ceph/ceph/pull/21582>`_, Jan Fajerski) -* tests: test: suppress core dumping in there tests as well (`pr#25311 <https://github.com/ceph/ceph/pull/25311>`_, Willem Jan Withagen) -* tests: test: switch to GNU sed on FreeBSD (`pr#26318 <https://github.com/ceph/ceph/pull/26318>`_, Willem Jan Withagen) -* tests: test: test_get_timeout_delays() fix (`pr#22837 <https://github.com/ceph/ceph/pull/22837>`_, David Zafman) -* tests: test: Use a file that should be on all OSes (`pr#22428 <https://github.com/ceph/ceph/pull/22428>`_, David Zafman) -* tests: test: Use a grep pattern that works across releases (`issue#35845 <http://tracker.ceph.com/issues/35845>`_, `pr#24013 <https://github.com/ceph/ceph/pull/24013>`_, David Zafman) -* tests: test: Use pids instead of jobspecs which were wrong (`issue#27056 <http://tracker.ceph.com/issues/27056>`_, `pr#23695 <https://github.com/ceph/ceph/pull/23695>`_, David Zafman) -* tests: test: wait_for_pg_stats() should do another check after last 13 secon… (`pr#22198 <https://github.com/ceph/ceph/pull/22198>`_, David Zafman) -* tests: test: Whitelist corrections (`pr#22164 <https://github.com/ceph/ceph/pull/22164>`_, David Zafman) -* tests: test: write log file to current directory (`issue#36737 <http://tracker.ceph.com/issues/36737>`_, `pr#25704 <https://github.com/ceph/ceph/pull/25704>`_, Kefu Chai) -* tests,tools: ceph-objectstore-tool: Dump hashinfo (`issue#37597 <http://tracker.ceph.com/issues/37597>`_, `pr#25483 <https://github.com/ceph/ceph/pull/25483>`_, David Zafman) -* tests: update Dockerfile to support fc-29 (`pr#26311 <https://github.com/ceph/ceph/pull/26311>`_, Kefu Chai) -* tests: upgrade/luminous-x: fix order of final-workload directory (`pr#23162 <https://github.com/ceph/ceph/pull/23162>`_, Nathan Cutler) -* tests: upgrade/luminous-x: whitelist REQUEST_SLOW for rados_mon_thrash (`issue#25051 <http://tracker.ceph.com/issues/25051>`_, `pr#23160 <https://github.com/ceph/ceph/pull/23160>`_, Nathan Cutler) -* tests: Wip 38027 38195: osd/osd-backfill-space.sh fails (`issue#38027 <http://tracker.ceph.com/issues/38027>`_, `issue#38195 <http://tracker.ceph.com/issues/38195>`_, `pr#26290 <https://github.com/ceph/ceph/pull/26290>`_, David Zafman) -* tools: Add clear-data-digest command to objectstore tool (`pr#25403 <https://github.com/ceph/ceph/pull/25403>`_, Li Yichao) -* tools: add offset-align option to "rados" load-gen (`pr#20683 <https://github.com/ceph/ceph/pull/20683>`_, Zengran Zhang) -* tools: backport-create-issue: rate-limit to avoid seeming like a spammer (`pr#24243 <https://github.com/ceph/ceph/pull/24243>`_, Nathan Cutler) -* tools: ceph-menv: mrun shell environment (`pr#22132 <https://github.com/ceph/ceph/pull/22132>`_, Yehuda Sadeh) -* tools: ceph-objectstore-tool: Allow target level as first positional argument (`issue#35846 <http://tracker.ceph.com/issues/35846>`_, `pr#23989 <https://github.com/ceph/ceph/pull/23989>`_, David Zafman) -* tools: correct the description of Allowed options in osdomap tool (`pr#23488 <https://github.com/ceph/ceph/pull/23488>`_, xiaomanh) -* tools, mgr: silence clang warnings (`pr#23430 <https://github.com/ceph/ceph/pull/23430>`_, Kefu Chai) -* tools: mstop.sh allow kill -9 after failing to kill procs (`pr#26680 <https://github.com/ceph/ceph/pull/26680>`_, Yuval Lifshitz) -* tools/rados: fix memory leak in error path (`pr#25410 <https://github.com/ceph/ceph/pull/25410>`_, Li Wang) -* tools: script/kubejacker: include cls libs (`pr#23569 <https://github.com/ceph/ceph/pull/23569>`_, John Spray) -* tools: script: new ceph-backport.sh script (`pr#22875 <https://github.com/ceph/ceph/pull/22875>`_, Nathan Cutler) -* tools: tools: ceph-authtool: report correct number of caps when creating keyring (`pr#23304 <https://github.com/ceph/ceph/pull/23304>`_, Nathan Cutler) -* tools: tools/ceph_kvstore_tool: do not open rocksdb when repairing it (`pr#25108 <https://github.com/ceph/ceph/pull/25108>`_, Kefu Chai) -* tools: tools/ceph_kvstore_tool: extract StoreTool into kvstore_tool.cc (`pr#26041 <https://github.com/ceph/ceph/pull/26041>`_, Kefu Chai) -* tools: tools/ceph_kvstore_tool: Move summary output to print_summary (`pr#26666 <https://github.com/ceph/ceph/pull/26666>`_, Brad Hubbard) -* tools: tools/rados: allow list objects in a specific pg in a pool (`pr#19041 <https://github.com/ceph/ceph/pull/19041>`_, Li Wang) -* tools: tools/rados: always call rados.shutdown() before exit() (`issue#36732 <http://tracker.ceph.com/issues/36732>`_, `pr#24990 <https://github.com/ceph/ceph/pull/24990>`_, Li Wang) -* tools: tools/rados: correct the read offset of bench (`pr#23667 <https://github.com/ceph/ceph/pull/23667>`_, Xiaofei Cui) -* tools: tools/rados: fix the unit of target-throughput (`pr#23683 <https://github.com/ceph/ceph/pull/23683>`_, Xiaofei Cui) -* vstart: disable dashboard when rbd not built (`pr#23336 <https://github.com/ceph/ceph/pull/23336>`_, Noah Watkins) -* vstart.sh: fix params generation for monmaptool (`issue#38174 <http://tracker.ceph.com/issues/38174>`_, `pr#26273 <https://github.com/ceph/ceph/pull/26273>`_, Yehuda Sadeh) diff --git a/doc/releases/octopus.rst b/doc/releases/octopus.rst deleted file mode 100644 index eb2e7d779..000000000 --- a/doc/releases/octopus.rst +++ /dev/null @@ -1,6137 +0,0 @@ -======= -Octopus -======= - -Octopus is the 15th stable release of Ceph. It is named after an -order of 8-limbed cephalopods. - -v15.2.17 Octopus -================ - -This is the 17th and final backport release in the Octopus series. We recommend -all users update to this release. - -Notable Changes ---------------- - -* Octopus modified the SnapMapper key format from - <LEGACY_MAPPING_PREFIX><snapid>_<shardid>_<hobject_t::to_str()> - to - <MAPPING_PREFIX><pool>_<snapid>_<shardid>_<hobject_t::to_str()> - When this change was introduced, 94ebe0e also introduced a conversion - with a crucial bug which essentially destroyed legacy keys by mapping them - to - <MAPPING_PREFIX><poolid>_<snapid>_ - without the object-unique suffix. The conversion is fixed in this release. - Relevant tracker: https://tracker.ceph.com/issues/5614 - -* The ability to blend all RBD pools together into a single view by invoking - "rbd perf image iostat" or "rbd perf image iotop" commands without any options - or positional arguments is resurrected. Such invocations accidentally became - limited to just the default pool (``rbd_default_pool``) in v15.2.14. - -* Users who were running OpenStack Manila to export native CephFS, who - upgraded their Ceph cluster from Nautilus (or earlier) to a later - major version, were vulnerable to an attack by malicious users - (:ref:`CVE-2022-0670`). The vulnerability allowed users to obtain - access to arbitrary portions of the CephFS filesystem hierarchy, - instead of being properly restricted to their own subvolumes. The - vulnerability is due to a bug in the "volumes" plugin in Ceph Manager. - This plugin is responsible for managing Ceph File System subvolumes - which are used by OpenStack Manila services as a way to provide shares - to Manila users. - - With this release, the vulnerability is fixed. Administrators who are - concerned they may have been impacted should audit the CephX keys in - their cluster for proper path restrictions. - - Again, this vulnerability only impacts OpenStack Manila clusters which - provided native CephFS access to their users. - -Changelog ---------------- - -* admin/doc-requirements: bump sphinx to 4.4.0 (`pr#45972 <https://github.com/ceph/ceph/pull/45972>`_, Kefu Chai) -* backport qemu-iotests fixup for centos stream 8 (`pr#45206 <https://github.com/ceph/ceph/pull/45206>`_, Ken Dreyer, Ilya Dryomov) -* Catch exception if thrown by __generate_command_map() (`pr#45891 <https://github.com/ceph/ceph/pull/45891>`_, Nikhil Kshirsagar) -* ceph-volume: abort when passed devices have partitions (`pr#45147 <https://github.com/ceph/ceph/pull/45147>`_, Guillaume Abrioux) -* ceph-volume: fix error 'KeyError' with inventory (`pr#44883 <https://github.com/ceph/ceph/pull/44883>`_, Guillaume Abrioux) -* ceph-volume: fix tags dict output in `lvm list` (`pr#44768 <https://github.com/ceph/ceph/pull/44768>`_, Guillaume Abrioux) -* ceph-volume: zap osds in rollback_osd() (`pr#44770 <https://github.com/ceph/ceph/pull/44770>`_, Guillaume Abrioux) -* ceph/admin: s/master/main (`pr#46219 <https://github.com/ceph/ceph/pull/46219>`_, Zac Dover) -* cephadm: infer the default container image during pull (`pr#45570 <https://github.com/ceph/ceph/pull/45570>`_, Michael Fritch) -* cephadm: preserve `authorized_keys` file during upgrade (`pr#45356 <https://github.com/ceph/ceph/pull/45356>`_, Michael Fritch) -* client: do not dump mds twice in Inode::dump() (`pr#45162 <https://github.com/ceph/ceph/pull/45162>`_, Xue Yantao) -* cls/rbd: GroupSnapshotNamespace comparator violates ordering rules (`pr#45076 <https://github.com/ceph/ceph/pull/45076>`_, Ilya Dryomov) -* cls/rgw: rgw_dir_suggest_changes detects race with completion (`pr#45902 <https://github.com/ceph/ceph/pull/45902>`_, Casey Bodley) -* cmake: pass RTE_DEVEL_BUILD=n when building dpdk (`pr#45261 <https://github.com/ceph/ceph/pull/45261>`_, Kefu Chai) -* common: avoid pthread_mutex_unlock twice (`pr#45465 <https://github.com/ceph/ceph/pull/45465>`_, Dai Zhiwei) -* common: replace BitVector::NoInitAllocator with wrapper struct (`pr#45180 <https://github.com/ceph/ceph/pull/45180>`_, Casey Bodley) -* crush: cancel upmaps with up set size != pool size (`pr#43416 <https://github.com/ceph/ceph/pull/43416>`_, huangjun) -* doc/dev: update basic-workflow.rst (`pr#46308 <https://github.com/ceph/ceph/pull/46308>`_, Zac Dover) -* doc/start: s/3/three/ in intro.rst (`pr#46328 <https://github.com/ceph/ceph/pull/46328>`_, Zac Dover) -* doc/start: update "memory" in hardware-recs.rst (`pr#46451 <https://github.com/ceph/ceph/pull/46451>`_, Zac Dover) -* Fixes for make check (`pr#46230 <https://github.com/ceph/ceph/pull/46230>`_, Kefu Chai, Adam C. Emerson) -* krbd: return error when no initial monitor address found (`pr#45004 <https://github.com/ceph/ceph/pull/45004>`_, Burt Holzman) -* librados: check latest osdmap on ENOENT in pool_reverse_lookup() (`pr#45587 <https://github.com/ceph/ceph/pull/45587>`_, Ilya Dryomov) -* librbd: bail from schedule_request_lock() if already lock owner (`pr#47160 <https://github.com/ceph/ceph/pull/47160>`_, Christopher Hoffman) -* librbd: fix use-after-free on ictx in list_descendants() (`pr#45000 <https://github.com/ceph/ceph/pull/45000>`_, Ilya Dryomov, Wang ShuaiChao) -* librbd: honor FUA op flag for write_same() in write-around cache (`pr#44992 <https://github.com/ceph/ceph/pull/44992>`_, Ilya Dryomov) -* librbd: readv/writev fix iovecs length computation overflow (`pr#45560 <https://github.com/ceph/ceph/pull/45560>`_, Jonas Pfefferle) -* librbd: track complete async operation requests (`pr#45019 <https://github.com/ceph/ceph/pull/45019>`_, Mykola Golub) -* librbd: unlink newest mirror snapshot when at capacity, bump capacity (`pr#46592 <https://github.com/ceph/ceph/pull/46592>`_, Ilya Dryomov) -* librbd: update progress for non-existent objects on deep-copy (`pr#46912 <https://github.com/ceph/ceph/pull/46912>`_, Ilya Dryomov) -* librgw: make rgw file handle versioned (`pr#45496 <https://github.com/ceph/ceph/pull/45496>`_, Xuehan Xu) -* mds: add heartbeat_reset() in start_files_to_reover() (`pr#45157 <https://github.com/ceph/ceph/pull/45157>`_, Yongseok Oh) -* mds: check rejoin_ack_gather before enter rejoin_gather_finish (`pr#45161 <https://github.com/ceph/ceph/pull/45161>`_, chencan) -* mds: directly return just after responding the link request (`pr#44624 <https://github.com/ceph/ceph/pull/44624>`_, Xiubo Li) -* mds: ensure that we send the btime in cap messages (`pr#45164 <https://github.com/ceph/ceph/pull/45164>`_, Jeff Layton) -* mds: fix possible mds_lock not locked assert (`pr#45156 <https://github.com/ceph/ceph/pull/45156>`_, Xiubo Li) -* mds: fix seg fault in expire_recursive (`pr#45055 <https://github.com/ceph/ceph/pull/45055>`_, 胡玮文) -* mds: ignore unknown client op when tracking op latency (`pr#44976 <https://github.com/ceph/ceph/pull/44976>`_, Venky Shankar) -* mds: mds_oft_prefetch_dirfrags default to false (`pr#45015 <https://github.com/ceph/ceph/pull/45015>`_, Dan van der Ster) -* mds: progress the recover queue immediately after the inode is enqueued (`pr#45158 <https://github.com/ceph/ceph/pull/45158>`_, "Yan, Zheng", Xiubo Li) -* mds: reset the return value for heap command (`pr#45155 <https://github.com/ceph/ceph/pull/45155>`_, Xiubo Li) -* mds: skip directory size checks for reintegration (`pr#44668 <https://github.com/ceph/ceph/pull/44668>`_, Patrick Donnelly) -* mgr/cephadm: fix and improve osd draining (`pr#46645 <https://github.com/ceph/ceph/pull/46645>`_, Sage Weil) -* mgr/cephadm: try to get FQDN for active instance (`pr#46787 <https://github.com/ceph/ceph/pull/46787>`_, Tatjana Dehler) -* mgr/cephadm: try to get FQDN for configuration files (`pr#45621 <https://github.com/ceph/ceph/pull/45621>`_, Tatjana Dehler) -* mgr/dashboard: dashboard turns telemetry off when configuring report (`pr#45110 <https://github.com/ceph/ceph/pull/45110>`_, Sarthak0702, Aaryan Porwal) -* mgr/dashboard: fix "NullInjectorError: No provider for I18n (`pr#45613 <https://github.com/ceph/ceph/pull/45613>`_, Nizamudeen A) -* mgr/dashboard: fix Grafana OSD/host panels (`pr#44924 <https://github.com/ceph/ceph/pull/44924>`_, Patrick Seidensal) -* mgr/dashboard: Notification banners at the top of the UI have fixed height (`pr#44763 <https://github.com/ceph/ceph/pull/44763>`_, Waad AlKhoury) -* mgr/dashboard: Table columns hiding fix (`issue#51119 <http://tracker.ceph.com/issues/51119>`_, `pr#45726 <https://github.com/ceph/ceph/pull/45726>`_, Daniel Persson) -* mgr/devicehealth: fix missing timezone from time delta calculation (`pr#45287 <https://github.com/ceph/ceph/pull/45287>`_, Yaarit Hatuka) -* mgr/prometheus: Added `avail_raw` field for Pools DF Prometheus mgr module (`pr#45238 <https://github.com/ceph/ceph/pull/45238>`_, Konstantin Shalygin) -* mgr/rbd_support: cast pool_id from int to str when collecting LevelSpec (`pr#45530 <https://github.com/ceph/ceph/pull/45530>`_, Ilya Dryomov) -* mgr/rbd_support: fix schedule remove (`pr#45006 <https://github.com/ceph/ceph/pull/45006>`_, Sunny Kumar) -* mgr/telemetry: fix waiting for mgr to warm up (`pr#45772 <https://github.com/ceph/ceph/pull/45772>`_, Yaarit Hatuka) -* mgr/volumes: A few volumes plugin backport (`issue#51271 <http://tracker.ceph.com/issues/51271>`_, `pr#44800 <https://github.com/ceph/ceph/pull/44800>`_, Kotresh HR, Venky Shankar, Jan Fajerski) -* mgr/volumes: Fix permission during subvol creation with mode (`pr#43224 <https://github.com/ceph/ceph/pull/43224>`_, Kotresh HR) -* mgr/volumes: Fix subvolume discover during upgrade (`pr#47236 <https://github.com/ceph/ceph/pull/47236>`_, Kotresh HR) -* mgr: limit changes to pg_num (`pr#44541 <https://github.com/ceph/ceph/pull/44541>`_, Sage Weil) -* mirror snapshot schedule and trash purge schedule fixes (`pr#46777 <https://github.com/ceph/ceph/pull/46777>`_, Ilya Dryomov) -* mon/MonCommands.h: fix target_size_ratio range (`pr#45398 <https://github.com/ceph/ceph/pull/45398>`_, Kamoltat) -* mon: Abort device health when device not found (`pr#44960 <https://github.com/ceph/ceph/pull/44960>`_, Benoît Knecht) -* octopus rgw: on FIPS enabled, fix segfault performing s3 multipart PUT (`pr#46701 <https://github.com/ceph/ceph/pull/46701>`_, Mark Kogan) -* octopus rgw: under fips, set flag to allow md5 in select rgw ops (`pr#44806 <https://github.com/ceph/ceph/pull/44806>`_, Mark Kogan) -* os/bluestore: Always update the cursor position in AVL near-fit search (`pr#46687 <https://github.com/ceph/ceph/pull/46687>`_, Mark Nelson) -* osd/OSD: Log aggregated slow ops detail to cluster logs (`pr#45154 <https://github.com/ceph/ceph/pull/45154>`_, Prashant D) -* osd/OSD: osd_fast_shutdown_notify_mon not quite right (`pr#45655 <https://github.com/ceph/ceph/pull/45655>`_, Nitzan Mordechai, Satoru Takeuchi) -* osd/OSDMap: Add health warning if 'require-osd-release' != current release (`pr#44260 <https://github.com/ceph/ceph/pull/44260>`_, Sridhar Seshasayee) -* osd/OSDMapMapping: fix spurious threadpool timeout errors (`pr#44546 <https://github.com/ceph/ceph/pull/44546>`_, Sage Weil) -* osd/PGLog.cc: Trim duplicates by number of entries (`pr#46253 <https://github.com/ceph/ceph/pull/46253>`_, Nitzan Mordechai) -* osd/PrimaryLogPG.cc: CEPH_OSD_OP_OMAPRMKEYRANGE should mark omap dirty (`pr#45593 <https://github.com/ceph/ceph/pull/45593>`_, Neha Ojha) -* osd/SnapMapper: fix pacific legacy key conversion and introduce test (`pr#47108 <https://github.com/ceph/ceph/pull/47108>`_, Manuel Lausch, Matan Breizman) -* osd: log the number of 'dups' entries in a PG Log (`pr#46609 <https://github.com/ceph/ceph/pull/46609>`_, Radoslaw Zarzynski) -* osd: require osd_pg_max_concurrent_snap_trims > 0 (`pr#45324 <https://github.com/ceph/ceph/pull/45324>`_, Dan van der Ster) -* qa/rgw: add failing tempest test to blocklist (`pr#45437 <https://github.com/ceph/ceph/pull/45437>`_, Casey Bodley) -* qa/rgw: update apache-maven mirror for rgw/hadoop-s3a (`pr#45446 <https://github.com/ceph/ceph/pull/45446>`_, Casey Bodley) -* qa/suites/rados/thrash-erasure-code-big/thrashers: add `osd max backfills` setting to mapgap and pggrow (`pr#46392 <https://github.com/ceph/ceph/pull/46392>`_, Laura Flores) -* qa/suites: clean up client-upgrade-octopus-pacific test (`pr#45334 <https://github.com/ceph/ceph/pull/45334>`_, Ilya Dryomov) -* qa/tasks/qemu: make sure block-rbd.so is installed (`pr#45071 <https://github.com/ceph/ceph/pull/45071>`_, Ilya Dryomov) -* qa/tasks: teuthology octopus backport (`pr#46149 <https://github.com/ceph/ceph/pull/46149>`_, Kefu Chai, Shraddha Agrawal) -* qa/tests: added upgrade-clients/client-upgrade-octopus-quincy tests (`pr#45282 <https://github.com/ceph/ceph/pull/45282>`_, Yuri Weinstein) -* qa: always format the pgid in hex (`pr#45159 <https://github.com/ceph/ceph/pull/45159>`_, Xiubo Li) -* qa: check mounts attribute in ctx (`pr#45633 <https://github.com/ceph/ceph/pull/45633>`_, Jos Collin) -* qa: remove .teuthology_branch file (`pr#46489 <https://github.com/ceph/ceph/pull/46489>`_, Jeff Layton) -* radosgw-admin: 'reshard list' doesn't log ENOENT errors (`pr#45452 <https://github.com/ceph/ceph/pull/45452>`_, Casey Bodley) -* radosgw-admin: 'sync status' is not behind if there are no mdlog entries (`pr#45443 <https://github.com/ceph/ceph/pull/45443>`_, Casey Bodley) -* radosgw-admin: skip GC init on read-only admin ops (`pr#45423 <https://github.com/ceph/ceph/pull/45423>`_, Mark Kogan) -* rbd-fuse: librados will filter out -r option from command-line (`pr#46952 <https://github.com/ceph/ceph/pull/46952>`_, wanwencong) -* rbd-mirror: don't prune non-primary snapshot when restarting delta sync (`pr#46589 <https://github.com/ceph/ceph/pull/46589>`_, Ilya Dryomov) -* rbd-mirror: generally skip replay/resync if remote image is not primary (`pr#46812 <https://github.com/ceph/ceph/pull/46812>`_, Ilya Dryomov) -* rbd-mirror: make mirror properly detect pool replayer needs restart (`pr#45169 <https://github.com/ceph/ceph/pull/45169>`_, Mykola Golub) -* rbd-mirror: remove bogus completed_non_primary_snapshots_exist check (`pr#47117 <https://github.com/ceph/ceph/pull/47117>`_, Ilya Dryomov) -* rbd-mirror: synchronize with in-flight stop in ImageReplayer::stop() (`pr#45177 <https://github.com/ceph/ceph/pull/45177>`_, Ilya Dryomov) -* rbd: don't default empty pool name unless namespace is specified (`pr#47142 <https://github.com/ceph/ceph/pull/47142>`_, Ilya Dryomov) -* rbd: mark optional positional arguments as such in help output (`pr#45009 <https://github.com/ceph/ceph/pull/45009>`_, Ilya Dryomov, Jason Dillaman) -* rbd: recognize rxbounce map option (`pr#45001 <https://github.com/ceph/ceph/pull/45001>`_, Ilya Dryomov) -* Revert "rocksdb: do not use non-zero recycle_log_file_num setting" (`pr#47053 <https://github.com/ceph/ceph/pull/47053>`_, Laura Flores) -* revert of #46253, add tools: ceph-objectstore-tool is able to trim solely pg log dups' entries (`pr#46611 <https://github.com/ceph/ceph/pull/46611>`_, Radosław Zarzyński, Radoslaw Zarzynski) -* rgw/amqp: add default case to silence compiler warning (`pr#45479 <https://github.com/ceph/ceph/pull/45479>`_, Casey Bodley) -* rgw: add the condition of lock mode conversion to PutObjRentention (`pr#45441 <https://github.com/ceph/ceph/pull/45441>`_, wangzhong) -* rgw: bucket chown bad memory usage (`pr#45492 <https://github.com/ceph/ceph/pull/45492>`_, Mohammad Fatemipour) -* rgw: change order of xml elements in ListRoles response (`pr#45449 <https://github.com/ceph/ceph/pull/45449>`_, Casey Bodley) -* rgw: cls_bucket_list_unordered() might return one redundent entry every time is_truncated is true (`pr#45458 <https://github.com/ceph/ceph/pull/45458>`_, Peng Zhang) -* rgw: document rgw_lc_debug_interval configuration option (`pr#45454 <https://github.com/ceph/ceph/pull/45454>`_, J. Eric Ivancich) -* rgw: document S3 bucket replication support (`pr#45485 <https://github.com/ceph/ceph/pull/45485>`_, Matt Benjamin) -* rgw: Dump Object Lock Retain Date as ISO 8601 (`pr#43656 <https://github.com/ceph/ceph/pull/43656>`_, Preben Berg) -* rgw: fix leak of RGWBucketList memory (octopus only) (`pr#45283 <https://github.com/ceph/ceph/pull/45283>`_, Casey Bodley) -* rgw: fix md5 not match for RGWBulkUploadOp upload when enable rgw com… (`pr#45433 <https://github.com/ceph/ceph/pull/45433>`_, yuliyang_yewu) -* rgw: fix segfault in UserAsyncRefreshHandler::init_fetch (`pr#45412 <https://github.com/ceph/ceph/pull/45412>`_, Cory Snyder) -* rgw: have "bucket check --fix" fix pool ids correctly (`pr#45456 <https://github.com/ceph/ceph/pull/45456>`_, J. Eric Ivancich) -* rgw: init bucket index only if putting bucket instance info succeeds (`pr#45481 <https://github.com/ceph/ceph/pull/45481>`_, Huber-ming) -* rgw: parse tenant name out of rgwx-bucket-instance (`pr#45523 <https://github.com/ceph/ceph/pull/45523>`_, Casey Bodley) -* rgw: resolve empty ordered bucket listing results w/ CLS filtering \*and\* bucket index list produces incorrect result when non-ascii entries (`pr#45088 <https://github.com/ceph/ceph/pull/45088>`_, J. Eric Ivancich) -* rgw: return OK on consecutive complete-multipart reqs (`pr#45488 <https://github.com/ceph/ceph/pull/45488>`_, Mark Kogan) -* rgw: RGWCoroutine::set_sleeping() checks for null stack (`pr#46042 <https://github.com/ceph/ceph/pull/46042>`_, Or Friedmann, Casey Bodley) -* rgw: RGWPostObj::execute() may lost data (`pr#45503 <https://github.com/ceph/ceph/pull/45503>`_, Lei Zhang) -* rgw: url_decode before parsing copysource in copyobject (`issue#43259 <http://tracker.ceph.com/issues/43259>`_, `pr#45431 <https://github.com/ceph/ceph/pull/45431>`_, Paul Reece) -* rgw:When KMS encryption is used and the key does not exist, we should… (`pr#45462 <https://github.com/ceph/ceph/pull/45462>`_, wangyingbin) -* rgwlc: fix segfault resharding during lc (`pr#46745 <https://github.com/ceph/ceph/pull/46745>`_, Mark Kogan) -* rocksdb: do not use non-zero recycle_log_file_num setting (`pr#45040 <https://github.com/ceph/ceph/pull/45040>`_, Igor Fedotov) -* src/rgw: Fix for malformed url (`pr#45460 <https://github.com/ceph/ceph/pull/45460>`_, Kalpesh Pandya) -* test/bufferlist: ensure rebuild_aligned_size_and_memory() always rebuilds (`pr#46216 <https://github.com/ceph/ceph/pull/46216>`_, Radoslaw Zarzynski) -* test/librbd: add test to verify diff_iterate size (`pr#45554 <https://github.com/ceph/ceph/pull/45554>`_, Christopher Hoffman) -* test: fix wrong alarm (HitSetWrite) (`pr#45320 <https://github.com/ceph/ceph/pull/45320>`_, Myoungwon Oh) -* tools/rbd: expand where option rbd_default_map_options can be set (`pr#45182 <https://github.com/ceph/ceph/pull/45182>`_, Christopher Hoffman, Ilya Dryomov) - -v15.2.16 Octopus -================ - -This is the 16th backport release in the Octopus series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* Fix in the read lease logic to prevent PGs from going into WAIT state - after OSD restart. - -* Several bug fixes in BlueStore, including a fix for object listing bug, which - could cause stat mismatch scrub errors. - -Changelog ---------- - -* Fix data corruption in bluefs truncate() (`pr#44860 <https://github.com/ceph/ceph/pull/44860>`_, Adam Kupczyk) -* Octopus: mds: just respawn mds daemon when osd op requests timeout (`pr#43785 <https://github.com/ceph/ceph/pull/43785>`_, Xiubo Li) -* admin/doc-requirements.txt: pin Sphinx at 3.5.4 (`pr#43758 <https://github.com/ceph/ceph/pull/43758>`_, Casey Bodley, Kefu Chai, Nizamudeen A, Varsha Rao) -* backport diff-iterate include_parent tests (`pr#44673 <https://github.com/ceph/ceph/pull/44673>`_, Ilya Dryomov) -* ceph-volume: `get_first_lv()` refactor (`pr#43959 <https://github.com/ceph/ceph/pull/43959>`_, Guillaume Abrioux) -* ceph-volume: don't use MultiLogger in find_executable_on_host() (`pr#44766 <https://github.com/ceph/ceph/pull/44766>`_, Guillaume Abrioux) -* ceph-volume: fix a typo causing AttributeError (`pr#43950 <https://github.com/ceph/ceph/pull/43950>`_, Taha Jahangir) -* ceph-volume: fix bug with miscalculation of required db/wal slot size for VGs with multiple PVs (`pr#43947 <https://github.com/ceph/ceph/pull/43947>`_, Guillaume Abrioux, Cory Snyder) -* ceph-volume: fix regression introcuded via #43536 (`pr#44757 <https://github.com/ceph/ceph/pull/44757>`_, Guillaume Abrioux) -* ceph-volume: honour osd_dmcrypt_key_size option (`pr#44974 <https://github.com/ceph/ceph/pull/44974>`_, Guillaume Abrioux) -* ceph-volume: human_readable_size() refactor (`pr#44210 <https://github.com/ceph/ceph/pull/44210>`_, Guillaume Abrioux) -* ceph-volume: improve mpath devices support (`pr#44791 <https://github.com/ceph/ceph/pull/44791>`_, Guillaume Abrioux) -* ceph-volume: make it possible to skip needs_root() (`pr#44320 <https://github.com/ceph/ceph/pull/44320>`_, Guillaume Abrioux) -* ceph-volume: show RBD devices as not available (`pr#44709 <https://github.com/ceph/ceph/pull/44709>`_, Michael Fritch) -* ceph-volume: util/prepare fix osd_id_available() (`pr#43952 <https://github.com/ceph/ceph/pull/43952>`_, Guillaume Abrioux) -* cephadm/ceph-volume: do not use lvm binary in containers (`pr#43953 <https://github.com/ceph/ceph/pull/43953>`_, Guillaume Abrioux) -* cephadm: Fix iscsi client caps (allow mgr <service status> calls) (`pr#43822 <https://github.com/ceph/ceph/pull/43822>`_, Juan Miguel Olmo Martínez) -* cephfs: client: Fix executeable access check for the root user (`pr#41295 <https://github.com/ceph/ceph/pull/41295>`_, Kotresh HR) -* cls/journal: skip disconnected clients when calculating min_commit_position (`pr#44689 <https://github.com/ceph/ceph/pull/44689>`_, Mykola Golub) -* common/PriorityCache: low perf counters priorities for submodules (`pr#44176 <https://github.com/ceph/ceph/pull/44176>`_, Igor Fedotov) -* doc: Use older mistune (`pr#44227 <https://github.com/ceph/ceph/pull/44227>`_, David Galloway) -* doc: prerequisites fix for cephFS mount (`pr#44271 <https://github.com/ceph/ceph/pull/44271>`_, Nikhilkumar Shelke) -* librbd/object_map: rbd diff between two snapshots lists entire image content (`pr#43806 <https://github.com/ceph/ceph/pull/43806>`_, Sunny Kumar) -* librbd: diff-iterate reports incorrect offsets in fast-diff mode (`pr#44548 <https://github.com/ceph/ceph/pull/44548>`_, Ilya Dryomov) -* mds: Add new flag to MClientSession (`pr#43252 <https://github.com/ceph/ceph/pull/43252>`_, Kotresh HR) -* mds: PurgeQueue.cc fix for 32bit compilation (`pr#44169 <https://github.com/ceph/ceph/pull/44169>`_, Duncan Bellamy) -* mds: do not trim stray dentries during opening the root (`pr#43816 <https://github.com/ceph/ceph/pull/43816>`_, Xiubo Li) -* mds: skip journaling blocklisted clients when in `replay` state (`pr#43842 <https://github.com/ceph/ceph/pull/43842>`_, Venky Shankar) -* mgr/dashboard/api: set a UTF-8 locale when running pip (`pr#43607 <https://github.com/ceph/ceph/pull/43607>`_, Kefu Chai) -* mgr/dashboard: all pyfakefs must be pinned on same version (`pr#44159 <https://github.com/ceph/ceph/pull/44159>`_, Rishabh Dave) -* mgr/dashboard: upgrade Cypress to the latest stable version (`pr#44373 <https://github.com/ceph/ceph/pull/44373>`_, Alfonso Martínez) -* mgr: Add check to prevent mgr from crashing (`pr#43446 <https://github.com/ceph/ceph/pull/43446>`_, Aswin Toni) -* mgr: fix locking for MetadataUpdate::finish (`pr#44720 <https://github.com/ceph/ceph/pull/44720>`_, Sage Weil) -* mgr: set debug_mgr=2/5 (so INFO goes to mgr log by default) (`pr#42677 <https://github.com/ceph/ceph/pull/42677>`_, Sage Weil) -* mon/MgrStatMonitor: do not spam subscribers (mgr) with service_map (`pr#44722 <https://github.com/ceph/ceph/pull/44722>`_, Sage Weil) -* mon/MgrStatMonitor: ignore MMgrReport from non-active mgr (`pr#43861 <https://github.com/ceph/ceph/pull/43861>`_, Sage Weil) -* mon/OSDMonitor: avoid null dereference if stats are not available (`pr#44700 <https://github.com/ceph/ceph/pull/44700>`_, Josh Durgin) -* mon: prevent new sessions during shutdown (`pr#44544 <https://github.com/ceph/ceph/pull/44544>`_, Sage Weil) -* msg/async: allow connection reaping to be tuned; fix cephfs test (`pr#43310 <https://github.com/ceph/ceph/pull/43310>`_, Sage Weil, Gerald Yang) -* msgr/async: fix unsafe access in unregister_conn() (`pr#43325 <https://github.com/ceph/ceph/pull/43325>`_, Sage Weil, Gerald Yang) -* os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max\_\* options (`pr#43747 <https://github.com/ceph/ceph/pull/43747>`_, Kefu Chai, Mauricio Faria de Oliveira, Adam Kupczyk, Xue Yantao) -* os/bluestore: _do_write_small fix head_pad (`pr#43757 <https://github.com/ceph/ceph/pull/43757>`_, dheart) -* os/bluestore: avoid premature onode release (`pr#44724 <https://github.com/ceph/ceph/pull/44724>`_, Igor Fedotov) -* os/bluestore: cap omap naming scheme upgrade transactoin (`pr#42958 <https://github.com/ceph/ceph/pull/42958>`_, Adam Kupczyk, Igor Fedotov) -* os/bluestore: fix additional errors during missed shared blob repair (`pr#43887 <https://github.com/ceph/ceph/pull/43887>`_, Igor Fedotov) -* os/bluestore: fix writing to invalid offset when repairing (`pr#43885 <https://github.com/ceph/ceph/pull/43885>`_, Igor Fedotov) -* os/bluestore: list obj which equals to pend (`pr#44978 <https://github.com/ceph/ceph/pull/44978>`_, Mykola Golub, Kefu Chai) -* os/bluestore: make shared blob fsck much less RAM-greedy (`pr#44614 <https://github.com/ceph/ceph/pull/44614>`_, Igor Fedotov) -* os/bluestore: use proper prefix when removing undecodable Share Blob (`pr#43883 <https://github.com/ceph/ceph/pull/43883>`_, Igor Fedotov) -* osd/OSDMap.cc: clean up pg_temp for nonexistent pgs (`pr#44097 <https://github.com/ceph/ceph/pull/44097>`_, Cory Snyder) -* osd/PeeringState: separate history's pruub from pg's (`pr#44585 <https://github.com/ceph/ceph/pull/44585>`_, Sage Weil) -* osd: fix 'ceph osd stop <osd.nnn>' doesn't take effect (`pr#43962 <https://github.com/ceph/ceph/pull/43962>`_, tan changzhi) -* osd: fix partial recovery become whole object recovery after restart osd (`pr#44165 <https://github.com/ceph/ceph/pull/44165>`_, Jianwei Zhang) -* osd: re-cache peer_bytes on every peering state activate (`pr#43438 <https://github.com/ceph/ceph/pull/43438>`_, Mykola Golub) -* osd: set r only if succeed in FillInVerifyExtent (`pr#44174 <https://github.com/ceph/ceph/pull/44174>`_, yanqiang-ux) -* osdc: add set_error in BufferHead, when split set_error to right (`pr#44726 <https://github.com/ceph/ceph/pull/44726>`_, jiawd) -* pybind/mgr/balancer: define Plan.{dump,show}() (`pr#43965 <https://github.com/ceph/ceph/pull/43965>`_, Kefu Chai) -* qa/ceph-ansible: Bump OS version for centos (`pr#43658 <https://github.com/ceph/ceph/pull/43658>`_, Brad Hubbard) -* qa/ceph-ansible: Pin to last compatible stable release (`pr#43557 <https://github.com/ceph/ceph/pull/43557>`_, Brad Hubbard) -* qa/distros: Remove stale kubic distros (`pr#43788 <https://github.com/ceph/ceph/pull/43788>`_, Sebastian Wagner) -* qa/mgr/dashboard/test_pool: don't check HEALTH_OK (`pr#43441 <https://github.com/ceph/ceph/pull/43441>`_, Ernesto Puerta) -* qa/rgw: Fix vault token file access.case (`issue#51539 <http://tracker.ceph.com/issues/51539>`_, `pr#43963 <https://github.com/ceph/ceph/pull/43963>`_, Marcus Watts) -* qa/rgw: bump tempest version to resolve dependency issue (`pr#43967 <https://github.com/ceph/ceph/pull/43967>`_, Casey Bodley) -* qa/rgw: octopus branch targets ceph-octopus branch of java_s3tests (`pr#43810 <https://github.com/ceph/ceph/pull/43810>`_, Casey Bodley) -* qa/run-tox-mgr-dashboard: Do not write to /tmp/test_sanitize_password… (`pr#44728 <https://github.com/ceph/ceph/pull/44728>`_, Kevin Zhao) -* qa/run_xfstests_qemu.sh: stop reporting success without actually running any tests (`pr#44595 <https://github.com/ceph/ceph/pull/44595>`_, Ilya Dryomov) -* qa/suites/rados/cephadm: use centos 8.stream (`pr#44929 <https://github.com/ceph/ceph/pull/44929>`_, Adam King, Sage Weil) -* qa: account for split of the kclient "metrics" debugfs file (`pr#44270 <https://github.com/ceph/ceph/pull/44270>`_, Jeff Layton, Xiubo Li) -* qa: miscellaneous perf suite fixes (`pr#44254 <https://github.com/ceph/ceph/pull/44254>`_, Neha Ojha) -* qa: remove centos8 from supported distros (`pr#44864 <https://github.com/ceph/ceph/pull/44864>`_, Casey Bodley, Sage Weil) -* rbd-mirror: fix mirror image removal (`pr#43663 <https://github.com/ceph/ceph/pull/43663>`_, Arthur Outhenin-Chalandre) -* rbd-mirror: fix races in snapshot-based mirroring deletion propagation (`pr#44753 <https://github.com/ceph/ceph/pull/44753>`_, Ilya Dryomov) -* rbd: add missing switch arguments for recognition by get_command_spec() (`pr#44741 <https://github.com/ceph/ceph/pull/44741>`_, Ilya Dryomov) -* rgw/beast: optimizations for request timeout (`pr#43961 <https://github.com/ceph/ceph/pull/43961>`_, Mark Kogan, Casey Bodley) -* rgw/rgw_rados: make RGW request IDs non-deterministic (`pr#43696 <https://github.com/ceph/ceph/pull/43696>`_, Cory Snyder) -* rgw: clear buckets before calling list_buckets() (`pr#43381 <https://github.com/ceph/ceph/pull/43381>`_, Nikhil Kshirsagar) -* rgw: disable prefetch in rgw_file to fix 3x read amplification (`pr#44170 <https://github.com/ceph/ceph/pull/44170>`_, Kajetan Janiak) -* rgw: fix `bi put` not using right bucket index shard (`pr#44167 <https://github.com/ceph/ceph/pull/44167>`_, J. Eric Ivancich) -* rgw: fix bucket purge incomplete multipart uploads (`pr#43863 <https://github.com/ceph/ceph/pull/43863>`_, J. Eric Ivancich) -* rgw: user stats showing 0 value for "size_utilized" and "size_kb_utilized" fields (`pr#44172 <https://github.com/ceph/ceph/pull/44172>`_, J. Eric Ivancich) -* rgwlc: remove lc entry on bucket delete (`pr#44730 <https://github.com/ceph/ceph/pull/44730>`_, Matt Benjamin) -* rpm, debian: move smartmontools and nvme-cli to ceph-base (`pr#44177 <https://github.com/ceph/ceph/pull/44177>`_, Yaarit Hatuka) - -v15.2.15 Octopus -================ - -This is the 15th backport release in the Octopus series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* The default value of `osd_client_message_cap` has been set to 256, to provide - better flow control by limiting maximum number of in-flight client requests. - -* A new ceph-erasure-code-tool has been added to help manually recover an - object from a damaged PG. - -Changelog ---------- - -* auth,mon: don't log "unable to find a keyring" error when key is given (`pr#43312 <https://github.com/ceph/ceph/pull/43312>`_, Ilya Dryomov) -* ceph-monstore-tool: use a large enough paxos/{first,last}_committed (`issue#38219 <http://tracker.ceph.com/issues/38219>`_, `pr#43263 <https://github.com/ceph/ceph/pull/43263>`_, Kefu Chai) -* ceph-volume/tests: retry when destroying osd (`pr#42547 <https://github.com/ceph/ceph/pull/42547>`_, Guillaume Abrioux) -* ceph-volume: disable cache for blkid calls (`pr#41115 <https://github.com/ceph/ceph/pull/41115>`_, Rafał Wądołowski) -* ceph-volume: fix batch report and respect ceph.conf config values (`pr#41715 <https://github.com/ceph/ceph/pull/41715>`_, Andrew Schoen) -* ceph-volume: fix lvm activate --all --no-systemd (`pr#43268 <https://github.com/ceph/ceph/pull/43268>`_, Dimitri Savineau) -* ceph-volume: fix lvm activate arguments (`pr#43117 <https://github.com/ceph/ceph/pull/43117>`_, Dimitri Savineau) -* ceph-volume: fix lvm migrate without args (`pr#43111 <https://github.com/ceph/ceph/pull/43111>`_, Dimitri Savineau) -* ceph-volume: fix raw list with logical partition (`pr#43088 <https://github.com/ceph/ceph/pull/43088>`_, Guillaume Abrioux, Dimitri Savineau) -* ceph-volume: lvm batch: fast_allocations(): avoid ZeroDivisionError (`pr#42494 <https://github.com/ceph/ceph/pull/42494>`_, Jonas Zeiger) -* ceph-volume: pvs --noheadings replace pvs --no-heading (`pr#43077 <https://github.com/ceph/ceph/pull/43077>`_, FengJiankui) -* ceph-volume: remove --all ref from deactivate help (`pr#43097 <https://github.com/ceph/ceph/pull/43097>`_, Dimitri Savineau) -* ceph-volume: support no_systemd with lvm migrate (`pr#43092 <https://github.com/ceph/ceph/pull/43092>`_, Dimitri Savineau) -* ceph-volume: work around phantom atari partitions (`pr#42752 <https://github.com/ceph/ceph/pull/42752>`_, Blaine Gardner) -* ceph.spec: selinux scripts respect CEPH_AUTO_RESTART_ON_UPGRADE (`pr#43234 <https://github.com/ceph/ceph/pull/43234>`_, Dan van der Ster) -* cephadm: add thread ident to log messages (`pr#43133 <https://github.com/ceph/ceph/pull/43133>`_, Michael Fritch) -* cephadm: default to quay.io, not docker.io (`pr#42533 <https://github.com/ceph/ceph/pull/42533>`_, Sage Weil) -* cephadm: use quay, not docker (`pr#43094 <https://github.com/ceph/ceph/pull/43094>`_, Sage Weil, Juan Miguel Olmo Martínez) -* cmake: Replace boost download url (`pr#42694 <https://github.com/ceph/ceph/pull/42694>`_, Rafał Wądołowski) -* cmake: s/Python_EXECUTABLE/Python3_EXECUTABLE/ (`pr#43265 <https://github.com/ceph/ceph/pull/43265>`_, Michael Fritch) -* common/buffer: fix SIGABRT in rebuild_aligned_size_and_memory (`pr#42975 <https://github.com/ceph/ceph/pull/42975>`_, Yin Congmin) -* common/options: Set osd_client_message_cap to 256 (`pr#42616 <https://github.com/ceph/ceph/pull/42616>`_, Mark Nelson) -* doc/ceph-volume: add lvm migrate/new-db/new-wal (`pr#43090 <https://github.com/ceph/ceph/pull/43090>`_, Dimitri Savineau) -* Don't persist report data (`pr#42670 <https://github.com/ceph/ceph/pull/42670>`_, Brad Hubbard) -* krbd: escape udev_enumerate_add_match_sysattr values (`pr#42968 <https://github.com/ceph/ceph/pull/42968>`_, Ilya Dryomov) -* mgr/cephadm: pass --container-init to cephadm if specified (`pr#42666 <https://github.com/ceph/ceph/pull/42666>`_, Tim Serong) -* mgr/dashboard: cephadm e2e start script: add --expanded option (`pr#42794 <https://github.com/ceph/ceph/pull/42794>`_, Alfonso Martínez) -* mgr/dashboard: deprecated variable usage in Grafana dashboards (`pr#43189 <https://github.com/ceph/ceph/pull/43189>`_, Patrick Seidensal) -* mgr/dashboard: Incorrect MTU mismatch warning (`pr#43186 <https://github.com/ceph/ceph/pull/43186>`_, Aashish Sharma) -* mgr/dashboard: stats=false not working when listing buckets (`pr#42892 <https://github.com/ceph/ceph/pull/42892>`_, Avan Thakkar) -* mgr/influx: use "N/A" for unknown hostname (`pr#43369 <https://github.com/ceph/ceph/pull/43369>`_, Kefu Chai) -* mgr/prometheus: Fix metric types from gauge to counter (`pr#42674 <https://github.com/ceph/ceph/pull/42674>`_, Patrick Seidensal) -* mon/OSDMonitor: account for PG merging in epoch_by_pg accounting (`pr#42837 <https://github.com/ceph/ceph/pull/42837>`_, Dan van der Ster) -* mon/PGMap: remove DIRTY field in `ceph df detail` when cache tiering is not in use (`pr#42862 <https://github.com/ceph/ceph/pull/42862>`_, Deepika Upadhyay) -* mon: return -EINVAL when handling unknown option in 'ceph osd pool get' (`pr#43266 <https://github.com/ceph/ceph/pull/43266>`_, Zhao Cuicui) -* monitoring/grafana/cluster: use per-unit max and limit values (`pr#42675 <https://github.com/ceph/ceph/pull/42675>`_, David Caro) -* monitoring: fix Physical Device Latency unit (`pr#42676 <https://github.com/ceph/ceph/pull/42676>`_, Seena Fallah) -* os/bluestore: accept undecodable multi-block bluefs transactions on log (`pr#43024 <https://github.com/ceph/ceph/pull/43024>`_, Igor Fedotov) -* os/bluestore: fix bluefs migrate command (`pr#43140 <https://github.com/ceph/ceph/pull/43140>`_, Igor Fedotov) -* os/bluestore: fix using incomplete bluefs log when dumping it (`pr#43008 <https://github.com/ceph/ceph/pull/43008>`_, Igor Fedotov) -* osd/OSD: mkfs need wait for transcation completely finish (`pr#43418 <https://github.com/ceph/ceph/pull/43418>`_, Chen Fan) -* pybind/rbd: fix mirror_image_get_status (`pr#42971 <https://github.com/ceph/ceph/pull/42971>`_, Ilya Dryomov, Will Smith) -* qa/mgr/dashboard: add extra wait to test (`pr#43352 <https://github.com/ceph/ceph/pull/43352>`_, Ernesto Puerta) -* qa/suites/rados: use centos_8.3_container_tools_3.0.yaml (`pr#43102 <https://github.com/ceph/ceph/pull/43102>`_, Sebastian Wagner) -* qa/tests: advanced version to 15.2.14 to match the latest release (`pr#42761 <https://github.com/ceph/ceph/pull/42761>`_, Yuri Weinstein) -* qa/workunits/mon/test_mon_config_key: use subprocess.run() instead of proc.communicate() (`pr#42498 <https://github.com/ceph/ceph/pull/42498>`_, Kefu Chai) -* rbd-mirror: add perf counters to snapshot replayed (`pr#42986 <https://github.com/ceph/ceph/pull/42986>`_, Arthur Outhenin-Chalandre) -* rbd-mirror: fix potential async op tracker leak in start_image_replayers (`pr#42978 <https://github.com/ceph/ceph/pull/42978>`_, Mykola Golub) -* rbd-mirror: unbreak one-way snapshot-based mirroring (`pr#43314 <https://github.com/ceph/ceph/pull/43314>`_, Ilya Dryomov) -* rgw : add check for tenant provided in RGWCreateRole (`pr#43270 <https://github.com/ceph/ceph/pull/43270>`_, caolei) -* rgw: avoid infinite loop when deleting a bucket (`issue#49206 <http://tracker.ceph.com/issues/49206>`_, `pr#43272 <https://github.com/ceph/ceph/pull/43272>`_, Jeegn Chen) -* rgw: fail as expected when set/delete-bucket-website attempted on a non-exis… (`pr#43424 <https://github.com/ceph/ceph/pull/43424>`_, xiangrui meng) -* rgw: fix sts memory leak (`pr#43349 <https://github.com/ceph/ceph/pull/43349>`_, yuliyang_yewu) -* rgw: remove quota soft threshold (`pr#43271 <https://github.com/ceph/ceph/pull/43271>`_, Zulai Wang) -* rgw: when deleted obj removed in versioned bucket, extra del-marker added (`pr#43273 <https://github.com/ceph/ceph/pull/43273>`_, J. Eric Ivancich) -* run-make-check.sh: Increase failure output log size (`pr#42849 <https://github.com/ceph/ceph/pull/42849>`_, David Galloway) -* tools/erasure-code: new tool to encode/decode files (`pr#43407 <https://github.com/ceph/ceph/pull/43407>`_, Mykola Golub) - -v15.2.14 Octopus -================ - -This is the 14th backport release in the Octopus series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* RGW: It is possible to specify ssl options and ciphers for beast frontend now. - The default ssl options setting is "no_sslv2:no_sslv3:no_tlsv1:no_tlsv1_1". - If you want to return back the old behavior add 'ssl_options=' (empty) to - ``rgw frontends`` configuration. - -* CephFS: old clusters (pre-Jewel) that did not use CephFS have legacy data - structures in the ceph-mon stores. These structures are not understood by - Pacific monitors. With Octopus v15.2.14, the monitors have been taught to flush - and trim these old structures out in preparation for an upgrade to Pacific or - Quincy. For more information, see - `Issue 51673 <https://tracker.ceph.com/issues/51673>`. - -* `ceph-mgr-modules-core` debian package does not recommend `ceph-mgr-rook` - anymore. As the latter depends on `python3-numpy` which cannot be imported in - different Python sub-interpreters multi-times if the version of - `python3-numpy` is older than 1.19. Since `apt-get` installs the `Recommends` - packages by default, `ceph-mgr-rook` was always installed along with - `ceph-mgr` debian package as an indirect dependency. If your workflow depends - on this behavior, you might want to install `ceph-mgr-rook` separately. - -* Several bug fixes in BlueStore, including a fix for an unexpected - ENOSPC bug in Avl/Hybrid allocators. - -* Includes a fix for a bug that affects recovery below *min_size* for EC pools. - -Changelog ---------- - -* bind on loopback address if no other addresses are available (`pr#42478 <https://github.com/ceph/ceph/pull/42478>`_, Kefu Chai, Matthew Oliver) -* bluestore: use string_view and strip trailing slash for dir listing (`pr#41757 <https://github.com/ceph/ceph/pull/41757>`_, Jonas Jelten, Kefu Chai) -* ceph-volume/tests: update ansible environment variables in tox (`pr#42491 <https://github.com/ceph/ceph/pull/42491>`_, Dimitri Savineau) -* ceph-volume: Consider /dev/root as mounted (`pr#41584 <https://github.com/ceph/ceph/pull/41584>`_, David Caro) -* ceph-volume: implement bluefs volume migration (`pr#42377 <https://github.com/ceph/ceph/pull/42377>`_, Igor Fedotov, Kefu Chai) -* ceph: ignore BrokenPipeError when printing help (`pr#41586 <https://github.com/ceph/ceph/pull/41586>`_, Ernesto Puerta) -* cephadm: fix escaping/quoting of stderr-prefix arg for ceph daemons (`pr#40948 <https://github.com/ceph/ceph/pull/40948>`_, Michael Fritch, Sage Weil) -* cephadm: fix port_in_use when IPv6 is disabled (`pr#41602 <https://github.com/ceph/ceph/pull/41602>`_, Patrick Seidensal) -* cephfs: client: add ability to lookup snapped inodes by inode number (`pr#40768 <https://github.com/ceph/ceph/pull/40768>`_, Jeff Layton, Xiubo Li) -* cls/rgw: look for plain entries in non-ascii plain namespace too (`pr#41775 <https://github.com/ceph/ceph/pull/41775>`_, Mykola Golub) -* cmake: build static libs if they are internal ones (`pr#39904 <https://github.com/ceph/ceph/pull/39904>`_, Kefu Chai) -* crush/crush: ensure alignof(crush_work_bucket) is 1 (`pr#41622 <https://github.com/ceph/ceph/pull/41622>`_, Kefu Chai) -* debian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-rook (`pr#41878 <https://github.com/ceph/ceph/pull/41878>`_, Kefu Chai) -* doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/ (`pr#41624 <https://github.com/ceph/ceph/pull/41624>`_, Kefu Chai) -* librbd: don't stop at the first unremovable image when purging (`pr#41663 <https://github.com/ceph/ceph/pull/41663>`_, Ilya Dryomov) -* librbd: global config overrides do not apply to in-use images (`pr#41763 <https://github.com/ceph/ceph/pull/41763>`_, Jason Dillaman) -* make-dist: refuse to run if script path contains a colon (`pr#41087 <https://github.com/ceph/ceph/pull/41087>`_, Nathan Cutler) -* mds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case (`pr#41996 <https://github.com/ceph/ceph/pull/41996>`_, Patrick Donnelly) -* mds: completed_requests -> num_completed_requests and dump num_completed_flushes (`pr#41625 <https://github.com/ceph/ceph/pull/41625>`_, Dan van der Ster) -* mds: fix cpu_profiler asok crash (`pr#41767 <https://github.com/ceph/ceph/pull/41767>`_, liu shi) -* mds: place the journaler pointer under the mds_lock (`pr#41626 <https://github.com/ceph/ceph/pull/41626>`_, Xiubo Li) -* MDSMonitor: monitor crash after upgrade from ceph 15.2.13 to 16.2.4 (`pr#42537 <https://github.com/ceph/ceph/pull/42537>`_, Patrick Donnelly) -* mds: reject lookup ino requests for mds dirs (`pr#40782 <https://github.com/ceph/ceph/pull/40782>`_, Xiubo Li, Patrick Donnelly) -* mgr/DaemonServer.cc: prevent mgr crashes caused by integer underflow that is triggered by large increases to pg_num/pgp_num (`pr#41764 <https://github.com/ceph/ceph/pull/41764>`_, Cory Snyder) -* mgr/DaemonServer: skip redundant update of pgp_num_actual (`pr#42420 <https://github.com/ceph/ceph/pull/42420>`_, Dan van der Ster) -* mgr/Dashboard: Remove erroneous elements in hosts-overview Grafana dashboard (`pr#41649 <https://github.com/ceph/ceph/pull/41649>`_, Malcolm Holmes) -* mgr/cephadm: fix prometheus alerts (`pr#41660 <https://github.com/ceph/ceph/pull/41660>`_, Paul Cuzner, Sage Weil, Patrick Seidensal) -* mgr/dashboard: Add configurable MOTD or wall notification (`pr#42412 <https://github.com/ceph/ceph/pull/42412>`_, Volker Theile) -* mgr/dashboard: Fix bucket name input allowing space in the value (`pr#42241 <https://github.com/ceph/ceph/pull/42241>`_, Nizamudeen A) -* mgr/dashboard: RGW buckets async validator performance enhancement and name constraints (`pr#42123 <https://github.com/ceph/ceph/pull/42123>`_, Nizamudeen A) -* mgr/dashboard: User database migration has been cut out (`pr#42142 <https://github.com/ceph/ceph/pull/42142>`_, Volker Theile) -* mgr/dashboard: disable NFSv3 support in dashboard (`pr#41199 <https://github.com/ceph/ceph/pull/41199>`_, Volker Theile) -* mgr/dashboard: fix API docs link (`pr#41508 <https://github.com/ceph/ceph/pull/41508>`_, Avan Thakkar) -* mgr/dashboard: fix OSD out count (`pr#42154 <https://github.com/ceph/ceph/pull/42154>`_, 胡玮文) -* mgr/dashboard: fix OSDs Host details/overview grafana graphs (`issue#49769 <http://tracker.ceph.com/issues/49769>`_, `pr#41530 <https://github.com/ceph/ceph/pull/41530>`_, Alfonso Martínez, Michael Wodniok) -* mgr/dashboard: fix bucket objects and size calculations (`pr#41647 <https://github.com/ceph/ceph/pull/41647>`_, Avan Thakkar) -* mgr/dashboard: fix for right sidebar nav icon not clickable (`pr#42015 <https://github.com/ceph/ceph/pull/42015>`_, Aaryan Porwal) -* mgr/dashboard: run cephadm-backend e2e tests with KCLI (`pr#42243 <https://github.com/ceph/ceph/pull/42243>`_, Alfonso Martínez) -* mgr/dashboard: show partially deleted RBDs (`pr#41887 <https://github.com/ceph/ceph/pull/41887>`_, Tatjana Dehler) -* mgr/telemetry: pass leaderboard flag even w/o ident (`pr#41870 <https://github.com/ceph/ceph/pull/41870>`_, Sage Weil) -* mgr: do not load disabled modules (`pr#41617 <https://github.com/ceph/ceph/pull/41617>`_, Kefu Chai) -* mon/MonClient: tolerate a rotating key that is slightly out of date (`pr#41449 <https://github.com/ceph/ceph/pull/41449>`_, Ilya Dryomov) -* mon/OSDMonitor: drop stale failure_info even if can_mark_down() (`pr#41618 <https://github.com/ceph/ceph/pull/41618>`_, Kefu Chai) -* mon: load stashed map before mkfs monmap (`pr#41621 <https://github.com/ceph/ceph/pull/41621>`_, Dan van der Ster) -* os/bluestore: Remove possibility of replay log and file inconsistency (`pr#42374 <https://github.com/ceph/ceph/pull/42374>`_, Adam Kupczyk) -* os/bluestore: compact db after bulk omap naming upgrade (`pr#42375 <https://github.com/ceph/ceph/pull/42375>`_, Igor Fedotov) -* os/bluestore: fix erroneous SharedBlob record removal during repair (`pr#42373 <https://github.com/ceph/ceph/pull/42373>`_, Igor Fedotov) -* os/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators (`pr#41658 <https://github.com/ceph/ceph/pull/41658>`_, Igor Fedotov) -* os/bluestore: introduce multithireading sync for bluestore's repairer (`pr#41613 <https://github.com/ceph/ceph/pull/41613>`_, Igor Fedotov) -* os/bluestore: tolerate zero length for allocators' init\_[add/rm]_free() (`pr#41612 <https://github.com/ceph/ceph/pull/41612>`_, Igor Fedotov) -* osd/PG.cc: handle removal of pgmeta object (`pr#41623 <https://github.com/ceph/ceph/pull/41623>`_, Neha Ojha) -* osd/PeeringState: fix acting_set_writeable min_size check (`pr#41609 <https://github.com/ceph/ceph/pull/41609>`_, Samuel Just) -* osd/osd_type: use f->dump_unsigned() when appropriate (`pr#42257 <https://github.com/ceph/ceph/pull/42257>`_, Kefu Chai) -* osd: clear data digest when write_trunc (`pr#41620 <https://github.com/ceph/ceph/pull/41620>`_, Zengran Zhang) -* osd: fix scrub reschedule bug (`pr#41972 <https://github.com/ceph/ceph/pull/41972>`_, wencong wan) -* osd: log snaptrim message to dout (`pr#42484 <https://github.com/ceph/ceph/pull/42484>`_, Arthur Outhenin-Chalandre) -* osd: move down peers out from peer_purged (`pr#42239 <https://github.com/ceph/ceph/pull/42239>`_, Mykola Golub) -* pacific: pybind/ceph_volume_client: stat on empty string (`pr#42161 <https://github.com/ceph/ceph/pull/42161>`_, Patrick Donnelly) -* qa/\*/test_envlibrados_for_rocksdb.sh: install libarchive-3.3.3 (`pr#42421 <https://github.com/ceph/ceph/pull/42421>`_, Neha Ojha) -* qa/cephadm/upgrade: use v15.2.9 for cephadm tests (`pr#41568 <https://github.com/ceph/ceph/pull/41568>`_, Deepika Upadhyay) -* qa/config/rados: add dispatch delay testing params (`pr#42180 <https://github.com/ceph/ceph/pull/42180>`_, Deepika Upadhyay) -* qa/distros: move to latest version on supported distro's (`pr#41478 <https://github.com/ceph/ceph/pull/41478>`_, Josh Durgin, Yuri Weinstein, Deepika Upadhyay, Sage Weil, Kefu Chai, Patrick Donnelly, rakeshgm) -* qa/suites/rados/perf: pin to 18.04 (`pr#41922 <https://github.com/ceph/ceph/pull/41922>`_, Neha Ojha) -* qa/suites/rados: add simultaneous scrubs to the thrasher (`pr#42422 <https://github.com/ceph/ceph/pull/42422>`_, Ronen Friedman) -* qa/tasks/qemu: precise repos have been archived (`pr#41642 <https://github.com/ceph/ceph/pull/41642>`_, Ilya Dryomov) -* qa/upgrade: disable update_features test_notify with older client as lockowner (`pr#41511 <https://github.com/ceph/ceph/pull/41511>`_, Deepika Upadhyay) -* qa/workunits/rbd: use bionic version of qemu-iotests for focal (`pr#42025 <https://github.com/ceph/ceph/pull/42025>`_, Ilya Dryomov) -* rbd-mirror: fix segfault in snapshot replayer shutdown (`pr#41502 <https://github.com/ceph/ceph/pull/41502>`_, Arthur Outhenin-Chalandre) -* rbd: retrieve global config overrides from the MONs (`pr#41836 <https://github.com/ceph/ceph/pull/41836>`_, Ilya Dryomov, Jason Dillaman) -* rgw : add check empty for sync url (`pr#41766 <https://github.com/ceph/ceph/pull/41766>`_, caolei) -* rgw/amqp/kafka: prevent concurrent shutdowns from happening (`pr#40381 <https://github.com/ceph/ceph/pull/40381>`_, Yuval Lifshitz) -* rgw/amqp/test: fix mock prototype for librabbitmq-0.11.0 (`pr#41418 <https://github.com/ceph/ceph/pull/41418>`_, Yuval Lifshitz) -* rgw/notifications: delete bucket notification object when empty (`pr#41412 <https://github.com/ceph/ceph/pull/41412>`_, Yuval Lifshitz) -* rgw/rgw_file: Fix the return value of read() and readlink() (`pr#41416 <https://github.com/ceph/ceph/pull/41416>`_, Dai zhiwei, luo rixin) -* rgw/sts: read_obj_policy() consults iam_user_policies on ENOENT (`pr#41415 <https://github.com/ceph/ceph/pull/41415>`_, Casey Bodley) -* rgw: Backport 51674 to Octopus (`pr#42347 <https://github.com/ceph/ceph/pull/42347>`_, Adam C. Emerson) -* rgw: Improve error message on email id reuse (`pr#41784 <https://github.com/ceph/ceph/pull/41784>`_, Ponnuvel Palaniyappan) -* rgw: allow rgw-orphan-list to process multiple data pools (`pr#41417 <https://github.com/ceph/ceph/pull/41417>`_, J. Eric Ivancich) -* rgw: allow to set ssl options and ciphers for beast frontend (`pr#42368 <https://github.com/ceph/ceph/pull/42368>`_, Mykola Golub) -* rgw: check object locks in multi-object delete (`issue#47586 <http://tracker.ceph.com/issues/47586>`_, `pr#41031 <https://github.com/ceph/ceph/pull/41031>`_, Mark Houghton) -* rgw: fix bucket object listing when marker matches prefix (`pr#41413 <https://github.com/ceph/ceph/pull/41413>`_, J. Eric Ivancich) -* rgw: fix segfault related to explicit object manifest handling (`pr#41420 <https://github.com/ceph/ceph/pull/41420>`_, Mark Kogan) -* rgw: limit rgw_gc_max_objs to RGW_SHARDS_PRIME_1 (`pr#40383 <https://github.com/ceph/ceph/pull/40383>`_, Rafał Wądołowski) -* rgw: qa/tasks/barbican.py: fix year2021 problem (`pr#40385 <https://github.com/ceph/ceph/pull/40385>`_, Marcus Watts) -* rgw: radoslist incomplete multipart parts marker (`pr#40820 <https://github.com/ceph/ceph/pull/40820>`_, J. Eric Ivancich) -* rgw: require bucket name in bucket chown (`pr#41765 <https://github.com/ceph/ceph/pull/41765>`_, Zulai Wang) -* rgw: send headers of quota settings (`pr#41419 <https://github.com/ceph/ceph/pull/41419>`_, Or Friedmann) -* rpm: drop use of $FIRST_ARG in ceph-immutable-object-cache (`pr#42509 <https://github.com/ceph/ceph/pull/42509>`_, Nathan Cutler) -* rpm: three spec file cleanups (`pr#42440 <https://github.com/ceph/ceph/pull/42440>`_, Nathan Cutler, Franck Bui) -* test: bump DecayCounter.steady acceptable error (`pr#41619 <https://github.com/ceph/ceph/pull/41619>`_, Patrick Donnelly) - - -v15.2.13 Octopus -================ - -This is the 13th backport release in the Octopus series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* RADOS: Ability to dynamically adjust trimming rate in the monitor and several other bug fixes. - -* A long-standing bug that prevented 32-bit and 64-bit client/server - interoperability under msgr v2 has been fixed. In particular, mixing armv7l - (armhf) and x86_64 or aarch64 servers in the same cluster now works. - -Changelog ---------- - -* blk/kernel: fix io_uring got (4) Interrupted system call (`pr#39899 <https://github.com/ceph/ceph/pull/39899>`_, Yanhu Cao) -* ceph.spec.in: Enable tcmalloc on IBM Power and Z (`pr#39487 <https://github.com/ceph/ceph/pull/39487>`_, Nathan Cutler, Yaakov Selkowitz) -* cephadm: `cephadm ls` broken for SUSE downstream alertmanager container (`pr#39802 <https://github.com/ceph/ceph/pull/39802>`_, Patrick Seidensal) -* cephadm: Allow to use paths in all <_devices> drivegroup sections (`pr#40838 <https://github.com/ceph/ceph/pull/40838>`_, Juan Miguel Olmo Martínez) -* cephadm: add docker.service dependency in systemd units (`pr#39804 <https://github.com/ceph/ceph/pull/39804>`_, Sage Weil) -* cephadm: allow redeploy of daemons in error state if container running (`pr#39717 <https://github.com/ceph/ceph/pull/39717>`_, Adam King) -* cephadm: fix failure when using --apply-spec and --shh-user (`pr#40737 <https://github.com/ceph/ceph/pull/40737>`_, Daniel Pivonka) -* cephadm: run containers using `--init` (`pr#39914 <https://github.com/ceph/ceph/pull/39914>`_, Michael Fritch, Sage Weil) -* cephfs: client: only check pool permissions for regular files (`pr#40779 <https://github.com/ceph/ceph/pull/40779>`_, Xiubo Li) -* cephfs: client: wake up the front pos waiter (`pr#40771 <https://github.com/ceph/ceph/pull/40771>`_, Xiubo Li) -* client: fire the finish_cap_snap() after buffer being flushed (`pr#40778 <https://github.com/ceph/ceph/pull/40778>`_, Xiubo Li) -* cmake: build static libs if they are internal ones (`pr#40789 <https://github.com/ceph/ceph/pull/40789>`_, Kefu Chai) -* cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT globaly (`pr#40784 <https://github.com/ceph/ceph/pull/40784>`_, Kefu Chai) -* common/buffer: adjust align before calling posix_memalign() (`pr#41247 <https://github.com/ceph/ceph/pull/41247>`_, Ilya Dryomov) -* common/ipaddr: Allow binding on lo (`pr#39343 <https://github.com/ceph/ceph/pull/39343>`_, Thomas Goirand) -* common/ipaddr: skip loopback interfaces named 'lo' and test it (`pr#40424 <https://github.com/ceph/ceph/pull/40424>`_, Dan van der Ster) -* common/mempool: Improve mempool shard selection (`pr#39978 <https://github.com/ceph/ceph/pull/39978>`_, singuliere, Adam Kupczyk) -* common/options/global.yaml.in: increase default value of bluestore_cache_trim_max_skip_pinned (`pr#40919 <https://github.com/ceph/ceph/pull/40919>`_, Neha Ojha) -* common/options: bluefs_buffered_io=true by default (`pr#40392 <https://github.com/ceph/ceph/pull/40392>`_, Dan van der Ster) -* common: Fix assertion when disabling and re-enabling clog_to_monitors (`pr#39935 <https://github.com/ceph/ceph/pull/39935>`_, Gerald Yang) -* common: remove log_early configuration option (`pr#40550 <https://github.com/ceph/ceph/pull/40550>`_, Changcheng Liu) -* crush/CrushLocation: do not print logging message in constructor (`pr#40791 <https://github.com/ceph/ceph/pull/40791>`_, Alex Wu) -* crush/CrushWrapper: update shadow trees on update_item() (`pr#39919 <https://github.com/ceph/ceph/pull/39919>`_, Sage Weil) -* debian/ceph-common.postinst: do not chown cephadm log dirs (`pr#40275 <https://github.com/ceph/ceph/pull/40275>`_, Sage Weil) -* doc/cephfs/nfs: Add note about cephadm NFS-Ganesha daemon port (`pr#40777 <https://github.com/ceph/ceph/pull/40777>`_, Varsha Rao) -* doc/cephfs/nfs: Add rook pod restart note, export and log block example (`pr#40766 <https://github.com/ceph/ceph/pull/40766>`_, Varsha Rao) -* doc: snap-schedule documentation (`pr#40775 <https://github.com/ceph/ceph/pull/40775>`_, Jan Fajerski) -* install-deps.sh: remove existing ceph-libboost of different version (`pr#40286 <https://github.com/ceph/ceph/pull/40286>`_, Kefu Chai) -* krbd: make sure the device node is accessible after the mapping (`pr#39968 <https://github.com/ceph/ceph/pull/39968>`_, Ilya Dryomov) -* librbd/api: avoid retrieving more than max mirror image info records (`pr#39964 <https://github.com/ceph/ceph/pull/39964>`_, Jason Dillaman) -* librbd/io: conditionally disable move optimization (`pr#39958 <https://github.com/ceph/ceph/pull/39958>`_, Jason Dillaman) -* librbd/io: send alloc_hint when compression hint is set (`pr#40386 <https://github.com/ceph/ceph/pull/40386>`_, Jason Dillaman) -* librbd/mirror/snapshot: avoid UnlinkPeerRequest with a unlinked peer (`pr#41302 <https://github.com/ceph/ceph/pull/41302>`_, Arthur Outhenin-Chalandre) -* librbd: allow interrupted trash move request to be restarted (`pr#40387 <https://github.com/ceph/ceph/pull/40387>`_, Jason Dillaman) -* librbd: explicitly disable readahead for writearound cache (`pr#39962 <https://github.com/ceph/ceph/pull/39962>`_, Jason Dillaman) -* librbd: refuse to release exclusive lock when removing (`pr#39966 <https://github.com/ceph/ceph/pull/39966>`_, Ilya Dryomov) -* mds: fix race of fetching large dirfrag (`pr#40774 <https://github.com/ceph/ceph/pull/40774>`_, Erqi Chen) -* mds: trim cache regularly for standby-replay (`pr#40743 <https://github.com/ceph/ceph/pull/40743>`_, Xiubo Li, Patrick Donnelly) -* mds: update defaults for recall configs (`pr#40764 <https://github.com/ceph/ceph/pull/40764>`_, Patrick Donnelly) -* mgr/PyModule: put mgr_module_path before Py_GetPath() (`pr#40534 <https://github.com/ceph/ceph/pull/40534>`_, Kefu Chai) -* mgr/cephadm: alias rgw-nfs -> nfs (`pr#40009 <https://github.com/ceph/ceph/pull/40009>`_, Michael Fritch) -* mgr/cephadm: on ssh connection error, advice chmod 0600 (`pr#40823 <https://github.com/ceph/ceph/pull/40823>`_, Sebastian Wagner) -* mgr/dashboard: Add badge to the Label column in Host List (`pr#40433 <https://github.com/ceph/ceph/pull/40433>`_, Nizamudeen A) -* mgr/dashboard: Device health status is not getting listed under hosts section (`pr#40495 <https://github.com/ceph/ceph/pull/40495>`_, Aashish Sharma) -* mgr/dashboard: Fix for alert notification message being undefined (`pr#40589 <https://github.com/ceph/ceph/pull/40589>`_, Nizamudeen A) -* mgr/dashboard: Fix for broken User management role cloning (`pr#40399 <https://github.com/ceph/ceph/pull/40399>`_, Nizamudeen A) -* mgr/dashboard: OSDs placement text is unreadable (`pr#41124 <https://github.com/ceph/ceph/pull/41124>`_, Aashish Sharma) -* mgr/dashboard: Remove redundant pytest requirement (`pr#40657 <https://github.com/ceph/ceph/pull/40657>`_, Kefu Chai) -* mgr/dashboard: Remove username and password from request body (`pr#41057 <https://github.com/ceph/ceph/pull/41057>`_, Nizamudeen A) -* mgr/dashboard: Remove username, password fields from Manager Modules/dashboard,influx (`pr#40491 <https://github.com/ceph/ceph/pull/40491>`_, Aashish Sharma) -* mgr/dashboard: Revoke read-only user's access to Manager modules (`pr#40649 <https://github.com/ceph/ceph/pull/40649>`_, Nizamudeen A) -* mgr/dashboard: Splitting tenant$user when creating rgw user (`pr#40297 <https://github.com/ceph/ceph/pull/40297>`_, Nizamudeen A) -* mgr/dashboard: additional logging to SMART data retrieval (`pr#37972 <https://github.com/ceph/ceph/pull/37972>`_, Kiefer Chang, Patrick Seidensal) -* mgr/dashboard: allow getting fresh inventory data from the orchestrator (`pr#41387 <https://github.com/ceph/ceph/pull/41387>`_, Kiefer Chang) -* mgr/dashboard: debug nodeenv hangs (`pr#40816 <https://github.com/ceph/ceph/pull/40816>`_, Ernesto Puerta) -* mgr/dashboard: filesystem pool size should use stored stat (`pr#41020 <https://github.com/ceph/ceph/pull/41020>`_, Avan Thakkar) -* mgr/dashboard: fix base-href: revert it to previous approach (`pr#41252 <https://github.com/ceph/ceph/pull/41252>`_, Avan Thakkar) -* mgr/dashboard: fix dashboard instance ssl certificate functionality (`pr#40001 <https://github.com/ceph/ceph/pull/40001>`_, Avan Thakkar) -* mgr/dashboard: improve telemetry opt-in reminder notification message (`pr#40894 <https://github.com/ceph/ceph/pull/40894>`_, Waad Alkhoury) -* mgr/dashboard: test prometheus rules through promtool (`pr#39987 <https://github.com/ceph/ceph/pull/39987>`_, Aashish Sharma, Kefu Chai) -* mgr/progress: ensure progress stays between [0,1] (`pr#41311 <https://github.com/ceph/ceph/pull/41311>`_, Dan van der Ster) -* mgr/rook: Add timezone info (`pr#39716 <https://github.com/ceph/ceph/pull/39716>`_, Varsha Rao) -* mgr/telemetry: check if 'ident' channel is active (`pr#39922 <https://github.com/ceph/ceph/pull/39922>`_, Sage Weil, Yaarit Hatuka) -* mgr/volumes: Retain suid guid bits in clone (`pr#40268 <https://github.com/ceph/ceph/pull/40268>`_, Kotresh HR) -* mgr: fix deadlock in ActivePyModules::get_osdmap() (`pr#39341 <https://github.com/ceph/ceph/pull/39341>`_, peng jiaqi) -* mgr: relax osd ok-to-stop condition on degraded pgs (`pr#39887 <https://github.com/ceph/ceph/pull/39887>`_, Xuehan Xu) -* mgr: update mon metadata when monmap is updated (`pr#39219 <https://github.com/ceph/ceph/pull/39219>`_, Kefu Chai) -* mon/ConfigMap: fix stray option leak (`pr#40298 <https://github.com/ceph/ceph/pull/40298>`_, Sage Weil) -* mon/MgrMonitor: populate available_modules from promote_standby() (`pr#40757 <https://github.com/ceph/ceph/pull/40757>`_, Sage Weil) -* mon/MonClient: reset authenticate_err in _reopen_session() (`pr#41017 <https://github.com/ceph/ceph/pull/41017>`_, Ilya Dryomov) -* mon/OSDMonitor: drop stale failure_info after a grace period (`pr#40558 <https://github.com/ceph/ceph/pull/40558>`_, Kefu Chai) -* mon/OSDMonitor: fix safety/idempotency of {set,rm}-device-class (`pr#40276 <https://github.com/ceph/ceph/pull/40276>`_, Sage Weil) -* mon: Modifying trim logic to change paxos_service_trim_max dynamically (`pr#40699 <https://github.com/ceph/ceph/pull/40699>`_, Aishwarya Mathuria) -* mon: check mdsmap is resizeable before promoting standby-replay (`pr#40783 <https://github.com/ceph/ceph/pull/40783>`_, Patrick Donnelly) -* monmaptool: Don't call set_port on an invalid address (`pr#40758 <https://github.com/ceph/ceph/pull/40758>`_, Brad Hubbard, Kefu Chai) -* mount.ceph: collect v2 addresses for non-legacy ms_mode options (`pr#40763 <https://github.com/ceph/ceph/pull/40763>`_, Jeff Layton) -* os/FileStore: don't propagate split/merge error to "create"/"remove" (`pr#40988 <https://github.com/ceph/ceph/pull/40988>`_, Mykola Golub) -* os/FileStore: fix to handle readdir error correctly (`pr#41237 <https://github.com/ceph/ceph/pull/41237>`_, Misono Tomohiro) -* os/bluestore/BlueFS: do not _flush_range deleted files (`pr#40793 <https://github.com/ceph/ceph/pull/40793>`_, weixinwei) -* os/bluestore/BlueFS: use iterator_impl::copy instead of bufferlist::c_str() to avoid bufferlist rebuild (`pr#39884 <https://github.com/ceph/ceph/pull/39884>`_, weixinwei) -* os/bluestore: Make Onode::put/get resiliant to split_cache (`pr#40441 <https://github.com/ceph/ceph/pull/40441>`_, Igor Fedotov, Adam Kupczyk) -* os/bluestore: be more verbose in _open_super_meta by default (`pr#41061 <https://github.com/ceph/ceph/pull/41061>`_, Igor Fedotov) -* osd/OSDMap: An empty bucket or OSD is not an error (`pr#39970 <https://github.com/ceph/ceph/pull/39970>`_, Brad Hubbard) -* osd: add osd_fast_shutdown_notify_mon option (default false) (`issue#46978 <http://tracker.ceph.com/issues/46978>`_, `pr#40013 <https://github.com/ceph/ceph/pull/40013>`_, Mauricio Faria de Oliveira) -* osd: compute OSD's space usage ratio via raw space utilization (`pr#41112 <https://github.com/ceph/ceph/pull/41112>`_, Igor Fedotov) -* osd: do not dump an osd multiple times (`pr#40788 <https://github.com/ceph/ceph/pull/40788>`_, Xue Yantao) -* osd: don't assert in-flight backfill is always in recovery list (`pr#41321 <https://github.com/ceph/ceph/pull/41321>`_, Mykola Golub) -* osd: fix potential null pointer dereference when sending ping (`pr#40277 <https://github.com/ceph/ceph/pull/40277>`_, Mykola Golub) -* osd: propagate base pool application_metadata to tiers (`pr#40274 <https://github.com/ceph/ceph/pull/40274>`_, Sage Weil) -* packaging: require ceph-common for immutable object cache daemon (`pr#40666 <https://github.com/ceph/ceph/pull/40666>`_, Ilya Dryomov) -* pybind/ceph_argparse.py: use a safe value for timeout (`pr#40476 <https://github.com/ceph/ceph/pull/40476>`_, Kefu Chai) -* pybind/cephfs: DT_REG and DT_LNK values are wrong (`pr#40770 <https://github.com/ceph/ceph/pull/40770>`_, Varsha Rao) -* pybind/mgr/balancer/module.py: assign weight-sets to all buckets before balancing (`pr#40127 <https://github.com/ceph/ceph/pull/40127>`_, Neha Ojha) -* pybind/mgr/dashboard: bump flake8 to 3.9.0 (`pr#40492 <https://github.com/ceph/ceph/pull/40492>`_, Kefu Chai, Volker Theile) -* qa/\*/thrash_cache_writeback_proxy_none.yaml: disable writeback overlay tests (`pr#39578 <https://github.com/ceph/ceph/pull/39578>`_, Neha Ojha) -* qa/ceph-ansible: Update ansible version and ceph_stable_release (`pr#40945 <https://github.com/ceph/ceph/pull/40945>`_, Brad Hubbard) -* qa/suites/krbd: address recent issues caused by newer kernels (`pr#40065 <https://github.com/ceph/ceph/pull/40065>`_, Ilya Dryomov) -* qa/suites/rados/cephadm/upgrade: change starting version by distro (`pr#40364 <https://github.com/ceph/ceph/pull/40364>`_, Sage Weil) -* qa/suites/rados/cephadm: rm ubuntu_18.04_podman (`pr#39949 <https://github.com/ceph/ceph/pull/39949>`_, Sebastian Wagner) -* qa/suites/rados/singletone: whitelist MON_DOWN when injecting msgr errors (`pr#40138 <https://github.com/ceph/ceph/pull/40138>`_, Sage Weil) -* qa/tasks/mgr/test_progress.py: remove calling of _osd_in_out_completed_events_count() (`pr#40225 <https://github.com/ceph/ceph/pull/40225>`_, Kamoltat) -* qa/tasks/mgr/test_progress: fix wait_until_equal (`pr#39360 <https://github.com/ceph/ceph/pull/39360>`_, Kamoltat) -* qa/tasks/vstart_runner.py: start max required mgrs (`pr#40792 <https://github.com/ceph/ceph/pull/40792>`_, Alfonso Martínez) -* qa/tests: advanced octopus initial version to 15.2.10 (`pr#41228 <https://github.com/ceph/ceph/pull/41228>`_, Yuri Weinstein) -* qa: add sleep for blocklisting to take effect (`pr#40773 <https://github.com/ceph/ceph/pull/40773>`_, Patrick Donnelly) -* qa: bump osd heartbeat grace for ffsb workload (`pr#40767 <https://github.com/ceph/ceph/pull/40767>`_, Patrick Donnelly) -* qa: delete all fs during tearDown (`pr#40772 <https://github.com/ceph/ceph/pull/40772>`_, Patrick Donnelly) -* qa: for the latest kclient it will also return EIO (`pr#40765 <https://github.com/ceph/ceph/pull/40765>`_, Xiubo Li) -* qa: krbd_blkroset.t: update for separate hw and user read-only flags (`pr#40211 <https://github.com/ceph/ceph/pull/40211>`_, Ilya Dryomov) -* rbd-mirror: bad state and crashes in snapshot-based mirroring (`pr#39961 <https://github.com/ceph/ceph/pull/39961>`_, Jason Dillaman) -* rbd-mirror: delay update snapshot mirror image state (`pr#39967 <https://github.com/ceph/ceph/pull/39967>`_, Jason Dillaman) -* rbd-mirror: fix UB while registering perf counters (`pr#40790 <https://github.com/ceph/ceph/pull/40790>`_, Arthur Outhenin-Chalandre) -* rbd/bench: include used headers (`pr#40388 <https://github.com/ceph/ceph/pull/40388>`_, Kefu Chai) -* rgw/amqp: fix race condition in amqp manager initialization (`pr#40382 <https://github.com/ceph/ceph/pull/40382>`_, Yuval Lifshitz) -* rgw/http: add timeout to http client (`pr#40384 <https://github.com/ceph/ceph/pull/40384>`_, Yuval Lifshitz) -* rgw/notification: support GetTopicAttributes API (`pr#40812 <https://github.com/ceph/ceph/pull/40812>`_, Yuval Lifshitz) -* rgw/notification: trigger notifications on changes from any user (`pr#40029 <https://github.com/ceph/ceph/pull/40029>`_, Yuval Lifshitz) -* rgw: Use correct bucket info when put or get large object with swift (`pr#40296 <https://github.com/ceph/ceph/pull/40296>`_, zhiming zhang, yupeng chen) -* rgw: add MD5 in forward_request (`pr#39758 <https://github.com/ceph/ceph/pull/39758>`_, caolei) -* rgw: allow rgw-orphan-list to handle intermediate files w/ binary data (`pr#39766 <https://github.com/ceph/ceph/pull/39766>`_, J. Eric Ivancich) -* rgw: catch non int exception (`pr#39746 <https://github.com/ceph/ceph/pull/39746>`_, caolei) -* rgw: during reshard lock contention, adjust logging (`pr#41157 <https://github.com/ceph/ceph/pull/41157>`_, J. Eric Ivancich) -* rgw: fix sts get_session_token duration check failed (`pr#39954 <https://github.com/ceph/ceph/pull/39954>`_, yuliyang_yewu) -* rgw: multisite: fix single-part-MPU object etag misidentify problem (`pr#39611 <https://github.com/ceph/ceph/pull/39611>`_, Yang Honggang) -* rgw: objectlock: improve client error messages (`pr#40755 <https://github.com/ceph/ceph/pull/40755>`_, Matt Benjamin) -* rgw: return error when trying to copy encrypted object without key (`pr#40672 <https://github.com/ceph/ceph/pull/40672>`_, Ilsoo Byun) -* rgw: tooling to locate rgw objects with missing rados components (`pr#39785 <https://github.com/ceph/ceph/pull/39785>`_, Michael Kidd, J. Eric Ivancich) -* run-make-check.sh: let ctest generate XML output (`pr#40406 <https://github.com/ceph/ceph/pull/40406>`_, Kefu Chai) -* src/global/signal_handler.h: fix preprocessor logic for alpine (`pr#39940 <https://github.com/ceph/ceph/pull/39940>`_, Duncan Bellamy) -* test/rbd-mirror: fix broken ceph_test_rbd_mirror_random_write (`pr#39965 <https://github.com/ceph/ceph/pull/39965>`_, Jason Dillaman) -* test/rgw: test_datalog_autotrim filters out new entries (`pr#40673 <https://github.com/ceph/ceph/pull/40673>`_, Casey Bodley) -* test: cancelling both noscrub \*and\* nodeep-scrub (`pr#40278 <https://github.com/ceph/ceph/pull/40278>`_, Ronen Friedman) -* test: reduce number of threads to 32 in LibCephFS.ShutdownRace (`pr#40776 <https://github.com/ceph/ceph/pull/40776>`_, Jeff Layton) -* test: use std::atomic<bool> instead of volatile for cb_done var (`pr#40708 <https://github.com/ceph/ceph/pull/40708>`_, Jeff Layton) -* tests: ceph_test_rados_api_watch_notify: Allow for reconnect (`pr#40756 <https://github.com/ceph/ceph/pull/40756>`_, Brad Hubbard) -* tools/cephfs: don't bind to public_addr (`pr#40762 <https://github.com/ceph/ceph/pull/40762>`_, "Yan, Zheng") -* vstart.sh: disable "auth_allow_insecure_global_id_reclaim" (`pr#40958 <https://github.com/ceph/ceph/pull/40958>`_, Kefu Chai) - -v15.2.12 Octopus -================ - -This is a hotfix release addressing a number of security issues and regressions. We recommend all users update to this release. - -Changelog ---------- - -* mgr/dashboard: fix base-href: revert it to previous approach (`issue#50684 <https://tracker.ceph.com/issues/50684>`_, Avan Thakkar) -* mgr/dashboard: fix cookie injection issue (:ref:`CVE-2021-3509`, Ernesto Puerta) -* rgw: RGWSwiftWebsiteHandler::is_web_dir checks empty subdir_name (:ref:`CVE-2021-3531`, Felix Huettner) -* rgw: sanitize \r in s3 CORSConfiguration's ExposeHeader (:ref:`CVE-2021-3524`, Sergey Bobrov, Casey Bodley) - - -v15.2.11 Octopus -================ - -This is the 11th bugfix release in the Octopus stable series. It addresses a -security vulnerability in the Ceph authentication framework. - -We recommend all Octopus users upgrade. - -Security fixes --------------- - -* This release includes a security fix that ensures the global_id - value (a numeric value that should be unique for every authenticated - client or daemon in the cluster) is reclaimed after a network - disconnect or ticket renewal in a secure fashion. Two new health - alerts may appear during the upgrade indicating that there are - clients or daemons that are not yet patched with the appropriate - fix. - - To temporarily mute the health alerts around insecure clients for the duration of the - upgrade, you may want to:: - - ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM 1h - ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM_ALLOWED 1h - - For more information, see :ref:`CVE-2021-20288`. - - -v15.2.10 Octopus -================ - -This is the 10th backport release in the Octopus series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* The containers include an updated tcmalloc that avoids crashes seen on 15.2.9. See `issue#49618 <https://tracker.ceph.com/issues/49618>`_ for details. - -* RADOS: BlueStore handling of huge(>4GB) writes from RocksDB to BlueFS has been fixed. - -* When upgrading from a previous cephadm release, systemctl may hang when trying to start or restart the monitoring containers. (This is caused by a change in the systemd unit to use ``type=forking``.) After the upgrade, please run:: - - ceph orch redeploy nfs - ceph orch redeploy iscsi - ceph orch redeploy node-exporter - ceph orch redeploy prometheus - ceph orch redeploy grafana - ceph orch redeploy alertmanager - -Changelog ---------- - -* octopus: .github: add workflow for adding label and milestone (`pr#39890 <https://github.com/ceph/ceph/pull/39890>`_, Kefu Chai, Ernesto Puerta) -* octopus: ceph-volume: Fix usage of is_lv (`pr#39220 <https://github.com/ceph/ceph/pull/39220>`_, Michał Nasiadka) -* octopus: ceph-volume: Update batch.py (`pr#39469 <https://github.com/ceph/ceph/pull/39469>`_, shenjiatong) -* octopus: ceph-volume: add some flexibility to bytes_to_extents (`pr#39271 <https://github.com/ceph/ceph/pull/39271>`_, Jan Fajerski) -* octopus: ceph-volume: pass --filter-for-batch from drive-group subcommand (`pr#39523 <https://github.com/ceph/ceph/pull/39523>`_, Jan Fajerski) -* octopus: cephadm: Delete the unnecessary error line in open_ports (`pr#39633 <https://github.com/ceph/ceph/pull/39633>`_, Donggyu Park) -* octopus: cephadm: fix 'inspect' and 'pull' (`pr#39715 <https://github.com/ceph/ceph/pull/39715>`_, Sage Weil) -* octopus: cephfs: pybind/ceph_volume_client: Update the 'volumes' key to 'subvolumes' in auth-metadata file (`pr#39906 <https://github.com/ceph/ceph/pull/39906>`_, Kotresh HR) -* octopus: cmake: boost>=1.74 adds BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT to radosgw (`pr#39885 <https://github.com/ceph/ceph/pull/39885>`_, Casey Bodley) -* octopus: librbd: allow disabling journaling for snapshot based mirroring image (`pr#39864 <https://github.com/ceph/ceph/pull/39864>`_, Mykola Golub) -* octopus: librbd: correct incremental deep-copy object-map inconsistencies (`pr#39577 <https://github.com/ceph/ceph/pull/39577>`_, Mykola Golub, Jason Dillaman) -* octopus: librbd: don't log error if get mirror status fails due to mirroring disabled (`pr#39862 <https://github.com/ceph/ceph/pull/39862>`_, Mykola Golub) -* octopus: librbd: use on-disk image name when storing mirror snapshot state (`pr#39866 <https://github.com/ceph/ceph/pull/39866>`_, Mykola Golub) -* octopus: mgr/dashboard/monitoring: upgrade Grafana version due to CVE-2020-13379 (`pr#39306 <https://github.com/ceph/ceph/pull/39306>`_, Alfonso Martínez) -* octopus: mgr/dashboard: CLI commands: read passwords from file (`pr#39436 <https://github.com/ceph/ceph/pull/39436>`_, Ernesto Puerta, Alfonso Martínez, Juan Miguel Olmo Martínez) -* octopus: mgr/dashboard: Fix for incorrect validation in rgw user form (`pr#39027 <https://github.com/ceph/ceph/pull/39027>`_, Nizamudeen A) -* octopus: mgr/dashboard: Fix missing root path of each session for CephFS (`pr#39868 <https://github.com/ceph/ceph/pull/39868>`_, Yongseok Oh) -* octopus: mgr/dashboard: Monitoring alert badge includes suppressed alerts (`pr#39512 <https://github.com/ceph/ceph/pull/39512>`_, Aashish Sharma) -* octopus: mgr/dashboard: add ssl verify option for prometheus and alert manager (`pr#39872 <https://github.com/ceph/ceph/pull/39872>`_, Jean "henyxia" Wasilewski) -* octopus: mgr/dashboard: avoid using document.write() (`pr#39527 <https://github.com/ceph/ceph/pull/39527>`_, Avan Thakkar) -* octopus: mgr/dashboard: delete EOF when reading passwords from file (`pr#40155 <https://github.com/ceph/ceph/pull/40155>`_, Alfonso Martínez) -* octopus: mgr/dashboard: fix MTU Mismatch alert (`pr#39854 <https://github.com/ceph/ceph/pull/39854>`_, Aashish Sharma) -* octopus: mgr/dashboard: fix issues related with PyJWT versions >=2.0.0 (`pr#39836 <https://github.com/ceph/ceph/pull/39836>`_, Alfonso Martínez) -* octopus: mgr/dashboard: fix tooltip for Provisioned/Total Provisioned fields (`pr#39645 <https://github.com/ceph/ceph/pull/39645>`_, Avan Thakkar) -* octopus: mgr/dashboard: prometheus alerting: add some leeway for package drops and errors (`pr#39507 <https://github.com/ceph/ceph/pull/39507>`_, Patrick Seidensal) -* octopus: mgr/dashboard: report mgr fsid (`pr#39852 <https://github.com/ceph/ceph/pull/39852>`_, Ernesto Puerta) -* octopus: mgr/dashboard: set security headers (`pr#39627 <https://github.com/ceph/ceph/pull/39627>`_, Avan Thakkar) -* octopus: mgr/dashboard: trigger alert if some nodes have a MTU different than the median value (`pr#39103 <https://github.com/ceph/ceph/pull/39103>`_, Aashish Sharma) -* octopus: mgr/dashboard:minimize console log traces of Ceph backend API tests (`pr#39545 <https://github.com/ceph/ceph/pull/39545>`_, Aashish Sharma) -* octopus: mgr/rbd_support: create mirror snapshots asynchronously (`pr#39376 <https://github.com/ceph/ceph/pull/39376>`_, Mykola Golub, Kefu Chai) -* octopus: mgr/rbd_support: mirror snapshot schedule should skip non-primary images (`pr#39863 <https://github.com/ceph/ceph/pull/39863>`_, Mykola Golub) -* octopus: mgr/volume: subvolume auth_id management and few bug fixes (`pr#39390 <https://github.com/ceph/ceph/pull/39390>`_, Rishabh Dave, Patrick Donnelly, Kotresh HR, Ramana Raja) -* octopus: mgr/zabbix: format ceph.[{#POOL},percent_used as float (`pr#39235 <https://github.com/ceph/ceph/pull/39235>`_, Kefu Chai) -* octopus: os/bluestore: Add option to check BlueFS reads (`pr#39754 <https://github.com/ceph/ceph/pull/39754>`_, Adam Kupczyk) -* octopus: os/bluestore: fix huge reads/writes at BlueFS (`pr#39701 <https://github.com/ceph/ceph/pull/39701>`_, Jianpeng Ma, Igor Fedotov) -* octopus: os/bluestore: introduce bluestore_rocksdb_options_annex config parame… (`pr#39325 <https://github.com/ceph/ceph/pull/39325>`_, Igor Fedotov) -* octopus: qa/suites/rados/dashboard: whitelist TELEMETRY_CHANGED (`pr#39704 <https://github.com/ceph/ceph/pull/39704>`_, Sage Weil) -* octopus: qa/suites/upgrade: s/whitelist/ignorelist for octopus specific tests (`pr#40074 <https://github.com/ceph/ceph/pull/40074>`_, Deepika Upadhyay) -* octopus: qa: use normal build for valgrind (`pr#39583 <https://github.com/ceph/ceph/pull/39583>`_, Sage Weil) -* octopus: rbd-mirror: reset update_status_task pointer in timer thread (`pr#39867 <https://github.com/ceph/ceph/pull/39867>`_, Mykola Golub) -* octopus: rgw: fix trailing null in object names of multipart reuploads (`pr#39277 <https://github.com/ceph/ceph/pull/39277>`_, Casey Bodley) -* octopus: rgw: radosgw-admin: clarify error when email address already in use (`pr#39662 <https://github.com/ceph/ceph/pull/39662>`_, Matthew Vernon) -* octopus: whitelist -> ignorelist for qa/\* only (`pr#39534 <https://github.com/ceph/ceph/pull/39534>`_, Neha Ojha, Sage Weil) -* qa/tests: fixed branch entry (`pr#39819 <https://github.com/ceph/ceph/pull/39819>`_, Yuri Weinstein) - - -v15.2.9 Octopus -=============== - -This is the 9th backport release in the Octopus series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* MGR: progress module can now be turned on/off, using the commands: - ``ceph progress on`` and ``ceph progress off``. - -* OSD: PG removal has been optimized in this release. - -Changelog ---------- - -* octopus: Do not add sensitive information in Ceph log files (`pr#38620 <https://github.com/ceph/ceph/pull/38620>`_, Neha Ojha) -* octopus: PendingReleaseNotes: mgr/pg_autoscaler (`pr#39393 <https://github.com/ceph/ceph/pull/39393>`_, Kamoltat) -* octopus: Revert "mgr/pg_autoscaler: avoid scale-down until there is pressure" (`pr#39560 <https://github.com/ceph/ceph/pull/39560>`_, Neha Ojha) -* octopus: bluestore: Make mempool assignment same after bufferlist rebuild (`pr#38429 <https://github.com/ceph/ceph/pull/38429>`_, Adam Kupczyk) -* octopus: bluestore: Support flock retry (`pr#37860 <https://github.com/ceph/ceph/pull/37860>`_, wanghongxu) -* octopus: bluestore: attach csum for compressed blobs (`pr#37861 <https://github.com/ceph/ceph/pull/37861>`_, Igor Fedotov) -* octopus: bluestore: fix "end reached" check in collection_list_legacy (`pr#38098 <https://github.com/ceph/ceph/pull/38098>`_, Mykola Golub) -* octopus: bluestore: provide a different name for fallback allocator (`pr#37794 <https://github.com/ceph/ceph/pull/37794>`_, Igor Fedotov) -* octopus: build/ops: doc: pass --use-feature=2020-resolver to pip (`pr#37859 <https://github.com/ceph/ceph/pull/37859>`_, Kefu Chai) -* octopus: ceph-volume: lvm/create.py: fix a typo in the help message (`pr#38425 <https://github.com/ceph/ceph/pull/38425>`_, ZhenLiu94) -* octopus: cephadm: Don't make sysctl spam the log file (`pr#39020 <https://github.com/ceph/ceph/pull/39020>`_, Sebastian Wagner) -* octopus: cephadm: Revert "spec: Podman (temporarily) requires apparmor-abstractions on suse" (`pr#37766 <https://github.com/ceph/ceph/pull/37766>`_, Nathan Cutler) -* octopus: cephadm: Various properties like 'last_refresh' do not contain timezone (`pr#39059 <https://github.com/ceph/ceph/pull/39059>`_, Volker Theile) -* octopus: cephadm: batch backport January (1) (`pr#38782 <https://github.com/ceph/ceph/pull/38782>`_, Ricardo Marques, Patrick Donnelly, Ken Dreyer, Paul Cuzner, Daniel-Pivonka, Juan Miguel Olmo Martínez, Volker Theile, Sebastian Wagner, Varsha Rao, Adam King, Patrick Seidensal, Michael Fritch, Dan Mick) -* octopus: cephadm: fix rgw osd cap tag (`pr#39170 <https://github.com/ceph/ceph/pull/39170>`_, Patrick Donnelly) -* octopus: cephadm: make "ceph orch {restart|...}" asynchronous (`pr#39018 <https://github.com/ceph/ceph/pull/39018>`_, Sebastian Wagner) -* octopus: cephadm: silence "Failed to evict container" log msg (`pr#39166 <https://github.com/ceph/ceph/pull/39166>`_, Sebastian Wagner, Sage Weil) -* octopus: cephadm: use `apt-get` for package install/update (`pr#39297 <https://github.com/ceph/ceph/pull/39297>`_, Michael Fritch) -* octopus: cephfs: client: add ceph.{cluster_fsid/client_id} vxattrs suppport (`pr#39000 <https://github.com/ceph/ceph/pull/39000>`_, Xiubo Li) -* octopus: cephfs: client: check rdonly file handle on truncate (`pr#38424 <https://github.com/ceph/ceph/pull/38424>`_, Patrick Donnelly) -* octopus: cephfs: client: do not use g_conf().get_val<>() in libcephfs (`pr#38466 <https://github.com/ceph/ceph/pull/38466>`_, Xiubo Li) -* octopus: cephfs: client: ensure we take Fs caps when fetching directory link count from cached inode (`pr#38949 <https://github.com/ceph/ceph/pull/38949>`_, Jeff Layton) -* octopus: cephfs: client: increment file position on _read_sync near eof (`pr#37989 <https://github.com/ceph/ceph/pull/37989>`_, Patrick Donnelly) -* octopus: cephfs: client: set CEPH_STAT_RSTAT mask for dir in readdir_r_cb (`pr#38947 <https://github.com/ceph/ceph/pull/38947>`_, chencan) -* octopus: cephfs: mds: dir->mark_new() should together with dir->mark_dirty() (`pr#38352 <https://github.com/ceph/ceph/pull/38352>`_, "Yan, Zheng") -* octopus: cephfs: mds: move start_files_to_recover() to recovery_done (`pr#37985 <https://github.com/ceph/ceph/pull/37985>`_, Simon Gao) -* octopus: cephfs: osdc: restart read on truncate/discard (`pr#37987 <https://github.com/ceph/ceph/pull/37987>`_, Patrick Donnelly) -* octopus: cephfs: release client dentry_lease before send caps release to mds (`pr#38349 <https://github.com/ceph/ceph/pull/38349>`_, Wei Qiaomiao) -* octopus: client: dump which fs is used by client for multiple-fs (`pr#38551 <https://github.com/ceph/ceph/pull/38551>`_, Zhi Zhang) -* octopus: cmake: add empty RPATH to ceph-diff-sorted (`pr#38847 <https://github.com/ceph/ceph/pull/38847>`_, Nathan Cutler) -* octopus: cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT for Boost.Asio users (`pr#38759 <https://github.com/ceph/ceph/pull/38759>`_, Kefu Chai) -* octopus: cmake: detect and use sigdescr_np() if available (`pr#38951 <https://github.com/ceph/ceph/pull/38951>`_, David Disseldorp) -* octopus: do_cmake.sh: use python-3.9 with fedora version 33 (`pr#38943 <https://github.com/ceph/ceph/pull/38943>`_, Sunny Kumar) -* octopus: doc: document MDS cache configuration (`pr#38202 <https://github.com/ceph/ceph/pull/38202>`_, Patrick Donnelly) -* octopus: global: reexpand conf meta in child process (`pr#38340 <https://github.com/ceph/ceph/pull/38340>`_, Xiubo Li) -* octopus: install-deps.sh: Make powertools repo case insensitive (`pr#38808 <https://github.com/ceph/ceph/pull/38808>`_, Brad Hubbard) -* octopus: krbd: add support for msgr2 (kernel 5.11) (`pr#39203 <https://github.com/ceph/ceph/pull/39203>`_, Ilya Dryomov) -* octopus: librbd: clear implicitly enabled feature bits when creating images (`pr#39122 <https://github.com/ceph/ceph/pull/39122>`_, Jason Dillaman) -* octopus: librbd: fix regression in object map diff request (`pr#38455 <https://github.com/ceph/ceph/pull/38455>`_, Mykola Golub, Jason Dillaman) -* octopus: librbd: update hidden global config when removing pool config override (`pr#38343 <https://github.com/ceph/ceph/pull/38343>`_, Jason Dillaman) -* octopus: mds: dump granular cap info in mds_sessions (`pr#37362 <https://github.com/ceph/ceph/pull/37362>`_, Yanhu Cao) -* octopus: mds: provide altrenatives to increase the total cephfs subvolume snapshot counts to greater than the current 400 across a Cephfs volume (`pr#38553 <https://github.com/ceph/ceph/pull/38553>`_, "Yan, Zheng") -* octopus: mds: throttle cap acquisition via readdir (`pr#38095 <https://github.com/ceph/ceph/pull/38095>`_, Kotresh HR) -* octopus: mgr/ActivePyModules.cc: always release GIL before attempting to acquire a lock (`pr#38801 <https://github.com/ceph/ceph/pull/38801>`_, Cory Snyder) -* octopus: mgr/balancer: fix available pgs sent to calc_pg_upmaps (`pr#38337 <https://github.com/ceph/ceph/pull/38337>`_, Dan van der Ster) -* octopus: mgr/cephadm: fix host refresh (`pr#39532 <https://github.com/ceph/ceph/pull/39532>`_, Sage Weil) -* octopus: mgr/cephadm: lock multithreaded access to OSDRemovalQueue (`pr#39019 <https://github.com/ceph/ceph/pull/39019>`_, Sebastian Wagner) -* octopus: mgr/cephadm: raise HEALTH_WARN when cephadm daemon in 'error' state (`pr#39169 <https://github.com/ceph/ceph/pull/39169>`_, Sage Weil) -* octopus: mgr/cephadm: tolerate old host inventory without 'hostname' key (`pr#39167 <https://github.com/ceph/ceph/pull/39167>`_, Sage Weil) -* octopus: mgr/cephadm: try again calling ceph-volume without --filter-for-batch (`pr#39300 <https://github.com/ceph/ceph/pull/39300>`_, Sebastian Wagner) -* octopus: mgr/crash: Serialize command handling (`pr#38592 <https://github.com/ceph/ceph/pull/38592>`_, Boris Ranto) -* octopus: mgr/dashboard: Add clay plugin support (`pr#38489 <https://github.com/ceph/ceph/pull/38489>`_, Stephan Müller) -* octopus: mgr/dashboard: Create Ceph services via Orchestrator by using ServiceSpec (`pr#38888 <https://github.com/ceph/ceph/pull/38888>`_, Volker Theile) -* octopus: mgr/dashboard: Display a warning message in Dashboard when debug mode is enabled (`pr#38798 <https://github.com/ceph/ceph/pull/38798>`_, Volker Theile) -* octopus: mgr/dashboard: Drop invalid RGW client instances, improve logging (`pr#38583 <https://github.com/ceph/ceph/pull/38583>`_, Volker Theile) -* octopus: mgr/dashboard: Fix CRUSH map viewer VirtualScroll (`pr#38607 <https://github.com/ceph/ceph/pull/38607>`_, Avan Thakkar) -* octopus: mgr/dashboard: Fix for misleading "Orchestrator is not available" error (`pr#38598 <https://github.com/ceph/ceph/pull/38598>`_, Nizamudeen A) -* octopus: mgr/dashboard: Fixing dashboard logs e2e test (`pr#38797 <https://github.com/ceph/ceph/pull/38797>`_, Nizamudeen A) -* octopus: mgr/dashboard: Prevent table items from getting selected while expanding (`pr#37930 <https://github.com/ceph/ceph/pull/37930>`_, Nizamudeen A) -* octopus: mgr/dashboard: RGW User Form is validating disabled fields (`pr#38594 <https://github.com/ceph/ceph/pull/38594>`_, Aashish Sharma) -* octopus: mgr/dashboard: Temporary User Lockout if 10 Invalid Login attempts (`pr#38810 <https://github.com/ceph/ceph/pull/38810>`_, Nizamudeen A) -* octopus: mgr/dashboard: The /rgw/status endpoint does not check for running service (`pr#38770 <https://github.com/ceph/ceph/pull/38770>`_, Volker Theile) -* octopus: mgr/dashboard: Updating the inbuilt ssl providers error (`pr#38508 <https://github.com/ceph/ceph/pull/38508>`_, Nizamudeen A) -* octopus: mgr/dashboard: Use secure cookies to store JWT Token (`pr#39120 <https://github.com/ceph/ceph/pull/39120>`_, Avan Thakkar, Aashish Sharma) -* octopus: mgr/dashboard: add `--ssl` to `ng serve` (`pr#38973 <https://github.com/ceph/ceph/pull/38973>`_, Tatjana Dehler) -* octopus: mgr/dashboard: adjust refresh intervals of Services and Daemons (`pr#38597 <https://github.com/ceph/ceph/pull/38597>`_, Kiefer Chang) -* octopus: mgr/dashboard: allow selecting all daemons for Orchestrator NFS clusters (`pr#38496 <https://github.com/ceph/ceph/pull/38496>`_, Kiefer Chang) -* octopus: mgr/dashboard: assign flags to single OSDs (`pr#38469 <https://github.com/ceph/ceph/pull/38469>`_, Tatjana Dehler) -* octopus: mgr/dashboard: disable cluster selection in NFS export editing form (`pr#37969 <https://github.com/ceph/ceph/pull/37969>`_, Kiefer Chang) -* octopus: mgr/dashboard: display placement column in service table (`pr#38336 <https://github.com/ceph/ceph/pull/38336>`_, Volker Theile) -* octopus: mgr/dashboard: enable different URL for users of browser to Grafana (`pr#38761 <https://github.com/ceph/ceph/pull/38761>`_, Patrick Seidensal) -* octopus: mgr/dashboard: fix Reads/Writes ratio of Clients IOPS donut chart (`pr#38867 <https://github.com/ceph/ceph/pull/38867>`_, Kiefer Chang) -* octopus: mgr/dashboard: remove pyOpenSSL version pinning (`pr#38503 <https://github.com/ceph/ceph/pull/38503>`_, Kiefer Chang) -* octopus: mgr/dashboard: test_standby\* (tasks.mgr.test_dashboard.TestDashboard) failed locally (`pr#38526 <https://github.com/ceph/ceph/pull/38526>`_, Volker Theile) -* octopus: mgr/pg_autoscaler: avoid scale-down until there is pressure (`pr#39248 <https://github.com/ceph/ceph/pull/39248>`_, Kamoltat) -* octopus: mgr/progress: introduce turn off/on feature (`pr#39289 <https://github.com/ceph/ceph/pull/39289>`_, kamoltat) -* octopus: mgr/prometheus: Fix 'pool filling up' with >50% usage (`pr#38593 <https://github.com/ceph/ceph/pull/38593>`_, Daniël Vos) -* octopus: mgr/prometheus: Sync and backport prometheus fixes (`pr#38333 <https://github.com/ceph/ceph/pull/38333>`_, Paul Cuzner, Boris Ranto, Kefu Chai, Ken Dreyer) -* octopus: mgr/rbd_support: store global schedule without localized prefix (`pr#38342 <https://github.com/ceph/ceph/pull/38342>`_, Mykola Golub) -* octopus: mgr/restful: fix TypeError occurring in _gather_osds() (`issue#48488 <http://tracker.ceph.com/issues/48488>`_, `pr#38595 <https://github.com/ceph/ceph/pull/38595>`_, Jerry Pu) -* octopus: mgr/volumes: Add a per subvolume trash (`pr#38612 <https://github.com/ceph/ceph/pull/38612>`_, Venky Shankar, Shyamsundar Ranganathan) -* octopus: mgr/volumes: Implement subvolume version v2 (`pr#36803 <https://github.com/ceph/ceph/pull/36803>`_, Shyamsundar Ranganathan) -* octopus: mgr: Fix for dashboard/prometheus failure due to laggy pg state (`pr#38596 <https://github.com/ceph/ceph/pull/38596>`_, Alexander Sushko) -* octopus: mgr: don't update osd stat which is already out (`pr#38353 <https://github.com/ceph/ceph/pull/38353>`_, Zhi Zhang) -* octopus: mon: paxos: Delete logger in destructor (`pr#39161 <https://github.com/ceph/ceph/pull/39161>`_, Brad Hubbard) -* octopus: mon: validate crush-failure-domain (`pr#38347 <https://github.com/ceph/ceph/pull/38347>`_, Prashant Dhange) -* octopus: monitoring: Use null yaxes min for OSD read latency (`pr#37960 <https://github.com/ceph/ceph/pull/37960>`_, Seena Fallah) -* octopus: msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing, again (`pr#38267 <https://github.com/ceph/ceph/pull/38267>`_, Ilya Dryomov) -* octopus: ocf: add support for mapping images within an RBD namespace (`pr#39046 <https://github.com/ceph/ceph/pull/39046>`_, Jason Dillaman) -* octopus: os/bluestore: detect and fix "zombie" spanning blobs using fsck (`pr#39256 <https://github.com/ceph/ceph/pull/39256>`_, Igor Fedotov) -* octopus: os/bluestore: fix huge (>4GB) bluefs reads (`pr#39253 <https://github.com/ceph/ceph/pull/39253>`_, Igor Fedotov) -* octopus: os/bluestore: fix inappropriate ENOSPC from avl/hybrid allocator (`pr#38474 <https://github.com/ceph/ceph/pull/38474>`_, Igor Fedotov) -* octopus: os/bluestore: fix segfault on out-of-bound offset provided to claim_free_to_right() call (`pr#38428 <https://github.com/ceph/ceph/pull/38428>`_, Igor Fedotov) -* octopus: os/bluestore: fixing onode pinning and more (`pr#39230 <https://github.com/ceph/ceph/pull/39230>`_, Adam Kupczyk, Igor Fedotov) -* octopus: osd: fix bluestore bitmap allocator calculate wrong last_pos with hint (`pr#38430 <https://github.com/ceph/ceph/pull/38430>`_, Xue Yantao) -* octopus: osd: optimize PG removal (part1) (`pr#38477 <https://github.com/ceph/ceph/pull/38477>`_, Igor Fedotov) -* octopus: pybind/cephfs: fix missing terminating NULL char in readlink()'s C string (`pr#38893 <https://github.com/ceph/ceph/pull/38893>`_, Tuan Hoang) -* octopus: pybind/mgr/rbd_support: delay creation of progress module events (`pr#38344 <https://github.com/ceph/ceph/pull/38344>`_, Jason Dillaman) -* octopus: python-common/drivegroups: avoid dropping "rotational: 0" from Device Selection (`issue#49014 <http://tracker.ceph.com/issues/49014>`_, `pr#39171 <https://github.com/ceph/ceph/pull/39171>`_, Lukas Stockner) -* octopus: python-common: fix test_datetime_to_str_2 on non-UTC hosts (`pr#39296 <https://github.com/ceph/ceph/pull/39296>`_, Sage Weil) -* octopus: qa/cephadm: Add yaml output to smoke test (`pr#39168 <https://github.com/ceph/ceph/pull/39168>`_, Sebastian Wagner) -* octopus: qa/mgr: mgr_test_case: raise SkipTest instead of calling skipTest() (`pr#38165 <https://github.com/ceph/ceph/pull/38165>`_, Rishabh Dave) -* octopus: qa/tasks/cephfs/nfs: Check if host ip is in cluster info output (`pr#39004 <https://github.com/ceph/ceph/pull/39004>`_, Varsha Rao) -* octopus: qa/tasks/mgr/test_progress: update test suite to check for specific progress events (`pr#38555 <https://github.com/ceph/ceph/pull/38555>`_, Kamoltat) -* octopus: qa/tasks/vstart_runner: do not teardown test_path if "create-cluster-only" (`pr#39540 <https://github.com/ceph/ceph/pull/39540>`_, Kefu Chai) -* octopus: qa/workunits/rbd: fix permission issue when removing mirror peer (`pr#38341 <https://github.com/ceph/ceph/pull/38341>`_, Jason Dillaman) -* octopus: qa: accept timeout argument in run_shell (`pr#38550 <https://github.com/ceph/ceph/pull/38550>`_, Patrick Donnelly) -* octopus: qa: ignore evicted client warnings (`pr#38422 <https://github.com/ceph/ceph/pull/38422>`_, Patrick Donnelly) -* octopus: qa: ignore logrotate state rename error (`pr#37690 <https://github.com/ceph/ceph/pull/37690>`_, Patrick Donnelly) -* octopus: qa: krbd_stable_pages_required.sh: move to stable_writes attribute (`pr#39321 <https://github.com/ceph/ceph/pull/39321>`_, Ilya Dryomov) -* octopus: qa: tox failures (`pr#38626 <https://github.com/ceph/ceph/pull/38626>`_, Patrick Donnelly) -* octopus: qa: unmount volumes before removal (`pr#38688 <https://github.com/ceph/ceph/pull/38688>`_, Patrick Donnelly) -* octopus: rgw/multisite: Verify if the synced object is identical to source (`pr#38981 <https://github.com/ceph/ceph/pull/38981>`_, Prasad Krishnan, Casey Bodley) -* octopus: rgw/rgw-admin: fixes BucketInfo for missing buckets (`pr#38184 <https://github.com/ceph/ceph/pull/38184>`_, Nick Janus, caolei) -* octopus: rgw: S3 Put Bucket Policy should return 204 on success (`pr#38420 <https://github.com/ceph/ceph/pull/38420>`_, Matthew Oliver) -* octopus: rgw: adding user related web token claims to ops log (`pr#38970 <https://github.com/ceph/ceph/pull/38970>`_, Pritha Srivastava) -* octopus: rgw: avoid expiration early triggering caused by overflow (`pr#38421 <https://github.com/ceph/ceph/pull/38421>`_, jiahuizeng) -* octopus: rgw: cls/rgw/cls_rgw.cc: fix multiple lastest version problem (`pr#38086 <https://github.com/ceph/ceph/pull/38086>`_, Yang Honggang, Ruan Zitao) -* octopus: rgw: cls/user: set from_index for reset stats calls (`pr#38821 <https://github.com/ceph/ceph/pull/38821>`_, Mykola Golub, Abhishek Lekshmanan) -* octopus: rgw: distribute cache for exclusive put (`pr#38971 <https://github.com/ceph/ceph/pull/38971>`_, Or Friedmann) -* octopus: rgw: fix bucket limit check fill_status warnings (`issue#40255 <http://tracker.ceph.com/issues/40255>`_, `pr#38826 <https://github.com/ceph/ceph/pull/38826>`_, Paul Emmerich) -* octopus: rgw: fix invalid payload issue when serving s3website error page (`pr#38339 <https://github.com/ceph/ceph/pull/38339>`_, Ilsoo Byun) -* octopus: rgw: keep syncstopped flag when copying bucket shard headers (`pr#38338 <https://github.com/ceph/ceph/pull/38338>`_, Ilsoo Byun) -* octopus: rgw: lc: correctly dimension lc shard index vector (`pr#38824 <https://github.com/ceph/ceph/pull/38824>`_, Matt Benjamin) -* octopus: rgw_file: return common_prefixes in lexical order (`pr#38829 <https://github.com/ceph/ceph/pull/38829>`_, Matt Benjamin) -* octopus: rpm,deb: change sudoers file mode to 440 (`pr#38427 <https://github.com/ceph/ceph/pull/38427>`_, David Turner) -* octopus: rpm: require smartmontools on SUSE (`pr#38755 <https://github.com/ceph/ceph/pull/38755>`_, Nathan Cutler) -* octopus: test/run-cli-tests: use cram from github (`pr#39071 <https://github.com/ceph/ceph/pull/39071>`_, Kefu Chai) -* octopus: tests: qa/task/cephadm: run cephadm only on bootstrap_remote (`pr#38040 <https://github.com/ceph/ceph/pull/38040>`_, Kyr Shatskyy) - -v15.2.8 Octopus -=============== - -This is the 8th backport release in the Octopus series. This release fixes -a security flaw in CephFS and includes a number of bug fixes. We recommend -users to update to this release. - -Notable Changes ---------------- - -* CVE-2020-27781 : OpenStack Manila use of ceph_volume_client.py library allowed - tenant access to any Ceph credential's secret. (Kotresh Hiremath Ravishankar, - Ramana Raja) - -* ceph-volume: The ``lvm batch`` subcommand received a major rewrite. This closed - a number of bugs and improves usability in terms of size specification and - calculation, as well as idempotency behaviour and disk replacement process. - Please refer to https://docs.ceph.com/en/latest/ceph-volume/lvm/batch/ for - more detailed information. - -* MON: The cluster log now logs health detail every ``mon_health_to_clog_interval``, - which has been changed from 1hr to 10min. Logging of health detail will be - skipped if there is no change in health summary since last known. - -* The ``ceph df`` command now lists the number of pgs in each pool. - -* The ``bluefs_preextend_wal_files`` option has been removed. - -* It is now possible to specify the initial monitor to contact for Ceph tools - and daemons using the ``mon_host_override`` config option or - ``--mon-host-override <ip>`` command-line switch. This generally should only - be used for debugging and only affects initial communication with Ceph's - monitor cluster. - - -Changelog ---------- - -* pybind/ceph_volume_client: disallow authorize on existing auth ids (Kotresh - Hiremath Ravishankar, Ramana Raja) -* Enable per-RBD image monitoring (`pr#37697 <https://github.com/ceph/ceph/pull/37697>`_, Patrick Seidensal) -* [ceph-volume]: remove unneeded call to get_devices() (`pr#37412 <https://github.com/ceph/ceph/pull/37412>`_, Marc Gariepy) -* bluestore: fix collection_list ordering (`pr#37048 <https://github.com/ceph/ceph/pull/37048>`_, Mykola Golub) -* bluestore: mempool's finer granularity + adding missed structs (`pr#37264 <https://github.com/ceph/ceph/pull/37264>`_, Deepika Upadhyay, Igor Fedotov, Adam Kupczyk) -* bluestore: remove preextended WAL support (`pr#37373 <https://github.com/ceph/ceph/pull/37373>`_, Igor Fedotov) -* ceph-volume batch: reject partitions in argparser (`pr#38280 <https://github.com/ceph/ceph/pull/38280>`_, Jan Fajerski) -* ceph-volume inventory: make libstoragemgmt data retrieval optional (`pr#38299 <https://github.com/ceph/ceph/pull/38299>`_, Jan Fajerski) -* ceph-volume: add libstoragemgmt support (`pr#36852 <https://github.com/ceph/ceph/pull/36852>`_, Paul Cuzner, Satoru Takeuchi) -* ceph-volume: add no-systemd argument to zap (`pr#37722 <https://github.com/ceph/ceph/pull/37722>`_, wanghongxu) -* ceph-volume: avoid format strings for now (`pr#37345 <https://github.com/ceph/ceph/pull/37345>`_, Jan Fajerski) -* ceph-volume: consume mount opt in simple activate (`pr#38014 <https://github.com/ceph/ceph/pull/38014>`_, Dimitri Savineau) -* ceph-volume: fix filestore/dmcrypt activate (`pr#38199 <https://github.com/ceph/ceph/pull/38199>`_, Guillaume Abrioux) -* ceph-volume: fix journal size argument not work (`pr#37344 <https://github.com/ceph/ceph/pull/37344>`_, wanghongxu) -* ceph-volume: fix lvm batch auto with full SSDs (`pr#38045 <https://github.com/ceph/ceph/pull/38045>`_, Dimitri Savineau, Guillaume Abrioux) -* ceph-volume: fix simple activate when legacy osd (`pr#37194 <https://github.com/ceph/ceph/pull/37194>`_, Guillaume Abrioux) -* ceph-volume: implement the --log-level flag (`pr#38426 <https://github.com/ceph/ceph/pull/38426>`_, Andrew Schoen) -* ceph-volume: major batch refactor (`pr#37520 <https://github.com/ceph/ceph/pull/37520>`_, Jan Fajerski, Joshua Schmid) -* ceph-volume: prepare: use \*-slots arguments for implicit sizing (`pr#38205 <https://github.com/ceph/ceph/pull/38205>`_, Jan Fajerski) -* ceph-volume: remove mention of dmcache from docs and help text (`pr#38047 <https://github.com/ceph/ceph/pull/38047>`_, Dimitri Savineau, Andrew Schoen) -* ceph-volume: retry when acquiring lock fails (`pr#36925 <https://github.com/ceph/ceph/pull/36925>`_, Sébastien Han) -* ceph-volume: simple scan should ignore tmpfs (`pr#36953 <https://github.com/ceph/ceph/pull/36953>`_, Andrew Schoen) -* ceph-volume: support for mpath devices (`pr#36928 <https://github.com/ceph/ceph/pull/36928>`_, Jan Fajerski) -* ceph.in: ignore failures to flush stdout (`pr#37225 <https://github.com/ceph/ceph/pull/37225>`_, Dan van der Ster) -* ceph.spec, debian: add smartmontools, nvme-cli dependencies (`pr#37257 <https://github.com/ceph/ceph/pull/37257>`_, Yaarit Hatuka) -* cephadm batch backport November (`pr#38155 <https://github.com/ceph/ceph/pull/38155>`_, Ricardo Marques, Sebastian Wagner, Kyr Shatskyy, Dan Williams, Volker Theile, Varsha Rao, Tim Serong, Adam King, Dimitri Savineau, Patrick Seidensal, Dan Mick, Michael Fritch, Joshua Schmid) -* cephadm batch backport September (1) (`pr#36975 <https://github.com/ceph/ceph/pull/36975>`_, Stephan Müller, Matthew Oliver, Sebastian Wagner, Paul Cuzner, Adam King, Patrick Seidensal, Shraddha Agrawal, Michael Fritch, Dan Mick) -* cephadm batch backport September (2) (`pr#37436 <https://github.com/ceph/ceph/pull/37436>`_, Varsha Rao, Kiefer Chang, Patrick Donnelly, Sebastian Wagner, Kefu Chai, Guillaume Abrioux, Juan Miguel Olmo Martínez, Paul Cuzner, Volker Theile, Tim Serong, Zac Dover, Adam King, Michael Fritch, Joshua Schmid) -* cephfs-journal-tool: fix incorrect read_offset when finding missing objects (`pr#37854 <https://github.com/ceph/ceph/pull/37854>`_, Xue Yantao) -* cephfs: client: fix directory inode can not call release callback (`pr#37017 <https://github.com/ceph/ceph/pull/37017>`_, sepia-liu) -* cephfs: client: fix extra open ref decrease (`pr#37249 <https://github.com/ceph/ceph/pull/37249>`_, Xiubo Li) -* cephfs: client: fix inode ll_ref reference count leak (`pr#37839 <https://github.com/ceph/ceph/pull/37839>`_, sepia-liu) -* cephfs: client: handle readdir reply without Fs cap (`pr#37370 <https://github.com/ceph/ceph/pull/37370>`_, "Yan, Zheng") -* cephfs: client: make Client::open() pass proper cap mask to path_walk (`pr#37369 <https://github.com/ceph/ceph/pull/37369>`_, "Yan, Zheng") -* cephfs: client: use non-static dirent for thread-safety (`pr#37351 <https://github.com/ceph/ceph/pull/37351>`_, Patrick Donnelly) -* cephfs: libcephfs: ignore restoring the open files limit (`pr#37358 <https://github.com/ceph/ceph/pull/37358>`_, Xiubo Li) -* cephfs: osdc/Journaler: do not call onsafe->complete() if onsafe is 0 (`pr#37368 <https://github.com/ceph/ceph/pull/37368>`_, Xiubo Li) -* common/admin_socket: always validate the parameters (`pr#37341 <https://github.com/ceph/ceph/pull/37341>`_, Kefu Chai) -* compressor: Add a config option to specify Zstd compression level (`pr#37253 <https://github.com/ceph/ceph/pull/37253>`_, Bryan Stillwell) -* core: include/encoding: Fix encode/decode of float types on big-endian systems (`pr#37032 <https://github.com/ceph/ceph/pull/37032>`_, Ulrich Weigand) -* debian: Add missing Python dependency for ceph-mgr (`pr#37422 <https://github.com/ceph/ceph/pull/37422>`_, Johannes M. Scheuermann) -* doc/PendingReleaseNotes: mention bluefs_preextend_wal_files (`pr#37549 <https://github.com/ceph/ceph/pull/37549>`_, Nathan Cutler) -* doc/mgr/orchestrator: Add hints related to custom containers to the docs (`pr#37962 <https://github.com/ceph/ceph/pull/37962>`_, Volker Theile) -* doc: cephfs: improve documentation of "ceph nfs cluster create" and "ceph fs volume create" commands (`pr#37691 <https://github.com/ceph/ceph/pull/37691>`_, Nathan Cutler) -* doc: enable Read the Docs (`pr#37201 <https://github.com/ceph/ceph/pull/37201>`_, Kefu Chai) -* erasure-code: enable isa-l EC for aarch64 platform (`pr#37504 <https://github.com/ceph/ceph/pull/37504>`_, luo rixin, Hang Li) -* krbd: optionally skip waiting for udev events (`pr#37285 <https://github.com/ceph/ceph/pull/37285>`_, Ilya Dryomov) -* librbd: ensure that thread pool lock is held when processing throttled IOs (`pr#37116 <https://github.com/ceph/ceph/pull/37116>`_, Jason Dillaman) -* librbd: handle DNE from immutable-object-cache (`pr#36860 <https://github.com/ceph/ceph/pull/36860>`_, Feng Hualong, Mykola Golub, Yin Congmin, Jason Dillaman) -* librbd: using migration abort can result in the loss of data (`pr#37164 <https://github.com/ceph/ceph/pull/37164>`_, Jason Dillaman) -* mds/CInode: Optimize only pinned by subtrees check (`pr#37248 <https://github.com/ceph/ceph/pull/37248>`_, Mark Nelson) -* mds: account for closing sessions in hit_session (`pr#37856 <https://github.com/ceph/ceph/pull/37856>`_, Dan van der Ster) -* mds: add request to batch_op before taking auth pins and locks (`pr#37022 <https://github.com/ceph/ceph/pull/37022>`_, "Yan, Zheng") -* mds: do not raise "client failing to respond to cap release" when client working set is reasonable (`pr#37353 <https://github.com/ceph/ceph/pull/37353>`_, Patrick Donnelly) -* mds: do not submit omap_rm_keys if the dir is the basedir of merge (`pr#37034 <https://github.com/ceph/ceph/pull/37034>`_, "Yan, Zheng", Chencan) -* mds: don't recover files after normal session close (`pr#37334 <https://github.com/ceph/ceph/pull/37334>`_, "Yan, Zheng") -* mds: fix 'forward loop' when forward_all_requests_to_auth is set (`pr#37360 <https://github.com/ceph/ceph/pull/37360>`_, "Yan, Zheng") -* mds: fix hang issue when accessing a file under a lost parent directory (`pr#37020 <https://github.com/ceph/ceph/pull/37020>`_, Zhi Zhang) -* mds: fix kcephfs parse dirfrag's ndist is always 0 (`pr#37357 <https://github.com/ceph/ceph/pull/37357>`_, Yanhu Cao) -* mds: fix mds forwarding request 'no_available_op_found' (`pr#37240 <https://github.com/ceph/ceph/pull/37240>`_, Yanhu Cao) -* mds: fix nullptr dereference in MDCache::finish_rollback (`pr#37243 <https://github.com/ceph/ceph/pull/37243>`_, "Yan, Zheng") -* mds: fix purge_queue's _calculate_ops is inaccurate (`pr#37372 <https://github.com/ceph/ceph/pull/37372>`_, Yanhu Cao) -* mds: make threshold for MDS_TRIM configurable (`pr#36970 <https://github.com/ceph/ceph/pull/36970>`_, Paul Emmerich) -* mds: optimize random threshold lookup for dentry load (`pr#37247 <https://github.com/ceph/ceph/pull/37247>`_, Patrick Donnelly) -* mds: place MDSGatherBuilder on the stack (`pr#37354 <https://github.com/ceph/ceph/pull/37354>`_, Patrick Donnelly) -* mds: reduce memory usage of open file table prefetch #37382 (`pr#37383 <https://github.com/ceph/ceph/pull/37383>`_, "Yan, Zheng") -* mds: resolve SIGSEGV in waiting for uncommitted fragments (`pr#37355 <https://github.com/ceph/ceph/pull/37355>`_, Patrick Donnelly) -* mds: revert the decode version (`pr#37356 <https://github.com/ceph/ceph/pull/37356>`_, Jos Collin) -* mds: send scrub status to ceph-mgr only when scrub is running (`issue#45349 <http://tracker.ceph.com/issues/45349>`_, `pr#36047 <https://github.com/ceph/ceph/pull/36047>`_, Kefu Chai, Venky Shankar) -* mds: standy-replay mds remained in the "resolve" state after resta… (`pr#37363 <https://github.com/ceph/ceph/pull/37363>`_, Wei Qiaomiao) -* messages,mds: Fix decoding of enum types on big-endian systems (`pr#36813 <https://github.com/ceph/ceph/pull/36813>`_, Ulrich Weigand) -* mgr/dashboard/api: move/create OSD histogram in separate endpoint (`pr#37973 <https://github.com/ceph/ceph/pull/37973>`_, Aashish Sharma) -* mgr/dashboard: Add short descriptions to the telemetry report preview (`pr#37597 <https://github.com/ceph/ceph/pull/37597>`_, Nizamudeen A) -* mgr/dashboard: Allow editing iSCSI targets with initiators logged-in (`pr#37277 <https://github.com/ceph/ceph/pull/37277>`_, Tiago Melo) -* mgr/dashboard: Auto close table column dropdown on click outside (`pr#36862 <https://github.com/ceph/ceph/pull/36862>`_, Tiago Melo) -* mgr/dashboard: Copy to clipboard does not work in Firefox (`pr#37493 <https://github.com/ceph/ceph/pull/37493>`_, Volker Theile) -* mgr/dashboard: Datatable catches select events from other datatables (`pr#36899 <https://github.com/ceph/ceph/pull/36899>`_, Volker Theile, Tiago Melo) -* mgr/dashboard: Disable TLS 1.0 and 1.1 (`pr#38331 <https://github.com/ceph/ceph/pull/38331>`_, Volker Theile) -* mgr/dashboard: Disable autocomplete on user form (`pr#36901 <https://github.com/ceph/ceph/pull/36901>`_, Volker Theile) -* mgr/dashboard: Disable sso without python3-saml (`pr#38405 <https://github.com/ceph/ceph/pull/38405>`_, Kevin Meijer) -* mgr/dashboard: Disabling the form inputs for the read_only modals (`pr#37239 <https://github.com/ceph/ceph/pull/37239>`_, Nizamudeen) -* mgr/dashboard: Fix bugs in a unit test and i18n translation (`pr#36991 <https://github.com/ceph/ceph/pull/36991>`_, Volker Theile) -* mgr/dashboard: Fix for CrushMap viewer items getting compressed vertically (`pr#36871 <https://github.com/ceph/ceph/pull/36871>`_, Nizamudeen A) -* mgr/dashboard: Fix many-to-many issue in host-details Grafana dashboard (`pr#37299 <https://github.com/ceph/ceph/pull/37299>`_, Patrick Seidensal) -* mgr/dashboard: Fix npm package's vulnerabilities (`pr#36921 <https://github.com/ceph/ceph/pull/36921>`_, Tiago Melo) -* mgr/dashboard: Hide table action input field if limit=0 (`pr#36872 <https://github.com/ceph/ceph/pull/36872>`_, Volker Theile) -* mgr/dashboard: Host delete action should be disabled if not managed by Orchestrator (`pr#36874 <https://github.com/ceph/ceph/pull/36874>`_, Volker Theile) -* mgr/dashboard: Improve notification badge (`pr#37090 <https://github.com/ceph/ceph/pull/37090>`_, Aashish Sharma) -* mgr/dashboard: Landing Page improvements (`pr#37390 <https://github.com/ceph/ceph/pull/37390>`_, Tiago Melo, Alfonso Martínez) -* mgr/dashboard: Merge disable and disableDesc (`pr#37763 <https://github.com/ceph/ceph/pull/37763>`_, Tiago Melo) -* mgr/dashboard: Proper format iSCSI target portals (`pr#36870 <https://github.com/ceph/ceph/pull/36870>`_, Volker Theile) -* mgr/dashboard: REST API returns 500 when no Content-Type is specified (`pr#37308 <https://github.com/ceph/ceph/pull/37308>`_, Avan Thakkar) -* mgr/dashboard: Remove useless tab in monitoring/alerts datatable details (`pr#36875 <https://github.com/ceph/ceph/pull/36875>`_, Volker Theile) -* mgr/dashboard: Show warning when replicated size is 1 (`pr#37578 <https://github.com/ceph/ceph/pull/37578>`_, Sebastian Krah) -* mgr/dashboard: The performance 'Client Read/Write' widget shows incorrect write values (`pr#38189 <https://github.com/ceph/ceph/pull/38189>`_, Volker Theile) -* mgr/dashboard: Update datatable only when necessary (`pr#37331 <https://github.com/ceph/ceph/pull/37331>`_, Volker Theile) -* mgr/dashboard: Use pipe instead of calling function within template (`pr#38094 <https://github.com/ceph/ceph/pull/38094>`_, Volker Theile) -* mgr/dashboard: cluster > manager modules (`pr#37434 <https://github.com/ceph/ceph/pull/37434>`_, Avan Thakkar) -* mgr/dashboard: display devices' health information within a tabset (`pr#37784 <https://github.com/ceph/ceph/pull/37784>`_, Kiefer Chang) -* mgr/dashboard: fix error when typing existing paths in the Ganesha form (`pr#37688 <https://github.com/ceph/ceph/pull/37688>`_, Kiefer Chang) -* mgr/dashboard: fix perf. issue when listing large amounts of buckets (`pr#37405 <https://github.com/ceph/ceph/pull/37405>`_, Alfonso Martínez) -* mgr/dashboard: fix security scopes of some NFS-Ganesha endpoints (`pr#37450 <https://github.com/ceph/ceph/pull/37450>`_, Kiefer Chang) -* mgr/dashboard: fix the error when exporting CephFS path "/" in NFS exports (`pr#37686 <https://github.com/ceph/ceph/pull/37686>`_, Kiefer Chang) -* mgr/dashboard: get rgw daemon zonegroup name from mgr (`pr#37620 <https://github.com/ceph/ceph/pull/37620>`_, Alfonso Martinez) -* mgr/dashboard: increase Grafana iframe height to avoid scroll bar (`pr#37182 <https://github.com/ceph/ceph/pull/37182>`_, Ngwa Sedrick Meh) -* mgr/dashboard: log in non-admin users successfully if the telemetry notification is shown (`pr#37452 <https://github.com/ceph/ceph/pull/37452>`_, Tatjana Dehler) -* mgr/dashboard: support Orchestrator and user-defined Ganesha cluster (`pr#37885 <https://github.com/ceph/ceph/pull/37885>`_, Kiefer Chang) -* mgr/dashboard: table detail rows overflow (`pr#37332 <https://github.com/ceph/ceph/pull/37332>`_, Aashish Sharma) -* mgr/devicehealth: device_health_metrics pool gets created even without any OSDs in the cluster (`pr#37533 <https://github.com/ceph/ceph/pull/37533>`_, Sunny Kumar) -* mgr/insights: Test environment requires 'six' (`pr#38396 <https://github.com/ceph/ceph/pull/38396>`_, Brad Hubbard) -* mgr/prometheus: add pool compression stats (`pr#37562 <https://github.com/ceph/ceph/pull/37562>`_, Paul Cuzner) -* mgr/telemetry: fix device id splitting when anonymizing serial (`pr#37302 <https://github.com/ceph/ceph/pull/37302>`_, Yaarit Hatuka) -* mgr/volumes/nfs: Check if orchestrator spec service_id is valid (`pr#37371 <https://github.com/ceph/ceph/pull/37371>`_, Varsha Rao) -* mgr/volumes/nfs: Fix wrong error message for pseudo path (`pr#37855 <https://github.com/ceph/ceph/pull/37855>`_, Varsha Rao) -* mgr/volumes: Make number of cloner threads configurable (`pr#37671 <https://github.com/ceph/ceph/pull/37671>`_, Kotresh HR) -* mgr/zabbix: indent the output of "zabbix config-show" (`pr#37128 <https://github.com/ceph/ceph/pull/37128>`_, Kefu Chai) -* mgr: PyModuleRegistry::unregister_client() can run endlessly (`issue#47329 <http://tracker.ceph.com/issues/47329>`_, `pr#37217 <https://github.com/ceph/ceph/pull/37217>`_, Venky Shankar) -* mgr: don't update pending service map epoch on receiving map from mon (`pr#37180 <https://github.com/ceph/ceph/pull/37180>`_, Mykola Golub) -* mon scrub testing (`pr#38361 <https://github.com/ceph/ceph/pull/38361>`_, Brad Hubbard) -* mon/MDSMonitor do not ignore mds's down:dne request (`pr#37858 <https://github.com/ceph/ceph/pull/37858>`_, chencan) -* mon/MDSMonitor: divide mds identifier and mds real name with dot (`pr#37857 <https://github.com/ceph/ceph/pull/37857>`_, Zhi Zhang) -* mon/MonMap: fix unconditional failure for init_with_hosts (`pr#37817 <https://github.com/ceph/ceph/pull/37817>`_, Nathan Cutler, Patrick Donnelly) -* mon/PGMap: add pg count for pools in the ceph df command (`pr#36945 <https://github.com/ceph/ceph/pull/36945>`_, Vikhyat Umrao) -* mon: Log "ceph health detail" periodically in cluster log (`pr#38345 <https://github.com/ceph/ceph/pull/38345>`_, Prashant Dhange) -* mon: deleting a CephFS and its pools causes MONs to crash (`pr#37256 <https://github.com/ceph/ceph/pull/37256>`_, Patrick Donnelly) -* mon: have 'mon stat' output json as well (`pr#37705 <https://github.com/ceph/ceph/pull/37705>`_, Joao Eduardo Luis) -* mon: mark pgtemp messages as no_reply more consistenly in preprocess\_… (`pr#37347 <https://github.com/ceph/ceph/pull/37347>`_, Greg Farnum) -* mon: set session_timeout when adding to session_map (`pr#37553 <https://github.com/ceph/ceph/pull/37553>`_, Ilya Dryomov) -* mon: store mon updates in ceph context for future MonMap instantiation (`pr#36705 <https://github.com/ceph/ceph/pull/36705>`_, Patrick Donnelly, Shyamsundar Ranganathan) -* msg/async/ProtocolV2: allow rxbuf/txbuf get bigger in testing (`pr#37080 <https://github.com/ceph/ceph/pull/37080>`_, Ilya Dryomov) -* os/bluestore: enable more flexible bluefs space management by default (`pr#37092 <https://github.com/ceph/ceph/pull/37092>`_, Igor Fedotov) -* osd/osd-rep-recov-eio.sh: TEST_rados_repair_warning: return 1 (`pr#37853 <https://github.com/ceph/ceph/pull/37853>`_, David Zafman) -* osd: Check for nosrub/nodeep-scrub in between chunks, to avoid races (`pr#38359 <https://github.com/ceph/ceph/pull/38359>`_, David Zafman) -* osdc/ObjectCacher: overwrite might cause stray read request callbacks (`pr#37674 <https://github.com/ceph/ceph/pull/37674>`_, Jason Dillaman) -* osdc: add timeout configs for mons/osds (`pr#37530 <https://github.com/ceph/ceph/pull/37530>`_, Patrick Donnelly) -* prometheus: Properly split the port off IPv6 addresses (`pr#36985 <https://github.com/ceph/ceph/pull/36985>`_, Matthew Oliver) -* pybind/cephfs: add special values for not reading conffile (`pr#37724 <https://github.com/ceph/ceph/pull/37724>`_, Kefu Chai) -* pybind/cephfs: fix custom exception raised by cephfs.pyx (`pr#37350 <https://github.com/ceph/ceph/pull/37350>`_, Ramana Raja) -* pybind/mgr/volumes: add global lock debug (`pr#37366 <https://github.com/ceph/ceph/pull/37366>`_, Patrick Donnelly) -* qa/\*/mon/mon-last-epoch-clean.sh: mark osd out instead of down (`pr#37349 <https://github.com/ceph/ceph/pull/37349>`_, Neha Ojha) -* qa/cephfs: add session_timeout option support (`pr#37841 <https://github.com/ceph/ceph/pull/37841>`_, Xiubo Li) -* qa/tasks/nfs: Test mounting of export created with nfs command (`pr#37365 <https://github.com/ceph/ceph/pull/37365>`_, Varsha Rao) -* qa/tasks/{ceph,ceph_manager}: drop py2 support (`pr#37863 <https://github.com/ceph/ceph/pull/37863>`_, Kefu Chai) -* qa/tests: added rhel 8.2 (`pr#38287 <https://github.com/ceph/ceph/pull/38287>`_, Yuri Weinstein) -* qa/tests: use bionic only for old clients in rados/thrash-old-clients (`pr#36931 <https://github.com/ceph/ceph/pull/36931>`_, Yuri Weinstein) -* qa/workunits/mon: fixed excessively large pool PG count (`pr#37346 <https://github.com/ceph/ceph/pull/37346>`_, Jason Dillaman) -* qa: Enable debug_client for mgr tests (`pr#37270 <https://github.com/ceph/ceph/pull/37270>`_, Brad Hubbard) -* qa: Fix traceback during fs cleanup between tests (`pr#36713 <https://github.com/ceph/ceph/pull/36713>`_, Kotresh HR) -* qa: add debugging for volumes plugin use of libcephfs (`pr#37352 <https://github.com/ceph/ceph/pull/37352>`_, Patrick Donnelly) -* qa: drop hammer branch qa tests (`pr#37728 <https://github.com/ceph/ceph/pull/37728>`_, Neha Ojha, Deepika Upadhyay) -* qa: ignore expected mds failover message (`pr#37367 <https://github.com/ceph/ceph/pull/37367>`_, Patrick Donnelly) -* rbd-mirror: peer setup can still race and fail creation of peer (`pr#37342 <https://github.com/ceph/ceph/pull/37342>`_, Jason Dillaman) -* rbd: include RADOS namespace in krbd symlinks (`pr#37343 <https://github.com/ceph/ceph/pull/37343>`_, Ilya Dryomov) -* rbd: journal: possible race condition between flush and append callback (`pr#37850 <https://github.com/ceph/ceph/pull/37850>`_, Jason Dillaman) -* rbd: librbd: ignore -ENOENT error when disabling object-map (`pr#37852 <https://github.com/ceph/ceph/pull/37852>`_, Jason Dillaman) -* rbd: librbd: update AioCompletion return value before evaluating pending count (`pr#37851 <https://github.com/ceph/ceph/pull/37851>`_, Jason Dillaman) -* rbd: make common options override krbd-specific options (`pr#37408 <https://github.com/ceph/ceph/pull/37408>`_, Ilya Dryomov) -* rbd: rbd-nbd: don't ignore namespace when unmapping by image spec (`pr#37812 <https://github.com/ceph/ceph/pull/37812>`_, Mykola Golub) -* rgw/gc: fix for incrementing the perf counter 'gc_retire_object' (`pr#37847 <https://github.com/ceph/ceph/pull/37847>`_, Pritha Srivastava) -* rgw/gc: fixing the condition when marker for a queue is (`pr#37846 <https://github.com/ceph/ceph/pull/37846>`_, Pritha Srivastava) -* rgw/rgw_file: Fix the incorrect lru object eviction (`pr#37672 <https://github.com/ceph/ceph/pull/37672>`_, luo rixin) -* rgw: Add bucket name to bucket stats error logging (`pr#37335 <https://github.com/ceph/ceph/pull/37335>`_, Seena Fallah) -* rgw: Add request timeout to beast (`pr#37809 <https://github.com/ceph/ceph/pull/37809>`_, Adam C. Emerson, Or Friedmann) -* rgw: RGWObjVersionTracker tracks version over increments (`pr#37337 <https://github.com/ceph/ceph/pull/37337>`_, Casey Bodley) -* rgw: Swift API anonymous access should 401 (`pr#37339 <https://github.com/ceph/ceph/pull/37339>`_, Matthew Oliver) -* rgw: adds code for creating and managing oidc provider entities in rgw and for offline validation of OpenID Connect Access and ID Token (`pr#37640 <https://github.com/ceph/ceph/pull/37640>`_, Pritha Srivastava, Casey Bodley) -* rgw: allow rgw-orphan-list to note when rados objects are in namespace (`pr#37800 <https://github.com/ceph/ceph/pull/37800>`_, J. Eric Ivancich) -* rgw: dump transitions in RGWLifecycleConfiguration::dump() (`pr#36812 <https://github.com/ceph/ceph/pull/36812>`_, Shengming Zhang) -* rgw: during GC defer, prevent new GC enqueue (`pr#38249 <https://github.com/ceph/ceph/pull/38249>`_, Casey Bodley, J. Eric Ivancich) -* rgw: fix expiration header returned even if there is only one tag in the object the same as the rule (`pr#37807 <https://github.com/ceph/ceph/pull/37807>`_, Or Friedmann) -* rgw: fix setting of namespace in ordered and unordered bucket listing (`pr#37673 <https://github.com/ceph/ceph/pull/37673>`_, J. Eric Ivancich) -* rgw: fix user stats iterative increment (`pr#37779 <https://github.com/ceph/ceph/pull/37779>`_, Mark Kogan) -* rgw: fix: S3 API KeyCount incorrect return (`pr#37849 <https://github.com/ceph/ceph/pull/37849>`_, 胡玮文) -* rgw: log resharding events at level 1 (formerly 20) (`pr#36840 <https://github.com/ceph/ceph/pull/36840>`_, Or Friedmann) -* rgw: radosgw-admin should paginate internally when listing bucket (`pr#37803 <https://github.com/ceph/ceph/pull/37803>`_, J. Eric Ivancich) -* rgw: radosgw-admin: period pull command is not always a raw_storage_op (`pr#37336 <https://github.com/ceph/ceph/pull/37336>`_, Casey Bodley) -* rgw: replace '+' with "%20" in canonical query string for s3 v4 auth (`pr#37338 <https://github.com/ceph/ceph/pull/37338>`_, yuliyang_yewu) -* rgw: rgw_file: avoid long-ish delay on shutdown (`pr#37551 <https://github.com/ceph/ceph/pull/37551>`_, Matt Benjamin) -* rgw: s3: mark bucket encryption as not implemented (`pr#36691 <https://github.com/ceph/ceph/pull/36691>`_, Abhishek Lekshmanan) -* rgw: urlencode bucket name when forwarding request (`pr#37340 <https://github.com/ceph/ceph/pull/37340>`_, caolei) -* rgw: use yum rather than dnf for teuthology testing of rgw-orphan-list (`pr#37845 <https://github.com/ceph/ceph/pull/37845>`_, J. Eric Ivancich) -* rpm,deb: drop /etc/sudoers.d/cephadm (`pr#37401 <https://github.com/ceph/ceph/pull/37401>`_, Nathan Cutler) -* run-make-check.sh: Don't run tests if build fails (`pr#38294 <https://github.com/ceph/ceph/pull/38294>`_, Brad Hubbard) -* systemd: Support Graceful Reboot for AIO Node (`pr#37300 <https://github.com/ceph/ceph/pull/37300>`_, Wong Hoi Sing Edison) -* test/librados: fix endian bugs in checksum test cases (`pr#37604 <https://github.com/ceph/ceph/pull/37604>`_, Ulrich Weigand) -* test/rbd-mirror: pool watcher registration error might result in race (`pr#37208 <https://github.com/ceph/ceph/pull/37208>`_, Jason Dillaman) -* test/store_test: use 'threadsafe' style for death tests (`pr#37819 <https://github.com/ceph/ceph/pull/37819>`_, Igor Fedotov) -* tools/osdmaptool.cc: add ability to clean_temps (`pr#37348 <https://github.com/ceph/ceph/pull/37348>`_, Neha Ojha) -* tools/rados: flush formatter periodically during json output of "rados ls" (`pr#37835 <https://github.com/ceph/ceph/pull/37835>`_, J. Eric Ivancich) -* vstart.sh: fix fs set max_mds bug (`pr#37837 <https://github.com/ceph/ceph/pull/37837>`_, Jinmyeong Lee) - - -v15.2.7 Octopus -=============== - -This is the 7th backport release in the Octopus series. This release fixes -a serious bug in RGW that has been shown to cause data loss when a read of -a large RGW object (i.e., one with at least one tail segment) takes longer than -one half the time specified in the configuration option ``rgw_gc_obj_min_wait``. -The bug causes the tail segments of that read object to be added to the RGW -garbage collection queue, which will in turn cause them to be deleted after -a period of time. - -Changelog ---------- - -* rgw: during GC defer, prevent new GC enqueue (`issue#47866 <https://tracker.ceph.com/issues/47866>`_, `pr#38249 <https://github.com/ceph/ceph/pull/38249>`_, Eric Ivancich, Casey Bodley) - - -v15.2.6 Octopus -=============== - -This is the 6th backport release in the Octopus series. This release fixes -a security flaw affecting Messenger v1 & v2. We recommend users to update to -this release. - -Notable Changes ---------------- - -* CVE 2020-25660: CEPHX_V2 replay attack protection lost, for Messenger v1 & v2 (Ilya Dryomov) - -Changelog ---------- - -* mon/MonClient: bring back CEPHX_V2 authorizer challenges (Ilya Dryomov) - - -v15.2.5 Octopus -=============== - -This is the fifth release of the Ceph Octopus stable release series. This -release brings a range of fixes across all components. We recommend that all -Octopus users upgrade to this release. - -Notable Changes ---------------- - -* CephFS: Automatic static subtree partitioning policies may now be configured - using the new distributed and random ephemeral pinning extended attributes on - directories. See the documentation for more information: - https://docs.ceph.com/docs/master/cephfs/multimds/ - -* Monitors now have a config option ``mon_osd_warn_num_repaired``, 10 by default. - If any OSD has repaired more than this many I/O errors in stored data a - ``OSD_TOO_MANY_REPAIRS`` health warning is generated. - -* Now when noscrub and/or no deep-scrub flags are set globally or per pool, - scheduled scrubs of the type disabled will be aborted. All user initiated - scrubs are NOT interrupted. - -* Fix an issue with osdmaps not being trimmed in a healthy cluster ( - `issue#47297 <https://tracker.ceph.com/issues/47297>`_, - `pr#36981 <https://github.com/ceph/ceph/pull/36981>`_) - -Changelog ---------- - -* bluestore,core: bluestore: blk:BlockDevice.cc: use pending_aios instead of iovec size as ios num (`pr#36668 <https://github.com/ceph/ceph/pull/36668>`_, weixinwei) -* bluestore,tests: test/store_test: refactor bluestore spillover test (`pr#34943 <https://github.com/ceph/ceph/pull/34943>`_, Igor Fedotov) -* bluestore,tests: tests: objectstore/store_test: kill ExcessiveFragmentation test case (`pr#36049 <https://github.com/ceph/ceph/pull/36049>`_, Igor Fedotov) -* bluestore: bluestore: Rescue procedure for extremely large bluefs log (`pr#36123 <https://github.com/ceph/ceph/pull/36123>`_, Adam Kupczyk) -* bluestore: octopus:os/bluestore: improve/fix bluefs stats reporting (`pr#35748 <https://github.com/ceph/ceph/pull/35748>`_, Igor Fedotov) -* bluestore: os/bluestore: fix bluefs log growth (`pr#36621 <https://github.com/ceph/ceph/pull/36621>`_, Adam Kupczyk, Jianpeng Ma) -* bluestore: os/bluestore: simplify Onode pin/unpin logic (`pr#36795 <https://github.com/ceph/ceph/pull/36795>`_, Igor Fedotov) -* build/ops: Revert "mgr/osd_support: remove module and all traces" (`pr#36973 <https://github.com/ceph/ceph/pull/36973>`_, Sebastian Wagner) -* build/ops: ceph-iscsi: selinux fixes (`pr#36302 <https://github.com/ceph/ceph/pull/36302>`_, Mike Christie) -* build/ops: mgr/dashboard/api: reduce amount of daemon logs (`pr#36693 <https://github.com/ceph/ceph/pull/36693>`_, Ernesto Puerta) -* ceph-volume: add dmcrypt support in raw mode (`pr#35830 <https://github.com/ceph/ceph/pull/35830>`_, Guillaume Abrioux) -* ceph-volume: add drive-group subcommand (`pr#36558 <https://github.com/ceph/ceph/pull/36558>`_, Jan Fajerski, Sebastian Wagner) -* ceph-volume: add tests for new functions that run LVM commands (`pr#36614 <https://github.com/ceph/ceph/pull/36614>`_, Rishabh Dave) -* ceph-volume: don't use container classes in api/lvm.py (`pr#35879 <https://github.com/ceph/ceph/pull/35879>`_, Rishabh Dave, Guillaume Abrioux) -* ceph-volume: fix lvm functional tests (`pr#36409 <https://github.com/ceph/ceph/pull/36409>`_, Jan Fajerski) -* ceph-volume: handle idempotency with batch and explicit scenarios (`pr#35880 <https://github.com/ceph/ceph/pull/35880>`_, Andrew Schoen) -* ceph-volume: remove container classes from api/lvm.py (`pr#36608 <https://github.com/ceph/ceph/pull/36608>`_, Rishabh Dave) -* ceph-volume: report correct rejected reason in inventory if device type is invalid (`pr#36410 <https://github.com/ceph/ceph/pull/36410>`_, Satoru Takeuchi) -* ceph-volume: run flake8 in python3 (`pr#36588 <https://github.com/ceph/ceph/pull/36588>`_, Jan Fajerski) -* cephfs,common: common: ignore SIGHUP prior to fork (`issue#46269 <http://tracker.ceph.com/issues/46269>`_, `pr#36195 <https://github.com/ceph/ceph/pull/36195>`_, Willem Jan Withagen, hzwuhongsong) -* cephfs,core,mgr: mgr/status: metadata is fetched async (`pr#36630 <https://github.com/ceph/ceph/pull/36630>`_, Michael Fritch) -* cephfs,core,rbd,rgw: librados: add LIBRADOS_SUPPORTS_GETADDRS support (`pr#36643 <https://github.com/ceph/ceph/pull/36643>`_, Xiubo Li) -* cephfs,mgr: mgr/volumes/nfs: Add interface for adding user defined configuration (`pr#36635 <https://github.com/ceph/ceph/pull/36635>`_, Varsha Rao) -* cephfs,mon: mon/MDSMonitor: copy MDS info which may be removed (`pr#36035 <https://github.com/ceph/ceph/pull/36035>`_, Patrick Donnelly) -* cephfs,pybind: pybind/ceph_volume_client: Fix PEP-8 SyntaxWarning (`pr#36100 <https://github.com/ceph/ceph/pull/36100>`_, Đặng Minh Dũng) -* cephfs,tests: mgr/fs/volumes: misc fixes (`pr#36327 <https://github.com/ceph/ceph/pull/36327>`_, Patrick Donnelly, Kotresh HR) -* cephfs,tests: tests: Revert "Revert "qa/suites/rados/mgr/tasks/module_selftest: whitelist … (`issue#43943 <http://tracker.ceph.com/issues/43943>`_, `pr#36042 <https://github.com/ceph/ceph/pull/36042>`_, Venky Shankar) -* cephfs,tests: tests: qa/tasks/cephfs/cephfs_test_case.py: skip cleaning the core dumps when in program case (`pr#36043 <https://github.com/ceph/ceph/pull/36043>`_, Xiubo Li) -* cephfs,tests: tests: qa/tasks: make sh() in vstart_runner.py identical with teuthology.orchestra.remote.sh (`pr#36044 <https://github.com/ceph/ceph/pull/36044>`_, Jos Collin) -* cephfs: Update nfs-ganesha package requirements doc backport (`pr#36063 <https://github.com/ceph/ceph/pull/36063>`_, Varsha Rao) -* cephfs: cephfs: client: fix setxattr for 0 size value (NULL value) (`pr#36045 <https://github.com/ceph/ceph/pull/36045>`_, Sidharth Anupkrishnan) -* cephfs: cephfs: client: fix snap directory atime (`pr#36039 <https://github.com/ceph/ceph/pull/36039>`_, Luis Henriques) -* cephfs: cephfs: client: release the client_lock before copying data in read (`pr#36046 <https://github.com/ceph/ceph/pull/36046>`_, Chencan) -* cephfs: client: expose ceph.quota.max_bytes xattr within snapshots (`pr#36403 <https://github.com/ceph/ceph/pull/36403>`_, Shyamsundar Ranganathan) -* cephfs: client: introduce timeout for client shutdown (`issue#44276 <http://tracker.ceph.com/issues/44276>`_, `pr#35962 <https://github.com/ceph/ceph/pull/35962>`_, "Yan, Zheng", Venky Shankar) -* cephfs: mds/MDSRank: fix typo in "unrecognized" (`pr#36197 <https://github.com/ceph/ceph/pull/36197>`_, Nathan Cutler) -* cephfs: mds: add ephemeral random and distributed export pins (`pr#35759 <https://github.com/ceph/ceph/pull/35759>`_, Patrick Donnelly, Sidharth Anupkrishnan) -* cephfs: mds: fix filelock state when Fc is issued (`pr#35842 <https://github.com/ceph/ceph/pull/35842>`_, Xiubo Li) -* cephfs: mds: reset heartbeat in EMetaBlob replay (`pr#36040 <https://github.com/ceph/ceph/pull/36040>`_, Yanhu Cao) -* cephfs: mgr/nfs: Check if pseudo path is absolute path (`pr#36299 <https://github.com/ceph/ceph/pull/36299>`_, Varsha Rao) -* cephfs: mgr/nfs: Update MDCACHE block in ganesha config and doc about nfs-cephadm in vstart (`pr#36224 <https://github.com/ceph/ceph/pull/36224>`_, Varsha Rao) -* cephfs: mgr/volumes: Deprecate protect/unprotect CLI calls for subvolume snapshots (`pr#36126 <https://github.com/ceph/ceph/pull/36126>`_, Shyamsundar Ranganathan) -* cephfs: mgr/volumes: fix "ceph nfs export" help messages (`pr#36220 <https://github.com/ceph/ceph/pull/36220>`_, Nathan Cutler) -* cephfs: nfs backport (`pr#35499 <https://github.com/ceph/ceph/pull/35499>`_, Jeff Layton, Varsha Rao, Ramana Raja, Kefu Chai) -* common,core: common, osd: add sanity checks around osd_scrub_max_preemptions (`pr#36034 <https://github.com/ceph/ceph/pull/36034>`_, xie xingguo) -* common,rbd,tools: rbd: immutable-object-cache: fixed crashes on start up (`pr#36660 <https://github.com/ceph/ceph/pull/36660>`_, Jason Dillaman) -* common,rbd: crush/CrushWrapper: rebuild reverse maps after rebuilding crush map (`pr#36662 <https://github.com/ceph/ceph/pull/36662>`_, Jason Dillaman) -* common: common: log: fix timestap precision of log can't set to millisecond (`pr#36048 <https://github.com/ceph/ceph/pull/36048>`_, Guan yunfei) -* core,mgr: mgr: decrease pool stats if pg was removed (`pr#36667 <https://github.com/ceph/ceph/pull/36667>`_, Aleksei Gutikov) -* core,rbd: osd/OSDCap: rbd profile permits use of "rbd_info" (`pr#36414 <https://github.com/ceph/ceph/pull/36414>`_, Florian Florensa) -* core,tools: tools/rados: Set locator key when exporting or importing a pool (`pr#36666 <https://github.com/ceph/ceph/pull/36666>`_, Iain Buclaw) -* core: mon/OSDMonitor: Reset grace period if failure interval exceeds a threshold (`pr#35799 <https://github.com/ceph/ceph/pull/35799>`_, Sridhar Seshasayee) -* core: mon/OSDMonitor: only take in osd into consideration when trimming osd… (`pr#36981 <https://github.com/ceph/ceph/pull/36981>`_, Kefu Chai) -* core: mon: fix the 'Error ERANGE' message when conf "osd_objectstore" is filestore (`pr#36665 <https://github.com/ceph/ceph/pull/36665>`_, wangyunqing) -* core: monclient: schedule first tick using mon_client_hunt_interval (`pr#36633 <https://github.com/ceph/ceph/pull/36633>`_, Mykola Golub) -* core: osd/OSD.cc: remove osd_lock for bench (`pr#36664 <https://github.com/ceph/ceph/pull/36664>`_, Neha Ojha, Adam Kupczyk) -* core: osd/PG: fix history.same_interval_since of merge target again (`pr#36033 <https://github.com/ceph/ceph/pull/36033>`_, xie xingguo) -* core: osd/PeeringState: prevent peer's num_objects going negative (`pr#36663 <https://github.com/ceph/ceph/pull/36663>`_, xie xingguo) -* core: osd/PrimaryLogPG: don't populate watchers if replica (`pr#36029 <https://github.com/ceph/ceph/pull/36029>`_, Ilya Dryomov) -* core: osd: Cancel in-progress scrubs (not user requested) (`pr#36291 <https://github.com/ceph/ceph/pull/36291>`_, David Zafman) -* core: osd: expose osdspec_affinity to osd_metadata (`pr#35957 <https://github.com/ceph/ceph/pull/35957>`_, Joshua Schmid) -* core: osd: fix crash in _committed_osd_maps if incremental osdmap crc fails (`pr#36340 <https://github.com/ceph/ceph/pull/36340>`_, Neha Ojha, Dan van der Ster) -* core: osd: make message cap option usable again (`pr#35737 <https://github.com/ceph/ceph/pull/35737>`_, Neha Ojha, Josh Durgin) -* core: osd: wakeup all threads of shard rather than one thread (`pr#36032 <https://github.com/ceph/ceph/pull/36032>`_, Jianpeng Ma) -* core: test: osd-backfill-stats.sh use nobackfill to avoid races in remainin… (`pr#36030 <https://github.com/ceph/ceph/pull/36030>`_, David Zafman) -* doc: cephadm batch backport (`pr#36450 <https://github.com/ceph/ceph/pull/36450>`_, Varsha Rao, Ricardo Marques, Kiefer Chang, Matthew Oliver, Paul Cuzner, Kefu Chai, Daniel-Pivonka, Sebastian Wagner, Volker Theile, Adam King, Michael Fritch, Joshua Schmid) -* doc: doc/mgr/crash: Add missing command in rm example (`pr#36690 <https://github.com/ceph/ceph/pull/36690>`_, Daniël Vos) -* doc: doc/rados: Fix osd_scrub_during_recovery default value (`pr#36661 <https://github.com/ceph/ceph/pull/36661>`_, Benoît Knecht) -* doc: doc/rbd: add rbd-target-gw enable and start (`pr#36416 <https://github.com/ceph/ceph/pull/36416>`_, Zac Dover) -* doc: doc: PendingReleaseNotes: clean slate for 15.2.5 (`pr#35753 <https://github.com/ceph/ceph/pull/35753>`_, Nathan Cutler) -* mgr,pybind: pybind/mgr/balancer: use "==" and "!=" for comparing str (`pr#36036 <https://github.com/ceph/ceph/pull/36036>`_, Kefu Chai) -* mgr,pybind: pybind/mgr/pg_autoscaler/module.py: do not update event if ev.pg_num== ev.pg_num_target (`pr#36037 <https://github.com/ceph/ceph/pull/36037>`_, Neha Ojha) -* mgr,rbd: mgr/prometheus: automatically discover RBD pools for stats gathering (`pr#36411 <https://github.com/ceph/ceph/pull/36411>`_, Jason Dillaman) -* mgr/dashboard/api: increase API health timeout (`pr#36562 <https://github.com/ceph/ceph/pull/36562>`_, Ernesto Puerta) -* mgr/dashboard: Add button to copy the bootstrap token into the clipboard (`pr#35796 <https://github.com/ceph/ceph/pull/35796>`_, Ishan Rai) -* mgr/dashboard: Add host labels in UI (`pr#35893 <https://github.com/ceph/ceph/pull/35893>`_, Volker Theile) -* mgr/dashboard: Add hosts page unit tests (`pr#36350 <https://github.com/ceph/ceph/pull/36350>`_, Volker Theile) -* mgr/dashboard: Allow to edit iSCSI target with active session (`pr#35997 <https://github.com/ceph/ceph/pull/35997>`_, Ricardo Marques) -* mgr/dashboard: Always use fast angular unit tests (`pr#36267 <https://github.com/ceph/ceph/pull/36267>`_, Stephan Müller) -* mgr/dashboard: Configure overflow of popover in health page (`pr#36460 <https://github.com/ceph/ceph/pull/36460>`_, Tiago Melo) -* mgr/dashboard: Display check icon instead of true|false in various datatables (`pr#35892 <https://github.com/ceph/ceph/pull/35892>`_, Volker Theile) -* mgr/dashboard: Display users current bucket quota usage (`pr#35926 <https://github.com/ceph/ceph/pull/35926>`_, Ernesto Puerta, Avan Thakkar) -* mgr/dashboard: Extract documentation link to a component (`pr#36587 <https://github.com/ceph/ceph/pull/36587>`_, Tiago Melo) -* mgr/dashboard: Fix host attributes like labels are not returned (`pr#36678 <https://github.com/ceph/ceph/pull/36678>`_, Kiefer Chang) -* mgr/dashboard: Hide password notification when expiration date is far (`pr#35975 <https://github.com/ceph/ceph/pull/35975>`_, Tiago Melo) -* mgr/dashboard: Improve Summary's subscribe methods (`pr#35705 <https://github.com/ceph/ceph/pull/35705>`_, Tiago Melo) -* mgr/dashboard: Prometheus query error in the metrics of Pools, OSDs and RBD images (`pr#35885 <https://github.com/ceph/ceph/pull/35885>`_, Avan Thakkar) -* mgr/dashboard: Re-enable OSD's table autoReload (`pr#36226 <https://github.com/ceph/ceph/pull/36226>`_, Kiefer Chang, Tiago Melo) -* mgr/dashboard: Strange iSCSI discovery auth behavior (`pr#36782 <https://github.com/ceph/ceph/pull/36782>`_, Volker Theile) -* mgr/dashboard: The max. buckets field in RGW user form should be pre-filled (`pr#35795 <https://github.com/ceph/ceph/pull/35795>`_, Volker Theile) -* mgr/dashboard: Unable to edit iSCSI logged-in client (`pr#36611 <https://github.com/ceph/ceph/pull/36611>`_, Ricardo Marques) -* mgr/dashboard: Use right size in pool form (`pr#35925 <https://github.com/ceph/ceph/pull/35925>`_, Stephan Müller) -* mgr/dashboard: Use same required field message accross the UI (`pr#36277 <https://github.com/ceph/ceph/pull/36277>`_, Volker Theile) -* mgr/dashboard: add API team to CODEOWNERS (`pr#36143 <https://github.com/ceph/ceph/pull/36143>`_, Ernesto Puerta) -* mgr/dashboard: allow preserving OSD IDs when deleting OSDs (`pr#35766 <https://github.com/ceph/ceph/pull/35766>`_, Kiefer Chang) -* mgr/dashboard: cpu stats incorrectly displayed (`pr#36322 <https://github.com/ceph/ceph/pull/36322>`_, Avan Thakkar) -* mgr/dashboard: cropped actions menu in nested details (`pr#35620 <https://github.com/ceph/ceph/pull/35620>`_, Avan Thakkar) -* mgr/dashboard: fix Source column i18n issue in RBD configuration tables (`pr#35819 <https://github.com/ceph/ceph/pull/35819>`_, Kiefer Chang) -* mgr/dashboard: fix backporting issue #35926 (`pr#36073 <https://github.com/ceph/ceph/pull/36073>`_, Ernesto Puerta) -* mgr/dashboard: fix pool usage calculation (`pr#36137 <https://github.com/ceph/ceph/pull/36137>`_, Ernesto Puerta) -* mgr/dashboard: fix rbdmirroring dropdown menu (`pr#36382 <https://github.com/ceph/ceph/pull/36382>`_, Avan Thakkar) -* mgr/dashboard: fix regression in delete OSD modal (`pr#36419 <https://github.com/ceph/ceph/pull/36419>`_, Kiefer Chang) -* mgr/dashboard: fix tasks.mgr.dashboard.test_rbd.RbdTest.test_move_image_to_trash error (`pr#36563 <https://github.com/ceph/ceph/pull/36563>`_, Kiefer Chang) -* mgr/dashboard: fix ui api endpoints (`pr#36160 <https://github.com/ceph/ceph/pull/36160>`_, Fabrizio D'Angelo) -* mgr/dashboard: fix wal/db slots controls in the OSD form (`pr#35883 <https://github.com/ceph/ceph/pull/35883>`_, Kiefer Chang) -* mgr/dashboard: increase API test coverage in API controllers (`pr#36260 <https://github.com/ceph/ceph/pull/36260>`_, Kefu Chai, Aashish Sharma) -* mgr/dashboard: redirect to original URL after successful login (`pr#36831 <https://github.com/ceph/ceph/pull/36831>`_, Avan Thakkar) -* mgr/dashboard: remove "This week/month/year" and "Today" time stamps (`pr#36789 <https://github.com/ceph/ceph/pull/36789>`_, Avan Thakkar) -* mgr/dashboard: remove cdCopy2ClipboardButton `formatted` attribute (`pr#35889 <https://github.com/ceph/ceph/pull/35889>`_, Tatjana Dehler) -* mgr/dashboard: remove password field if login is using SSO and fix error message in confirm password (`pr#36689 <https://github.com/ceph/ceph/pull/36689>`_, Ishan Rai) -* mgr/dashboard: right-align dropdown menu of column filters (`pr#36369 <https://github.com/ceph/ceph/pull/36369>`_, Kiefer Chang) -* mgr/dashboard: telemetry activation notification (`pr#35772 <https://github.com/ceph/ceph/pull/35772>`_, Tatjana Dehler) -* mgr/dashboard: wait longer for health status to be cleared (`pr#36346 <https://github.com/ceph/ceph/pull/36346>`_, Tatjana Dehler) -* mgr/k8sevents: sanitise kubernetes events (`pr#35684 <https://github.com/ceph/ceph/pull/35684>`_, Paul Cuzner) -* mgr/prometheus: improve cache (`pr#35847 <https://github.com/ceph/ceph/pull/35847>`_, Patrick Seidensal) -* mgr: avoid false alarm of MGR_MODULE_ERROR (`pr#35995 <https://github.com/ceph/ceph/pull/35995>`_, Kefu Chai) -* mgr: mgr/DaemonServer.cc: make 'config show' on fsid work (`pr#35793 <https://github.com/ceph/ceph/pull/35793>`_, Neha Ojha) -* mgr: mgr/cephadm: Adapt Vagrantfile to use octopus instead of master repo on shaman (`pr#35988 <https://github.com/ceph/ceph/pull/35988>`_, Volker Theile) -* mgr: mgr/diskprediction_local: Fix array size error (`pr#36577 <https://github.com/ceph/ceph/pull/36577>`_, Benoît Knecht) -* mgr: mgr/progress: Skip pg_summary update if _events dict is empty (`pr#36076 <https://github.com/ceph/ceph/pull/36076>`_, Manuel Lausch) -* mgr: mgr/prometheus: log time it takes to collect metrics (`pr#36581 <https://github.com/ceph/ceph/pull/36581>`_, Patrick Seidensal) -* mgr: mgr: Add missing states to PG_STATES in mgr_module.py (`pr#36786 <https://github.com/ceph/ceph/pull/36786>`_, Harley Gorrell) -* mgr: mgr: fix race between module load and notify (`pr#35794 <https://github.com/ceph/ceph/pull/35794>`_, Mykola Golub) -* mgr: mon/PGMap: do not consider changing pg stuck (`pr#35958 <https://github.com/ceph/ceph/pull/35958>`_, Kefu Chai) -* monitoring: alert for pool fill up broken (`pr#35136 <https://github.com/ceph/ceph/pull/35136>`_, Volker Theile) -* msgr: New msgr2 crc and secure modes (msgr2.1) (`pr#35720 <https://github.com/ceph/ceph/pull/35720>`_, Ilya Dryomov) -* rbd,tests: tests/rbd_mirror: fix race on test shut down (`pr#36657 <https://github.com/ceph/ceph/pull/36657>`_, Mykola Golub) -* rbd: librbd: global and pool-level config overrides require image refresh to apply (`pr#36638 <https://github.com/ceph/ceph/pull/36638>`_, Jason Dillaman) -* rbd: librbd: new 'write_zeroes' API methods to suppliment the `discard` APIs (`pr#36247 <https://github.com/ceph/ceph/pull/36247>`_, Jason Dillaman) -* rbd: librbd: potential race conditions handling API IO completions (`pr#36331 <https://github.com/ceph/ceph/pull/36331>`_, Jason Dillaman) -* rbd: mgr/dashboard: work with v1 RBD images (`pr#35711 <https://github.com/ceph/ceph/pull/35711>`_, Ernesto Puerta) -* rbd: rbd: librbd: Align rbd_write_zeroes declarations (`pr#36717 <https://github.com/ceph/ceph/pull/36717>`_, Corey Bryant) -* rbd: rbd: librbd: don't resend async_complete if watcher is unregistered (`pr#36659 <https://github.com/ceph/ceph/pull/36659>`_, Mykola Golub) -* rbd: rbd: librbd: flush all queued object IO from simple scheduler (`pr#36658 <https://github.com/ceph/ceph/pull/36658>`_, Jason Dillaman) -* rbd: rbd: librbd: race when disabling object map with overlapping in-flight writes (`pr#36656 <https://github.com/ceph/ceph/pull/36656>`_, Jason Dillaman) -* rbd: rbd: recognize crush_location, read_from_replica and compression_hint map options (`pr#36061 <https://github.com/ceph/ceph/pull/36061>`_, Ilya Dryomov) -* rgw,tests: qa/tasks/ragweed: always set ragweed_repo (`pr#36651 <https://github.com/ceph/ceph/pull/36651>`_, Kefu Chai) -* rgw: rgw: lc: fix Segmentation Fault when the tag of the object was not found (`pr#36085 <https://github.com/ceph/ceph/pull/36085>`_, yupeng chen, zhuo li) -* rgw: Add subuser to OPA request (`pr#36023 <https://github.com/ceph/ceph/pull/36023>`_, Seena Fallah) -* rgw: Add support wildcard subuser for bucket policy (`pr#36022 <https://github.com/ceph/ceph/pull/36022>`_, Seena Fallah) -* rgw: Adding data cache and CDN capabilities (`pr#36646 <https://github.com/ceph/ceph/pull/36646>`_, Mark Kogan, Or Friedmann) -* rgw: Empty reqs_change_state queue before unregistered_reqs (`pr#36650 <https://github.com/ceph/ceph/pull/36650>`_, Soumya Koduri) -* rgw: add abort multipart date and rule-id header to init multipart upload response (`pr#36649 <https://github.com/ceph/ceph/pull/36649>`_, zhang Shaowen, zhangshaowen) -* rgw: add access log to the beast frontend (`pr#36024 <https://github.com/ceph/ceph/pull/36024>`_, Mark Kogan) -* rgw: add check for index entry's existing when adding bucket stats during bucket reshard (`pr#36025 <https://github.com/ceph/ceph/pull/36025>`_, zhang Shaowen) -* rgw: add negative cache to the system object (`pr#36648 <https://github.com/ceph/ceph/pull/36648>`_, Or Friedmann) -* rgw: add quota enforcement to CopyObj (`pr#36020 <https://github.com/ceph/ceph/pull/36020>`_, Casey Bodley) -* rgw: append obj: prevent tail from being GC'ed (`pr#36389 <https://github.com/ceph/ceph/pull/36389>`_, Abhishek Lekshmanan) -* rgw: bucket list/stats truncates for user w/ >1000 buckets (`pr#36019 <https://github.com/ceph/ceph/pull/36019>`_, J. Eric Ivancich) -* rgw: cls/rgw: preserve olh entry's name on last unlink (`pr#36652 <https://github.com/ceph/ceph/pull/36652>`_, Casey Bodley) -* rgw: cls/rgw_gc: Fixing the iterator used to access urgent data map (`pr#36017 <https://github.com/ceph/ceph/pull/36017>`_, Pritha Srivastava) -* rgw: fix boost::asio::async_write() does not return error (`pr#36647 <https://github.com/ceph/ceph/pull/36647>`_, Mark Kogan) -* rgw: fix bug where ordered bucket listing gets stuck (`pr#35877 <https://github.com/ceph/ceph/pull/35877>`_, J. Eric Ivancich) -* rgw: fix double slash (//) killing the gateway (`pr#36654 <https://github.com/ceph/ceph/pull/36654>`_, Theofilos Mouratidis) -* rgw: fix loop problem with swift stat on account (`pr#36021 <https://github.com/ceph/ceph/pull/36021>`_, Marcus Watts) -* rgw: fix shutdown crash in RGWAsyncReadMDLogEntries (`pr#36653 <https://github.com/ceph/ceph/pull/36653>`_, Casey Bodley) -* rgw: introduce safe user-reset-stats (`pr#36655 <https://github.com/ceph/ceph/pull/36655>`_, Yuval Lifshitz, Matt Benjamin) -* rgw: lc: add lifecycle perf counters (`pr#36018 <https://github.com/ceph/ceph/pull/36018>`_, Mark Kogan, Matt Benjamin) -* rgw: orphan list teuthology test & fully-qualified domain issue (`pr#36027 <https://github.com/ceph/ceph/pull/36027>`_, J. Eric Ivancich) -* rgw: orphan-list timestamp fix (`pr#35929 <https://github.com/ceph/ceph/pull/35929>`_, J. Eric Ivancich) -* rgw: policy: reuse eval_principal to evaluate the policy principal (`pr#36636 <https://github.com/ceph/ceph/pull/36636>`_, Abhishek Lekshmanan) -* rgw: radoslist incomplete multipart uploads fix marker progression (`pr#36028 <https://github.com/ceph/ceph/pull/36028>`_, J. Eric Ivancich) -* rgw: rgw/iam: correcting the result of get role policy (`pr#36645 <https://github.com/ceph/ceph/pull/36645>`_, Pritha Srivastava) -* rgw: selinux: allow ceph_t amqp_port_t:tcp_socket (`pr#36026 <https://github.com/ceph/ceph/pull/36026>`_, Kaleb S. KEITHLEY, Thomas Serlin) -* rgw: stop realm reloader before store shutdown (`pr#36644 <https://github.com/ceph/ceph/pull/36644>`_, Kefu Chai, Casey Bodley) -* tools: tools: Add statfs operation to ceph-objecstore-tool (`pr#35715 <https://github.com/ceph/ceph/pull/35715>`_, David Zafman) - -v15.2.4 Octopus -=============== - -This is the fourth release of the Ceph Octopus stable release series. -In addition to a security fix in RGW, this release brings a range of fixes -across all components. We recommend that all Octopus users upgrade to this -release. - -Notable Changes ---------------- - -* CVE-2020-10753: rgw: sanitize newlines in s3 CORSConfiguration's ExposeHeader - (William Bowling, Adam Mohammed, Casey Bodley) - -* Cephadm: There were a lot of small usability improvements and bug fixes: - - * Grafana when deployed by Cephadm now binds to all network interfaces. - * ``cephadm check-host`` now prints all detected problems at once. - * Cephadm now calls ``ceph dashboard set-grafana-api-ssl-verify false`` - when generating an SSL certificate for Grafana. - * The Alertmanager is now correctly pointed to the Ceph Dashboard - * ``cephadm adopt`` now supports adopting an Alertmanager - * ``ceph orch ps`` now supports filtering by service name - * ``ceph orch host ls`` now marks hosts as offline, if they are not - accessible. - -* Cephadm can now deploy NFS Ganesha services. For example, to deploy NFS with - a service id of mynfs, that will use the RADOS pool nfs-ganesha and namespace - nfs-ns:: - - ceph orch apply nfs mynfs nfs-ganesha nfs-ns - -* Cephadm: ``ceph orch ls --export`` now returns all service specifications in - yaml representation that is consumable by ``ceph orch apply``. In addition, - the commands ``orch ps`` and ``orch ls`` now support ``--format yaml`` and - ``--format json-pretty``. - -* Cephadm: ``ceph orch apply osd`` supports a ``--preview`` flag that prints a preview of - the OSD specification before deploying OSDs. This makes it possible to - verify that the specification is correct, before applying it. - -* RGW: The ``radosgw-admin`` sub-commands dealing with orphans -- - ``radosgw-admin orphans find``, ``radosgw-admin orphans finish``, and - ``radosgw-admin orphans list-jobs`` -- have been deprecated. They have - not been actively maintained and they store intermediate results on - the cluster, which could fill a nearly-full cluster. They have been - replaced by a tool, currently considered experimental, - ``rgw-orphan-list``. - -* RBD: The name of the rbd pool object that is used to store - rbd trash purge schedule is changed from "rbd_trash_trash_purge_schedule" - to "rbd_trash_purge_schedule". Users that have already started using - ``rbd trash purge schedule`` functionality and have per pool or namespace - schedules configured should copy "rbd_trash_trash_purge_schedule" - object to "rbd_trash_purge_schedule" before the upgrade and remove - "rbd_trash_purge_schedule" using the following commands in every RBD - pool and namespace where a trash purge schedule was previously - configured:: - - rados -p <pool-name> [-N namespace] cp rbd_trash_trash_purge_schedule rbd_trash_purge_schedule - rados -p <pool-name> [-N namespace] rm rbd_trash_trash_purge_schedule - - or use any other convenient way to restore the schedule after the - upgrade. - -Changelog ---------- - -* build/ops: address SElinux denials observed in rgw/multisite test run (`pr#34538 <https://github.com/ceph/ceph/pull/34538>`_, Kefu Chai, Kaleb S. Keithley) -* ceph-volume: add and delete lvm tags in a single lvchange call (`pr#35452 <https://github.com/ceph/ceph/pull/35452>`_, Jan Fajerski) -* ceph-volume: add ceph.osdspec_affinity tag (`pr#35134 <https://github.com/ceph/ceph/pull/35134>`_, Joshua Schmid) -* cephadm: batch backport May (1) (`pr#34893 <https://github.com/ceph/ceph/pull/34893>`_, Michael Fritch, Ricardo Marques, Matthew Oliver, Sebastian Wagner, Joshua Schmid, Zac Dover, Varsha Rao) -* cephadm: batch backport May (2) (`pr#35188 <https://github.com/ceph/ceph/pull/35188>`_, Michael Fritch, Sebastian Wagner, Kefu Chai, Georgios Kyratsas, Kiefer Chang, Joshua Schmid, Patrick Seidensal, Varsha Rao, Matthew Oliver, Zac Dover, Juan Miguel Olmo Martínez, Tim Serong, Alexey Miasoedov, Ricardo Marques, Satoru Takeuchi) -* cephadm: batch backport June (1) (`pr#35347 <https://github.com/ceph/ceph/pull/35347>`_, Sebastian Wagner, Zac Dover, Georgios Kyratsas, Kiefer Chang, Ricardo Marques, Patrick Seidensal, Patrick Donnelly, Joshua Schmid, Matthew Oliver, Varsha Rao, Juan Miguel Olmo Martínez, Michael Fritch) -* cephadm: batch backport June (2) (`pr#35475 <https://github.com/ceph/ceph/pull/35475>`_, Sebastian Wagner, Kiefer Chang, Joshua Schmid, Michael Fritch, shinhwagk, Kefu Chai, Juan Miguel Olmo Martínez, Daniel Pivonka) -* cephfs: allow pool names with hyphen and period (`pr#35251 <https://github.com/ceph/ceph/pull/35251>`_, Ramana Raja) -* cephfs: bash_completion: Do not auto complete obsolete and hidden cmds (`pr#34996 <https://github.com/ceph/ceph/pull/34996>`_, Kotresh HR) -* cephfs: cephfs-shell: Change tox testenv name to py3 (`pr#34998 <https://github.com/ceph/ceph/pull/34998>`_, Kefu Chai, Varsha Rao, Aditya Srivastava) -* cephfs: client: expose Client::ll_register_callback via libcephfs (`pr#35150 <https://github.com/ceph/ceph/pull/35150>`_, Jeff Layton) -* cephfs: client: fix Finisher assert failure (`pr#34999 <https://github.com/ceph/ceph/pull/34999>`_, Xiubo Li) -* cephfs: client: only set MClientCaps::FLAG_SYNC when flushing dirty auth caps (`pr#34997 <https://github.com/ceph/ceph/pull/34997>`_, Jeff Layton) -* cephfs: fuse: add the '-d' option back for libfuse (`pr#35449 <https://github.com/ceph/ceph/pull/35449>`_, Xiubo Li) -* cephfs: mds: Handle blacklisted error in purge queue (`pr#35148 <https://github.com/ceph/ceph/pull/35148>`_, Varsha Rao) -* cephfs: mds: preserve ESlaveUpdate logevent until receiving OP_FINISH (`pr#35253 <https://github.com/ceph/ceph/pull/35253>`_, songxinying) -* cephfs: mds: take xlock in the order requests start locking (`pr#35252 <https://github.com/ceph/ceph/pull/35252>`_, "Yan, Zheng") -* cephfs: src/client/fuse_ll: compatible with libfuse3.5 or higher (`pr#35450 <https://github.com/ceph/ceph/pull/35450>`_, Jeff Layton, Xiubo Li) -* cephfs: vstart_runner: set mounted to True at the end of mount() (`pr#35447 <https://github.com/ceph/ceph/pull/35447>`_, Rishabh Dave) -* core: bluestore: fix large (>2GB) writes when bluefs_buffered_io = true (`pr#35446 <https://github.com/ceph/ceph/pull/35446>`_, Igor Fedotov) -* core: bluestore: introduce hybrid allocator (`pr#35498 <https://github.com/ceph/ceph/pull/35498>`_, Igor Fedotov, Adam Kupczyk) -* core: cls/queue: fix empty markers when listing entries (`pr#35241 <https://github.com/ceph/ceph/pull/35241>`_, Pritha Srivastava, Yuval Lifshitz) -* core: objecter: don't attempt to read from non-primary on EC pools (`pr#35444 <https://github.com/ceph/ceph/pull/35444>`_, Ilya Dryomov) -* core: osd: add --osdspec-affinity flag (`pr#35382 <https://github.com/ceph/ceph/pull/35382>`_, Joshua Schmid) -* core: osd: make "missing incremental map" a debug log message (`pr#35442 <https://github.com/ceph/ceph/pull/35442>`_, Nathan Cutler) -* core: osd: prevent ShardedOpWQ suicide_grace drop when waiting for work (`pr#34881 <https://github.com/ceph/ceph/pull/34881>`_, Dan Hill) -* core: rocksdb: Update to ceph-octopus-v5.8-1436 (`pr#35036 <https://github.com/ceph/ceph/pull/35036>`_, Brad Hubbard) -* doc: drop obsolete cache tier options (`pr#35105 <https://github.com/ceph/ceph/pull/35105>`_, Nathan Cutler) -* doc: mgr/dashboard: Add troubleshooting guide (`pr#34947 <https://github.com/ceph/ceph/pull/34947>`_, Tatjana Dehler) -* doc: rgw: document 'rgw gc max concurrent io' (`pr#34987 <https://github.com/ceph/ceph/pull/34987>`_, Casey Bodley) -* mds: cleanup uncommitted fragments before mds goes to active (`pr#35448 <https://github.com/ceph/ceph/pull/35448>`_, "Yan, Zheng") -* mds: don't assert empty io context list when shutting down (`pr#34509 <https://github.com/ceph/ceph/pull/34509>`_, "Yan, Zheng") -* mds: don't shallow copy when decoding xattr map (`pr#35147 <https://github.com/ceph/ceph/pull/35147>`_, "Yan, Zheng") -* mds: flag backtrace scrub failures for new files as okay (`pr#35555 <https://github.com/ceph/ceph/pull/35555>`_, Milind Changire) -* mgr/dashboard/grafana: Add rbd-image details dashboard (`pr#35247 <https://github.com/ceph/ceph/pull/35247>`_, Enno Gotthold) -* mgr/dashboard: Asynchronous unique username validation for User Component (`pr#34849 <https://github.com/ceph/ceph/pull/34849>`_, Nizamudeen) -* mgr/dashboard: ECP modal enhancement (`pr#35152 <https://github.com/ceph/ceph/pull/35152>`_, Stephan Müller) -* mgr/dashboard: Fix HomeTest setup (`pr#35085 <https://github.com/ceph/ceph/pull/35085>`_, Tiago Melo) -* mgr/dashboard: Fix e2e chromium binary validation (`pr#35679 <https://github.com/ceph/ceph/pull/35679>`_, Tiago Melo) -* mgr/dashboard: Fix random E2E error in mgr-modules (`pr#35706 <https://github.com/ceph/ceph/pull/35706>`_, Tiago Melo) -* mgr/dashboard: Fix redirect after changing password (`pr#35243 <https://github.com/ceph/ceph/pull/35243>`_, Tiago Melo) -* mgr/dashboard: Prevent dashboard breakdown on bad pool selection (`pr#35135 <https://github.com/ceph/ceph/pull/35135>`_, Stephan Müller) -* mgr/dashboard: Proposed About Modal box (`pr#35291 <https://github.com/ceph/ceph/pull/35291>`_, Ngwa Sedrick Meh, Tiago Melo) -* mgr/dashboard: Reduce requests in Mirroring page (`pr#34992 <https://github.com/ceph/ceph/pull/34992>`_, Tiago Melo) -* mgr/dashboard: Replace Protractor with Cypress (`pr#34910 <https://github.com/ceph/ceph/pull/34910>`_, Tiago Melo) -* mgr/dashboard: Show labels in hosts page (`pr#35517 <https://github.com/ceph/ceph/pull/35517>`_, Volker Theile) -* mgr/dashboard: Show table details inside the datatable (`pr#35270 <https://github.com/ceph/ceph/pull/35270>`_, Sebastian Krah) -* mgr/dashboard: add telemetry report component (`pr#34850 <https://github.com/ceph/ceph/pull/34850>`_, Tatjana Dehler) -* mgr/dashboard: displaying Service detail inside table (`pr#35269 <https://github.com/ceph/ceph/pull/35269>`_, Kiefer Chang) -* mgr/dashboard: fix autocomplete input backgrounds in chrome and firefox (`pr#35718 <https://github.com/ceph/ceph/pull/35718>`_, Ishan Rai) -* mgr/dashboard: grafana panels for rgw multisite sync performance (`pr#35693 <https://github.com/ceph/ceph/pull/35693>`_, Alfonso Martínez) -* mgr/dashboard: monitoring menu entry should indicate firing alerts (`pr#34822 <https://github.com/ceph/ceph/pull/34822>`_, Tiago Melo, Volker Theile) -* mgr/dashboard: redesign the login screen (`pr#35268 <https://github.com/ceph/ceph/pull/35268>`_, Ishan Rai) -* mgr/dashboard: remove space after service name in the Hosts List table (`pr#35531 <https://github.com/ceph/ceph/pull/35531>`_, Kiefer Chang) -* mgr/dashboard: replace hard coded telemetry URLs (`pr#35231 <https://github.com/ceph/ceph/pull/35231>`_, Tatjana Dehler) -* mgr/rbd_support: rename "rbd_trash_trash_purge_schedule" oid (`pr#35436 <https://github.com/ceph/ceph/pull/35436>`_, Nathan Cutler, Mykola Golub) -* mgr/status: Fix "ceph fs status" json format writing to stderr (`pr#34727 <https://github.com/ceph/ceph/pull/34727>`_, Kotresh HR) -* mgr/test_orchestrator: fix _get_ceph_daemons() (`pr#34979 <https://github.com/ceph/ceph/pull/34979>`_, Alfonso Martínez) -* mgr/volumes: Add snapshot info command (`pr#35670 <https://github.com/ceph/ceph/pull/35670>`_, Kotresh HR) -* mgr/volumes: Create subvolume with isolated rados namespace (`pr#35671 <https://github.com/ceph/ceph/pull/35671>`_, Kotresh HR) -* mgr/volumes: Fix subvolume create idempotency (`pr#35256 <https://github.com/ceph/ceph/pull/35256>`_, Kotresh HR) -* mgr: synchronize ClusterState's health and mon_status (`pr#34995 <https://github.com/ceph/ceph/pull/34995>`_, Radoslaw Zarzynski) -* monitoring: Fix "10% OSDs down" alert description (`pr#35151 <https://github.com/ceph/ceph/pull/35151>`_, Benoît Knecht) -* monitoring: fixing some issues in RBD detail dashboard (`pr#35463 <https://github.com/ceph/ceph/pull/35463>`_, Kiefer Chang) -* rbd: librbd: Watcher should not attempt to re-watch after detecting blacklisting (`pr#35439 <https://github.com/ceph/ceph/pull/35439>`_, Jason Dillaman) -* rbd: librbd: avoid completing mirror:DisableRequest while holding its lock (`pr#35126 <https://github.com/ceph/ceph/pull/35126>`_, Jason Dillaman) -* rbd: librbd: copy API should not inherit v1 image format by default (`pr#35255 <https://github.com/ceph/ceph/pull/35255>`_, Jason Dillaman) -* rbd: librbd: make rbd_read_from_replica_policy actually work (`pr#35438 <https://github.com/ceph/ceph/pull/35438>`_, Ilya Dryomov) -* rbd: pybind: RBD.create() method's 'old_format' parameter now defaults to False (`pr#35435 <https://github.com/ceph/ceph/pull/35435>`_, Jason Dillaman) -* rbd: rbd-mirror: don't hold (stale) copy of local image journal pointer (`pr#35430 <https://github.com/ceph/ceph/pull/35430>`_, Jason Dillaman) -* rbd: rbd-mirror: stop local journal replayer first during shut down (`pr#35440 <https://github.com/ceph/ceph/pull/35440>`_, Jason Dillaman, Mykola Golub) -* rbd: rbd-mirror: wait for in-flight start/stop/restart (`pr#35437 <https://github.com/ceph/ceph/pull/35437>`_, Mykola Golub) -* rgw: add "rgw-orphan-list" tool and "radosgw-admin bucket radoslist ..." (`pr#34991 <https://github.com/ceph/ceph/pull/34991>`_, J. Eric Ivancich) -* rgw: amqp: fix the "routable" delivery mode (`pr#35433 <https://github.com/ceph/ceph/pull/35433>`_, Yuval Lifshitz) -* rgw: anonomous swift to obj that dont exist should 401 (`pr#35120 <https://github.com/ceph/ceph/pull/35120>`_, Matthew Oliver) -* rgw: fix bug where bucket listing end marker not always set correctly (`pr#34993 <https://github.com/ceph/ceph/pull/34993>`_, J. Eric Ivancich) -* rgw: fix rgw tries to fetch anonymous user (`pr#34988 <https://github.com/ceph/ceph/pull/34988>`_, Or Friedmann) -* rgw: fix some list buckets handle leak (`pr#34985 <https://github.com/ceph/ceph/pull/34985>`_, Tianshan Qu) -* rgw: gc: Clearing off urgent data in bufferlist, before (`pr#35434 <https://github.com/ceph/ceph/pull/35434>`_, Pritha Srivastava) -* rgw: lc: enable thread-parallelism in RGWLC (`pr#35431 <https://github.com/ceph/ceph/pull/35431>`_, Matt Benjamin) -* rgw: notifications: fix zero size in notifications (`pr#34940 <https://github.com/ceph/ceph/pull/34940>`_, J. Eric Ivancich, Yuval Lifshitz) -* rgw: notifications: version id was not sent in versioned buckets (`pr#35254 <https://github.com/ceph/ceph/pull/35254>`_, Yuval Lifshitz) -* rgw: radosgw-admin: fix infinite loops in 'datalog list' (`pr#34989 <https://github.com/ceph/ceph/pull/34989>`_, Casey Bodley) -* rgw: url: fix amqp urls with vhosts (`pr#35432 <https://github.com/ceph/ceph/pull/35432>`_, Yuval Lifshitz) -* tests: migrate qa/ to Python3 (`pr#35364 <https://github.com/ceph/ceph/pull/35364>`_, Kyr Shatskyy, Ilya Dryomov, Xiubo Li, Kefu Chai, Casey Bodley, Rishabh Dave, Patrick Donnelly, Sidharth Anupkrishnan, Michael Fritch) - - -v15.2.3 Octopus -=============== - -This is the third bug-fix release of the Ceph Octopus stable release series. -This release mainly is a workaround for a potential OSD corruption in v15.2.2. -We advise users to upgrade to v15.2.3 directly. For users running v15.2.2 please -execute the following:: - - ceph config set osd bluefs_preextend_wal_files false - -Changelog ---------- - -* bluestore: remove preextended WAL support (`issue#45613 <http://tracker.ceph.com/issues/45613>`_, Igor Fedotov, Neha Ojha) - - -v15.2.2 Octopus -=============== - -This is the second bug-fix release of the Ceph Octopus stable release series. This release -brings a range of fixes across all components, as well as patching a security flaw. We -recommend that all Octopus users upgrade. - -Notable Changes ---------------- - -* CVE-2020-10736: Fixed an authorization bypass in mons & mgrs (Olle SegerDahl, Josh Durgin) - -Changelog ---------- - -* bluestore,core: common/options: Disable bluefs_buffered_io by default again (`pr#34353 <https://github.com/ceph/ceph/pull/34353>`_, Mark Nelson) -* bluestore: os/bluestore: Don't pollute old journal when add new device (`pr#34795 <https://github.com/ceph/ceph/pull/34795>`_, Yang Honggang) -* bluestore: os/bluestore: fix 'unused' calculation (`pr#34793 <https://github.com/ceph/ceph/pull/34793>`_, Igor Fedotov, xie xingguo) -* bluestore: os/bluestore: open DB in read-only when expanding DB/WAL (`pr#34610 <https://github.com/ceph/ceph/pull/34610>`_, Adam Kupczyk, Igor Fedotov) -* build/ops: rpm: add python3-saml as install dependency (`pr#34474 <https://github.com/ceph/ceph/pull/34474>`_, Ernesto Puerta) -* build/ops: rpm: drop "is_opensuse" conditional in SUSE-specific bcond block (`pr#34790 <https://github.com/ceph/ceph/pull/34790>`_, Nathan Cutler) -* build/ops: spec: address some warnings raised by RPM 4.15.1 (`pr#34526 <https://github.com/ceph/ceph/pull/34526>`_, Nathan Cutler) -* ceph-volume/batch: check lvs list before access (`pr#34480 <https://github.com/ceph/ceph/pull/34480>`_, Jan Fajerski) -* ceph-volume/batch: return success when all devices are filtered (`pr#34477 <https://github.com/ceph/ceph/pull/34477>`_, Jan Fajerski) -* ceph-volume: update functional testing deploy.yml playbook (`pr#34886 <https://github.com/ceph/ceph/pull/34886>`_, Guillaume Abrioux) -* cephadm: Fix check_ip_port to work with IPv6 (`pr#34350 <https://github.com/ceph/ceph/pull/34350>`_, Ricardo Marques) -* cephadm: Update images used (`pr#34686 <https://github.com/ceph/ceph/pull/34686>`_, Sebastian Wagner) -* cephadm: ceph-volume: disallow concurrent execution (`pr#34423 <https://github.com/ceph/ceph/pull/34423>`_, Sage Weil) -* cephadm: rm-cluster clean up /etc/ceph (`pr#34299 <https://github.com/ceph/ceph/pull/34299>`_, Daniel-Pivonka) -* cephfs,mgr: mgr/volumes: Add interface to get subvolume metadata (`pr#34681 <https://github.com/ceph/ceph/pull/34681>`_, Kotresh HR) -* cephfs,mgr: mgr: force purge normal ceph entities from service map (`issue#44677 <http://tracker.ceph.com/issues/44677>`_, `pr#34800 <https://github.com/ceph/ceph/pull/34800>`_, Venky Shankar) -* cephfs,tools: cephfs-journal-tool: correctly parse --dry_run argument (`pr#34804 <https://github.com/ceph/ceph/pull/34804>`_, Milind Changire) -* cephfs,tools: tools/cephfs: add accounted_rstat/rstat when building file dentry (`pr#34803 <https://github.com/ceph/ceph/pull/34803>`_, Xiubo Li) -* cephfs: ceph-fuse: link to libfuse3 and pass `-o big_writes` to libfuse if libfuse < 3.0.0 (`pr#34769 <https://github.com/ceph/ceph/pull/34769>`_, Xiubo Li, "Yan, Zheng", Kefu Chai) -* cephfs: client: reset requested_max_size if file write is not wanted (`pr#34766 <https://github.com/ceph/ceph/pull/34766>`_, "Yan, Zheng") -* cephfs: mds: fix 'if there is lock cache on dir' check (`pr#34273 <https://github.com/ceph/ceph/pull/34273>`_, "Yan, Zheng") -* cephfs: mon/FSCommands: Fix 'add_data_pool' command and 'fs new' command (`pr#34775 <https://github.com/ceph/ceph/pull/34775>`_, Ramana Raja) -* cephfs: qa: install task runs twice with double unwind causing fatal errors (`pr#34912 <https://github.com/ceph/ceph/pull/34912>`_, Patrick Donnelly) -* core,mon: mon/OSDMonitor: allow trimming maps even if osds are down (`pr#34924 <https://github.com/ceph/ceph/pull/34924>`_, Joao Eduardo Luis) -* core: ceph-object-corpus: update to octopus (`pr#34797 <https://github.com/ceph/ceph/pull/34797>`_, Josh Durgin) -* core: mgr/DaemonServer: fetch metadata for new daemons (e.g., mons) (`pr#34416 <https://github.com/ceph/ceph/pull/34416>`_, Sage Weil) -* core: mon/OSDMonitor: Always tune priority cache manager memory on all mons (`pr#34917 <https://github.com/ceph/ceph/pull/34917>`_, Sridhar Seshasayee) -* core: mon: calculate min_size on osd pool set size (`pr#34528 <https://github.com/ceph/ceph/pull/34528>`_, Deepika Upadhyay) -* core: osd/PeeringState: do not trim pg log past last_update_ondisk (`pr#34807 <https://github.com/ceph/ceph/pull/34807>`_, xie xingguo, Samuel Just) -* core: osd/PrimaryLogPG: fix SPARSE_READ stat (`pr#34809 <https://github.com/ceph/ceph/pull/34809>`_, Yan Jun) -* devices/simple/scan: Fix string in log statement (`pr#34446 <https://github.com/ceph/ceph/pull/34446>`_, Jan Fajerski) -* doc: cephadm: Batch backport April (1) (`pr#34554 <https://github.com/ceph/ceph/pull/34554>`_, Matthew Oliver, Sage Weil, Sebastian Wagner, Michael Fritch, Tim, Jeff Layton, Juan Miguel Olmo Martínez, Joshua Schmid) -* doc: cephadm: Batch backport April (2) (`issue#45029 <http://tracker.ceph.com/issues/45029>`_, `pr#34687 <https://github.com/ceph/ceph/pull/34687>`_, Maran Hidskes, Kiefer Chang, Matthew Oliver, Sebastian Wagner, Andreas Haase, Tim Serong, Zac Dover, Michael Fritch, Joshua Schmid) -* doc: cephadm: Batch backport April (3) (`pr#34742 <https://github.com/ceph/ceph/pull/34742>`_, Sebastian Wagner, Dimitri Savineau, Michael Fritch) -* doc: cephadm: batch backport March (`pr#34438 <https://github.com/ceph/ceph/pull/34438>`_, Jan Fajerski, Sebastian Wagner, Daniel-Pivonka, Michael Fritch, Sage Weil) -* doc: doc/releases/nautilus: restart OSDs to make them bind to v2 addr (`pr#34523 <https://github.com/ceph/ceph/pull/34523>`_, Nathan Cutler) -* mgr/dashboard: 'Prometheus / All Alerts' page shows progress bar (`pr#34631 <https://github.com/ceph/ceph/pull/34631>`_, Volker Theile) -* mgr/dashboard: Fix ServiceDetails and PoolDetails unit tests (`pr#34760 <https://github.com/ceph/ceph/pull/34760>`_, Tiago Melo) -* mgr/dashboard: Fix iSCSI's username and password validation (`pr#34547 <https://github.com/ceph/ceph/pull/34547>`_, Tiago Melo) -* mgr/dashboard: Improve iSCSI CHAP message (`pr#34630 <https://github.com/ceph/ceph/pull/34630>`_, Ricardo Marques) -* mgr/dashboard: Prevent iSCSI target recreation when editing controls (`pr#34548 <https://github.com/ceph/ceph/pull/34548>`_, Tiago Melo) -* mgr/dashboard: RGW auto refresh is not working (`pr#34739 <https://github.com/ceph/ceph/pull/34739>`_, Avan Thakkar) -* mgr/dashboard: Repair broken grafana panels (`pr#34495 <https://github.com/ceph/ceph/pull/34495>`_, Kristoffer Grönlund) -* mgr/dashboard: Update translations on octopus (`pr#34309 <https://github.com/ceph/ceph/pull/34309>`_, Sebastian Krah) -* mgr/dashboard: add crush rule test suite (`pr#34211 <https://github.com/ceph/ceph/pull/34211>`_, Tatjana Dehler) -* mgr/dashboard: fix API tests to be py3 compatible (`pr#34759 <https://github.com/ceph/ceph/pull/34759>`_, Kefu Chai, Laura Paduano, Alfonso Martínez) -* mgr/dashboard: fix errors related to frontend service subscriptions (`pr#34467 <https://github.com/ceph/ceph/pull/34467>`_, Alfonso Martínez) -* mgr/dashboard: fix tasks.mgr.dashboard.test_rgw.RgwBucketTest.test_all (`pr#34708 <https://github.com/ceph/ceph/pull/34708>`_, Alfonso Martínez) -* mgr/dashboard: lint error on plugins/debug.py (`pr#34625 <https://github.com/ceph/ceph/pull/34625>`_, Volker Theile) -* mgr/dashboard: shorten "Container ID" and "Container image ID" in Services page (`pr#34648 <https://github.com/ceph/ceph/pull/34648>`_, Volker Theile) -* mgr/dashboard: use FQDN for failover redirection (`pr#34498 <https://github.com/ceph/ceph/pull/34498>`_, Ernesto Puerta) -* mgr: mgr/PyModule: fix missing tracebacks in handle_pyerror() (`pr#34626 <https://github.com/ceph/ceph/pull/34626>`_, Tim Serong) -* mgr: mgr/telegraf: catch FileNotFoundError exception (`pr#34629 <https://github.com/ceph/ceph/pull/34629>`_, Kefu Chai) -* monitoring: Fix pool capacity incorrect (`pr#34449 <https://github.com/ceph/ceph/pull/34449>`_, James Cheng) -* monitoring: alert for prediction of disk and pool fill up broken (`pr#34395 <https://github.com/ceph/ceph/pull/34395>`_, Patrick Seidensal) -* monitoring: fix decimal precision in Grafana %percentages (`pr#34828 <https://github.com/ceph/ceph/pull/34828>`_, Ernesto Puerta) -* monitoring: root volume full alert fires false positives (`pr#34418 <https://github.com/ceph/ceph/pull/34418>`_, Patrick Seidensal) -* pybind,rbd: pybind/rbd: ensure image is open before permitting operations (`pr#34425 <https://github.com/ceph/ceph/pull/34425>`_, Mykola Golub) -* pybind,rbd: pybind/rbd: fix no lockers are obtained, ImageNotFound exception will be output (`pr#34387 <https://github.com/ceph/ceph/pull/34387>`_, zhangdaolong) -* qa/suites/rados/cephadm/upgrade: start from v15.2.0 (`pr#34440 <https://github.com/ceph/ceph/pull/34440>`_, Sage Weil) -* qa/tasks/cephadm: add 'roleless' mode (`pr#34407 <https://github.com/ceph/ceph/pull/34407>`_, Sage Weil) -* rbd,tests: tests: update unmap.t for table spacing changes (`pr#34819 <https://github.com/ceph/ceph/pull/34819>`_, Ilya Dryomov) -* rbd: rbd-mirror: improved replication statistics (`pr#34810 <https://github.com/ceph/ceph/pull/34810>`_, Mykola Golub, Jason Dillaman) -* rbd: rbd: ignore tx-only mirror peers when adding new peers (`pr#34638 <https://github.com/ceph/ceph/pull/34638>`_, Jason Dillaman) -* rgw: Disable prefetch of entire head object when GET request with range header (`pr#34826 <https://github.com/ceph/ceph/pull/34826>`_, Or Friedmann) -* rgw: pubsub sync module ignores ERR_USER_EXIST (`pr#34825 <https://github.com/ceph/ceph/pull/34825>`_, Casey Bodley) -* rgw: radosgw-admin: add support for --bucket-id in bucket stats command (`pr#34816 <https://github.com/ceph/ceph/pull/34816>`_, Vikhyat Umrao) -* rgw: reshard: skip stale bucket id entries from reshard queue (`pr#34734 <https://github.com/ceph/ceph/pull/34734>`_, Abhishek Lekshmanan) -* rgw: use DEFER_DROP_PRIVILEGES flag unconditionally (`pr#34731 <https://github.com/ceph/ceph/pull/34731>`_, Casey Bodley) - - -v15.2.1 Octopus -=============== - -This is the first bugfix release of Ceph Octopus, we recommend all Octopus users -upgrade. This release fixes an upgrade issue and also has 2 security fixes - -Notable Changes ---------------- - -* issue#44759: Fixed luminous->nautilus->octopus upgrade asserts -* CVE-2020-1759: Fixed nonce reuse in msgr V2 secure mode -* CVE-2020-1760: Fixed XSS due to RGW GetObject header-splitting - -Changelog ---------- - -* build/ops: fix ceph_release type to 'stable' (`pr#34194 <https://github.com/ceph/ceph/pull/34194>`_, Sage Weil) -* build/ops: vstart_runner.py: fix OSError when checking if non-existent path is mounted (`pr#34132 <https://github.com/ceph/ceph/pull/34132>`_, Alfonso Martínez) -* cephadm: Add alertmanager adopt (`pr#34157 <https://github.com/ceph/ceph/pull/34157>`_, Eric Jackson) -* cephadm: Add alertmanager sample (`pr#34158 <https://github.com/ceph/ceph/pull/34158>`_, Eric Jackson) -* cephadm: Fix truncated output of "ceph mgr dump" (`pr#34258 <https://github.com/ceph/ceph/pull/34258>`_, Sebastian Wagner) -* mgr/cephadm: Add example to run when debugging ssh failures (`pr#34153 <https://github.com/ceph/ceph/pull/34153>`_, Sebastian Wagner) -* mgr/cephadm: DriveGroupSpec needs to support/ignore _unmanaged_ (`pr#34185 <https://github.com/ceph/ceph/pull/34185>`_, Joshua Schmid) -* mgr/cephadm: bind grafana to all interfaces (`pr#34191 <https://github.com/ceph/ceph/pull/34191>`_, Sage Weil) -* mgr/cephadm: fix 'orch ps --refresh' (`pr#34190 <https://github.com/ceph/ceph/pull/34190>`_, Sage Weil) -* mgr/cephadm: fix 'upgrade start' message when specifying a version (`pr#34186 <https://github.com/ceph/ceph/pull/34186>`_, Sage Weil) -* mgr/cephadm: include alerts in prometheus deployment (`pr#34155 <https://github.com/ceph/ceph/pull/34155>`_, Sage Weil) -* mgr/cephadm: point alertmanager at all mgr/dashboard URLs (`pr#34154 <https://github.com/ceph/ceph/pull/34154>`_, Sage Weil) -* mgr/cephadm: provision nfs-ganesha via orchestrator (`pr#34192 <https://github.com/ceph/ceph/pull/34192>`_, Michael Fritch) -* mgr/dashboard: Check for missing npm resolutions (`pr#34202 <https://github.com/ceph/ceph/pull/34202>`_, Tiago Melo) -* mgr/dashboard: NoRebalance flag is added to the Dashboard (`pr#33939 <https://github.com/ceph/ceph/pull/33939>`_, Nizamudeen) -* mgr/dashboard: correct Orchestrator documentation link (`pr#34212 <https://github.com/ceph/ceph/pull/34212>`_, Tatjana Dehler) -* mgr/dashboard: do not fail on user creation (CLI) (`pr#34280 <https://github.com/ceph/ceph/pull/34280>`_, Tatjana Dehler) -* mgr/orch: allow list daemons by service_name (`pr#34160 <https://github.com/ceph/ceph/pull/34160>`_, Kiefer Chang) -* mgr/prometheus: ceph_pg\_\* metrics contains last value instead of sum across all reported states (`pr#34163 <https://github.com/ceph/ceph/pull/34163>`_, Jacek Suchenia) -* mgr/rook: Blinking lights (`pr#34199 <https://github.com/ceph/ceph/pull/34199>`_, Juan Miguel Olmo Martínez) -* osd/PeeringState: drop mimic assert (`pr#34204 <https://github.com/ceph/ceph/pull/34204>`_, Sage Weil) -* osd/PeeringState: fix pending want_acting vs osd offline race (`pr#34123 <https://github.com/ceph/ceph/pull/34123>`_, xie xingguo) -* pybind/mgr: fix config_notify handling of default values (`pr#34178 <https://github.com/ceph/ceph/pull/34178>`_, Nathan Cutler) -* rbd: librbd: fix client backwards compatibility issues (`issue#39450 <http://tracker.ceph.com/issues/39450>`_, `issue#38834 <http://tracker.ceph.com/issues/38834>`_, `pr#34323 <https://github.com/ceph/ceph/pull/34323>`_, Jason Dillaman) -* tools: ceph-backport.sh: add deprecation warning (`pr#34125 <https://github.com/ceph/ceph/pull/34125>`_, Nathan Cutler) - - -v15.2.0 Octopus -=============== - -This is the first stable release of Ceph Octopus. - -Major Changes from Nautilus ---------------------------- - -General -~~~~~~~ - -* A new deployment tool called **cephadm** has been introduced that - integrates Ceph daemon deployment and management via containers - into the orchestration layer. For more information see - :ref:`cephadm`. -* Health alerts can now be muted, either temporarily or permanently. -* Health alerts are now raised for recent Ceph daemons crashes. -* A simple 'alerts' module has been introduced to send email - health alerts for clusters deployed without the benefit of an - existing external monitoring infrastructure. -* :ref:`Packages <packages>` are built for the following distributions: - - - CentOS 8 - - CentOS 7 (partial--see below) - - Ubuntu 18.04 (Bionic) - - Debian Buster - - :ref:`Container image <containers>` (based on CentOS 8) - - Note that the dashboard, prometheus, and restful manager modules - will not work on the CentOS 7 build due to Python 3 module - dependencies that are missing in CentOS 7. - - Besides this packages built by the community will also available for the - following distros: - - - Fedora (33/rawhide) - - openSUSE (15.2, Tumbleweed) - - -Dashboard -~~~~~~~~~ - -The :ref:`mgr-dashboard` has gained a lot of new features and functionality: - -* UI Enhancements - - - New vertical navigation bar - - New unified sidebar: better background task and events notification - - Shows all progress mgr module notifications - - Multi-select on tables to perform bulk operations - -* Dashboard user account security enhancements - - - Disabling/enabling existing user accounts - - Clone an existing user role - - Users can change their own password - - Configurable password policies: Minimum password complexity/length - requirements - - Configurable password expiration - - Change password after first login - -New and enhanced management of Ceph features/services: - -* OSD/device management - - - List all disks associated with an OSD - - Add support for blinking enclosure LEDs via the orchestrator - - List all hosts known by the orchestrator - - List all disks and their properties attached to a node - - Display disk health information (health prediction and SMART data) - - Deploy new OSDs on new disks/hosts - - Display and allow sorting by an OSD's default device class in the OSD - table - - Explicitly set/change the device class of an OSD, display and sort OSDs by - device class - -* Pool management - - - Viewing and setting pool quotas - - Define and change per-pool PG autoscaling mode - -* RGW management enhancements - - - Enable bucket versioning - - Enable MFA support - - Select placement target on bucket creation - -* CephFS management enhancements - - - CephFS client eviction - - CephFS snapshot management - - CephFS quota management - - Browse CephFS directory - -* iSCSI management enhancements - - - Show iSCSI GW status on landing page - - Prevent deletion of IQNs with open sessions - - Display iSCSI "logged in" info - -* Prometheus alert management - - - List configured Prometheus alerts - - -RADOS -~~~~~ - -* Objects can now be brought in sync during recovery by copying only - the modified portion of the object, reducing tail latencies during - recovery. -* Ceph will allow recovery below *min_size* for Erasure coded pools, - wherever possible. -* The PG autoscaler feature introduced in Nautilus is enabled for - new pools by default, allowing new clusters to autotune *pg num* - without any user intervention. The default values for new pools - and RGW/CephFS metadata pools have also been adjusted to perform - well for most users. -* BlueStore has received several improvements and performance - updates, including improved accounting for "omap" (key/value) - object data by pool, improved cache memory management, and a - reduced allocation unit size for SSD devices. (Note that by - default, the first time each OSD starts after upgrading to octopus - it will trigger a conversion that may take from a few minutes to a - few hours, depending on the amount of stored "omap" data.) -* Snapshot trimming metadata is now managed in a more efficient and - scalable fashion. - - -RBD block storage -~~~~~~~~~~~~~~~~~ - -* Mirroring now supports a new snapshot-based mode that no longer requires - the journaling feature and its related impacts in exchange for the loss - of point-in-time consistency (it remains crash consistent). -* Clone operations now preserve the sparseness of the underlying RBD image. -* The trash feature has been improved to (optionally) automatically - move old parent images to the trash when their children are all - deleted or flattened. -* The trash can be configured to automatically purge on a defined schedule. -* Images can be online re-sparsified to reduce the usage of zeroed extents. -* The ``rbd-nbd`` tool has been improved to use more modern kernel interfaces. -* Caching has been improved to be more efficient and performant. -* ``rbd-mirror`` automatically adjusts its per-image memory usage based - upon its memory target. -* A new persistent read-only caching daemon is available to offload reads from - shared parent images. - -RGW object storage -~~~~~~~~~~~~~~~~~~ - -* New `Multisite Sync Policy`_ primitives for per-bucket replication. (EXPERIMENTAL) -* S3 feature support: - - - Bucket Replication (EXPERIMENTAL) - - `Bucket Notifications`_ via HTTP/S, AMQP and Kafka - - Bucket Tagging - - Object Lock - - Public Access Block for buckets - -* Bucket sharding: - - - Significantly improved listing performance on buckets with many shards. - - Dynamic resharding prefers prime shard counts for improved distribution. - - Raised the default number of bucket shards to 11. - -* Added `HashiCorp Vault Integration`_ for SSE-KMS. -* Added Keystone token cache for S3 requests. - -CephFS distributed file system -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -* Inline data support in CephFS has been deprecated and will likely be - removed in a future release. -* MDS daemons can now be assigned to manage a particular file system via the - new ``mds_join_fs`` option. -* MDS now aggressively asks idle clients to trim caps which improves stability - when file system load changes. -* The mgr volumes plugin has received numerous improvements to support CephFS - via CSI, including snapshots and cloning. -* cephfs-shell has had numerous incremental improvements and bug fixes. - - -Upgrading from Mimic or Nautilus --------------------------------- - -.. note:: - - You can monitor the progress of your upgrade at each stage with the - ``ceph versions`` command, which will tell you what ceph version(s) are - running for each type of daemon. - -Instructions -~~~~~~~~~~~~ - -.. highlight:: console - -#. Make sure your cluster is stable and healthy (no down or - recovering OSDs). (Optional, but recommended.) - -#. Set the ``noout`` flag for the duration of the upgrade. (Optional, - but recommended.):: - - # ceph osd set noout - -#. Upgrade monitors by installing the new packages and restarting the - monitor daemons. For example, on each monitor host,:: - - # systemctl restart ceph-mon.target - - Once all monitors are up, verify that the monitor upgrade is - complete by looking for the ``octopus`` string in the mon - map. The command:: - - # ceph mon dump | grep min_mon_release - - should report:: - - min_mon_release 15 (octopus) - - If it doesn't, that implies that one or more monitors hasn't been - upgraded and restarted and/or the quorum does not include all monitors. - -#. Upgrade ``ceph-mgr`` daemons by installing the new packages and - restarting all manager daemons. For example, on each manager host,:: - - # systemctl restart ceph-mgr.target - - Verify the ``ceph-mgr`` daemons are running by checking ``ceph - -s``:: - - # ceph -s - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the - ceph-osd daemons on all OSD hosts:: - - # systemctl restart ceph-osd.target - - Note that the first time each OSD starts, it will do a format - conversion to improve the accounting for "omap" data. This may - take a few minutes to as much as a few hours (for an HDD with lots - of omap data). You can disable this automatic conversion with:: - - # ceph config set osd bluestore_fsck_quick_fix_on_mount false - - You can monitor the progress of the OSD upgrades with the - ``ceph versions`` or ``ceph osd versions`` commands:: - - # ceph osd versions - { - "ceph version 13.2.5 (...) mimic (stable)": 12, - "ceph version 15.2.0 (...) octopus (stable)": 22, - } - -#. Upgrade all CephFS MDS daemons. For each CephFS file system, - - #. Reduce the number of ranks to 1. (Make note of the original - number of MDS daemons first if you plan to restore it later.):: - - # ceph status - # ceph fs set <fs_name> max_mds 1 - - #. Wait for the cluster to deactivate any non-zero ranks by - periodically checking the status:: - - # ceph status - - #. Take all standby MDS daemons offline on the appropriate hosts with:: - - # systemctl stop ceph-mds@<daemon_name> - - #. Confirm that only one MDS is online and is rank 0 for your FS:: - - # ceph status - - #. Upgrade the last remaining MDS daemon by installing the new - packages and restarting the daemon:: - - # systemctl restart ceph-mds.target - - #. Restart all standby MDS daemons that were taken offline:: - - # systemctl start ceph-mds.target - - #. Restore the original value of ``max_mds`` for the volume:: - - # ceph fs set <fs_name> max_mds <original_max_mds> - -#. Upgrade all radosgw daemons by upgrading packages and restarting - daemons on all hosts:: - - # systemctl restart ceph-radosgw.target - -#. Complete the upgrade by disallowing pre-Octopus OSDs and enabling - all new Octopus-only functionality:: - - # ceph osd require-osd-release octopus - -#. If you set ``noout`` at the beginning, be sure to clear it with:: - - # ceph osd unset noout - -#. Verify the cluster is healthy with ``ceph health``. - - If your CRUSH tunables are older than Hammer, Ceph will now issue a - health warning. If you see a health alert to that effect, you can - revert this change with:: - - ceph config set mon mon_crush_min_required_version firefly - - If Ceph does not complain, however, then we recommend you also - switch any existing CRUSH buckets to straw2, which was added back - in the Hammer release. If you have any 'straw' buckets, this will - result in a modest amount of data movement, but generally nothing - too severe.:: - - ceph osd getcrushmap -o backup-crushmap - ceph osd crush set-all-straw-buckets-to-straw2 - - If there are problems, you can easily revert with:: - - ceph osd setcrushmap -i backup-crushmap - - Moving to 'straw2' buckets will unlock a few recent features, like - the `crush-compat` :ref:`balancer <balancer>` mode added back in Luminous. - - -#. If you are upgrading from Mimic, or did not already do so when you - upgraded to Nautlius, we recommended you enable the new :ref:`v2 - network protocol <msgr2>`, issue the following command:: - - ceph mon enable-msgr2 - - This will instruct all monitors that bind to the old default port - 6789 for the legacy v1 protocol to also bind to the new 3300 v2 - protocol port. To see if all monitors have been updated,:: - - ceph mon dump - - and verify that each monitor has both a ``v2:`` and ``v1:`` address - listed. - -#. Consider enabling the :ref:`telemetry module <telemetry>` to send - anonymized usage statistics and crash information to the Ceph - upstream developers. To see what would be reported (without actually - sending any information to anyone),:: - - ceph mgr module enable telemetry - ceph telemetry show - - If you are comfortable with the data that is reported, you can opt-in to - automatically report the high-level cluster metadata with:: - - ceph telemetry on - - For more information about the telemetry module, see :ref:`the - documentation <telemetry>`. - - -Upgrading from pre-Mimic releases (like Luminous) -------------------------------------------------- - -You *must* first upgrade to Mimic (13.2.z) or Nautilus (14.2.z) before -upgrading to Octopus. - - -Upgrade compatibility notes ---------------------------- - -* Starting with Octopus, there is now a separate repository directory - for each version on `download.ceph.com` (e.g., ``rpm-15.2.0`` and - ``debian-15.2.0``). The traditional package directory that is named - after the release (e.g., ``rpm-octopus`` and ``debian-octopus``) is - now a symlink to the most recently bug fix version for that release. - We no longer generate a single repository that combines all bug fix - versions for a single named release. - -* The RGW "num_rados_handles" has been removed. - If you were using a value of "num_rados_handles" greater than 1 - multiply your current "objecter_inflight_ops" and - "objecter_inflight_op_bytes" parameters by the old - "num_rados_handles" to get the same throttle behavior. - -* Ceph now packages python bindings for python3.6 instead of - python3.4, because python3 in EL7/EL8 is now using python3.6 - as the native python3. see the `announcement`_ - for more details on the background of this change. - -* librbd now uses a write-around cache policy be default, - replacing the previous write-back cache policy default. - This cache policy allows librbd to immediately complete - write IOs while they are still in-flight to the OSDs. - Subsequent flush requests will ensure all in-flight - write IOs are completed prior to completing. The - librbd cache policy can be controlled via a new - "rbd_cache_policy" configuration option. - -* librbd now includes a simple IO scheduler which attempts to - batch together multiple IOs against the same backing RBD - data block object. The librbd IO scheduler policy can be - controlled via a new "rbd_io_scheduler" configuration - option. - -* RGW: radosgw-admin introduces two subcommands that allow the - managing of expire-stale objects that might be left behind after a - bucket reshard in earlier versions of RGW. One subcommand lists such - objects and the other deletes them. Read the troubleshooting section - of the dynamic resharding docs for details. - -* RGW: Bucket naming restrictions have changed and likely to cause - InvalidBucketName errors. We recommend to set ``rgw_relaxed_s3_bucket_names`` - option to true as a workaround. - -* In the Zabbix Mgr Module there was a typo in the key being send - to Zabbix for PGs in backfill_wait state. The key that was sent - was 'wait_backfill' and the correct name is 'backfill_wait'. - Update your Zabbix template accordingly so that it accepts the - new key being send to Zabbix. - -* zabbix plugin for ceph manager now includes osd and pool - discovery. Update of zabbix_template.xml is needed - to receive per-pool (read/write throughput, diskspace usage) - and per-osd (latency, status, pgs) statistics - -* The format of all date + time stamps has been modified to fully - conform to ISO 8601. The old format (``YYYY-MM-DD - HH:MM:SS.ssssss``) excluded the ``T`` separator between the date and - time and was rendered using the local time zone without any explicit - indication. The new format includes the separator as well as a - ``+nnnn`` or ``-nnnn`` suffix to indicate the time zone, or a ``Z`` - suffix if the time is UTC. For example, - ``2019-04-26T18:40:06.225953+0100``. - - Any code or scripts that was previously parsing date and/or time - values from the JSON or XML structure CLI output should be checked - to ensure it can handle ISO 8601 conformant values. Any code - parsing date or time values from the unstructured human-readable - output should be modified to parse the structured output instead, as - the human-readable output may change without notice. - -* The ``bluestore_no_per_pool_stats_tolerance`` config option has been - replaced with ``bluestore_fsck_error_on_no_per_pool_stats`` - (default: false). The overall default behavior has not changed: - fsck will warn but not fail on legacy stores, and repair will - convert to per-pool stats. - -* The disaster-recovery related 'ceph mon sync force' command has been - replaced with 'ceph daemon <...> sync_force'. - -* The ``osd_recovery_max_active`` option now has - ``osd_recovery_max_active_hdd`` and ``osd_recovery_max_active_ssd`` - variants, each with different default values for HDD and SSD-backed - OSDs, respectively. By default ``osd_recovery_max_active`` now - defaults to zero, which means that the OSD will conditionally use - the HDD or SSD option values. Administrators who have customized - this value may want to consider whether they have set this to a - value similar to the new defaults (3 for HDDs and 10 for SSDs) and, - if so, remove the option from their configuration entirely. - -* monitors now have a `ceph osd info` command that will provide information - on all osds, or provided osds, thus simplifying the process of having to - parse `osd dump` for the same information. - -* The structured output of ``ceph status`` or ``ceph -s`` is now more - concise, particularly the `mgrmap` and `monmap` sections, and the - structure of the `osdmap` section has been cleaned up. - -* A health warning is now generated if the average osd heartbeat ping - time exceeds a configurable threshold for any of the intervals - computed. The OSD computes 1 minute, 5 minute and 15 minute - intervals with average, minimum and maximum values. New - configuration option ``mon_warn_on_slow_ping_ratio`` specifies a - percentage of ``osd_heartbeat_grace`` to determine the threshold. A - value of zero disables the warning. New configuration option - ``mon_warn_on_slow_ping_time`` specified in milliseconds over-rides - the computed value, causes a warning when OSD heartbeat pings take - longer than the specified amount. New admin command ``ceph daemon - mgr.# dump_osd_network [threshold]`` command will list all - connections with a ping time longer than the specified threshold or - value determined by the config options, for the average for any of - the 3 intervals. New admin command ``ceph daemon osd.# - dump_osd_network [threshold]`` will do the same but only including - heartbeats initiated by the specified OSD. - -* Inline data support for CephFS has been deprecated. When setting the flag, - users will see a warning to that effect, and enabling it now requires the - ``--yes-i-really-really-mean-it`` flag. If the MDS is started on a - filesystem that has it enabled, a health warning is generated. Support for - this feature will be removed in a future release. - -* ``ceph {set,unset} full`` is not supported anymore. We have been using - ``full`` and ``nearfull`` flags in OSD map for tracking the fullness status - of a cluster back since the Hammer release, if the OSD map is marked ``full`` - all write operations will be blocked until this flag is removed. In the - Infernalis release and Linux kernel 4.7 client, we introduced the per-pool - full/nearfull flags to track the status for a finer-grained control, so the - clients will hold the write operations if either the cluster-wide ``full`` - flag or the per-pool ``full`` flag is set. This was a compromise, as we - needed to support the cluster with and without per-pool ``full`` flags - support. But this practically defeated the purpose of introducing the - per-pool flags. So, in the Mimic release, the new flags finally took the - place of their cluster-wide counterparts, as the monitor started removing - these two flags from OSD map. So the clients of Infernalis and up can benefit - from this change, as they won't be blocked by the full pools which they are - not writing to. In this release, ``ceph {set,unset} full`` is now considered - as an invalid command. And the clients will continue honoring both the - cluster-wide and per-pool flags to be backward compatible with pre-infernalis - clusters. - -* The telemetry module now reports more information. - - First, there is a new 'device' channel, enabled by default, that - will report anonymized hard disk and SSD health metrics to - telemetry.ceph.com in order to build and improve device failure - prediction algorithms. If you are not comfortable sharing device - metrics, you can disable that channel first before re-opting-in:: - - ceph config set mgr mgr/telemetry/channel_device false - - Second, we now report more information about CephFS file systems, - including: - - - how many MDS daemons (in total and per file system) - - which features are (or have been) enabled - - how many data pools - - approximate file system age (year + month of creation) - - how many files, bytes, and snapshots - - how much metadata is being cached - - We have also added: - - - which Ceph release the monitors are running - - whether msgr v1 or v2 addresses are used for the monitors - - whether IPv4 or IPv6 addresses are used for the monitors - - whether RADOS cache tiering is enabled (and which mode) - - whether pools are replicated or erasure coded, and - which erasure code profile plugin and parameters are in use - - how many hosts are in the cluster, and how many hosts have each type of daemon - - whether a separate OSD cluster network is being used - - how many RBD pools and images are in the cluster, and how many pools have RBD mirroring enabled - - how many RGW daemons, zones, and zonegroups are present; which RGW frontends are in use - - aggregate stats about the CRUSH map, like which algorithms are used, how - big buckets are, how many rules are defined, and what tunables are in - use - - If you had telemetry enabled, you will need to re-opt-in with:: - - ceph telemetry on - - You can view exactly what information will be reported first with:: - - $ ceph telemetry show # see everything - $ ceph telemetry show basic # basic cluster info (including all of the new info) - -* Following invalid settings now are not tolerated anymore - for the command `ceph osd erasure-code-profile set xxx`. - * invalid `m` for "reed_sol_r6_op" erasure technique - * invalid `m` and invalid `w` for "liber8tion" erasure technique - -* New OSD daemon command dump_recovery_reservations which reveals the - recovery locks held (in_progress) and waiting in priority queues. - -* New OSD daemon command dump_scrub_reservations which reveals the - scrub reservations that are held for local (primary) and remote (replica) PGs. - -* Previously, ``ceph tell mgr ...`` could be used to call commands - implemented by mgr modules. This is no longer supported. Since - Luminous, using ``tell`` has not been necessary: those same commands - are also accessible without the ``tell mgr`` portion (e.g., ``ceph - tell mgr influx foo`` is the same as ``ceph influx foo``. ``ceph - tell mgr ...`` will now call admin commands--the same set of - commands accessible via ``ceph daemon ...`` when you are logged into - the appropriate host. - -* The ``ceph tell`` and ``ceph daemon`` commands have been unified, - such that all such commands are accessible via either interface. - Note that ceph-mgr tell commands are accessible via either ``ceph - tell mgr ...`` or ``ceph tell mgr.<id> ...``, and it is only - possible to send tell commands to the active daemon (the standbys do - not accept incoming connections over the network). - -* Ceph will now issue a health warning if a RADOS pool as a ``pg_num`` - value that is not a power of two. This can be fixed by adjusting - the pool to a nearby power of two:: - - ceph osd pool set <pool-name> pg_num <new-pg-num> - - Alternatively, the warning can be silenced with:: - - ceph config set global mon_warn_on_pool_pg_num_not_power_of_two false - -* The format of MDSs in ``ceph fs dump`` has changed. - -* The ``mds_cache_size`` config option is completely removed. Since Luminous, - the ``mds_cache_memory_limit`` config option has been preferred to configure - the MDS's cache limits. - -* The ``pg_autoscale_mode`` is now set to ``on`` by default for newly - created pools, which means that Ceph will automatically manage the - number of PGs. To change this behavior, or to learn more about PG - autoscaling, see :ref:`pg-autoscaler`. Note that existing pools in - upgraded clusters will still be set to ``warn`` by default. - -* The pool parameter ``target_size_ratio``, used by the pg autoscaler, - has changed meaning. It is now normalized across pools, rather than - specifying an absolute ratio. For details, see :ref:`pg-autoscaler`. - If you have set target size ratios on any pools, you may want to set - these pools to autoscale ``warn`` mode to avoid data movement during - the upgrade:: - - ceph osd pool set <pool-name> pg_autoscale_mode warn - -* The ``upmap_max_iterations`` config option of mgr/balancer has been - renamed to ``upmap_max_optimizations`` to better match its behaviour. - -* ``mClockClientQueue`` and ``mClockClassQueue`` OpQueue - implementations have been removed in favor of of a single - ``mClockScheduler`` implementation of a simpler OSD interface. - Accordingly, the ``osd_op_queue_mclock*`` family of config options - has been removed in favor of the ``osd_mclock_scheduler*`` family - of options. - -* The config subsystem now searches dot ('.') delimited prefixes for - options. That means for an entity like ``client.foo.bar``, its - overall configuration will be a combination of the global options, - ``client``, ``client.foo``, and ``client.foo.bar``. Previously, - only global, ``client``, and ``client.foo.bar`` options would apply. - This change may affect the configuration for clients that include a - ``.`` in their name. - -* MDS default cache memory limit is now 4GB. - -* The behaviour of the ``-o`` argument to the rados tool has been - reverted to its original behaviour of indicating an output file. This - reverts it to a more consistent behaviour when compared to other - tools. Specifying object size is now accomplished by using an - upper-case O ``-O``. - -* In certain rare cases, OSDs would self-classify themselves as type - 'nvme' instead of 'hdd' or 'ssd'. This appears to be limited to - cases where BlueStore was deployed with older versions of ceph-disk, - or manually without ceph-volume and LVM. Going forward, the OSD - will limit itself to only 'hdd' and 'ssd' (or whatever device class - the user manually specifies). - -* RGW: a mismatch between the bucket notification documentation and - the actual message format was fixed. This means that any endpoints - receiving bucket notification, will now receive the same notifications - inside an JSON array named 'Records'. Note that this does not affect - pulling bucket notification from a subscription in a 'pubsub' zone, - as these are already wrapped inside that array. - -* The configuration value ``osd_calc_pg_upmaps_max_stddev`` used for - upmap balancing has been removed. Instead use the mgr balancer config - ``upmap_max_deviation`` which now is an integer number of PGs of - deviation from the target PGs per OSD. This can be set with a command - like ``ceph config set mgr mgr/balancer/upmap_max_deviation 2``. The - default ``upmap_max_deviation`` is 1. There are situations where - crush rules would not allow a pool to ever have completely balanced - PGs. For example, if crush requires 1 replica on each of 3 racks, but - there are fewer OSDs in one of the racks. In those cases, the - configuration value can be increased. - -* MDS daemons can now be assigned to manage a particular file system via the - new ``mds_join_fs`` option. The monitors will try to use only MDS for a file - system with mds_join_fs equal to the file system name (strong affinity). - Monitors may also deliberately failover an active MDS to a standby when the - cluster is otherwise healthy if the standby has stronger affinity. - -* RGW Multisite: A new fine grained bucket-granularity policy configuration - system has been introduced and it supersedes the previous coarse zone sync - configuration (specifically the ``sync_from`` and ``sync_from_all`` fields - in the zonegroup configuration. New configuration should only be configured - after all relevant zones in the zonegroup have been upgraded. - -* RGW S3: Support has been added for BlockPublicAccess set of APIs at a bucket - level, currently blocking/ignoring public acls & policies are supported. - User/Account level APIs are planned to be added in the future - -* RGW: The default number of bucket index shards for new buckets was raised - from 1 to 11 to increase the amount of write throughput for small buckets - and delay the onset of dynamic resharding. This change only affects new - deployments/zones. To change this default value on existing deployments, - use ``radosgw-admin zonegroup modify --bucket-index-max-shards=11``. - If the zonegroup is part of a realm, the change must be committed with - ``radosgw-admin period update --commit`` - otherwise the change will take - effect after radosgws are restarted. - - -Changelog ---------- -* .gitignore: add more stuff (`pr#29568 <https://github.com/ceph/ceph/pull/29568>`_, Volker Theile) -* async/dpdk: fix compile errors from ceph::mutex update (`pr#30066 <https://github.com/ceph/ceph/pull/30066>`_, yehu) -* bluestore,build/ops,common,rgw: Enable _GLIBCXX_ASSERTIONS and fix unittest problems (`pr#32387 <https://github.com/ceph/ceph/pull/32387>`_, Samuel Just) -* bluestore,cephfs,common,core,mgr,mon,rbd,rgw: src/: s/Mutex/ceph::mutex/ (`pr#29113 <https://github.com/ceph/ceph/pull/29113>`_, Kefu Chai) -* bluestore,common,core,mgr,rbd: common/RefCountedObj: cleanup con/des (`pr#29672 <https://github.com/ceph/ceph/pull/29672>`_, Patrick Donnelly) -* bluestore,common,core,rgw: common, \\*: kill the bl::last_p member. Use iterator instead (`pr#32831 <https://github.com/ceph/ceph/pull/32831>`_, Radoslaw Zarzynski) -* bluestore,common: os/bluestore: s/align_down/p2align/ (`pr#29379 <https://github.com/ceph/ceph/pull/29379>`_, Kefu Chai) -* bluestore,core: common/options: Set bluestore min_alloc size to 4K (`pr#30698 <https://github.com/ceph/ceph/pull/30698>`_, Mark Nelson) -* bluestore,core: common/options: Set concurrent bluestore rocksdb compactions to 2 (`pr#29027 <https://github.com/ceph/ceph/pull/29027>`_, Mark Nelson) -* bluestore,core: mon,osd: only use new per-pool usage stats once \\*all\\* osds are reporting (`pr#28978 <https://github.com/ceph/ceph/pull/28978>`_, Sage Weil) -* bluestore,core: os/bluestore,mon: segregate omap keys by pool; report via df (`pr#29292 <https://github.com/ceph/ceph/pull/29292>`_, Sage Weil) -* bluestore,core: os/bluestore/BlueFS: explicit check for too-granular allocations (`pr#33027 <https://github.com/ceph/ceph/pull/33027>`_, Sage Weil) -* bluestore,core: os/bluestore/bluefs_types: consolidate contiguous extents (`pr#28821 <https://github.com/ceph/ceph/pull/28821>`_, Sage Weil) -* bluestore,core: os/bluestore/KernelDevice: fix RW_IO_MAX constant (`pr#29577 <https://github.com/ceph/ceph/pull/29577>`_, Sage Weil) -* bluestore,core: os/bluestore: do not set osd_memory_target default from cgroup limit (`pr#29581 <https://github.com/ceph/ceph/pull/29581>`_, Sage Weil) -* bluestore,core: os/bluestore: drop (semi-broken) nvme automatic class (`pr#31796 <https://github.com/ceph/ceph/pull/31796>`_, Sage Weil) -* bluestore,core: os/bluestore: expand lttng tracepoints, improve fio_ceph_objectstore backend (`pr#29674 <https://github.com/ceph/ceph/pull/29674>`_, Samuel Just) -* bluestore,core: os/bluestore: Keep separate onode cache pinned list (`pr#30964 <https://github.com/ceph/ceph/pull/30964>`_, Mark Nelson) -* bluestore,core: os/bluestore: prefix omap of temp objects by real pool (`pr#29717 <https://github.com/ceph/ceph/pull/29717>`_, xie xingguo) -* bluestore,core: os/bluestore: Unify on preadv for io_uring and future refactor (`pr#28025 <https://github.com/ceph/ceph/pull/28025>`_, Mark Nelson) -* bluestore,core: os/bluestore: v.2 framework for more intelligent DB space usage (`pr#29687 <https://github.com/ceph/ceph/pull/29687>`_, Igor Fedotov) -* bluestore,mgr,rgw: rgw,bluestore: fixes to address failures from check-generated.sh (`pr#29862 <https://github.com/ceph/ceph/pull/29862>`_, Kefu Chai) -* bluestore,mon: os/bluestore: create the tail when first set FLAG_OMAP (`pr#27627 <https://github.com/ceph/ceph/pull/27627>`_, Tao Ning) -* bluestore,tools: os/bluestore/bluestore-tool: minor fixes around migrate (`pr#28651 <https://github.com/ceph/ceph/pull/28651>`_, Igor Fedotov) -* bluestore,tools: tools/ceph-objectstore-tool: implement onode metadata dump (`pr#27869 <https://github.com/ceph/ceph/pull/27869>`_, Igor Fedotov) -* bluestore,tools: tools/ceph-objectstore-tool: introduce list-slow-omap command (`pr#27985 <https://github.com/ceph/ceph/pull/27985>`_, Igor Fedotov) -* bluestore: BlueFS: prevent BlueFS::dirty_files from being leaked when syncing metadata (`pr#30631 <https://github.com/ceph/ceph/pull/30631>`_, Xuehan Xu) -* bluestore: bluestore/allocator: Ageing test for bluestore allocators (`pr#22574 <https://github.com/ceph/ceph/pull/22574>`_, Adam Kupczyk) -* bluestore: bluestore/bdev: initialize size when creating object (`pr#29968 <https://github.com/ceph/ceph/pull/29968>`_, Willem Jan Withagen) -* bluestore: bluestore/bluefs: make accounting resiliant to unlock() (`pr#32584 <https://github.com/ceph/ceph/pull/32584>`_, Adam Kupczyk) -* bluestore: common/options.cc: change default value of bluestore_fsck_on_mount_deep to false (`pr#29408 <https://github.com/ceph/ceph/pull/29408>`_, Neha Ojha) -* bluestore: common/options: bluestore 64k min_alloc_size for HDD (`pr#32809 <https://github.com/ceph/ceph/pull/32809>`_, Sage Weil) -* bluestore: NVMEDevice: Remove the unnecessary aio_wait in sync read (`pr#33597 <https://github.com/ceph/ceph/pull/33597>`_, Ziye Yang) -* bluestore: NVMEDevice: Split the read I/O if the io size is large (`pr#32647 <https://github.com/ceph/ceph/pull/32647>`_, Ziye Yang) -* bluestore: os/bluestore/Blue(FS|Store): uint64_t alloc_size (`pr#32484 <https://github.com/ceph/ceph/pull/32484>`_, Bernd Zeimetz) -* bluestore: os/bluestore/BlueFS: clear newly allocated space for WAL logs (`pr#30549 <https://github.com/ceph/ceph/pull/30549>`_, Adam Kupczyk) -* bluestore: os/bluestore/BlueFS: fixed printing stats (`pr#33235 <https://github.com/ceph/ceph/pull/33235>`_, Adam Kupczyk) -* bluestore: os/bluestore/BlueFS: less verbose about alloc adjustments (`pr#33512 <https://github.com/ceph/ceph/pull/33512>`_, Sage Weil) -* bluestore: os/bluestore/BlueFS: Move bluefs alloc size initialization log message to log level 1 (`pr#29822 <https://github.com/ceph/ceph/pull/29822>`_, Vikhyat Umrao) -* bluestore: os/bluestore/BlueFS: replace flush_log with sync_metadata (`pr#32563 <https://github.com/ceph/ceph/pull/32563>`_, Jianpeng Ma) -* bluestore: os/bluestore/BlueFS: use 64K alloc_size on the shared device (`pr#29537 <https://github.com/ceph/ceph/pull/29537>`_, Sage Weil, Neha Ojha) -* bluestore: os/bluestore/BlueStore.cc: set priorities for compression stats (`pr#31959 <https://github.com/ceph/ceph/pull/31959>`_, Neha Ojha) -* bluestore: os/bluestore/spdk: Fix the overflow error of parsing spdk coremask (`pr#32440 <https://github.com/ceph/ceph/pull/32440>`_, Hu Ye, Chunsong Feng, luo rixin) -* bluestore: os/bluestore: Actually wait until completion in write_sync (`pr#26909 <https://github.com/ceph/ceph/pull/26909>`_, Vitaliy Filippov) -* bluestore: os/bluestore: add bluestore_bluefs_max_free; smooth space balancing a bit (`pr#30231 <https://github.com/ceph/ceph/pull/30231>`_, xie xingguo) -* bluestore: os/bluestore: add slow op detection for collection_listing (`issue#40741 <http://tracker.ceph.com/issues/40741>`_, `pr#29085 <https://github.com/ceph/ceph/pull/29085>`_, Igor Fedotov) -* bluestore: os/bluestore: allocate Task on stack (`pr#33358 <https://github.com/ceph/ceph/pull/33358>`_, Jun Su) -* bluestore: os/bluestore: apply garbage collection against excessive blob count growth (`pr#28229 <https://github.com/ceph/ceph/pull/28229>`_, Igor Fedotov) -* bluestore: os/bluestore: AVL-tree & extent - based space allocator (`pr#30897 <https://github.com/ceph/ceph/pull/30897>`_, Adam Kupczyk, xie xingguo, Kefu Chai) -* bluestore: os/bluestore: avoid length overflow in extents returned by Stupid (`issue#40703 <http://tracker.ceph.com/issues/40703>`_, `pr#28945 <https://github.com/ceph/ceph/pull/28945>`_, Igor Fedotov) -* bluestore: os/bluestore: avoid race between split_cache and get/put pin/unpin (`pr#32665 <https://github.com/ceph/ceph/pull/32665>`_, Sage Weil) -* bluestore: os/bluestore: avoid unnecessary notify (`pr#29345 <https://github.com/ceph/ceph/pull/29345>`_, Jianpeng Ma) -* bluestore: os/bluestore: be more verbose doing bluefs log replay (`pr#27615 <https://github.com/ceph/ceph/pull/27615>`_, Igor Fedotov) -* bluestore: os/bluestore: bluefs_preextend_wal_files=true (`pr#28322 <https://github.com/ceph/ceph/pull/28322>`_, Sage Weil) -* bluestore: os/bluestore: call fault_range prior to looking for blob to reuse (`pr#27444 <https://github.com/ceph/ceph/pull/27444>`_, Igor Fedotov) -* bluestore: os/bluestore: check bluefs allocations on log replay (`pr#31513 <https://github.com/ceph/ceph/pull/31513>`_, Igor Fedotov) -* bluestore: os/bluestore: check return value of func _open_db_and_around (`pr#27477 <https://github.com/ceph/ceph/pull/27477>`_, Jianpeng Ma) -* bluestore: os/bluestore: cleanup around allocator calls (`pr#29068 <https://github.com/ceph/ceph/pull/29068>`_, Igor Fedotov) -* bluestore: os/bluestore: cleanups (`pr#30737 <https://github.com/ceph/ceph/pull/30737>`_, Kefu Chai) -* bluestore: os/bluestore: consolidate extents from the same device only (`pr#31621 <https://github.com/ceph/ceph/pull/31621>`_, Igor Fedotov) -* bluestore: os/bluestore: correctly measure deferred writes into new blobs (`issue#38816 <http://tracker.ceph.com/issues/38816>`_, `pr#27789 <https://github.com/ceph/ceph/pull/27789>`_, Sage Weil) -* bluestore: os/bluestore: deferred IO notify and locking optimization (`pr#29522 <https://github.com/ceph/ceph/pull/29522>`_, Jianpeng Ma) -* bluestore: os/bluestore: do not check osd_max_object_size in _open_path() (`pr#26176 <https://github.com/ceph/ceph/pull/26176>`_, Igor Fedotov) -* bluestore: os/bluestore: do not mark per_pool_omap updated unless we fixed it (`pr#31167 <https://github.com/ceph/ceph/pull/31167>`_, Sage Weil) -* bluestore: os/bluestore: dont round_up_to in apply_for_bitset_range (`pr#31903 <https://github.com/ceph/ceph/pull/31903>`_, Jianpeng Ma) -* bluestore: os/bluestore: dump onode before no available blob id abort (`pr#27911 <https://github.com/ceph/ceph/pull/27911>`_, Igor Fedotov) -* bluestore: os/bluestore: dump onode that has too many spanning blobs (`pr#28010 <https://github.com/ceph/ceph/pull/28010>`_, Igor Fedotov) -* bluestore: os/bluestore: fix >2GB writes (`pr#27871 <https://github.com/ceph/ceph/pull/27871>`_, Sage Weil, kungf) -* bluestore: os/bluestore: fix bitmap allocator issues (`pr#26939 <https://github.com/ceph/ceph/pull/26939>`_, Igor Fedotov) -* bluestore: os/bluestore: fix duplicate allocations in bmap allocator (`issue#40080 <http://tracker.ceph.com/issues/40080>`_, `pr#28496 <https://github.com/ceph/ceph/pull/28496>`_, Igor Fedotov) -* bluestore: os/bluestore: fix duplicative and misleading debug in KernelDevice::open() (`pr#28630 <https://github.com/ceph/ceph/pull/28630>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: fix for FreeBSD iocb structure (`pr#27458 <https://github.com/ceph/ceph/pull/27458>`_, Willem Jan Withagen) -* bluestore: os/bluestore: fix invalid stray shared blob detection in fsck (`pr#30616 <https://github.com/ceph/ceph/pull/30616>`_, Igor Fedotov) -* bluestore: os/bluestore: fix missing discard in BlueStore::_kv_sync_thread (`pr#27843 <https://github.com/ceph/ceph/pull/27843>`_, Junhui Tang) -* bluestore: os/bluestore: fix origin reference in logging slow ops (`pr#27951 <https://github.com/ceph/ceph/pull/27951>`_, Igor Fedotov) -* bluestore: os/bluestore: fix out-of-bound access in bmap allocator (`pr#27691 <https://github.com/ceph/ceph/pull/27691>`_, Igor Fedotov) -* bluestore: os/bluestore: fix per-pool omap repair (`pr#32925 <https://github.com/ceph/ceph/pull/32925>`_, Igor Fedotov) -* bluestore: os/bluestore: fix space balancing overflow (`pr#30255 <https://github.com/ceph/ceph/pull/30255>`_, xie xingguo) -* bluestore: os/bluestore: fix wakeup bug (`pr#31931 <https://github.com/ceph/ceph/pull/31931>`_, Jianpeng Ma) -* bluestore: os/bluestore: introduce legacy statfs and dev size mismatch alerts (`pr#27519 <https://github.com/ceph/ceph/pull/27519>`_, Sage Weil, Igor Fedotov) -* bluestore: os/bluestore: introduce new io_uring IO engine (`pr#27392 <https://github.com/ceph/ceph/pull/27392>`_, Roman Penyaev) -* bluestore: os/bluestore: its better to erase spanning blob once (`pr#29238 <https://github.com/ceph/ceph/pull/29238>`_, Xiangyang Yu) -* bluestore: os/bluestore: load OSD all compression settings unconditionally (`issue#40480 <http://tracker.ceph.com/issues/40480>`_, `pr#28688 <https://github.com/ceph/ceph/pull/28688>`_, Igor Fedotov) -* bluestore: os/bluestore: log allocation stats on a daily basis (`pr#33565 <https://github.com/ceph/ceph/pull/33565>`_, Igor Fedotov) -* bluestore: os/bluestore: memorize layout of BlueFS on management (`pr#30593 <https://github.com/ceph/ceph/pull/30593>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore: Merge deferred_finisher and finisher (`pr#29623 <https://github.com/ceph/ceph/pull/29623>`_, Jianpeng Ma) -* bluestore: os/bluestore: minor improvements/cleanup around allocator (`pr#29738 <https://github.com/ceph/ceph/pull/29738>`_, Igor Fedotov) -* bluestore: os/bluestore: more aggressive deferred submit when onode trim skipping (`issue#21531 <http://tracker.ceph.com/issues/21531>`_, `pr#25697 <https://github.com/ceph/ceph/pull/25697>`_, Zengran Zhang) -* bluestore: os/bluestore: more smart allocator dump when lacking space for bluefs (`issue#40623 <http://tracker.ceph.com/issues/40623>`_, `pr#28845 <https://github.com/ceph/ceph/pull/28845>`_, Igor Fedotov) -* bluestore: os/bluestore: new bluestore_debug_enforce_settings option (`pr#27132 <https://github.com/ceph/ceph/pull/27132>`_, Igor Fedotov) -* bluestore: os/bluestore: no need protected by OpSequencer::qlock (`pr#29488 <https://github.com/ceph/ceph/pull/29488>`_, Jianpeng Ma) -* bluestore: os/bluestore: no need to add tail length (revert PR#29185) (`pr#29465 <https://github.com/ceph/ceph/pull/29465>`_, Xiangyang Yu) -* bluestore: os/bluestore: print correctly info (`pr#29939 <https://github.com/ceph/ceph/pull/29939>`_, Jianpeng Ma) -* bluestore: os/bluestore: print error if spdk_nvme_ns_cmd_writev() fails (`pr#31932 <https://github.com/ceph/ceph/pull/31932>`_, NancySu05) -* bluestore: os/bluestore: proper locking for BlueFS prefetching (`pr#29012 <https://github.com/ceph/ceph/pull/29012>`_, Igor Fedotov) -* bluestore: os/bluestore: reduce wakeups (`pr#29130 <https://github.com/ceph/ceph/pull/29130>`_, Jianpeng Ma) -* bluestore: os/bluestore: Refactor Bluestore Caches (`pr#28597 <https://github.com/ceph/ceph/pull/28597>`_, Mark Nelson) -* bluestore: os/bluestore: remove unused arg to _get_deferred_op() (`issue#40918 <http://tracker.ceph.com/issues/40918>`_, `pr#29320 <https://github.com/ceph/ceph/pull/29320>`_, Sage Weil) -* bluestore: os/bluestore: remove unused _tune_cache_size() method declaration (`pr#29393 <https://github.com/ceph/ceph/pull/29393>`_, Igor Fedotov) -* bluestore: os/bluestore: restore and fix bug with onode cache pinning (`pr#31778 <https://github.com/ceph/ceph/pull/31778>`_, Josh Durgin) -* bluestore: os/bluestore: revert cache pinned list (`pr#31180 <https://github.com/ceph/ceph/pull/31180>`_, Sage Weil) -* bluestore: os/bluestore: set STATE_KV_SUBMITTED properly (`pr#30753 <https://github.com/ceph/ceph/pull/30753>`_, Igor Fedotov) -* bluestore: os/bluestore: show device name in osd metadata output (`pr#28107 <https://github.com/ceph/ceph/pull/28107>`_, Igor Fedotov) -* bluestore: os/bluestore: silence StupidAllocator reorder warning (`pr#29866 <https://github.com/ceph/ceph/pull/29866>`_, Jos Collin) -* bluestore: os/bluestore: simplify multithreaded shallow fsck (`pr#31473 <https://github.com/ceph/ceph/pull/31473>`_, Igor Fedotov) -* bluestore: os/bluestore: simplify per-pool-stat config options (`pr#30350 <https://github.com/ceph/ceph/pull/30350>`_, Sage Weil, Igor Fedotov) -* bluestore: os/bluestore: support RocksDB prefetch in buffered read mode (`issue#36482 <http://tracker.ceph.com/issues/36482>`_, `pr#27782 <https://github.com/ceph/ceph/pull/27782>`_, Igor Fedotov) -* bluestore: os/bluestore: tiny tracepoints improvement (`pr#31669 <https://github.com/ceph/ceph/pull/31669>`_, Adam Kupczyk) -* bluestore: os/bluestore: upgrade legacy omap to per-pool format automatically (`pr#32758 <https://github.com/ceph/ceph/pull/32758>`_, Igor Fedotov) -* bluestore: os/bluestore: verify disk layout of BlueFS (`issue#25098 <http://tracker.ceph.com/issues/25098>`_, `pr#30109 <https://github.com/ceph/ceph/pull/30109>`_, Radoslaw Zarzynski) -* bluestore: os/bluestore:fix two calculation bugs (`pr#29185 <https://github.com/ceph/ceph/pull/29185>`_, Xiangyang Yu) -* bluestore: os/ceph-bluestore-tool: bluefs-bdev-expand asserts if no WAL (`pr#27445 <https://github.com/ceph/ceph/pull/27445>`_, Igor Fedotov) -* bluestore: os/objectstore: add new op OP_CREATE for create a new object (`pr#26251 <https://github.com/ceph/ceph/pull/26251>`_, Jianpeng Ma) -* bluestore: Revert os/bluestore: add kv_drain_preceding_waiters indicate drain_preceding. (`pr#31503 <https://github.com/ceph/ceph/pull/31503>`_, Sage Weil) -* bluestore: test/fio: handle nullptr when parsing throttle params (`pr#31681 <https://github.com/ceph/ceph/pull/31681>`_, Igor Fedotov) -* bluestore: [bluestore][tools] Inspect allocations in bluestore (`pr#29425 <https://github.com/ceph/ceph/pull/29425>`_, Adam Kupczyk) -* build(deps): bump lodash from 4.17.11 to 4.17.13 in /src/pybind/mgr/dashboard/frontend (`pr#29192 <https://github.com/ceph/ceph/pull/29192>`_, dependabot[bot]) -* build/ops,cephfs,common,core,rbd: Fix big-endian handling (`pr#30079 <https://github.com/ceph/ceph/pull/30079>`_, Ulrich Weigand) -* build/ops,cephfs: mgr/ssh: make mds add work (`pr#31059 <https://github.com/ceph/ceph/pull/31059>`_, Sage Weil) -* build/ops,common,core: common, include: bump the version of ceph::buffers C++ API (`pr#33373 <https://github.com/ceph/ceph/pull/33373>`_, Radoslaw Zarzynski) -* build/ops,common,mgr: python-common: Python common package (`pr#28915 <https://github.com/ceph/ceph/pull/28915>`_, Kefu Chai, Sebastian Wagner) -* build/ops,common,rgw: rgw, common, build: drop NSS support (`pr#27834 <https://github.com/ceph/ceph/pull/27834>`_, Radoslaw Zarzynski) -* build/ops,core,rbd: Windows support [part 1] (`pr#31981 <https://github.com/ceph/ceph/pull/31981>`_, Lucian Petrut, Alin Gabriel Serdean) -* build/ops,core: ceph-crash: use client.crash[.host] to post, and provsion keys via mgr/ssh + ceph-daemon (`pr#30734 <https://github.com/ceph/ceph/pull/30734>`_, Sage Weil) -* build/ops,core: debian: fix ceph-mgr-modules-core files (`pr#33468 <https://github.com/ceph/ceph/pull/33468>`_, Sage Weil) -* build/ops,core: os/bluestore: fix pmem osd build problem (`pr#28761 <https://github.com/ceph/ceph/pull/28761>`_, Peterson, Scott, Li, Xiaoyan) -* build/ops,core: qa: stop testing on 16.04 xenial (`pr#28943 <https://github.com/ceph/ceph/pull/28943>`_, Sage Weil) -* build/ops,mgr: mgr/diskprediction_local: Replaced old models and updated predictor (`pr#29437 <https://github.com/ceph/ceph/pull/29437>`_, Karanraj Chauhan) -* build/ops,mgr: systemd: ceph-mgr: set MemoryDenyWriteExecute to false (`issue#39628 <http://tracker.ceph.com/issues/39628>`_, `pr#28023 <https://github.com/ceph/ceph/pull/28023>`_, Ricardo Dias) -* build/ops,pybind: cmake, pybind: fix build on armhf (`pr#28843 <https://github.com/ceph/ceph/pull/28843>`_, Kefu Chai) -* build/ops,rbd: rpm,deb: fix python dateutil module dependency (`pr#33624 <https://github.com/ceph/ceph/pull/33624>`_, Mykola Golub) -* build/ops,rgw: build/rgw: unittest_rgw_dmclock_scheduler does not need Boost_LIBRARIES (`pr#27466 <https://github.com/ceph/ceph/pull/27466>`_, Willem Jan Withagen) -* build/ops,rgw: install-deps.sh, cmake: use boost 1.72 on bionic (`pr#32391 <https://github.com/ceph/ceph/pull/32391>`_, Kefu Chai) -* build/ops,tests: ceph-daemon: a few fixes; functional test (`pr#31094 <https://github.com/ceph/ceph/pull/31094>`_, Sage Weil) -* build/ops,tests: googletest: pick up change to suppress CMP0048 warning (`pr#29471 <https://github.com/ceph/ceph/pull/29471>`_, Kefu Chai) -* build/ops,tests: install-deps.sh,deb,rpm: move python-saml deps into debian/control an\xe2\x80\xa6 (`pr#29840 <https://github.com/ceph/ceph/pull/29840>`_, Kefu Chai) -* build/ops,tools: src/script/credits.sh - switch to bash (`pr#32736 <https://github.com/ceph/ceph/pull/32736>`_, Kai Wagner) -* build/ops,tools: vstart: Now all OSDs are starting in parallel. Use --no-parallel to revert to sequential (`pr#31732 <https://github.com/ceph/ceph/pull/31732>`_, Adam Kupczyk) -* build/ops: .github/stale.yml: warn at 60, close at 90; adjust message (`pr#24744 <https://github.com/ceph/ceph/pull/24744>`_, Lenz Grimmer, Sage Weil) -* build/ops: admin/build-doc: keep-going when finding warnings (`pr#27050 <https://github.com/ceph/ceph/pull/27050>`_, Abhishek Lekshmanan) -* build/ops: build-doc: allow building docs on fedora 30 (`pr#30136 <https://github.com/ceph/ceph/pull/30136>`_, Yuval Lifshitz) -* build/ops: build-integration-branch: s/prefix/postfix/ (`pr#32303 <https://github.com/ceph/ceph/pull/32303>`_, Kefu Chai) -* build/ops: build: add static analysis targets (`pr#31579 <https://github.com/ceph/ceph/pull/31579>`_, Yuval Lifshitz) -* build/ops: build: FreeBSD does not have /etc/os-release (`pr#26731 <https://github.com/ceph/ceph/pull/26731>`_, Willem Jan Withagen) -* build/ops: ceph-daemon: a couple fixes (`pr#31060 <https://github.com/ceph/ceph/pull/31060>`_, Sage Weil) -* build/ops: ceph-daemon: add a logrotate.d file for each cluster (`pr#30882 <https://github.com/ceph/ceph/pull/30882>`_, Sage Weil) -* build/ops: ceph-daemon: deploy ceph daemons with podman and systemd (`pr#30603 <https://github.com/ceph/ceph/pull/30603>`_, Sage Weil) -* build/ops: ceph-daemon: fix logrotate su line (`pr#31823 <https://github.com/ceph/ceph/pull/31823>`_, Sage Weil) -* build/ops: ceph-daemon: misc improvements (`pr#30826 <https://github.com/ceph/ceph/pull/30826>`_, Sage Weil) -* build/ops: ceph-daemon: use /usr/bin/python, not /usr/bin/env python (`pr#31318 <https://github.com/ceph/ceph/pull/31318>`_, Sage Weil) -* build/ops: ceph.spec.in: add missing python-yaml dependency for mgr-k8sevents (`pr#31178 <https://github.com/ceph/ceph/pull/31178>`_, Kefu Chai) -* build/ops: ceph.spec.in: add runtime deps for mgr-diskprediction-cloud (`pr#32232 <https://github.com/ceph/ceph/pull/32232>`_, Kefu Chai) -* build/ops: ceph.spec.in: always depends on python3.6-pyOpenSSL (`pr#32317 <https://github.com/ceph/ceph/pull/32317>`_, Kefu Chai) -* build/ops: ceph.spec.in: Drop systemd BuildRequires in case of building for SUSE (`pr#28884 <https://github.com/ceph/ceph/pull/28884>`_, Dominique Leuenberger) -* build/ops: ceph.spec.in: enable amqp_endpoint on RHEL8 by default (`pr#31143 <https://github.com/ceph/ceph/pull/31143>`_, Brad Hubbard) -* build/ops: ceph.spec.in: fix Cython package dependency for Fedora (`pr#30590 <https://github.com/ceph/ceph/pull/30590>`_, Jeff Layton) -* build/ops: ceph.spec.in: fix make check deps for centos8 (`pr#32798 <https://github.com/ceph/ceph/pull/32798>`_, Alfonso Mart\xc3\xadnez) -* build/ops: ceph.spec.in: fix python coverage dependency for non-rhel distros (`pr#33361 <https://github.com/ceph/ceph/pull/33361>`_, Kiefer Chang) -* build/ops: ceph.spec.in: fix python3 dependencies in centos7 (`pr#32775 <https://github.com/ceph/ceph/pull/32775>`_, liushi) -* build/ops: ceph.spec.in: grafana-dashboards package depends on grafana (`pr#28228 <https://github.com/ceph/ceph/pull/28228>`_, Jan Fajerski) -* build/ops: ceph.spec.in: move distro-conditional deps to dedicated section (`pr#32080 <https://github.com/ceph/ceph/pull/32080>`_, Nathan Cutler) -* build/ops: ceph.spec.in: package prometheus default alerts for SUSE (`pr#27996 <https://github.com/ceph/ceph/pull/27996>`_, Jan Fajerski) -* build/ops: ceph.spec.in: pin to gcc-c++-8.2.1 (`pr#28859 <https://github.com/ceph/ceph/pull/28859>`_, Kefu Chai) -* build/ops: ceph.spec.in: re-enable make check deps for el8 (`pr#32412 <https://github.com/ceph/ceph/pull/32412>`_, Kefu Chai) -* build/ops: ceph.spec.in: reserve more memory per build jo (`pr#30126 <https://github.com/ceph/ceph/pull/30126>`_, Dan van der Ster) -* build/ops: ceph.spec.in: s/pkgversion/version_nodots/ (`pr#30036 <https://github.com/ceph/ceph/pull/30036>`_, Kefu Chai) -* build/ops: ceph.spec.in: use g++ >= 8.3.1-3.1 (`pr#30088 <https://github.com/ceph/ceph/pull/30088>`_, Kefu Chai) -* build/ops: ceph.spec.in: Use pkgconfig() style BuildRequires for udev/libudev-devel (`pr#32933 <https://github.com/ceph/ceph/pull/32933>`_, Dominique Leuenberger) -* build/ops: ceph.spec.in: use python3 to bytecompile .py files (`pr#32608 <https://github.com/ceph/ceph/pull/32608>`_, Kefu Chai) -* build/ops: ceph.spec: Recommend (but do not require) podman (`pr#33221 <https://github.com/ceph/ceph/pull/33221>`_, Sage Weil) -* build/ops: ceph_release: octopus rc 15.1.0 (`pr#32623 <https://github.com/ceph/ceph/pull/32623>`_, Sage Weil) -* build/ops: cmake,crimson: pick up latest seastar (`pr#27088 <https://github.com/ceph/ceph/pull/27088>`_, Kefu Chai) -* build/ops: cmake,run-make-check.sh: disable SPDK by default (`pr#29728 <https://github.com/ceph/ceph/pull/29728>`_, Kefu Chai) -* build/ops: cmake/Boost: Fix python3 version (`pr#32344 <https://github.com/ceph/ceph/pull/32344>`_, Kotresh HR) -* build/ops: cmake/FindRocksDB: fix IMPORTED_LOCATION for ROCKSDB_LIBRARIES (`pr#26813 <https://github.com/ceph/ceph/pull/26813>`_, dudengke) -* build/ops: cmake/modules/GetGitRevisionDescription: update to work with git-worktree (`pr#30772 <https://github.com/ceph/ceph/pull/30772>`_, Sage Weil) -* build/ops: cmake/modules: replace ; with in compile flags (`pr#28339 <https://github.com/ceph/ceph/pull/28339>`_, Kefu Chai) -* build/ops: CMakeLists: add std::move warnings in gcc9 (`pr#27569 <https://github.com/ceph/ceph/pull/27569>`_, Patrick Donnelly) -* build/ops: crimson: clang related cleanups (`pr#33680 <https://github.com/ceph/ceph/pull/33680>`_, Kefu Chai) -* build/ops: crimson: fix build seastar with dpdk (`pr#31426 <https://github.com/ceph/ceph/pull/31426>`_, Yingxin Cheng) -* build/ops: deb,rpm,doc: s/plugin/module/ (`pr#33435 <https://github.com/ceph/ceph/pull/33435>`_, Kefu Chai) -* build/ops: debian/: use ceph-osd for packaging crimson-osd (`pr#28535 <https://github.com/ceph/ceph/pull/28535>`_, Kefu Chai) -* build/ops: debian/control: add python-routes dependency for dashboard (`pr#28835 <https://github.com/ceph/ceph/pull/28835>`_, Paul Emmerich) -* build/ops: debian/control: Build-Depends on g++ (`pr#30410 <https://github.com/ceph/ceph/pull/30410>`_, Kefu Chai) -* build/ops: debian/control: fix Build-Depends (`pr#29913 <https://github.com/ceph/ceph/pull/29913>`_, Kefu Chai) -* build/ops: debian/radosgw.install: correct path to libradosgw.so\\* (`pr#32539 <https://github.com/ceph/ceph/pull/32539>`_, Kefu Chai) -* build/ops: debian/rules: run dh_python2 with ceph-daemon (`pr#31313 <https://github.com/ceph/ceph/pull/31313>`_, Kefu Chai) -* build/ops: debian: modules-core replaces and breaks older ceph-mgr (`pr#33501 <https://github.com/ceph/ceph/pull/33501>`_, Kefu Chai) -* build/ops: debian: remove dup ceph-fuse line (`pr#28788 <https://github.com/ceph/ceph/pull/28788>`_, huangjun) -* build/ops: dmclock: pick up change to use specified C++ settings if any (`pr#30113 <https://github.com/ceph/ceph/pull/30113>`_, Kefu Chai) -* build/ops: do_cmake.sh: Add a heading to the minimal config (`pr#28776 <https://github.com/ceph/ceph/pull/28776>`_, Brad Hubbard) -* build/ops: do_cmake.sh: Add CEPH_GIT_DIR (`pr#30863 <https://github.com/ceph/ceph/pull/30863>`_, Matthew Oliver) -* build/ops: do_cmake.sh: bail out if something goes wrong (`pr#33016 <https://github.com/ceph/ceph/pull/33016>`_, Kefu Chai) -* build/ops: do_cmake.sh: enable amqp and rdma for EL8 (`pr#30974 <https://github.com/ceph/ceph/pull/30974>`_, Kefu Chai) -* build/ops: do_cmake.sh: optionally specify build dir with $BUILD_DIR env var (`pr#29786 <https://github.com/ceph/ceph/pull/29786>`_, Yuval Lifshitz) -* build/ops: do_cmake.sh: remove -DCMAKE_BUILD_TYPE=Debug from cmake options (`pr#30250 <https://github.com/ceph/ceph/pull/30250>`_, Kefu Chai) -* build/ops: do_cmake.sh: use bash (`issue#39981 <http://tracker.ceph.com/issues/39981>`_, `pr#28181 <https://github.com/ceph/ceph/pull/28181>`_, Nathan Cutler) -* build/ops: do_cmake: Warn user about slow debug performance only for not set (`pr#31113 <https://github.com/ceph/ceph/pull/31113>`_, Junyoung, Sung) -* build/ops: do_freebsd.sh: update build scripts to resemble Jenkins scripts (`pr#29400 <https://github.com/ceph/ceph/pull/29400>`_, Willem Jan Withagen) -* build/ops: dpdk: drop dpdk submodule (`issue#24032 <http://tracker.ceph.com/issues/24032>`_, `pr#33001 <https://github.com/ceph/ceph/pull/33001>`_, Kefu Chai) -* build/ops: fix build fail related to PYTHON_EXECUTABLE variable (`pr#30199 <https://github.com/ceph/ceph/pull/30199>`_, Ilsoo Byun) -* build/ops: github: display phrase for signed-off check (`pr#29890 <https://github.com/ceph/ceph/pull/29890>`_, Ernesto Puerta) -* build/ops: install-dep,rpm: use devtools-8 on amd64 (`issue#38892 <http://tracker.ceph.com/issues/38892>`_, `pr#27134 <https://github.com/ceph/ceph/pull/27134>`_, Kefu Chai) -* build/ops: install-deps, rpm: use python_provide macro and cleanups (`pr#30830 <https://github.com/ceph/ceph/pull/30830>`_, Kefu Chai) -* build/ops: install-deps,rpm,do_cmake: build on RHEL/CentOS 8 (`pr#30630 <https://github.com/ceph/ceph/pull/30630>`_, Kefu Chai) -* build/ops: install-deps.sh,src: drop python2 support (`pr#31525 <https://github.com/ceph/ceph/pull/31525>`_, Kefu Chai) -* build/ops: install-deps.sh: Actually set gpgcheck to false (`pr#33591 <https://github.com/ceph/ceph/pull/33591>`_, Brad Hubbard) -* build/ops: install-deps.sh: add EPEL repo for non-x86_64 archs as well (`pr#30557 <https://github.com/ceph/ceph/pull/30557>`_, Kefu Chai, Nathan Cutler) -* build/ops: install-deps.sh: add kens copr repo for el8 build (`pr#32324 <https://github.com/ceph/ceph/pull/32324>`_, Kefu Chai) -* build/ops: install-deps.sh: add option to skip prebuilt boost-\\* pkgs installation (`pr#27776 <https://github.com/ceph/ceph/pull/27776>`_, Jun He) -* build/ops: install-deps.sh: add support for Ubuntu Disco Dingo (`pr#30405 <https://github.com/ceph/ceph/pull/30405>`_, Patrick Seidensal) -* build/ops: install-deps.sh: download wheel using pip wheel (`pr#29903 <https://github.com/ceph/ceph/pull/29903>`_, Kefu Chai) -* build/ops: install-deps.sh: enable PowerTool repo for EL8 (`pr#30656 <https://github.com/ceph/ceph/pull/30656>`_, Kefu Chai) -* build/ops: install-deps.sh: fix typo for krb5 on FreeBSD (`pr#28269 <https://github.com/ceph/ceph/pull/28269>`_, Thomas Johnson) -* build/ops: install-deps.sh: install binutils 2.28 for xenial (`pr#31601 <https://github.com/ceph/ceph/pull/31601>`_, Kefu Chai) -* build/ops: install-deps.sh: install libboost-test for seastar (`pr#28015 <https://github.com/ceph/ceph/pull/28015>`_, Kefu Chai) -* build/ops: install-deps.sh: install python2-{virtualenv,devel} on SUSE if needed (`pr#32153 <https://github.com/ceph/ceph/pull/32153>`_, Nathan Cutler) -* build/ops: install-deps.sh: install \\*rpm-macros (`issue#39164 <http://tracker.ceph.com/issues/39164>`_, `pr#27524 <https://github.com/ceph/ceph/pull/27524>`_, Kefu Chai) -* build/ops: install-deps.sh: install `python\\*-devel` for python\\*rpm-macros (`pr#30190 <https://github.com/ceph/ceph/pull/30190>`_, Kefu Chai) -* build/ops: install-deps.sh: only prepare wheels for make check (`pr#29912 <https://github.com/ceph/ceph/pull/29912>`_, Kefu Chai) -* build/ops: install-deps.sh: use chacra for cmake repo (`pr#29475 <https://github.com/ceph/ceph/pull/29475>`_, Kefu Chai) -* build/ops: install-deps.sh: Use dnf for rhel/centos 8 (`pr#31144 <https://github.com/ceph/ceph/pull/31144>`_, Brad Hubbard) -* build/ops: install-deps.sh: use gcc-8 on xenial and trusty (`pr#28094 <https://github.com/ceph/ceph/pull/28094>`_, Kefu Chai) -* build/ops: install-deps.sh: use GCC-9 on bionic (`pr#28454 <https://github.com/ceph/ceph/pull/28454>`_, Kefu Chai) -* build/ops: install-deps.sh: use sepia/lab-extra/8 (`pr#31238 <https://github.com/ceph/ceph/pull/31238>`_, Kefu Chai) -* build/ops: install-deps: do not install if rpm already installed (`pr#30612 <https://github.com/ceph/ceph/pull/30612>`_, Kefu Chai) -* build/ops: install-deps: enable homebrew repos for RHEL8 (`pr#33905 <https://github.com/ceph/ceph/pull/33905>`_, Kefu Chai, Dan Mick) -* build/ops: install-deps: revert 47d4351d (`pr#30122 <https://github.com/ceph/ceph/pull/30122>`_, Kefu Chai) -* build/ops: make patch build dependency explicit (`issue#40175 <http://tracker.ceph.com/issues/40175>`_, `pr#28414 <https://github.com/ceph/ceph/pull/28414>`_, Nathan Cutler) -* build/ops: make perf_async_msgr link jemalloc/tcmalloc (`pr#28039 <https://github.com/ceph/ceph/pull/28039>`_, Jianpeng Ma) -* build/ops: make-dist: Bump Node.js to v10.18.1 (`pr#33059 <https://github.com/ceph/ceph/pull/33059>`_, Tiago Melo) -* build/ops: make-dist: default to no dashboard frontend build parallelism (`pr#32037 <https://github.com/ceph/ceph/pull/32037>`_, Nathan Cutler) -* build/ops: make-dist: drop Python 2/3 autoselect (`pr#27792 <https://github.com/ceph/ceph/pull/27792>`_, Nathan Cutler) -* build/ops: make-dist: set version number only once (`pr#26281 <https://github.com/ceph/ceph/pull/26281>`_, Nathan Cutler) -* build/ops: mgr/dashboard: Prevent angular of getting stuck during installation (`pr#29929 <https://github.com/ceph/ceph/pull/29929>`_, Tiago Melo) -* build/ops: mgr/rook: Make use of rook-client-python when talking to Rook (`pr#29427 <https://github.com/ceph/ceph/pull/29427>`_, Sebastian Wagner) -* build/ops: pybind/mgr/CMakeLists: exclude tox.ini, requirements.txt from install (`pr#31577 <https://github.com/ceph/ceph/pull/31577>`_, Sage Weil) -* build/ops: pybind/mgr: Exclude tests/ (`pr#31671 <https://github.com/ceph/ceph/pull/31671>`_, Sebastian Wagner) -* build/ops: pybind/mgr: Rename orchestrator_cli to orchestrator (`pr#32817 <https://github.com/ceph/ceph/pull/32817>`_, Sebastian Wagner) -* build/ops: qa/tasks/ceph_deploy: do not rely on ceph-create-keys (`pr#29002 <https://github.com/ceph/ceph/pull/29002>`_, Sage Weil) -* build/ops: Revert dpdk: drop dpdk submodule (`pr#32992 <https://github.com/ceph/ceph/pull/32992>`_, David Galloway) -* build/ops: rpm,cmake: use specified python3 version if any (`pr#27358 <https://github.com/ceph/ceph/pull/27358>`_, Kefu Chai) -* build/ops: rpm,deb: package always-enabled plugins in a separated package (`pr#33422 <https://github.com/ceph/ceph/pull/33422>`_, Kefu Chai) -* build/ops: rpm,deb: python-requests is not needed for ceph-common (`pr#30420 <https://github.com/ceph/ceph/pull/30420>`_, luo.runbing) -* build/ops: rpm,debian,install-deps: package crimson-osd (`pr#28428 <https://github.com/ceph/ceph/pull/28428>`_, Kefu Chai) -* build/ops: rpm,etc/sysconfig: remove SuSEfirewall2 support (`issue#40738 <http://tracker.ceph.com/issues/40738>`_, `pr#28957 <https://github.com/ceph/ceph/pull/28957>`_, Matthias Gerstner) -* build/ops: rpm/cephadm: move HOMEDIR to /var/lib and make scriptlets idempotent on SUSE (`pr#32212 <https://github.com/ceph/ceph/pull/32212>`_, Nathan Cutler) -* build/ops: rpm: add cmake_verbose_logging switch (`pr#32805 <https://github.com/ceph/ceph/pull/32805>`_, Nathan Cutler) -* build/ops: rpm: add Provides: python3-\\* for python packages and cleanup (`pr#27468 <https://github.com/ceph/ceph/pull/27468>`_, Kefu Chai) -* build/ops: rpm: add rpm-build to SUSE-specific make check deps (`pr#32083 <https://github.com/ceph/ceph/pull/32083>`_, Nathan Cutler) -* build/ops: rpm: always build ceph-test package (`pr#29685 <https://github.com/ceph/ceph/pull/29685>`_, Nathan Cutler) -* build/ops: rpm: define weak_deps for el8 (`pr#33229 <https://github.com/ceph/ceph/pull/33229>`_, Kefu Chai) -* build/ops: rpm: Disable LTO in spec when being used (`issue#39974 <http://tracker.ceph.com/issues/39974>`_, `pr#28170 <https://github.com/ceph/ceph/pull/28170>`_, Martin Li\xc5\xa1ka) -* build/ops: rpm: drop vim-specific header (`pr#32331 <https://github.com/ceph/ceph/pull/32331>`_, Nathan Cutler) -* build/ops: rpm: enable devtoolset-8 on aarch64 also (`issue#38892 <http://tracker.ceph.com/issues/38892>`_, `pr#27333 <https://github.com/ceph/ceph/pull/27333>`_, Kefu Chai) -* build/ops: rpm: fdupes in SUSE builds to conform with packaging guidelines (`issue#40973 <http://tracker.ceph.com/issues/40973>`_, `pr#29346 <https://github.com/ceph/ceph/pull/29346>`_, Nathan Cutler) -* build/ops: rpm: fix rhel <= 7 conditional (`pr#27045 <https://github.com/ceph/ceph/pull/27045>`_, Nathan Cutler) -* build/ops: rpm: fix up a specfile syntax error (`pr#33066 <https://github.com/ceph/ceph/pull/33066>`_, Greg Farnum) -* build/ops: rpm: have pybind RPMs provide/obsolete their python2 predecessors (`issue#40099 <http://tracker.ceph.com/issues/40099>`_, `pr#28352 <https://github.com/ceph/ceph/pull/28352>`_, Nathan Cutler) -* build/ops: rpm: immutable-object-cache related changes (`pr#27150 <https://github.com/ceph/ceph/pull/27150>`_, Kefu Chai) -* build/ops: rpm: improve ceph-mgr plugin package summaries (`issue#40974 <http://tracker.ceph.com/issues/40974>`_, `pr#29347 <https://github.com/ceph/ceph/pull/29347>`_, Nathan Cutler) -* build/ops: rpm: make librados2, libcephfs2 own (create) /etc/ceph (`pr#30975 <https://github.com/ceph/ceph/pull/30975>`_, Nathan Cutler) -* build/ops: rpm: put librgw lttng SOs in the librgw-devel package (`issue#40975 <http://tracker.ceph.com/issues/40975>`_, `pr#29349 <https://github.com/ceph/ceph/pull/29349>`_, Nathan Cutler) -* build/ops: rpm: refrain from building ceph-resource-agents on SLE (`pr#27046 <https://github.com/ceph/ceph/pull/27046>`_, Nathan Cutler) -* build/ops: rpm: Relax the selinux policy version for centos builds (`pr#32700 <https://github.com/ceph/ceph/pull/32700>`_, Boris Ranto) -* build/ops: rpm: s/devtoolset-7/devtoolset-8/ (`pr#27183 <https://github.com/ceph/ceph/pull/27183>`_, Kefu Chai) -* build/ops: rpm: use python 3.6 as the default python3 (`pr#27417 <https://github.com/ceph/ceph/pull/27417>`_, Kefu Chai) -* build/ops: rpm: use python3.4 on RHEL7 by default (`pr#27407 <https://github.com/ceph/ceph/pull/27407>`_, Kefu Chai) -* build/ops: rpm: use Recommends on fedora also (`pr#26819 <https://github.com/ceph/ceph/pull/26819>`_, Kefu Chai) -* build/ops: run npm ci with a one-hour timeout (`pr#28994 <https://github.com/ceph/ceph/pull/28994>`_, Nathan Cutler) -* build/ops: run-make-check.sh: extract run-make.sh (`pr#30184 <https://github.com/ceph/ceph/pull/30184>`_, Kefu Chai) -* build/ops: run-make-check.sh: run sudo with absolute path (`pr#29753 <https://github.com/ceph/ceph/pull/29753>`_, Kefu Chai) -* build/ops: run-make-check.sh: WITH_SEASTAR on demand (`pr#33723 <https://github.com/ceph/ceph/pull/33723>`_, Kefu Chai) -* build/ops: script,doc: add gen-corpus.sh (`pr#28950 <https://github.com/ceph/ceph/pull/28950>`_, Kefu Chai) -* build/ops: script/build-integration-branch: Add usage (`pr#32293 <https://github.com/ceph/ceph/pull/32293>`_, Sebastian Wagner) -* build/ops: script/run-make.sh: do not pass cmake options twice (`pr#30318 <https://github.com/ceph/ceph/pull/30318>`_, Kefu Chai) -* build/ops: script/run_tox.sh: Dont overwrite the build dir (`pr#29925 <https://github.com/ceph/ceph/pull/29925>`_, Sebastian Wagner) -* build/ops: script: remove dep-report.sh (`pr#29296 <https://github.com/ceph/ceph/pull/29296>`_, Kefu Chai) -* build/ops: scripts: ceph_dump_log.py (`pr#21729 <https://github.com/ceph/ceph/pull/21729>`_, Brad Hubbard) -* build/ops: seastar: pickup change to add pthread linkage (`pr#33453 <https://github.com/ceph/ceph/pull/33453>`_, Kefu Chai) -* build/ops: spec, debian: cephadm requires lvm2 (`pr#32323 <https://github.com/ceph/ceph/pull/32323>`_, Sebastian Wagner) -* build/ops: spec,debian: ceph-mgr-ssh depends on openssh{-client{s}} (`pr#31806 <https://github.com/ceph/ceph/pull/31806>`_, Sebastian Wagner) -* build/ops: spec: add missing python3-pyyaml (`pr#33387 <https://github.com/ceph/ceph/pull/33387>`_, Sebastian Wagner) -* build/ops: spec: Podman (temporarily) requires apparmor-abstractions on suse (`pr#33850 <https://github.com/ceph/ceph/pull/33850>`_, Sebastian Wagner) -* build/ops: src/CMakeLists: remove leading v from git describe version (`pr#31387 <https://github.com/ceph/ceph/pull/31387>`_, Sage Weil) -* build/ops: test/fio: bump to fio-3.15 (`pr#31544 <https://github.com/ceph/ceph/pull/31544>`_, Igor Fedotov) -* build/ops: test: only compile ceph_test_bmap_alloc_replay WITH_BLUESTORE (`pr#31306 <https://github.com/ceph/ceph/pull/31306>`_, Willem Jan Withagen) -* build/ops: vstart: Remove duplicate option -N (`pr#31917 <https://github.com/ceph/ceph/pull/31917>`_, Kotresh HR) -* ceph-crash: use ceph-crash as logger name (`pr#30989 <https://github.com/ceph/ceph/pull/30989>`_, Kefu Chai) -* ceph-daemon -> cephadm, mgr/ssh -> mgr/cephadm (`pr#32193 <https://github.com/ceph/ceph/pull/32193>`_, Sage Weil) -* ceph-daemon,mgr/ssh: add check-host (`pr#31795 <https://github.com/ceph/ceph/pull/31795>`_, Sage Weil) -* ceph-daemon: -v|--verbose, not -d|--debug (`pr#31583 <https://github.com/ceph/ceph/pull/31583>`_, Sage Weil) -* ceph-daemon: a few more py2 compatibility hacks (`pr#31264 <https://github.com/ceph/ceph/pull/31264>`_, Sage Weil) -* ceph-daemon: add additional debug logging (`pr#31837 <https://github.com/ceph/ceph/pull/31837>`_, Michael Fritch) -* ceph-daemon: Add basic mypy support (`pr#31609 <https://github.com/ceph/ceph/pull/31609>`_, Thomas Bechtold) -* ceph-daemon: add explicit pull at bootstrap start (`pr#31478 <https://github.com/ceph/ceph/pull/31478>`_, Sage Weil) -* ceph-daemon: Add more type hints (`pr#31631 <https://github.com/ceph/ceph/pull/31631>`_, Thomas Bechtold) -* ceph-daemon: add osd create test (`pr#31679 <https://github.com/ceph/ceph/pull/31679>`_, Michael Fritch) -* ceph-daemon: add standalone `adopt` tests (`pr#31486 <https://github.com/ceph/ceph/pull/31486>`_, Michael Fritch) -* ceph-daemon: add `--base-dir` arg to `adopt` command (`pr#31487 <https://github.com/ceph/ceph/pull/31487>`_, Michael Fritch) -* ceph-daemon: add `--legacy-dir` arg to `ls` command (`pr#31585 <https://github.com/ceph/ceph/pull/31585>`_, Michael Fritch) -* ceph-daemon: Allow env var for setting the used image (`pr#31913 <https://github.com/ceph/ceph/pull/31913>`_, Thomas Bechtold) -* ceph-daemon: append newline before public key string (`pr#31788 <https://github.com/ceph/ceph/pull/31788>`_, Ricardo Dias) -* ceph-daemon: behave on rm-cluster when legacy dirs exist and ceph isnt installed (`pr#31499 <https://github.com/ceph/ceph/pull/31499>`_, Sage Weil) -* ceph-daemon: bootstrap: make --output-\\* args optional (`pr#31695 <https://github.com/ceph/ceph/pull/31695>`_, Sage Weil) -* ceph-daemon: ceph/daemon-base:latest-master-devel (`pr#31507 <https://github.com/ceph/ceph/pull/31507>`_, Sage Weil) -* ceph-daemon: clean-up tempfiles on EXIT (`pr#32052 <https://github.com/ceph/ceph/pull/32052>`_, Michael Fritch) -* ceph-daemon: combine SUDO and ARGS into a single var (`pr#32138 <https://github.com/ceph/ceph/pull/32138>`_, Michael Fritch) -* ceph-daemon: configure firewalld for new daemons (`pr#31869 <https://github.com/ceph/ceph/pull/31869>`_, Sage Weil) -* ceph-daemon: consolidate NamedTemporaryFile logic (`pr#31908 <https://github.com/ceph/ceph/pull/31908>`_, Michael Fritch) -* ceph-daemon: create ~/.ssh if not exist (`pr#31315 <https://github.com/ceph/ceph/pull/31315>`_, Kefu Chai) -* ceph-daemon: customize the bash prompt for shell + enter (`pr#31498 <https://github.com/ceph/ceph/pull/31498>`_, Sage Weil) -* ceph-daemon: do not pass -it unless it is an interactive shell (`pr#31181 <https://github.com/ceph/ceph/pull/31181>`_, Sage Weil) -* ceph-daemon: do not relabel system directories (`pr#31321 <https://github.com/ceph/ceph/pull/31321>`_, Sage Weil) -* ceph-daemon: dont deref symlinks during chown (`pr#32137 <https://github.com/ceph/ceph/pull/32137>`_, Michael Fritch) -* ceph-daemon: enable dashboard during bootstrap (`pr#31464 <https://github.com/ceph/ceph/pull/31464>`_, Sage Weil) -* ceph-daemon: fix bootstrap ownership of tmp monmap file (`pr#32097 <https://github.com/ceph/ceph/pull/32097>`_, Sage Weil) -* ceph-daemon: fix extract_uid_gid (`pr#31832 <https://github.com/ceph/ceph/pull/31832>`_, Sage Weil) -* ceph-daemon: fix firewalld error case (`pr#32096 <https://github.com/ceph/ceph/pull/32096>`_, Sage Weil) -* ceph-daemon: Fix handling for symlinks on python2 (`pr#31838 <https://github.com/ceph/ceph/pull/31838>`_, Michael Fritch) -* ceph-daemon: fix os.mkdir call (`pr#31320 <https://github.com/ceph/ceph/pull/31320>`_, Sage Weil) -* ceph-daemon: fix pod stop (`pr#32157 <https://github.com/ceph/ceph/pull/32157>`_, Sage Weil) -* ceph-daemon: fix prompt (`pr#31603 <https://github.com/ceph/ceph/pull/31603>`_, Sage Weil) -* ceph-daemon: fix standalone `adopt` OSD test (`pr#31772 <https://github.com/ceph/ceph/pull/31772>`_, Sage Weil, Michael Fritch) -* ceph-daemon: fix traceback during `ls` command (`pr#31439 <https://github.com/ceph/ceph/pull/31439>`_, Michael Fritch) -* ceph-daemon: fix version field for legacy `ls` (`pr#31443 <https://github.com/ceph/ceph/pull/31443>`_, Michael Fritch) -* ceph-daemon: fix `systemctl is-enabled` bool (`pr#31870 <https://github.com/ceph/ceph/pull/31870>`_, Michael Fritch) -* ceph-daemon: infer fsid for some commands (`pr#31702 <https://github.com/ceph/ceph/pull/31702>`_, Michael Fritch) -* ceph-daemon: logs command (`pr#31575 <https://github.com/ceph/ceph/pull/31575>`_, Sage Weil) -* ceph-daemon: make /var/run/ceph behavior better (`pr#31141 <https://github.com/ceph/ceph/pull/31141>`_, Sage Weil) -* ceph-daemon: make infer_fsid behave when /var/lib/ceph dne (`pr#31831 <https://github.com/ceph/ceph/pull/31831>`_, Sage Weil) -* ceph-daemon: make ls log less noisy (`pr#31448 <https://github.com/ceph/ceph/pull/31448>`_, Sage Weil) -* ceph-daemon: make mon container privileged (`pr#31476 <https://github.com/ceph/ceph/pull/31476>`_, Sage Weil) -* ceph-daemon: make ps1 a raw string (`pr#31540 <https://github.com/ceph/ceph/pull/31540>`_, Michael Fritch) -* ceph-daemon: make rm-cluster faster (`pr#31538 <https://github.com/ceph/ceph/pull/31538>`_, Sage Weil) -* ceph-daemon: make rm-cluster handle failed unit cleanup (`pr#31365 <https://github.com/ceph/ceph/pull/31365>`_, Sage Weil) -* ceph-daemon: Move ceph-daemon executable to own directory (`pr#31467 <https://github.com/ceph/ceph/pull/31467>`_, Thomas Bechtold) -* ceph-daemon: nicer errors (`pr#31886 <https://github.com/ceph/ceph/pull/31886>`_, Sage Weil, Michael Fritch) -* ceph-daemon: Only run in the __main__ scope (`pr#31458 <https://github.com/ceph/ceph/pull/31458>`_, Thomas Bechtold) -* ceph-daemon: only set up /var/run/ceph/$fsid if it exists (`pr#31341 <https://github.com/ceph/ceph/pull/31341>`_, Sage Weil) -* ceph-daemon: only set up crash dir mount if it exists (`pr#31130 <https://github.com/ceph/ceph/pull/31130>`_, Sage Weil) -* ceph-daemon: py2 compatibility (`pr#31168 <https://github.com/ceph/ceph/pull/31168>`_, Sage Weil) -* ceph-daemon: py2: tolerate whitespace before config key name (`pr#32098 <https://github.com/ceph/ceph/pull/32098>`_, Sage Weil) -* ceph-daemon: raise RuntimeError when CephContainer.run() fails (`pr#31328 <https://github.com/ceph/ceph/pull/31328>`_, Michael Fritch) -* ceph-daemon: Remove data dir during adopt (`pr#31437 <https://github.com/ceph/ceph/pull/31437>`_, Michael Fritch) -* ceph-daemon: remove prepare-host (`pr#32108 <https://github.com/ceph/ceph/pull/32108>`_, Sage Weil) -* ceph-daemon: replace podman variables by container (`pr#31618 <https://github.com/ceph/ceph/pull/31618>`_, Dimitri Savineau) -* ceph-daemon: seek relative to the start of file (`pr#31892 <https://github.com/ceph/ceph/pull/31892>`_, Michael Fritch) -* ceph-daemon: set container_image during bootstrap (`pr#31445 <https://github.com/ceph/ceph/pull/31445>`_, Sage Weil) -* ceph-daemon: set ssh public identity (`pr#31500 <https://github.com/ceph/ceph/pull/31500>`_, Sage Weil) -* ceph-daemon: several fsid inference fixes (`pr#31798 <https://github.com/ceph/ceph/pull/31798>`_, Sage Weil) -* ceph-daemon: switch default image (`pr#31463 <https://github.com/ceph/ceph/pull/31463>`_, Sage Weil) -* ceph-daemon: unmount osd data dir during `adopt` (`pr#31477 <https://github.com/ceph/ceph/pull/31477>`_, Michael Fritch) -* ceph-daemon: use client.admin keyring during bootstrap (`pr#31270 <https://github.com/ceph/ceph/pull/31270>`_, Sage Weil) -* ceph-daemon: use `-e` instead of `--env` (`pr#31614 <https://github.com/ceph/ceph/pull/31614>`_, Michael Fritch) -* ceph-daemon: Use `shutil.move` to move log files (`pr#31331 <https://github.com/ceph/ceph/pull/31331>`_, Michael Fritch) -* ceph-daemon: `imp` module DeprecationWarning (`pr#32161 <https://github.com/ceph/ceph/pull/32161>`_, Michael Fritch) -* ceph-mon: keep v1 address type when explicitly set (`pr#31765 <https://github.com/ceph/ceph/pull/31765>`_, Ricardo Dias) -* ceph-object-corpus: forward_incompat pg_missing_item and pg_missing_t (`pr#28034 <https://github.com/ceph/ceph/pull/28034>`_, lishuhao) -* ceph-volume simple: better detection when type file is not present (`pr#29386 <https://github.com/ceph/ceph/pull/29386>`_, Alfredo Deza) -* ceph-volume zap always skips block.db, leaves them around (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#28998 <https://github.com/ceph/ceph/pull/28998>`_, Alfredo Deza) -* ceph-volume broken assertion errors after pytest changes (`issue#40665 <http://tracker.ceph.com/issues/40665>`_, `pr#28866 <https://github.com/ceph/ceph/pull/28866>`_, Alfredo Deza) -* ceph-volume lvm.zap fix cleanup for db partitions (`issue#40664 <http://tracker.ceph.com/issues/40664>`_, `pr#28267 <https://github.com/ceph/ceph/pull/28267>`_, Dominik Csapak) -* ceph-volume tests add a sleep in tox for slow OSDs after booting (`issue#40619 <http://tracker.ceph.com/issues/40619>`_, `pr#28836 <https://github.com/ceph/ceph/pull/28836>`_, Alfredo Deza) -* ceph-volume tests remove xenial from functional testing (`pr#31159 <https://github.com/ceph/ceph/pull/31159>`_, Alfredo Deza) -* ceph-volume tests set the noninteractive flag for Debian (`pr#29804 <https://github.com/ceph/ceph/pull/29804>`_, Alfredo Deza) -* ceph-volume-zfs: add the inventory command (`pr#30995 <https://github.com/ceph/ceph/pull/30995>`_, Willem Jan Withagen) -* ceph-volume/batch: fail on filtered devices when non-interactive (`pr#31978 <https://github.com/ceph/ceph/pull/31978>`_, Jan Fajerski) -* ceph-volume/lvm/activate.py: clarify error message: fsid refers to osd_fsid (`pr#32351 <https://github.com/ceph/ceph/pull/32351>`_, Yaniv Kaul) -* ceph-volume/test: patch VolumeGroups (`pr#31979 <https://github.com/ceph/ceph/pull/31979>`_, Jan Fajerski) -* ceph-volume: add Cephs device id to inventory (`pr#31072 <https://github.com/ceph/ceph/pull/31072>`_, Sebastian Wagner) -* ceph-volume: add db and wal support to raw mode (`pr#32828 <https://github.com/ceph/ceph/pull/32828>`_, S\xc3\xa9bastien Han) -* ceph-volume: add methods to pass filters to pvs, vgs and lvs commands (`pr#32242 <https://github.com/ceph/ceph/pull/32242>`_, Rishabh Dave) -* ceph-volume: add proper size attribute to partitions (`pr#31492 <https://github.com/ceph/ceph/pull/31492>`_, Jan Fajerski) -* ceph-volume: add raw (--bluestore) mode (`pr#32095 <https://github.com/ceph/ceph/pull/32095>`_, Sage Weil) -* ceph-volume: add sizing arguments to prepare (`pr#32235 <https://github.com/ceph/ceph/pull/32235>`_, Jan Fajerski) -* ceph-volume: add utility functions (`pr#27282 <https://github.com/ceph/ceph/pull/27282>`_, Mohamad Gebai) -* ceph-volume: allow raw block devices everywhere (`pr#31410 <https://github.com/ceph/ceph/pull/31410>`_, Jan Fajerski) -* ceph-volume: allow to skip restorecon calls (`pr#31421 <https://github.com/ceph/ceph/pull/31421>`_, Alfredo Deza) -* ceph-volume: api/lvm: check if list of LVs is empty (`pr#30101 <https://github.com/ceph/ceph/pull/30101>`_, Rishabh Dave) -* ceph-volume: assume msgrV1 for all branches containing mimic (`pr#31592 <https://github.com/ceph/ceph/pull/31592>`_, Jan Fajerski) -* ceph-volume: avoid calling zap_lv with a LV-less VG (`pr#33283 <https://github.com/ceph/ceph/pull/33283>`_, Jan Fajerski) -* ceph-volume: batch bluestore fix create_lvs call (`pr#32929 <https://github.com/ceph/ceph/pull/32929>`_, Jan Fajerski) -* ceph-volume: batch ensure device lists are disjoint (`pr#27754 <https://github.com/ceph/ceph/pull/27754>`_, Jan Fajerski) -* ceph-volume: check if we run in an selinux environment (`pr#31809 <https://github.com/ceph/ceph/pull/31809>`_, Jan Fajerski) -* ceph-volume: check if we run in an selinux environment, now also in py2 (`pr#31814 <https://github.com/ceph/ceph/pull/31814>`_, Jan Fajerski) -* ceph-volume: Dereference symlink in lvm list (`pr#32525 <https://github.com/ceph/ceph/pull/32525>`_, Beno\xc3\xaet Knecht) -* ceph-volume: detect ceph-disk osd if PARTLABEL is missing (`issue#40917 <http://tracker.ceph.com/issues/40917>`_, `pr#29401 <https://github.com/ceph/ceph/pull/29401>`_, Jan Fajerski) -* ceph-volume: do not fail when trying to remove crypt mapper (`pr#30490 <https://github.com/ceph/ceph/pull/30490>`_, Guillaume Abrioux) -* ceph-volume: dont keep device lists as sets (`pr#29683 <https://github.com/ceph/ceph/pull/29683>`_, Jan Fajerski) -* ceph-volume: dont remove vg twice when zapping filestore (`pr#33332 <https://github.com/ceph/ceph/pull/33332>`_, Jan Fajerski) -* ceph-volume: dont try to test lvm zap on simple tests (`pr#29659 <https://github.com/ceph/ceph/pull/29659>`_, Jan Fajerski) -* ceph-volume: finer grained availability notion in inventory (`pr#32634 <https://github.com/ceph/ceph/pull/32634>`_, Jan Fajerski) -* ceph-volume: fix batch functional tests, idempotent test must check s\xe2\x80\xa6 (`pr#29684 <https://github.com/ceph/ceph/pull/29684>`_, Jan Fajerski) -* ceph-volume: fix device unittest, mock has_bluestore_label (`pr#32655 <https://github.com/ceph/ceph/pull/32655>`_, Jan Fajerski) -* ceph-volume: fix has_bluestore_label() function (`pr#33074 <https://github.com/ceph/ceph/pull/33074>`_, Guillaume Abrioux) -* ceph-volume: fix is_ceph_device for lvm batch (`pr#33223 <https://github.com/ceph/ceph/pull/33223>`_, Jan Fajerski, Dimitri Savineau) -* ceph-volume: fix lvm list (`pr#33077 <https://github.com/ceph/ceph/pull/33077>`_, Guillaume Abrioux) -* ceph-volume: fix regression and improve output in lvm list (`pr#33112 <https://github.com/ceph/ceph/pull/33112>`_, Jan Fajerski) -* ceph-volume: fix stderr failure to decode/encode when redirected (`pr#30274 <https://github.com/ceph/ceph/pull/30274>`_, Alfredo Deza) -* ceph-volume: fix the integer overflow (`pr#32106 <https://github.com/ceph/ceph/pull/32106>`_, dongdong tao) -* ceph-volume: fix warnings raised by pytest (`pr#30422 <https://github.com/ceph/ceph/pull/30422>`_, Rishabh Dave) -* ceph-volume: import mock.mock instead of unittest.mock (py2) (`pr#31816 <https://github.com/ceph/ceph/pull/31816>`_, Jan Fajerski) -* ceph-volume: look for rotational data in lsblk (`pr#26957 <https://github.com/ceph/ceph/pull/26957>`_, Andrew Schoen) -* ceph-volume: lvm: get_device_vgs() filter by provided prefix (`pr#33478 <https://github.com/ceph/ceph/pull/33478>`_, Jan Fajerski, Yehuda Sadeh) -* ceph-volume: make get_devices fs location independent (`pr#31574 <https://github.com/ceph/ceph/pull/31574>`_, Jan Fajerski) -* ceph-volume: minor clean-up of `simple scan` subcommand help (`pr#31821 <https://github.com/ceph/ceph/pull/31821>`_, Michael Fritch) -* ceph-volume: minor optimizations related to class Volumess use (`pr#29665 <https://github.com/ceph/ceph/pull/29665>`_, Rishabh Dave) -* ceph-volume: mokeypatch calls to lvm related binaries (`pr#31197 <https://github.com/ceph/ceph/pull/31197>`_, Jan Fajerski) -* ceph-volume: never log to stdout, use stderr instead (`pr#29547 <https://github.com/ceph/ceph/pull/29547>`_, Jan Fajerski) -* ceph-volume: pass --ssh-config to pytest to resolve hosts when connecting (`issue#40063 <http://tracker.ceph.com/issues/40063>`_, `pr#28294 <https://github.com/ceph/ceph/pull/28294>`_, Alfredo Deza) -* ceph-volume: pass journal_size as Size not string (`pr#33320 <https://github.com/ceph/ceph/pull/33320>`_, Jan Fajerski) -* ceph-volume: pre-install python-apt and its variants before test runs (`pr#30115 <https://github.com/ceph/ceph/pull/30115>`_, Alfredo Deza) -* ceph-volume: print most logging messages to stderr (`issue#38548 <http://tracker.ceph.com/issues/38548>`_, `pr#27675 <https://github.com/ceph/ceph/pull/27675>`_, Jan Fajerski) -* ceph-volume: PVolumes.filter shouldnt purge itself (`pr#30703 <https://github.com/ceph/ceph/pull/30703>`_, Rishabh Dave) -* ceph-volume: rearrange api/lvm.py (`pr#30867 <https://github.com/ceph/ceph/pull/30867>`_, Rishabh Dave) -* ceph-volume: refactor listing.py (`pr#31700 <https://github.com/ceph/ceph/pull/31700>`_, Rishabh Dave) -* ceph-volume: reject disks smaller then 5GB in inventory (`issue#40776 <http://tracker.ceph.com/issues/40776>`_, `pr#29041 <https://github.com/ceph/ceph/pull/29041>`_, Jan Fajerski) -* ceph-volume: revert --no-tmpfs change (`pr#30788 <https://github.com/ceph/ceph/pull/30788>`_, Sage Weil) -* ceph-volume: silence ceph-bluestore-tool failures (`pr#33371 <https://github.com/ceph/ceph/pull/33371>`_, S\xc3\xa9bastien Han) -* ceph-volume: skip osd creation when already done (`pr#33086 <https://github.com/ceph/ceph/pull/33086>`_, Guillaume Abrioux) -* ceph-volume: strip _dmcrypt suffix in simple scan json output (`pr#33079 <https://github.com/ceph/ceph/pull/33079>`_, Jan Fajerski) -* ceph-volume: systemd fix typo in log message (`pr#30497 <https://github.com/ceph/ceph/pull/30497>`_, Manu Zurm\xc3\xbchl) -* ceph-volume: terminal: encode unicode when writing to stdout (`pr#27148 <https://github.com/ceph/ceph/pull/27148>`_, Alfredo Deza, Kefu Chai) -* ceph-volume: use centos8 for functional testing (`pr#33174 <https://github.com/ceph/ceph/pull/33174>`_, Jan Fajerski) -* ceph-volume: use correct extents if using db-devices and >1 osds_per_device (`pr#32177 <https://github.com/ceph/ceph/pull/32177>`_, Fabian Niepelt) -* ceph-volume: use fsync for dd command (`pr#31479 <https://github.com/ceph/ceph/pull/31479>`_, Rishabh Dave) -* ceph-volume: use get_device_vgs in has_common_vg (`pr#33246 <https://github.com/ceph/ceph/pull/33246>`_, Jan Fajerski) -* ceph-volume: use python3 compatible print (`pr#30790 <https://github.com/ceph/ceph/pull/30790>`_, Kyr Shatskyy) -* ceph-volume: use the Device.rotational property instead of sys_api (`pr#28060 <https://github.com/ceph/ceph/pull/28060>`_, Andrew Schoen) -* ceph-volume: use the OSD identifier when reporting success (`pr#29762 <https://github.com/ceph/ceph/pull/29762>`_, Alfredo Deza) -* ceph-volume: util: look for executable in $PATH (`pr#31787 <https://github.com/ceph/ceph/pull/31787>`_, Shyukri Shyukriev) -* ceph-volume: util: Use proper param substition (`pr#28448 <https://github.com/ceph/ceph/pull/28448>`_, Shyukri Shyukriev) -* ceph-volume: VolumeGroups.filter shouldnt purge itself (`pr#30707 <https://github.com/ceph/ceph/pull/30707>`_, Rishabh Dave) -* ceph-volume: when testing disable the dashboard (`pr#29387 <https://github.com/ceph/ceph/pull/29387>`_, Andrew Schoen) -* ceph.in: disable ASAN if libasan is not found (`pr#28247 <https://github.com/ceph/ceph/pull/28247>`_, Kefu Chai) -* ceph.in: do not preload asan even if not needed (`pr#28703 <https://github.com/ceph/ceph/pull/28703>`_, Kefu Chai) -* ceph.in: do not preload libasan if it is found (`pr#28275 <https://github.com/ceph/ceph/pull/28275>`_, Kefu Chai) -* ceph.in: print decoded output in interactive mode (`pr#33099 <https://github.com/ceph/ceph/pull/33099>`_, Jun Su) -* cephadm: --cap-add=SYS_PTRACE (`pr#33442 <https://github.com/ceph/ceph/pull/33442>`_, Sage Weil) -* cephadm: Add ability to deploy grafana container (`pr#32491 <https://github.com/ceph/ceph/pull/32491>`_, Paul Cuzner) -* cephadm: add ability to specify a timeout (`pr#32049 <https://github.com/ceph/ceph/pull/32049>`_, Michael Fritch) -* cephadm: add alertmanager deployment feature (`pr#32949 <https://github.com/ceph/ceph/pull/32949>`_, Sage Weil, Paul Cuzner) -* cephadm: add assert foo is not None for mypy check (`pr#33876 <https://github.com/ceph/ceph/pull/33876>`_, Kefu Chai) -* cephadm: add grafana adopt (`pr#33746 <https://github.com/ceph/ceph/pull/33746>`_, Eric Jackson) -* cephadm: add locking (`pr#32334 <https://github.com/ceph/ceph/pull/32334>`_, Sage Weil) -* cephadm: add nfs-ganesha deployment (`pr#33064 <https://github.com/ceph/ceph/pull/33064>`_, Michael Fritch) -* cephadm: add prepare-host (`pr#33374 <https://github.com/ceph/ceph/pull/33374>`_, Sage Weil) -* cephadm: add prometheus adopt (`pr#33438 <https://github.com/ceph/ceph/pull/33438>`_, Eric Jackson) -* cephadm: add reconfig service action (`pr#32281 <https://github.com/ceph/ceph/pull/32281>`_, Sage Weil) -* cephadm: add start/stop hooks and c-v activate on container start (`pr#32158 <https://github.com/ceph/ceph/pull/32158>`_, Sage Weil) -* cephadm: Add Zypper packager (openSUSE/SLES) (`pr#33461 <https://github.com/ceph/ceph/pull/33461>`_, Kristoffer Gr\xc3\xb6nlund) -* cephadm: add `--retry` arg (`pr#33342 <https://github.com/ceph/ceph/pull/33342>`_, Michael Fritch) -* cephadm: add {add,rm}-repo commands (`pr#33062 <https://github.com/ceph/ceph/pull/33062>`_, Sage Weil) -* cephadm: add-repo: add --version (`pr#33961 <https://github.com/ceph/ceph/pull/33961>`_, Sage Weil) -* cephadm: adopt fixes (`pr#32995 <https://github.com/ceph/ceph/pull/32995>`_, Sage Weil) -* cephadm: allow multiple get_parm() calls (`pr#33437 <https://github.com/ceph/ceph/pull/33437>`_, Sage Weil) -* cephadm: allow skipping prepare_host in bootstrap step (`pr#33504 <https://github.com/ceph/ceph/pull/33504>`_, Kiefer Chang) -* cephadm: allow users to provide their dashboard cert during bootstrap (`pr#33472 <https://github.com/ceph/ceph/pull/33472>`_, Daniel-Pivonka) -* cephadm: also return JSON decode error (`pr#33433 <https://github.com/ceph/ceph/pull/33433>`_, Sebastian Wagner) -* cephadm: bootstrap: avoid repeat chars in generated password (`pr#32332 <https://github.com/ceph/ceph/pull/32332>`_, Sage Weil) -* cephadm: bootstrap: deploy monitoring stack by default (`pr#33936 <https://github.com/ceph/ceph/pull/33936>`_, Sage Weil) -* cephadm: bootstrap: nag about telemetry (`pr#33517 <https://github.com/ceph/ceph/pull/33517>`_, Sage Weil) -* cephadm: bootstrap: wait for mgr to restart after enabling a module (`pr#33857 <https://github.com/ceph/ceph/pull/33857>`_, Sage Weil) -* cephadm: bootstrap: warn on fqdn hostname (`pr#33042 <https://github.com/ceph/ceph/pull/33042>`_, Sage Weil) -* cephadm: check for both chrony service names (`pr#33369 <https://github.com/ceph/ceph/pull/33369>`_, Sage Weil) -* cephadm: check for both ntp.service and ntpd.service (`pr#32302 <https://github.com/ceph/ceph/pull/32302>`_, Sage Weil) -* cephadm: clean up the systemd unit and ceph-crash shutdown behavior (`pr#32685 <https://github.com/ceph/ceph/pull/32685>`_, Sage Weil) -* cephadm: correct ipv6 support in port open detection (`pr#32286 <https://github.com/ceph/ceph/pull/32286>`_, Paul Cuzner) -* cephadm: create /var/run/ceph/$fsid as needed (`pr#32390 <https://github.com/ceph/ceph/pull/32390>`_, Sage Weil) -* cephadm: disable node-exporter cpu/memory limits for the time being (`pr#33133 <https://github.com/ceph/ceph/pull/33133>`_, Sage Weil) -* cephadm: drop sha256: prefix on container id (`pr#32300 <https://github.com/ceph/ceph/pull/32300>`_, Sage Weil) -* cephadm: error out on filestore OSDs (`pr#33395 <https://github.com/ceph/ceph/pull/33395>`_, Sage Weil) -* cephadm: fix adoption safety check (`pr#33445 <https://github.com/ceph/ceph/pull/33445>`_, Sage Weil) -* cephadm: fix ceph version probe (`pr#33136 <https://github.com/ceph/ceph/pull/33136>`_, Sage Weil) -* cephadm: fix container cleanup (`pr#32282 <https://github.com/ceph/ceph/pull/32282>`_, Sage Weil) -* cephadm: fix datetime regexp to capture at most 6 digits (`pr#33932 <https://github.com/ceph/ceph/pull/33932>`_, Michael Fritch) -* cephadm: fix deploy crash when no `args.fsid` (`pr#33248 <https://github.com/ceph/ceph/pull/33248>`_, Michael Fritch) -* cephadm: fix error handing in `command_check_host()` (`pr#33048 <https://github.com/ceph/ceph/pull/33048>`_, Guillaume Abrioux) -* cephadm: fix failure when getting keyring for deploying daemons (`pr#33679 <https://github.com/ceph/ceph/pull/33679>`_, Kiefer Chang) -* cephadm: fix help message for bootstrap --mgr-id (`pr#32640 <https://github.com/ceph/ceph/pull/32640>`_, Sage Weil) -* cephadm: fix inspect-image (`pr#33109 <https://github.com/ceph/ceph/pull/33109>`_, Sage Weil) -* cephadm: fix logging defaults (`pr#32641 <https://github.com/ceph/ceph/pull/32641>`_, Sage Weil) -* cephadm: fix name argument parsing during image check for non-ceph components (`pr#33114 <https://github.com/ceph/ceph/pull/33114>`_, Daniel-Pivonka) -* cephadm: Fix Py3 ConfigParser deprecation warnings (`pr#32218 <https://github.com/ceph/ceph/pull/32218>`_, Michael Fritch) -* cephadm: fix tox DeprecationWarning (`pr#32753 <https://github.com/ceph/ceph/pull/32753>`_, Michael Fritch) -* cephadm: fix v1/v2 ip/addrv handling; explicitly check bind to ip:port (`pr#32392 <https://github.com/ceph/ceph/pull/32392>`_, Sage Weil) -* cephadm: fix `alertmanager not implemented yet` (`pr#33694 <https://github.com/ceph/ceph/pull/33694>`_, Patrick Seidensal) -* cephadm: flag dashboard user to change password (`pr#32990 <https://github.com/ceph/ceph/pull/32990>`_, Daniel-Pivonka) -* cephadm: further simplify mon setup (`pr#33952 <https://github.com/ceph/ceph/pull/33952>`_, Sage Weil) -* cephadm: implement install command (`pr#33979 <https://github.com/ceph/ceph/pull/33979>`_, Sage Weil) -* cephadm: improve handling of crash agent container (`pr#33189 <https://github.com/ceph/ceph/pull/33189>`_, Sage Weil) -* cephadm: include daemon/unit id in unit name (`pr#32970 <https://github.com/ceph/ceph/pull/32970>`_, Sage Weil) -* cephadm: Infer ceph image (`pr#33829 <https://github.com/ceph/ceph/pull/33829>`_, Sage Weil, Ricardo Marques) -* cephadm: infer the fsid by name (`pr#32795 <https://github.com/ceph/ceph/pull/32795>`_, Michael Fritch) -* cephadm: KillMode=none in unit file (`pr#33162 <https://github.com/ceph/ceph/pull/33162>`_, Sage Weil) -* cephadm: leave backup when removing stateful daemons (`pr#33973 <https://github.com/ceph/ceph/pull/33973>`_, Sage Weil) -* cephadm: make add-repo --release and --version independent (`pr#34034 <https://github.com/ceph/ceph/pull/34034>`_, Sage Weil) -* cephadm: merge `--config-and-keyring` and `--config-json` args (`pr#33870 <https://github.com/ceph/ceph/pull/33870>`_, Michael Fritch) -* cephadm: misc upgrade fixes (`pr#32794 <https://github.com/ceph/ceph/pull/32794>`_, Sage Weil) -* cephadm: no --no-systemd arg to ceph-volume deactivate (`pr#32886 <https://github.com/ceph/ceph/pull/32886>`_, Sage Weil) -* cephadm: only infer image for shell, run, inspect-image, pull, ceph-volume (`pr#34030 <https://github.com/ceph/ceph/pull/34030>`_, Sage Weil) -* cephadm: podman inspect: image field was called `ImageID` (`pr#32616 <https://github.com/ceph/ceph/pull/32616>`_, Sebastian Wagner) -* cephadm: prepare-host: do not create Packager unless we need it (`pr#33443 <https://github.com/ceph/ceph/pull/33443>`_, Sage Weil) -* cephadm: pull: strip newline from version string (`pr#33446 <https://github.com/ceph/ceph/pull/33446>`_, Sage Weil) -* cephadm: python3 shebang (`pr#32378 <https://github.com/ceph/ceph/pull/32378>`_, Sage Weil) -* cephadm: re-introduce the `podman logs` command (`pr#33089 <https://github.com/ceph/ceph/pull/33089>`_, Michael Fritch) -* cephadm: Read ceph version from io.ceph.version label if set (`pr#32982 <https://github.com/ceph/ceph/pull/32982>`_, Kristoffer Gr\xc3\xb6nlund) -* cephadm: Refactor, prepare for other adoptions (`pr#33672 <https://github.com/ceph/ceph/pull/33672>`_, Eric Jackson) -* cephadm: relabel /etc/ganesha mount (`pr#34098 <https://github.com/ceph/ceph/pull/34098>`_, Sage Weil) -* cephadm: remove orphan daemons (`pr#33830 <https://github.com/ceph/ceph/pull/33830>`_, Sage Weil) -* cephadm: remove `logs` command (`pr#32752 <https://github.com/ceph/ceph/pull/32752>`_, Michael Fritch) -* cephadm: Rename tox tests ceph-daemon -> cephadm (`pr#32353 <https://github.com/ceph/ceph/pull/32353>`_, Michael Fritch) -* cephadm: report image name for stopped daemons (`pr#33190 <https://github.com/ceph/ceph/pull/33190>`_, Sage Weil) -* cephadm: report version for grafana prom etc (`pr#33804 <https://github.com/ceph/ceph/pull/33804>`_, Sage Weil) -* cephadm: shell: allow -e (`pr#33191 <https://github.com/ceph/ceph/pull/33191>`_, Sage Weil) -* cephadm: shell: default to config and keyring in /etc/ceph, if present (`pr#33793 <https://github.com/ceph/ceph/pull/33793>`_, Sage Weil) -* cephadm: shell: do not bind ceph.conf twice (`pr#32425 <https://github.com/ceph/ceph/pull/32425>`_, Sage Weil) -* cephadm: shell: keep .bash_history in /var/log/ceph/$fsid (`pr#33519 <https://github.com/ceph/ceph/pull/33519>`_, Sage Weil) -* cephadm: show contextual message when port is in use (`pr#32560 <https://github.com/ceph/ceph/pull/32560>`_, Michael Fritch) -* cephadm: simplify Monitoring.components structure (`pr#32977 <https://github.com/ceph/ceph/pull/32977>`_, Michael Fritch) -* cephadm: SO_REUSEADDR when doing bind check (`pr#32712 <https://github.com/ceph/ceph/pull/32712>`_, Sage Weil) -* cephadm: streamline bootstrap a bit (`pr#33980 <https://github.com/ceph/ceph/pull/33980>`_, Sage Weil) -* cephadm: support deployment of node-exporter (`pr#32340 <https://github.com/ceph/ceph/pull/32340>`_, Paul Cuzner) -* cephadm: support deployment of prometheus container (`pr#32198 <https://github.com/ceph/ceph/pull/32198>`_, Sebastian Wagner, Paul Cuzner) -* cephadm: switch grafana image to the ceph repo (`pr#34082 <https://github.com/ceph/ceph/pull/34082>`_, Paul Cuzner) -* cephadm: update unit.\\* atomically (`pr#33895 <https://github.com/ceph/ceph/pull/33895>`_, Sage Weil) -* cephadm: use appropriate default image for non-ceph components (`pr#33069 <https://github.com/ceph/ceph/pull/33069>`_, Sage Weil) -* cephadm: use spec to deploy crash on every host (`pr#33658 <https://github.com/ceph/ceph/pull/33658>`_, Sage Weil) -* cephadm: use `sh` instead of `bash` during enter (`pr#33822 <https://github.com/ceph/ceph/pull/33822>`_, Michael Fritch) -* cephadm: wait longer for things to come up (`pr#33216 <https://github.com/ceph/ceph/pull/33216>`_, Sage Weil) -* cephfs,common,core: global: disable THP for Ceph daemons (`pr#31582 <https://github.com/ceph/ceph/pull/31582>`_, Patrick Donnelly, Mark Nelson) -* cephfs,common,rbd: common/config_proxy: hold lock while accessing mutable container (`pr#29809 <https://github.com/ceph/ceph/pull/29809>`_, Jason Dillaman) -* cephfs,common: common/secret.c: fix key parsing when doing a remount (`pr#28148 <https://github.com/ceph/ceph/pull/28148>`_, Luis Henriques) -* cephfs,common: osdc: should release the rwlock before waiting (`pr#29686 <https://github.com/ceph/ceph/pull/29686>`_, Kefu Chai) -* cephfs,core: mds/MDSDaemon: fix asok exit and respawn commands (`pr#32251 <https://github.com/ceph/ceph/pull/32251>`_, Sage Weil) -* cephfs,core: msg/async: perform the v2 resets in proper EventCenter (`pr#30717 <https://github.com/ceph/ceph/pull/30717>`_, Radoslaw Zarzynski) -* cephfs,core: qa/suites/rados/mgr/tasks/module_selftest: whitelist mgr client getting backlisted (`issue#40867 <http://tracker.ceph.com/issues/40867>`_, `pr#29169 <https://github.com/ceph/ceph/pull/29169>`_, Sage Weil) -* cephfs,core: qa/suites/upgrade: a few more octopus fixes (`pr#32853 <https://github.com/ceph/ceph/pull/32853>`_, Sage Weil) -* cephfs,core: qa: log warning on scrub error (`pr#32739 <https://github.com/ceph/ceph/pull/32739>`_, Patrick Donnelly) -* cephfs,core: src/: define ceph_release_t and use it (`pr#27855 <https://github.com/ceph/ceph/pull/27855>`_, Kefu Chai) -* cephfs,mgr,mon: mon/MDSMonitor: enforce mds_join_fs cluster affinity (`pr#33194 <https://github.com/ceph/ceph/pull/33194>`_, Patrick Donnelly) -* cephfs,mgr,mon: mon/MgrMonitor: blacklist previous instance of ceph-mgr during failover (`pr#31797 <https://github.com/ceph/ceph/pull/31797>`_, Patrick Donnelly) -* cephfs,mgr,pybind: mgr/prometheus: export standby mds metadata (`pr#29996 <https://github.com/ceph/ceph/pull/29996>`_, lei01.liu) -* cephfs,mgr,pybind: mgr/volumes: minor enhancements and fixes (`issue#40429 <http://tracker.ceph.com/issues/40429>`_, `pr#28706 <https://github.com/ceph/ceph/pull/28706>`_, Ramana Raja) -* cephfs,mgr: mds/MDSRank: report state to mgr as mds id, not rank (`pr#31231 <https://github.com/ceph/ceph/pull/31231>`_, Patrick Donnelly, Sage Weil) -* cephfs,mgr: mgr/volume: ceph cephfs metadata pool pg_num_min and bias (`pr#27374 <https://github.com/ceph/ceph/pull/27374>`_, Sage Weil) -* cephfs,mgr: mgr/volumes: cleanup libcephfs handles on plugin shutdown (`issue#42299 <http://tracker.ceph.com/issues/42299>`_, `pr#30890 <https://github.com/ceph/ceph/pull/30890>`_, Venky Shankar) -* cephfs,mgr: pybind/mgr/volumes: use py3 items iterator (`pr#31986 <https://github.com/ceph/ceph/pull/31986>`_, Patrick Donnelly) -* cephfs,mgr: qa: use skipTest method instead of exception (`pr#27761 <https://github.com/ceph/ceph/pull/27761>`_, Patrick Donnelly) -* cephfs,mon: mon/MDSMonitor: cleanup check_subs (`pr#32308 <https://github.com/ceph/ceph/pull/32308>`_, Patrick Donnelly) -* cephfs,mon: mon/MDSMonitor: handle standby already without fscid (`pr#32585 <https://github.com/ceph/ceph/pull/32585>`_, Patrick Donnelly) -* cephfs,pybind: libcephfs: add missing declaration of ceph_getaddrs() (`pr#32629 <https://github.com/ceph/ceph/pull/32629>`_, Kefu Chai) -* cephfs,pybind: mgr/volumes: add `ceph fs subvolumegroup getpath` command (`issue#40617 <http://tracker.ceph.com/issues/40617>`_, `pr#29103 <https://github.com/ceph/ceph/pull/29103>`_, Ramana Raja) -* cephfs,pybind: mgr/volumes: set uid/gid of FS clients mount as 0/0 (`issue#40927 <http://tracker.ceph.com/issues/40927>`_, `pr#29355 <https://github.com/ceph/ceph/pull/29355>`_, Ramana Raja) -* cephfs,pybind: pybind/cephfs: add cephfs python API removexattr() (`pr#30641 <https://github.com/ceph/ceph/pull/30641>`_, bingyi zhang) -* cephfs,pybind: pybind/cephfs: Add listxattr (`pr#32804 <https://github.com/ceph/ceph/pull/32804>`_, Varsha Rao) -* cephfs,rbd,tests: qa/tasks: drop object inherit (`pr#29843 <https://github.com/ceph/ceph/pull/29843>`_, Jos Collin) -* cephfs,rbd: osdc: using decltype(auto) instead of trailing return type (`pr#29931 <https://github.com/ceph/ceph/pull/29931>`_, Yao Zongyou) -* cephfs,tests: cephfs-shell: teuthology tests (`issue#39526 <http://tracker.ceph.com/issues/39526>`_, `pr#27872 <https://github.com/ceph/ceph/pull/27872>`_, Milind Changire) -* cephfs,tests: mgr/volumes: fs subvolume resize command (`pr#30054 <https://github.com/ceph/ceph/pull/30054>`_, Jos Collin) -* cephfs,tests: qa/cephfs: add test for ACLs (`pr#29421 <https://github.com/ceph/ceph/pull/29421>`_, Rishabh Dave) -* cephfs,tests: qa/cephfs: change deps for xfstests-dev on centos8 (`pr#32524 <https://github.com/ceph/ceph/pull/32524>`_, Rishabh Dave) -* cephfs,tests: qa/cephfs: dont test kclient on RHEL 7 (`pr#32582 <https://github.com/ceph/ceph/pull/32582>`_, Rishabh Dave) -* cephfs,tests: qa/cephfs: update xfstests-dev deps for RHEL 8 (`pr#33427 <https://github.com/ceph/ceph/pull/33427>`_, Rishabh Dave) -* cephfs,tests: qa/suites/powercycle: install build deps for building xfstest (`pr#33874 <https://github.com/ceph/ceph/pull/33874>`_, Kefu Chai) -* cephfs,tests: qa/tasks/cephfs/fuse_mount: use python3 (`pr#32339 <https://github.com/ceph/ceph/pull/32339>`_, Sage Weil) -* cephfs,tests: qa/tasks: add exception in do_thrash() (`pr#29067 <https://github.com/ceph/ceph/pull/29067>`_, Jos Collin) -* cephfs,tests: qa/tasks: DaemonWatchdog Expansion (`issue#10369 <http://tracker.ceph.com/issues/10369>`_, `issue#11314 <http://tracker.ceph.com/issues/11314>`_, `pr#28378 <https://github.com/ceph/ceph/pull/28378>`_, Jos Collin) -* cephfs,tests: qa/tasks: Fix raises that doesnt re-raise (`pr#30201 <https://github.com/ceph/ceph/pull/30201>`_, Jos Collin) -* cephfs,tests: qa/tasks: fixed typo in the comment (`pr#29759 <https://github.com/ceph/ceph/pull/29759>`_, Jos Collin) -* cephfs,tests: qa/tasks: improvements in vstart_runner.py and mount.py (`pr#27481 <https://github.com/ceph/ceph/pull/27481>`_, Rishabh Dave) -* cephfs,tests: qa/tasks: upgrade command arguments checks in vstart_runner.py (`pr#28198 <https://github.com/ceph/ceph/pull/28198>`_, Rishabh Dave) -* cephfs,tests: qa/tests: reduce number of jobs for `kcephfs` (`pr#27328 <https://github.com/ceph/ceph/pull/27328>`_, Yuri Weinstein) -* cephfs,tests: qa/tests: reduced number of jobs for `kcephfs` (`pr#27165 <https://github.com/ceph/ceph/pull/27165>`_, Yuri Weinstein) -* cephfs,tests: qa/vstart_runner.py: make run()s interface same as teuthologys run (`pr#33263 <https://github.com/ceph/ceph/pull/33263>`_, Rishabh Dave) -* cephfs,tests: qa: note timeout in debug message (`pr#32162 <https://github.com/ceph/ceph/pull/32162>`_, Patrick Donnelly) -* cephfs,tests: qa: stop DaemonWatchdog for each cluster in daemon roles (`pr#29821 <https://github.com/ceph/ceph/pull/29821>`_, Patrick Donnelly) -* cephfs,tests: qa: test fs:upgrade when running upgrade suite (`pr#31206 <https://github.com/ceph/ceph/pull/31206>`_, Patrick Donnelly) -* cephfs,tests: test: define ALLPERMS if not yet (`pr#30726 <https://github.com/ceph/ceph/pull/30726>`_, Kefu Chai) -* cephfs,tests: test_cephfs_shell: fix test_du_works_for_hardlinks (`pr#32168 <https://github.com/ceph/ceph/pull/32168>`_, Rishabh Dave) -* cephfs,tests: test_cephfs_shell: initialize stderr for run_cephfs_shell_cmd() (`pr#31626 <https://github.com/ceph/ceph/pull/31626>`_, Rishabh Dave) -* cephfs,tests: test_sessionmap: use sudo_write_file() from teuthology.misc (`pr#29123 <https://github.com/ceph/ceph/pull/29123>`_, Rishabh Dave) -* cephfs,tools: cephfs-journal-tool: fix crash and usage (`pr#32452 <https://github.com/ceph/ceph/pull/32452>`_, Xiubo Li) -* cephfs,tools: mount.ceph: fix incorrect options parsing (`pr#33197 <https://github.com/ceph/ceph/pull/33197>`_, Xiubo Li) -* cephfs,tools: vstart.sh: highlight presence of stray conf (`pr#31403 <https://github.com/ceph/ceph/pull/31403>`_, Milind Changire) -* cephfs: client: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (`pr#28685 <https://github.com/ceph/ceph/pull/28685>`_, Yan, Zheng) -* cephfs: mds: change how mds revoke stale caps (`issue#17854 <http://tracker.ceph.com/issues/17854>`_, `pr#26737 <https://github.com/ceph/ceph/pull/26737>`_, Yan, Zheng, Rishabh Dave) -* cephfs: mds: fix corner case of replaying open sessions (`pr#28456 <https://github.com/ceph/ceph/pull/28456>`_, Yan, Zheng) -* cephfs: Add doc for deploying cephfs-nfs cluster using rook (`pr#30914 <https://github.com/ceph/ceph/pull/30914>`_, Varsha Rao) -* cephfs: Allow mount.ceph to get mount info from ceph configs and keyrings (`pr#29817 <https://github.com/ceph/ceph/pull/29817>`_, Jeff Layton) -* cephfs: avoid map client_caps been inserted by mistake (`pr#29304 <https://github.com/ceph/ceph/pull/29304>`_, XiaoGuoDong2019) -* cephfs: ceph-mds: dump all info of ceph_file_layout, InodeStoreBase, frag_inf\xe2\x80\xa6 (`pr#28874 <https://github.com/ceph/ceph/pull/28874>`_, simon gao) -* cephfs: ceph-mds: set ceph_mds cpu affinity (`pr#31712 <https://github.com/ceph/ceph/pull/31712>`_, qilianghong) -* cephfs: cephfs pybind: added lseek() function to cephfs pybind (`pr#27688 <https://github.com/ceph/ceph/pull/27688>`_, Xiaowei Chu) -* cephfs: cephfs-shell: Add command for setxattr, getxattr and listxattr (`pr#32570 <https://github.com/ceph/ceph/pull/32570>`_, Varsha Rao) -* cephfs: cephfs-shell: Add error message for invalid ls commands (`pr#28652 <https://github.com/ceph/ceph/pull/28652>`_, Varsha Rao) -* cephfs: cephfs-shell: add quota management (`issue#39165 <http://tracker.ceph.com/issues/39165>`_, `pr#27483 <https://github.com/ceph/ceph/pull/27483>`_, Milind Changire) -* cephfs: cephfs-shell: add snapshot management (`issue#38681 <http://tracker.ceph.com/issues/38681>`_, `pr#27467 <https://github.com/ceph/ceph/pull/27467>`_, Milind Changire) -* cephfs: cephfs-shell: Add stat command (`pr#27753 <https://github.com/ceph/ceph/pull/27753>`_, Varsha Rao) -* cephfs: cephfs-shell: Add tox for testing with flake8 (`pr#28239 <https://github.com/ceph/ceph/pull/28239>`_, Varsha Rao) -* cephfs: cephfs-shell: better complain info, when deleting non-empty directory (`issue#40864 <http://tracker.ceph.com/issues/40864>`_, `pr#30341 <https://github.com/ceph/ceph/pull/30341>`_, Shen Hang) -* cephfs: cephfs-shell: Catch OSError exceptions in lcd (`issue#40243 <http://tracker.ceph.com/issues/40243>`_, `pr#28473 <https://github.com/ceph/ceph/pull/28473>`_, Varsha Rao) -* cephfs: cephfs-shell: cd with no args must change CWD to root (`issue#40476 <http://tracker.ceph.com/issues/40476>`_, `pr#28793 <https://github.com/ceph/ceph/pull/28793>`_, Rishabh Dave) -* cephfs: cephfs-shell: changes related to read_ceph_conf() (`pr#32347 <https://github.com/ceph/ceph/pull/32347>`_, Rishabh Dave) -* cephfs: cephfs-shell: changes to stderr and stdout messages (`pr#30365 <https://github.com/ceph/ceph/pull/30365>`_, Rishabh Dave) -* cephfs: cephfs-shell: Convert paths type from string to bytes (`pr#29552 <https://github.com/ceph/ceph/pull/29552>`_, Varsha Rao) -* cephfs: cephfs-shell: du should ignore non-directory files (`issue#40371 <http://tracker.ceph.com/issues/40371>`_, `pr#28560 <https://github.com/ceph/ceph/pull/28560>`_, Rishabh Dave, Varsha Rao) -* cephfs: cephfs-shell: Fix df command errors (`pr#27894 <https://github.com/ceph/ceph/pull/27894>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix flake8 blank line and indentation error (`pr#29149 <https://github.com/ceph/ceph/pull/29149>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix hidden files and directories list by ls command (`pr#27266 <https://github.com/ceph/ceph/pull/27266>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix lls command errors (`issue#40244 <http://tracker.ceph.com/issues/40244>`_, `pr#28475 <https://github.com/ceph/ceph/pull/28475>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix ls -l (`pr#32801 <https://github.com/ceph/ceph/pull/32801>`_, Kotresh HR) -* cephfs: cephfs-shell: Fix mkdir relative path error (`pr#27822 <https://github.com/ceph/ceph/pull/27822>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix multiple flake8 errors (`pr#28080 <https://github.com/ceph/ceph/pull/28080>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix multiple flake8 errors (`pr#28433 <https://github.com/ceph/ceph/pull/28433>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix multiple flake8 errors (`pr#29374 <https://github.com/ceph/ceph/pull/29374>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix onecmd TypeError (`pr#29554 <https://github.com/ceph/ceph/pull/29554>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix print of error messages to stdout (`pr#28447 <https://github.com/ceph/ceph/pull/28447>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix rmdir -p issues and add tests for rmdir (`pr#31633 <https://github.com/ceph/ceph/pull/31633>`_, Varsha Rao) -* cephfs: cephfs-shell: fix string decoding for ls command (`issue#39404 <http://tracker.ceph.com/issues/39404>`_, `pr#27716 <https://github.com/ceph/ceph/pull/27716>`_, Milind Changire) -* cephfs: cephfs-shell: Fix TypeError in poutput() (`pr#28906 <https://github.com/ceph/ceph/pull/28906>`_, Varsha Rao) -* cephfs: cephfs-shell: Fix typo for mounting (`pr#28718 <https://github.com/ceph/ceph/pull/28718>`_, Varsha Rao) -* cephfs: cephfs-shell: fix unecessary usage of to_bytes for file paths (`issue#40455 <http://tracker.ceph.com/issues/40455>`_, `pr#28663 <https://github.com/ceph/ceph/pull/28663>`_, Patrick Donnelly) -* cephfs: cephfs-shell: fix various tracebacks (`issue#38743 <http://tracker.ceph.com/issues/38743>`_, `issue#38739 <http://tracker.ceph.com/issues/38739>`_, `issue#38741 <http://tracker.ceph.com/issues/38741>`_, `issue#38740 <http://tracker.ceph.com/issues/38740>`_, `pr#27235 <https://github.com/ceph/ceph/pull/27235>`_, Milind Changire) -* cephfs: cephfs-shell: make compatible with cmd2 versions after 0.9.13 (`pr#30585 <https://github.com/ceph/ceph/pull/30585>`_, Rishabh Dave) -* cephfs: cephfs-shell: make every command set a return value on failure (`pr#32213 <https://github.com/ceph/ceph/pull/32213>`_, Rishabh Dave) -* cephfs: cephfs-shell: print helpful message when conf file is not found (`pr#31460 <https://github.com/ceph/ceph/pull/31460>`_, Rishabh Dave) -* cephfs: cephfs-shell: py version fixes (`issue#40418 <http://tracker.ceph.com/issues/40418>`_, `pr#28638 <https://github.com/ceph/ceph/pull/28638>`_, Patrick Donnelly) -* cephfs: cephfs-shell: read options from ceph.conf (`pr#29964 <https://github.com/ceph/ceph/pull/29964>`_, Rishabh Dave) -* cephfs: cephfs-shell: rearrange code for convenience (`pr#31629 <https://github.com/ceph/ceph/pull/31629>`_, Rishabh Dave) -* cephfs: cephfs-shell: Remove extra length argument passed to setxattr() (`pr#30802 <https://github.com/ceph/ceph/pull/30802>`_, Varsha Rao) -* cephfs: cephfs-shell: Remove str object references to attribute decode (`pr#27345 <https://github.com/ceph/ceph/pull/27345>`_, Varsha Rao) -* cephfs: cephfs-shell: Remove undefined variable files in do_rm() (`pr#28710 <https://github.com/ceph/ceph/pull/28710>`_, Varsha Rao) -* cephfs: cephfs-shell: return non-zero value on error (`pr#30657 <https://github.com/ceph/ceph/pull/30657>`_, Rishabh Dave) -* cephfs: cephfs-shell: rewrite help text for put and get commands (`pr#30297 <https://github.com/ceph/ceph/pull/30297>`_, Rishabh Dave) -* cephfs: cephfs-shell: Use colorama module instead of colorize (`pr#27427 <https://github.com/ceph/ceph/pull/27427>`_, Varsha Rao) -* cephfs: ceph_volume_client: convert string to bytes object (`issue#40369 <http://tracker.ceph.com/issues/40369>`_, `issue#40800 <http://tracker.ceph.com/issues/40800>`_, `pr#28557 <https://github.com/ceph/ceph/pull/28557>`_, Rishabh Dave) -* cephfs: ceph_volume_client: decode d_name before using it (`issue#39406 <http://tracker.ceph.com/issues/39406>`_, `pr#28196 <https://github.com/ceph/ceph/pull/28196>`_, Rishabh Dave) -* cephfs: client: add client_fs mount option support (`pr#33506 <https://github.com/ceph/ceph/pull/33506>`_, Xiubo Li) -* cephfs: client: Add is_dir() check before changing directory (`pr#32637 <https://github.com/ceph/ceph/pull/32637>`_, Varsha Rao) -* cephfs: client: add procession of SEEK_HOLE and SEEK_DATA in lseek (`pr#30416 <https://github.com/ceph/ceph/pull/30416>`_, Shen Hang) -* cephfs: client: add stx_btime and stx_version in cephfs.pyx (`pr#30206 <https://github.com/ceph/ceph/pull/30206>`_, huanwen ren) -* cephfs: client: add warning when cap != in->auth_cap (`pr#30402 <https://github.com/ceph/ceph/pull/30402>`_, Shen Hang) -* cephfs: client: avoid length overflow by calling the lseek function (`pr#29626 <https://github.com/ceph/ceph/pull/29626>`_, wenpengLi) -* cephfs: Client: bump ll_ref from int32 to uint64_t (`pr#29136 <https://github.com/ceph/ceph/pull/29136>`_, Xiaoxi CHEN) -* cephfs: client: directory size always is zero lead to is_quota_bytes_approaching lose efficacy (`pr#26104 <https://github.com/ceph/ceph/pull/26104>`_, guoyong) -* cephfs: client: disallow changing fuse_default_permissions option at runtime (`pr#32315 <https://github.com/ceph/ceph/pull/32315>`_, Zhi Zhang) -* cephfs: client: dont report any vxattrs to listxattr (`pr#29339 <https://github.com/ceph/ceph/pull/29339>`_, Jeff Layton) -* cephfs: client: fix bad error handling in ll_lookup_inode (`issue#40085 <http://tracker.ceph.com/issues/40085>`_, `pr#28324 <https://github.com/ceph/ceph/pull/28324>`_, Jeff Layton) -* cephfs: client: fix bad error handling in lseek SEEK_HOLE / SEEK_DATA (`pr#33480 <https://github.com/ceph/ceph/pull/33480>`_, Jeff Layton) -* cephfs: client: fix dir.rctime and snap.btime vxattr values (`pr#28116 <https://github.com/ceph/ceph/pull/28116>`_, David Disseldorp) -* cephfs: client: fix fuse client hang because its bad session PipeConnection to mds (`issue#39305 <http://tracker.ceph.com/issues/39305>`_, `pr#27482 <https://github.com/ceph/ceph/pull/27482>`_, Guan yunfei) -* cephfs: client: fix lazyio_synchronize() to update file size (`pr#29705 <https://github.com/ceph/ceph/pull/29705>`_, Sidharth Anupkrishnan) -* cephfs: client: Fixes for missing consts SEEK_DATA and SEEK_HOLE on alpine linux (`pr#33104 <https://github.com/ceph/ceph/pull/33104>`_, Stefan Bischoff) -* cephfs: client: nfs-ganesha with cephfs client, removing dir reports not empty (`issue#40746 <http://tracker.ceph.com/issues/40746>`_, `pr#29005 <https://github.com/ceph/ceph/pull/29005>`_, Peng Xie) -* cephfs: client: optimize rename operation under different quota root (`issue#39715 <http://tracker.ceph.com/issues/39715>`_, `pr#28077 <https://github.com/ceph/ceph/pull/28077>`_, Zhi Zhang) -* cephfs: client: remove Inode.dir_contacts field and handle bad whence value to llseek gracefully (`pr#30580 <https://github.com/ceph/ceph/pull/30580>`_, Jeff Layton) -* cephfs: client: remove unused variable (`pr#31509 <https://github.com/ceph/ceph/pull/31509>`_, su_nan@inspur.com) -* cephfs: client: return -EIO when sync file which unsafe reqs have been dropped (`issue#40877 <http://tracker.ceph.com/issues/40877>`_, `pr#29167 <https://github.com/ceph/ceph/pull/29167>`_, simon gao) -* cephfs: client: set snapdirs link count to 1 (`pr#28545 <https://github.com/ceph/ceph/pull/28545>`_, Yan, Zheng) -* cephfs: client: support the fallocate() when fuse version >= 2.9 (`issue#40615 <http://tracker.ceph.com/issues/40615>`_, `pr#28831 <https://github.com/ceph/ceph/pull/28831>`_, huanwen ren) -* cephfs: Client: unlink dentry for inode with llref=0 (`issue#40960 <http://tracker.ceph.com/issues/40960>`_, `pr#29321 <https://github.com/ceph/ceph/pull/29321>`_, Xiaoxi CHEN) -* cephfs: client: _readdir_cache_cb() may use the readdir_cache already clear (`issue#41148 <http://tracker.ceph.com/issues/41148>`_, `pr#29526 <https://github.com/ceph/ceph/pull/29526>`_, huanwen ren) -* cephfs: client\xef\xbc\x9aEINVAL may be returned when offset is 0 (`pr#30312 <https://github.com/ceph/ceph/pull/30312>`_, wenpengLi) -* cephfs: Deploy ganesha daemons with vstart (`pr#31527 <https://github.com/ceph/ceph/pull/31527>`_, Varsha Rao) -* cephfs: expose snapshot creation time as new ceph.snap.btime vxattr (`pr#27077 <https://github.com/ceph/ceph/pull/27077>`_, David Disseldorp) -* cephfs: include: fix interval_set const_iterator call operator type (`pr#32185 <https://github.com/ceph/ceph/pull/32185>`_, Patrick Donnelly) -* cephfs: libcephfs: Add Tests for LazyIO (`issue#40283 <http://tracker.ceph.com/issues/40283>`_, `pr#28834 <https://github.com/ceph/ceph/pull/28834>`_, Sidharth Anupkrishnan) -* cephfs: mds : clean up data written to unsafe inodes (`pr#30969 <https://github.com/ceph/ceph/pull/30969>`_, simon gao) -* cephfs: mds : optimization functions,get_dirfrags_under, to speed up processing directories with tens of millions of files (`pr#31123 <https://github.com/ceph/ceph/pull/31123>`_, simon gao) -* cephfs: mds,mon: deprecate CephFS inline_data support (`pr#29824 <https://github.com/ceph/ceph/pull/29824>`_, Jeff Layton) -* cephfs: mds/client: inode number delegation (`pr#31817 <https://github.com/ceph/ceph/pull/31817>`_, Jeff Layton) -* cephfs: mds/FSMap: fix adjust_standby_fscid (`pr#32709 <https://github.com/ceph/ceph/pull/32709>`_, Sage Weil) -* cephfs: mds/OpenFileTable: match MAX_ITEMS_PER_OBJ to osd_deep_scrub_large_omap_object_key_threshold (`pr#31232 <https://github.com/ceph/ceph/pull/31232>`_, Vikhyat Umrao) -* cephfs: mds/server:mds: drop reconnect message from non-existent session (`issue#39026 <http://tracker.ceph.com/issues/39026>`_, `pr#27256 <https://github.com/ceph/ceph/pull/27256>`_, Shen Hang) -* cephfs: messages: make CephFS messages safe (`pr#31330 <https://github.com/ceph/ceph/pull/31330>`_, Patrick Donnelly) -* cephfs: mgr / volume: refactor [sub]volume (`issue#39969 <http://tracker.ceph.com/issues/39969>`_, `pr#28082 <https://github.com/ceph/ceph/pull/28082>`_, Venky Shankar) -* cephfs: mgr / volumes: background purge queue for subvolumes (`issue#40036 <http://tracker.ceph.com/issues/40036>`_, `pr#28003 <https://github.com/ceph/ceph/pull/28003>`_, Patrick Donnelly, Venky Shankar) -* cephfs: mgr/dashboard: CephFS class issues with strings (`pr#29353 <https://github.com/ceph/ceph/pull/29353>`_, Volker Theile) -* cephfs: mgr/volume: adapt arg passing to ServiceSpec (`pr#33687 <https://github.com/ceph/ceph/pull/33687>`_, Joshua Schmid) -* cephfs: mgr/volumes: add `mypy` support (`pr#33674 <https://github.com/ceph/ceph/pull/33674>`_, Michael Fritch) -* cephfs: mgr/volumes: check for string values in uid/gid (`pr#31961 <https://github.com/ceph/ceph/pull/31961>`_, Jos Collin) -* cephfs: mgr/volumes: cleanup leftovers from earlier purge job implementation (`pr#30886 <https://github.com/ceph/ceph/pull/30886>`_, Venky Shankar) -* cephfs: mgr/volumes: cleanup on fs create error (`pr#32459 <https://github.com/ceph/ceph/pull/32459>`_, Jos Collin) -* cephfs: mgr/volumes: clone from snapshot (`issue#24880 <http://tracker.ceph.com/issues/24880>`_, `pr#32030 <https://github.com/ceph/ceph/pull/32030>`_, Venky Shankar) -* cephfs: mgr/volumes: convert string to bytes object (`issue#39750 <http://tracker.ceph.com/issues/39750>`_, `pr#28380 <https://github.com/ceph/ceph/pull/28380>`_, Rishabh Dave) -* cephfs: mgr/volumes: drop unused size (`pr#30185 <https://github.com/ceph/ceph/pull/30185>`_, Jos Collin) -* cephfs: mgr/volumes: drop unused variable vol_name (`pr#31780 <https://github.com/ceph/ceph/pull/31780>`_, Joshua Schmid) -* cephfs: mgr/volumes: fail removing subvolume with snapshots (`issue#43645 <http://tracker.ceph.com/issues/43645>`_, `pr#32696 <https://github.com/ceph/ceph/pull/32696>`_, Venky Shankar) -* cephfs: mgr/volumes: fetch trash and clone entries without blocking volume access (`issue#44207 <http://tracker.ceph.com/issues/44207>`_, `pr#33413 <https://github.com/ceph/ceph/pull/33413>`_, Venky Shankar) -* cephfs: mgr/volumes: fix error message (`issue#40014 <http://tracker.ceph.com/issues/40014>`_, `pr#28407 <https://github.com/ceph/ceph/pull/28407>`_, Ramana Raja) -* cephfs: mgr/volumes: fix incorrect snapshot path creation (`pr#30654 <https://github.com/ceph/ceph/pull/30654>`_, Ramana Raja) -* cephfs: mgr/volumes: fix placement default value (`pr#33476 <https://github.com/ceph/ceph/pull/33476>`_, Sage Weil) -* cephfs: mgr/volumes: fix subvolume creation with quota (`issue#40152 <http://tracker.ceph.com/issues/40152>`_, `pr#28384 <https://github.com/ceph/ceph/pull/28384>`_, Ramana Raja) -* cephfs: mgr/volumes: fs subvolume resize inf command (`pr#31157 <https://github.com/ceph/ceph/pull/31157>`_, Jos Collin) -* cephfs: mgr/volumes: handle exceptions in purge thread with retry (`issue#41218 <http://tracker.ceph.com/issues/41218>`_, `issue#41219 <http://tracker.ceph.com/issues/41219>`_, `pr#29735 <https://github.com/ceph/ceph/pull/29735>`_, Venky Shankar) -* cephfs: mgr/volumes: improve volume deletion process (`pr#31762 <https://github.com/ceph/ceph/pull/31762>`_, Joshua Schmid) -* cephfs: mgr/volumes: list FS subvolumes, subvolume groups, and their snapshots (`pr#30476 <https://github.com/ceph/ceph/pull/30476>`_, Jos Collin) -* cephfs: mgr/volumes: minor fixes (`pr#29760 <https://github.com/ceph/ceph/pull/29760>`_, Ramana Raja) -* cephfs: mgr/volumes: prevent negative subvolume size (`pr#30058 <https://github.com/ceph/ceph/pull/30058>`_, Jos Collin) -* cephfs: mgr/volumes: protection for `fs volume rm` command (`pr#30407 <https://github.com/ceph/ceph/pull/30407>`_, Jos Collin) -* cephfs: mgr/volumes: refactor dir handle cleanup (`pr#30887 <https://github.com/ceph/ceph/pull/30887>`_, Jos Collin) -* cephfs: mgr/volumes: remove stale subvolume module (`pr#32645 <https://github.com/ceph/ceph/pull/32645>`_, Venky Shankar) -* cephfs: mgr/volumes: return string type to ceph-manager (`pr#30451 <https://github.com/ceph/ceph/pull/30451>`_, Venky Shankar) -* cephfs: mgr/volumes: sync inode attributes for cloned subvolumes (`issue#43965 <http://tracker.ceph.com/issues/43965>`_, `pr#33120 <https://github.com/ceph/ceph/pull/33120>`_, Venky Shankar) -* cephfs: mgr/volumes: uid, gid for subvolume create and subvolumegroup create commands (`pr#30336 <https://github.com/ceph/ceph/pull/30336>`_, Jos Collin) -* cephfs: mgr/volumes: unregister job upon async threads exception (`issue#44293 <http://tracker.ceph.com/issues/44293>`_, `pr#33547 <https://github.com/ceph/ceph/pull/33547>`_, Venky Shankar) -* cephfs: mgr/volumes: versioned subvolume provisioning (`pr#31763 <https://github.com/ceph/ceph/pull/31763>`_, Venky Shankar) -* cephfs: mon,mds: map mds daemons to a particular fs (`pr#32015 <https://github.com/ceph/ceph/pull/32015>`_, Sage Weil) -* cephfs: mon/MDSMonitor: use stringstream instead of dout for mds repaired (`issue#40472 <http://tracker.ceph.com/issues/40472>`_, `pr#28683 <https://github.com/ceph/ceph/pull/28683>`_, Zhi Zhang) -* cephfs: mon/MDSMonitor: warn when creating fs with default EC data pool (`pr#31494 <https://github.com/ceph/ceph/pull/31494>`_, Patrick Donnelly) -* cephfs: mount.ceph.c: do not pass nofail to the kernel (`pr#26992 <https://github.com/ceph/ceph/pull/26992>`_, Kenneth Waegeman) -* cephfs: mount.ceph: give a hint message when no mds is up or cluster is laggy (`pr#32164 <https://github.com/ceph/ceph/pull/32164>`_, Xiubo Li) -* cephfs: mount.ceph: new mount option alias -- translate fs= option to mds_namespace= (`pr#33491 <https://github.com/ceph/ceph/pull/33491>`_, Xiubo Li) -* cephfs: mount.ceph: properly handle -o strictatime (`pr#29518 <https://github.com/ceph/ceph/pull/29518>`_, Jeff Layton) -* cephfs: mount.ceph: remove arbitrary limit on size of name= option (`pr#32706 <https://github.com/ceph/ceph/pull/32706>`_, Jeff Layton) -* cephfs: mount: fix the debug log when keyring getting secret failed (`pr#33499 <https://github.com/ceph/ceph/pull/33499>`_, Xiubo Li) -* cephfs: octopus: Add FS subvolume clone cancel (`issue#44208 <http://tracker.ceph.com/issues/44208>`_, `pr#34018 <https://github.com/ceph/ceph/pull/34018>`_, Venky Shankar) -* cephfs: osdc/objecter: Fix last_sent in scientific format and add age to ops (`pr#29818 <https://github.com/ceph/ceph/pull/29818>`_, Varsha Rao) -* cephfs: propagate ll_releasedir errors (`pr#32548 <https://github.com/ceph/ceph/pull/32548>`_, David Disseldorp) -* cephfs: pybind / cephfs: remove static typing in LibCephFS.chown (`issue#42923 <http://tracker.ceph.com/issues/42923>`_, `pr#31756 <https://github.com/ceph/ceph/pull/31756>`_, Venky Shankar) -* cephfs: pybind/cephfs: Modification to error message (`pr#28628 <https://github.com/ceph/ceph/pull/28628>`_, Varsha Rao) -* cephfs: pybind/mgr: add cephfs subvolumes module (`issue#39610 <http://tracker.ceph.com/issues/39610>`_, `pr#27594 <https://github.com/ceph/ceph/pull/27594>`_, Ramana Raja) -* cephfs: pybind/test_volume_client: print python version correctly (`issue#40184 <http://tracker.ceph.com/issues/40184>`_, `pr#28221 <https://github.com/ceph/ceph/pull/28221>`_, Lianne) -* cephfs: qa/cephfs: fix test_evict_client (`pr#28411 <https://github.com/ceph/ceph/pull/28411>`_, Yan, Zheng) -* cephfs: qa/cephfs: make filelock_interrupt.py work with python3 (`pr#32741 <https://github.com/ceph/ceph/pull/32741>`_, Yan, Zheng) -* cephfs: qa/cephfs: test case for auto reconnect after blacklisted (`pr#31200 <https://github.com/ceph/ceph/pull/31200>`_, Yan, Zheng) -* cephfs: qa/suites/fs/multifs/tasks/failover.yaml: disable RECENT_CRASH (`pr#29363 <https://github.com/ceph/ceph/pull/29363>`_, Sage Weil) -* cephfs: qa/suites/fs: mon_thrash test for fs (`issue#17309 <http://tracker.ceph.com/issues/17309>`_, `pr#27073 <https://github.com/ceph/ceph/pull/27073>`_, Jos Collin) -* cephfs: qa/tasks/cephfs: os.write takes bytes, not str (`pr#32359 <https://github.com/ceph/ceph/pull/32359>`_, Sage Weil) -* cephfs: qa/tasks: add remaining tests for fs volume (`pr#31884 <https://github.com/ceph/ceph/pull/31884>`_, Jos Collin) -* cephfs: qa/tasks: Better handling of thrasher names and __init__ calls (`pr#31207 <https://github.com/ceph/ceph/pull/31207>`_, Jos Collin) -* cephfs: qa/tasks: check if fs mounted in umount_wait (`pr#30553 <https://github.com/ceph/ceph/pull/30553>`_, Jos Collin) -* cephfs: qa/tasks: Fix AttributeError: cant set attribute (`pr#31428 <https://github.com/ceph/ceph/pull/31428>`_, Jos Collin) -* cephfs: qa/tasks: upgrade the check for -c sudo option in vstart_runner.py (`issue#39385 <http://tracker.ceph.com/issues/39385>`_, `pr#28199 <https://github.com/ceph/ceph/pull/28199>`_, Rishabh Dave) -* cephfs: qa/vstart_runner.py: add more options (`pr#29906 <https://github.com/ceph/ceph/pull/29906>`_, Rishabh Dave) -* cephfs: qa: add debugging failed osd-release setting (`pr#29715 <https://github.com/ceph/ceph/pull/29715>`_, Patrick Donnelly) -* cephfs: qa: add upgrade test for volume upgrade from legacy (`pr#33636 <https://github.com/ceph/ceph/pull/33636>`_, Patrick Donnelly) -* cephfs: qa: allow client mount to reset fully (`issue#42213 <http://tracker.ceph.com/issues/42213>`_, `pr#30986 <https://github.com/ceph/ceph/pull/30986>`_, Venky Shankar) -* cephfs: qa: avoid subtree rep in test_version_splitting (`pr#33078 <https://github.com/ceph/ceph/pull/33078>`_, Patrick Donnelly) -* cephfs: qa: build v5.4 kernel (`pr#32763 <https://github.com/ceph/ceph/pull/32763>`_, Patrick Donnelly) -* cephfs: qa: decouple session map test from simple msgr (`issue#38803 <http://tracker.ceph.com/issues/38803>`_, `pr#27415 <https://github.com/ceph/ceph/pull/27415>`_, Patrick Donnelly) -* cephfs: qa: define centos version for fs:verify (`pr#32535 <https://github.com/ceph/ceph/pull/32535>`_, Patrick Donnelly) -* cephfs: qa: detect RHEL8 for yum package installation (`pr#32507 <https://github.com/ceph/ceph/pull/32507>`_, Patrick Donnelly) -* cephfs: qa: do not check pg count for new data_isolated volume (`pr#31095 <https://github.com/ceph/ceph/pull/31095>`_, Patrick Donnelly) -* cephfs: qa: fix malformed suite config (`pr#29431 <https://github.com/ceph/ceph/pull/29431>`_, Patrick Donnelly) -* cephfs: qa: fix output check to not be sensitive to debugging (`pr#32163 <https://github.com/ceph/ceph/pull/32163>`_, Patrick Donnelly) -* cephfs: qa: fix testing kernel branch link (`pr#32854 <https://github.com/ceph/ceph/pull/32854>`_, Patrick Donnelly) -* cephfs: qa: fix various py3 cephfs qa bugs (`pr#32467 <https://github.com/ceph/ceph/pull/32467>`_, Patrick Donnelly) -* cephfs: qa: fix various py3 cephfs qa bugs x2 (`pr#32533 <https://github.com/ceph/ceph/pull/32533>`_, Patrick Donnelly) -* cephfs: qa: fs Ignore ceph.dir.pin: No such attribute errors in getfattr tests for old kernel client (`pr#27377 <https://github.com/ceph/ceph/pull/27377>`_, Sidharth Anupkrishnan) -* cephfs: qa: fs/upgrade test fixes and cephfs feature bit updates for Octopus/Nautilus (`issue#39078 <http://tracker.ceph.com/issues/39078>`_, `issue#39077 <http://tracker.ceph.com/issues/39077>`_, `issue#39020 <http://tracker.ceph.com/issues/39020>`_, `pr#27303 <https://github.com/ceph/ceph/pull/27303>`_, Patrick Donnelly) -* cephfs: qa: have kclient tests use new mount.ceph functionality (`pr#30462 <https://github.com/ceph/ceph/pull/30462>`_, Jeff Layton) -* cephfs: qa: ignore expected MDS_CLIENT_LATE_RELEASE warning (`issue#40968 <http://tracker.ceph.com/issues/40968>`_, `pr#29338 <https://github.com/ceph/ceph/pull/29338>`_, Patrick Donnelly) -* cephfs: qa: ignore RECENT_CRASH for multimds snapshot testing (`pr#29911 <https://github.com/ceph/ceph/pull/29911>`_, Patrick Donnelly) -* cephfs: qa: ignore slow ops for ffsb workunit (`pr#32668 <https://github.com/ceph/ceph/pull/32668>`_, Patrick Donnelly) -* cephfs: qa: ignore trimmed cache items for dead cache drop (`pr#32644 <https://github.com/ceph/ceph/pull/32644>`_, Patrick Donnelly) -* cephfs: qa: install some dependencies for xfstests (`pr#32478 <https://github.com/ceph/ceph/pull/32478>`_, Patrick Donnelly) -* cephfs: qa: only restart MDS between tests (`pr#32532 <https://github.com/ceph/ceph/pull/32532>`_, Patrick Donnelly) -* cephfs: qa: remove requirement on simple msgr (`issue#39079 <http://tracker.ceph.com/issues/39079>`_, `pr#27301 <https://github.com/ceph/ceph/pull/27301>`_, Patrick Donnelly) -* cephfs: qa: rename kcephfs distro overrides (`pr#32639 <https://github.com/ceph/ceph/pull/32639>`_, Patrick Donnelly) -* cephfs: qa: save MDS epoch barrier (`pr#32642 <https://github.com/ceph/ceph/pull/32642>`_, Patrick Donnelly) -* cephfs: qa: sleep briefly after resetting kclient (`pr#29388 <https://github.com/ceph/ceph/pull/29388>`_, Patrick Donnelly) -* cephfs: qa: specify random distros in multimds (`pr#33080 <https://github.com/ceph/ceph/pull/33080>`_, Patrick Donnelly) -* cephfs: qa: tolerate ECONNRESET errcode during logrotate (`issue#41800 <http://tracker.ceph.com/issues/41800>`_, `pr#30809 <https://github.com/ceph/ceph/pull/30809>`_, Venky Shankar) -* cephfs: qa: update kclient testing to RHEL 7.6 (`pr#26662 <https://github.com/ceph/ceph/pull/26662>`_, Patrick Donnelly) -* cephfs: qa: use -D_GNU_SOURCE when compiling fsync-tester.c (`pr#32480 <https://github.com/ceph/ceph/pull/32480>`_, Patrick Donnelly) -* cephfs: qa: use hard_reset to reboot kclient (`issue#37681 <http://tracker.ceph.com/issues/37681>`_, `pr#28825 <https://github.com/ceph/ceph/pull/28825>`_, Patrick Donnelly) -* cephfs: qa: use mimic-O upgrade process (`pr#27731 <https://github.com/ceph/ceph/pull/27731>`_, Patrick Donnelly) -* cephfs: qa: use small default pg count for CephFS pools (`pr#30816 <https://github.com/ceph/ceph/pull/30816>`_, Patrick Donnelly) -* cephfs: qa: wait for MDS to come back after removing it (`issue#40967 <http://tracker.ceph.com/issues/40967>`_, `pr#29336 <https://github.com/ceph/ceph/pull/29336>`_, Patrick Donnelly) -* cephfs: qa: whitelist Error recovering journal for cephfs-data-scan (`pr#30971 <https://github.com/ceph/ceph/pull/30971>`_, Yan, Zheng) -* cephfs: qa: whitelist TOO_FEW_PGS during Mimic deploy (`pr#31063 <https://github.com/ceph/ceph/pull/31063>`_, Patrick Donnelly) -* cephfs: Resolve a memory leak in cephfs/Resetter.cc (`pr#29302 <https://github.com/ceph/ceph/pull/29302>`_, XiaoGuoDong2019) -* cephfs: src/common: fix help text for echo option of cephfs-shell (`pr#33285 <https://github.com/ceph/ceph/pull/33285>`_, Rishabh Dave) -* cephfs: stop: Cleanly umount cephFS volumes (`pr#32024 <https://github.com/ceph/ceph/pull/32024>`_, Kotresh HR) -* cephfs: test/{fs,cephfs}: Get libcephfs and cephfs to compile with FreeBSD (`pr#30505 <https://github.com/ceph/ceph/pull/30505>`_, Willem Jan Withagen) -* cephfs: test: extend `fs subvolume` test to cover new interfaces (`issue#39949 <http://tracker.ceph.com/issues/39949>`_, `pr#27856 <https://github.com/ceph/ceph/pull/27856>`_, Venky Shankar) -* cephfs: test: use distinct subvolume/group/snapshot names (`issue#42646 <http://tracker.ceph.com/issues/42646>`_, `pr#31418 <https://github.com/ceph/ceph/pull/31418>`_, Venky Shankar) -* cephfs: test_volumes: fix _verify_clone_attrs call (`pr#33788 <https://github.com/ceph/ceph/pull/33788>`_, Ramana Raja) -* cephfs: test_volume_client: declare only one default for python version (`issue#40460 <http://tracker.ceph.com/issues/40460>`_, `pr#28194 <https://github.com/ceph/ceph/pull/28194>`_, Rishabh Dave) -* cephfs: test_volume_client: fix test_put_object_versioned() (`issue#39405 <http://tracker.ceph.com/issues/39405>`_, `issue#39510 <http://tracker.ceph.com/issues/39510>`_, `pr#28692 <https://github.com/ceph/ceph/pull/28692>`_, Rishabh Dave) -* cephfs: test_volume_client: simplify test_get_authorized_ids() (`pr#28171 <https://github.com/ceph/ceph/pull/28171>`_, Rishabh Dave) -* cephfs: tools/cephfs: make cephfs-data-scan scan_links fix dentrys first (`pr#31680 <https://github.com/ceph/ceph/pull/31680>`_, Yan, Zheng) -* cephfs: Trivial comment and cleanup fixes for cephfs (`pr#27199 <https://github.com/ceph/ceph/pull/27199>`_, Jeff Layton) -* cephfs: vstart: add an alias for cephfs-shell to vstart_environment.sh (`pr#27437 <https://github.com/ceph/ceph/pull/27437>`_, Jeff Layton) -* cephfs: vstart: generate environment script suitable for sourcing (`pr#27198 <https://github.com/ceph/ceph/pull/27198>`_, Jeff Layton) -* cephfs: vstart_runner: allow the use of it with kernel mounts (`pr#30463 <https://github.com/ceph/ceph/pull/30463>`_, Jeff Layton) -* ceph_argparse: increment matchcnt on kwargs (`pr#33004 <https://github.com/ceph/ceph/pull/33004>`_, Matthew Oliver) -* check rdma configuration and fix some logic problem (`pr#28344 <https://github.com/ceph/ceph/pull/28344>`_, Changcheng Liu) -* client/Client : Fix sign compare compiler warning (`pr#30719 <https://github.com/ceph/ceph/pull/30719>`_, Prashant D) -* cls/queue: fix data corruption in urgent data (`pr#33686 <https://github.com/ceph/ceph/pull/33686>`_, Yuval Lifshitz) -* cmake: support parallel build for rocksd (`pr#31781 <https://github.com/ceph/ceph/pull/31781>`_, Deepika Upadhyay) -* cmake: add add_tox_test() (`pr#29446 <https://github.com/ceph/ceph/pull/29446>`_, Kefu Chai) -* cmake: add cython_cephfs to vstart target (`pr#28876 <https://github.com/ceph/ceph/pull/28876>`_, Kefu Chai) -* cmake: Add dpdk numa support (`pr#31841 <https://github.com/ceph/ceph/pull/31841>`_, Chunsong Feng, Hu Ye) -* cmake: Allow cephfs and ceph-mds to be build when building on FreeBSD (`pr#30494 <https://github.com/ceph/ceph/pull/30494>`_, Willem Jan Withagen) -* cmake: avoid rebuilding extensions, and using python-config (`pr#28920 <https://github.com/ceph/ceph/pull/28920>`_, Kefu Chai) -* cmake: boost fixes for ARM 32 bit (`pr#25729 <https://github.com/ceph/ceph/pull/25729>`_, Daniel Glaser) -* cmake: bump libceph-common SO version for compliance (`pr#30976 <https://github.com/ceph/ceph/pull/30976>`_, Nathan Cutler) -* cmake: check for MAJOR.MINOR version of python3 (`pr#27383 <https://github.com/ceph/ceph/pull/27383>`_, Kefu Chai, Boris Ranto) -* cmake: check for unaligned access (`pr#28936 <https://github.com/ceph/ceph/pull/28936>`_, Kefu Chai) -* cmake: check version of librdkafka (`pr#32237 <https://github.com/ceph/ceph/pull/32237>`_, Kefu Chai) -* cmake: cleanups (`pr#28252 <https://github.com/ceph/ceph/pull/28252>`_, Kefu Chai) -* cmake: cleanups (`pr#33500 <https://github.com/ceph/ceph/pull/33500>`_, Kefu Chai) -* cmake: compile crimson-auth with crimson::cflags (`pr#33296 <https://github.com/ceph/ceph/pull/33296>`_, Kefu Chai) -* cmake: dashboard: enable frontend on arm64 (`pr#30958 <https://github.com/ceph/ceph/pull/30958>`_, Kefu Chai) -* cmake: define mgr_cap_obj library when WITH_MGR=OFF (`pr#31326 <https://github.com/ceph/ceph/pull/31326>`_, Casey Bodley) -* cmake: detect librt for POSIX time functions (`pr#31543 <https://github.com/ceph/ceph/pull/31543>`_, Kefu Chai) -* cmake: detect linker support (`pr#30781 <https://github.com/ceph/ceph/pull/30781>`_, Kefu Chai) -* cmake: Do a debug build by default (`pr#30799 <https://github.com/ceph/ceph/pull/30799>`_, Brad Hubbard) -* cmake: do not assume ${CMAKE_GENERATOR} == make (`pr#27089 <https://github.com/ceph/ceph/pull/27089>`_, Kefu Chai) -* cmake: do not include ${CMAKE_SOURCE_DIR}/src/fmt/include (`pr#31761 <https://github.com/ceph/ceph/pull/31761>`_, Kefu Chai) -* cmake: do not include global_context.cc multiple times (`pr#32607 <https://github.com/ceph/ceph/pull/32607>`_, Kefu Chai) -* cmake: do not link against unused libs (`pr#33247 <https://github.com/ceph/ceph/pull/33247>`_, Kefu Chai) -* cmake: do not use CMP0074 unless it is supported (`pr#31958 <https://github.com/ceph/ceph/pull/31958>`_, Kefu Chai) -* cmake: do not use CMP0093 unless it is supported (`pr#31960 <https://github.com/ceph/ceph/pull/31960>`_, Kefu Chai) -* cmake: exclude unittest_alloc_aging from all (`pr#33466 <https://github.com/ceph/ceph/pull/33466>`_, Kefu Chai) -* cmake: Fix build against ncurses with separate libtinfo (`pr#27443 <https://github.com/ceph/ceph/pull/27443>`_, Lars Wendler) -* cmake: Fix unaligned check on big-endian systems (`pr#30362 <https://github.com/ceph/ceph/pull/30362>`_, Ulrich Weigand) -* cmake: fix WITH_UBSAN (`pr#28725 <https://github.com/ceph/ceph/pull/28725>`_, Casey Bodley) -* cmake: Improve test for 16-byte atomic support on IBM Z (`pr#32802 <https://github.com/ceph/ceph/pull/32802>`_, Ulrich Weigand) -* cmake: let vstart depend on radosgwd (`pr#32564 <https://github.com/ceph/ceph/pull/32564>`_, Kefu Chai) -* cmake: link ceph-fuse against librt (`pr#31531 <https://github.com/ceph/ceph/pull/31531>`_, Yong Wang) -* cmake: move crimson-crush to crimson/ (`pr#33481 <https://github.com/ceph/ceph/pull/33481>`_, Kefu Chai) -* cmake: one run_tox.sh to rule them all (`pr#29457 <https://github.com/ceph/ceph/pull/29457>`_, Kefu Chai) -* cmake: pass arguments to crimson tests (`pr#30655 <https://github.com/ceph/ceph/pull/30655>`_, Kefu Chai) -* cmake: pmem/pmdk changes to cmake (`pr#28802 <https://github.com/ceph/ceph/pull/28802>`_, Scott Peterson, Xiaoyan Li) -* cmake: remove cython 0.29s subinterpreter check during install (`pr#27067 <https://github.com/ceph/ceph/pull/27067>`_, Tim Serong) -* cmake: Removed unittest_alloc_aging from make check (`pr#33397 <https://github.com/ceph/ceph/pull/33397>`_, Adam Kupczyk) -* cmake: require CMake v3.10.2 (`pr#29291 <https://github.com/ceph/ceph/pull/29291>`_, Kefu Chai) -* cmake: require RocksDB 5.14 or higher (`pr#29930 <https://github.com/ceph/ceph/pull/29930>`_, Ilsoo Byun) -* cmake: revert librados_tp.so version from 3 to 2 (`issue#39291 <http://tracker.ceph.com/issues/39291>`_, `pr#27593 <https://github.com/ceph/ceph/pull/27593>`_, Nathan Cutler) -* cmake: rewrite Findgenl to support components argument (`pr#28460 <https://github.com/ceph/ceph/pull/28460>`_, Kefu Chai) -* cmake: s/bortli_libs/brotli_libs/ (`pr#30374 <https://github.com/ceph/ceph/pull/30374>`_, Kefu Chai) -* cmake: selectively rewrite install rpath (`pr#30028 <https://github.com/ceph/ceph/pull/30028>`_, Kefu Chai) -* cmake: set empty INSTALL_RPATH on crypto shared libs (`issue#40398 <http://tracker.ceph.com/issues/40398>`_, `pr#28593 <https://github.com/ceph/ceph/pull/28593>`_, Nathan Cutler) -* cmake: set empty RPATH for some test executables (`pr#29922 <https://github.com/ceph/ceph/pull/29922>`_, Nathan Cutler) -* cmake: set empty-string RPATH for ceph-osd (`issue#40295 <http://tracker.ceph.com/issues/40295>`_, `pr#28508 <https://github.com/ceph/ceph/pull/28508>`_, Nathan Cutler) -* cmake: should expose ${C-ARES_BINARY_DIR} from c-ares (`pr#33256 <https://github.com/ceph/ceph/pull/33256>`_, Kefu Chai) -* cmake: silence messages when cppcheck/IWYU is not found (`pr#32140 <https://github.com/ceph/ceph/pull/32140>`_, Kefu Chai) -* cmake: support `Seastar_DPDK=ON` option (`pr#31110 <https://github.com/ceph/ceph/pull/31110>`_, Kefu Chai) -* cmake: Test for 16-byte atomic support on IBM Z (`pr#30638 <https://github.com/ceph/ceph/pull/30638>`_, Ulrich Weigand) -* cmake: update FindBoost.cmake (`pr#29396 <https://github.com/ceph/ceph/pull/29396>`_, Willem Jan Withagen) -* cmake: update FindBoost.cmake for 1.71 (`pr#31317 <https://github.com/ceph/ceph/pull/31317>`_, Willem Jan Withagen) -* cmake: Update pmdk version to 1.7 (`pr#32693 <https://github.com/ceph/ceph/pull/32693>`_, Yin, Congmin) -* cmake: update SPDK to build with GCC-9 (`pr#28507 <https://github.com/ceph/ceph/pull/28507>`_, Kefu Chai) -* cmake: use BUILD_ALWAYS for rebuilding external project (`pr#28984 <https://github.com/ceph/ceph/pull/28984>`_, Kefu Chai) -* cmake: use GNU linker on FreeBSD (`pr#30621 <https://github.com/ceph/ceph/pull/30621>`_, Willem Jan Withagen) -* cmake: use latest FindPython\\*.cmake (`pr#29100 <https://github.com/ceph/ceph/pull/29100>`_, Kefu Chai) -* cmake: use python2 by default (`pr#29148 <https://github.com/ceph/ceph/pull/29148>`_, Kefu Chai) -* cmake: use StdFilesystem::filesystem instead of stdc++fs (`pr#27149 <https://github.com/ceph/ceph/pull/27149>`_, Willem Jan Withagen) -* cmake: workaround of false alarm from ubsan (`pr#27094 <https://github.com/ceph/ceph/pull/27094>`_, Kefu Chai) -* CMakeLists.txt: fix typo in error message (`pr#28795 <https://github.com/ceph/ceph/pull/28795>`_, Kefu Chai) -* codeowners: Add ceph2.py to @ceph/orchestrators (`pr#32131 <https://github.com/ceph/ceph/pull/32131>`_, Sebastian Wagner) -* common,core,mon: src/: drop cct from cmd_getval() (`pr#33010 <https://github.com/ceph/ceph/pull/33010>`_, Kefu Chai) -* common,core: common, auth: use boost::spirit to parse ceph.conf, escape quotes in exported auths (`issue#22227 <http://tracker.ceph.com/issues/22227>`_, `pr#28634 <https://github.com/ceph/ceph/pull/28634>`_, Kefu Chai, Gu Zhongyan) -* common,core: common,mgr,osd: pass string_view as name (`pr#33167 <https://github.com/ceph/ceph/pull/33167>`_, Kefu Chai) -* common,core: common,osd: add hash algorithms for dedup fingerprint (`pr#28254 <https://github.com/ceph/ceph/pull/28254>`_, Myoungwon Oh) -* common,core: include/cpp-btree: use the same type when allocate/deallocate (`pr#33638 <https://github.com/ceph/ceph/pull/33638>`_, Kefu Chai) -* common,core: message,mgr: drop MessageFactory and friends and use ref_t<> in mgr (`pr#27592 <https://github.com/ceph/ceph/pull/27592>`_, Patrick Donnelly, Kefu Chai) -* common,core: Remove dependence on `using namespace`: Build of common through osdc/Objecter.cc (`pr#27255 <https://github.com/ceph/ceph/pull/27255>`_, Adam C. Emerson) -* common,mgr: vstart.sh: set prometheus port for each mgr (`pr#33698 <https://github.com/ceph/ceph/pull/33698>`_, Alfonso Mart\xc3\xadnez) -* common,mon: common/options: make mon_clean_pg_upmaps_per_chunk unsigned (`pr#28509 <https://github.com/ceph/ceph/pull/28509>`_, Kefu Chai) -* common,rbd: common/ceph_context: avoid unnecessary wait during service thread shutdown (`pr#30947 <https://github.com/ceph/ceph/pull/30947>`_, Jason Dillaman) -* common,rgw: common/Formatter: escape printed buffer in XMLFormatter::dump_format_va() (`issue#38121 <http://tracker.ceph.com/issues/38121>`_, `pr#26220 <https://github.com/ceph/ceph/pull/26220>`_, ashitakasam) -* common,rgw: rgw/OutputDataSocket: actually discard data on full buffer (`issue#40178 <http://tracker.ceph.com/issues/40178>`_, `pr#28415 <https://github.com/ceph/ceph/pull/28415>`_, Matt Benjamin) -* common,tests: python-common: Add mypy testing (`pr#31071 <https://github.com/ceph/ceph/pull/31071>`_, Sebastian Wagner) -* common,tests: test/test_mempool: test accounting for btree_map (`pr#33621 <https://github.com/ceph/ceph/pull/33621>`_, Adam Kupczyk) -* common,tools: src/common: add rabin chunking for dedup (`pr#26730 <https://github.com/ceph/ceph/pull/26730>`_, Myoungwon Oh, Hsuan-Heng, Wu) -* common,tools: vstart.sh: enable creating multiple OSDs backed by spdk backend (`pr#27841 <https://github.com/ceph/ceph/pull/27841>`_, Richael Zhuang) -* common,tools: vstart.sh: enable nfs-ganesha mgmt. in dashboard (`pr#33691 <https://github.com/ceph/ceph/pull/33691>`_, Alfonso Mart\xc3\xadnez) -* common/config_values: set seastar logging level per that of ceph (`pr#28792 <https://github.com/ceph/ceph/pull/28792>`_, Kefu Chai) -* common/options: remove unused ms_msgr2\\_{sign,encrypt}_messages (`pr#31818 <https://github.com/ceph/ceph/pull/31818>`_, Ilya Dryomov) -* common: crimson/osd: add --mkkey support (`pr#28534 <https://github.com/ceph/ceph/pull/28534>`_, Kefu Chai) -* common: .gitignore: ignore /src/python-common/build (`pr#32967 <https://github.com/ceph/ceph/pull/32967>`_, Alfonso Mart\xc3\xadnez) -* common: add --log-early command line option (`pr#27419 <https://github.com/ceph/ceph/pull/27419>`_, Sage Weil) -* common: add bool log_to_file option (`pr#27044 <https://github.com/ceph/ceph/pull/27044>`_, Sage Weil) -* common: add comment about pod memory requests/limits (`pr#29331 <https://github.com/ceph/ceph/pull/29331>`_, Patrick Donnelly) -* common: add iterator-based string splitter (`pr#33696 <https://github.com/ceph/ceph/pull/33696>`_, Casey Bodley) -* common: add ref header (`pr#29119 <https://github.com/ceph/ceph/pull/29119>`_, Patrick Donnelly) -* common: auth/cephx: always initialize local variables (`pr#31154 <https://github.com/ceph/ceph/pull/31154>`_, Kefu Chai) -* common: auth/krb: fix Kerberos compile error (`issue#39948 <http://tracker.ceph.com/issues/39948>`_, `pr#28113 <https://github.com/ceph/ceph/pull/28113>`_, huangjun) -* common: avoid use of size_t in options (`pr#28277 <https://github.com/ceph/ceph/pull/28277>`_, James Page) -* common: blobhash.h: remove extra [[fallthrough]] (`pr#28270 <https://github.com/ceph/ceph/pull/28270>`_, Thomas Johnson) -* common: blobhash: do not use cast for unaligned access (`pr#28099 <https://github.com/ceph/ceph/pull/28099>`_, Kefu Chai) -* common: buffer, denc: more constness (`pr#27767 <https://github.com/ceph/ceph/pull/27767>`_, Kefu Chai) -* common: buffer,crypto,tools: extract digest methods out of bufferlist (`pr#28486 <https://github.com/ceph/ceph/pull/28486>`_, Kefu Chai) -* common: buffer.h: remove list::iterator_impl::advance(size_t) (`pr#28278 <https://github.com/ceph/ceph/pull/28278>`_, Kefu Chai) -* common: ceph.in: use sys._exit when we dont shut down (`pr#33950 <https://github.com/ceph/ceph/pull/33950>`_, Sage Weil) -* common: ceph_argparse: put args from env before existing ones (`pr#33243 <https://github.com/ceph/ceph/pull/33243>`_, Kefu Chai) -* common: Clang requires a default constructor, but it can be empty (`issue#39561 <http://tracker.ceph.com/issues/39561>`_, `pr#27844 <https://github.com/ceph/ceph/pull/27844>`_, Willem Jan Withagen) -* common: clean up CLUSTER_CREATE and CREATE options (`pr#31584 <https://github.com/ceph/ceph/pull/31584>`_, Sage Weil) -* common: common,crimson: fixes to compile with clang and libc++ (`pr#32485 <https://github.com/ceph/ceph/pull/32485>`_, Kefu Chai) -* common: common,crimson: supporting admin-socket commands (`pr#32174 <https://github.com/ceph/ceph/pull/32174>`_, Ronen Friedman, Kefu Chai) -* common: common,log: use ISO 8601 datetime format (`pr#27799 <https://github.com/ceph/ceph/pull/27799>`_, Sage Weil, Casey Bodley) -* common: common,os: address string truncated warnings from GCC-9 (`pr#28289 <https://github.com/ceph/ceph/pull/28289>`_, Kefu Chai) -* common: common/admin_socket: Added printing of error message (`pr#33380 <https://github.com/ceph/ceph/pull/33380>`_, Adam Kupczyk) -* common: common/bl: carry the bufferlist::_carriage over std::moves (`pr#32937 <https://github.com/ceph/ceph/pull/32937>`_, Radoslaw Zarzynski) -* common: common/bl: fix memory corruption in bufferlist::claim_append() (`pr#32823 <https://github.com/ceph/ceph/pull/32823>`_, Radoslaw Zarzynski) -* common: common/bl: fix the dangling last_p issue (`pr#32702 <https://github.com/ceph/ceph/pull/32702>`_, Radoslaw Zarzynski) -* common: common/bloom_filter: Fix endian issues (`pr#30527 <https://github.com/ceph/ceph/pull/30527>`_, Ulrich Weigand) -* common: common/ceph_time: tolerate mono time going backwards (`pr#33699 <https://github.com/ceph/ceph/pull/33699>`_, Sage Weil) -* common: common/config: cleanups (`pr#33362 <https://github.com/ceph/ceph/pull/33362>`_, Jianpeng Ma) -* common: common/config: fix lack of normalize_key_name() apply (`pr#33558 <https://github.com/ceph/ceph/pull/33558>`_, Igor Fedotov) -* common: common/config: Remove unused code (`pr#28940 <https://github.com/ceph/ceph/pull/28940>`_, Jianpeng Ma) -* common: common/Finisher: remove some lock acquisitions (`pr#29495 <https://github.com/ceph/ceph/pull/29495>`_, Igor Fedotov) -* common: common/options: change default erasure-code-profile to k=2 m=2 (`pr#27656 <https://github.com/ceph/ceph/pull/27656>`_, Sage Weil) -* common: common/pick_address.cc: silence GCC warning (`pr#32025 <https://github.com/ceph/ceph/pull/32025>`_, Kefu Chai) -* common: common/secret.c: dont pass uninitialized stack data to the kernel (`pr#30675 <https://github.com/ceph/ceph/pull/30675>`_, Ilya Dryomov) -* common: common/thread: Fix race condition in make_named_thread (`pr#31057 <https://github.com/ceph/ceph/pull/31057>`_, Adam C. Emerson) -* common: common/util: use ifstream to read from /proc files (`pr#32630 <https://github.com/ceph/ceph/pull/32630>`_, Kefu Chai) -* common: common/WorkQueue: narrow ThreadPool::_lock in func worker (`pr#22411 <https://github.com/ceph/ceph/pull/22411>`_, Jianpeng Ma) -* common: crimson, common: introduce ceph::atomic and apply it on bufferlist (`pr#32766 <https://github.com/ceph/ceph/pull/32766>`_, Radoslaw Zarzynski) -* common: crimson, common: RefCountedObj doesnt use atomics in Seastar builds (`pr#28085 <https://github.com/ceph/ceph/pull/28085>`_, Radoslaw Zarzynski) -* common: crimson/osd: implement readable/lease related methods (`pr#30639 <https://github.com/ceph/ceph/pull/30639>`_, Kefu Chai) -* common: crimson/osd: Message has non-null ref to SocketConnection now (`pr#30124 <https://github.com/ceph/ceph/pull/30124>`_, Radoslaw Zarzynski) -* common: crimson: cleanups (`pr#33797 <https://github.com/ceph/ceph/pull/33797>`_, Kefu Chai) -* common: crimson: cleanups for clang build (`pr#32605 <https://github.com/ceph/ceph/pull/32605>`_, Kefu Chai) -* common: Cycles: Add support for IBM Z (`pr#30874 <https://github.com/ceph/ceph/pull/30874>`_, Ulrich Weigand) -* common: default pg_autoscale_mode=on for new pools (`pr#30112 <https://github.com/ceph/ceph/pull/30112>`_, Sage Weil) -* common: default pg_autoscale_mode=on for new pools (`pr#30475 <https://github.com/ceph/ceph/pull/30475>`_, Sage Weil) -* common: denc: fix build error by calling global snprintf (`pr#27572 <https://github.com/ceph/ceph/pull/27572>`_, Changcheng Liu) -* common: denc: slightly optimize container_base::bound_encode (`pr#24636 <https://github.com/ceph/ceph/pull/24636>`_, Radoslaw Zarzynski, Kefu Chai) -* common: denc: support enums wider than 8 bits (`pr#33673 <https://github.com/ceph/ceph/pull/33673>`_, Casey Bodley) -* common: dmclock: pick up fix to replace uint (`pr#28829 <https://github.com/ceph/ceph/pull/28829>`_, Kefu Chai) -* common: drop sharing of buffer::raw outside bufferlist (`pr#32806 <https://github.com/ceph/ceph/pull/32806>`_, Radoslaw Zarzynski) -* common: encode for std::list<T> doesnt use bl::copy_in() anymore (`pr#32785 <https://github.com/ceph/ceph/pull/32785>`_, Radoslaw Zarzynski) -* common: FIPS: audit and switch some memset & bzero users (`pr#31692 <https://github.com/ceph/ceph/pull/31692>`_, Radoslaw Zarzynski) -* common: Fix 44373 and make a couple cleanups in ceph::timer (`pr#33771 <https://github.com/ceph/ceph/pull/33771>`_, Adam C. Emerson) -* common: fix clang build failures, and clean up warnings (`pr#26701 <https://github.com/ceph/ceph/pull/26701>`_, Adam C. Emerson) -* common: fix clang compile errors from cython_modules (`pr#33056 <https://github.com/ceph/ceph/pull/33056>`_, Mark Kogan) -* common: fix compat of strerror_r (`pr#30279 <https://github.com/ceph/ceph/pull/30279>`_, luo.runbing) -* common: fix deadlocky inflight op visiting in OpTracker (`pr#32364 <https://github.com/ceph/ceph/pull/32364>`_, Radoslaw Zarzynski) -* common: fix missing <stdio.h> include (`pr#31209 <https://github.com/ceph/ceph/pull/31209>`_, Willem Jan Withagen) -* common: fix parse_env nullptr deref (`pr#28159 <https://github.com/ceph/ceph/pull/28159>`_, Patrick Donnelly) -* common: Fix the error handling logic in get_device_id (`pr#30636 <https://github.com/ceph/ceph/pull/30636>`_, Difan Zhang) -* common: fix typo in rgw_user_max_buckets option long description (`pr#31571 <https://github.com/ceph/ceph/pull/31571>`_, Alfonso Mart\xc3\xadnez) -* common: give lockdeps group name to OpenSSLs mutexes (`issue#40698 <http://tracker.ceph.com/issues/40698>`_, `pr#28987 <https://github.com/ceph/ceph/pull/28987>`_, Radoslaw Zarzynski) -* common: global/global_context: always add \\0 after strncpy() (`pr#28365 <https://github.com/ceph/ceph/pull/28365>`_, Kefu Chai) -* common: global/global_init: do first transport connection after setuid() (`pr#28012 <https://github.com/ceph/ceph/pull/28012>`_, Roman Penyaev) -* common: global/pidfile: pass string_view instead of ConfigProxy to pidfile_wr\xe2\x80\xa6 (`pr#27975 <https://github.com/ceph/ceph/pull/27975>`_, Kefu Chai) -* common: handle return value from read(2) (`pr#32192 <https://github.com/ceph/ceph/pull/32192>`_, Patrick Donnelly) -* common: include, common: make ceph::bufferlist 32 bytes long on x86 (`pr#32934 <https://github.com/ceph/ceph/pull/32934>`_, Radoslaw Zarzynski) -* common: include/buffer: add operator+=() for list::iterator (`pr#33003 <https://github.com/ceph/ceph/pull/33003>`_, Kefu Chai) -* common: include/cpp-btree: drop btree::dump() (`pr#32692 <https://github.com/ceph/ceph/pull/32692>`_, Kefu Chai) -* common: include/interval_set: rename some types (`pr#32415 <https://github.com/ceph/ceph/pull/32415>`_, Kefu Chai) -* common: include: switch mempool.h to ceph::atomic (`pr#33034 <https://github.com/ceph/ceph/pull/33034>`_, Radoslaw Zarzynski) -* common: json: JSONDecoder::err inherits from std::runtime_error (`pr#27957 <https://github.com/ceph/ceph/pull/27957>`_, Casey Bodley) -* common: make cluster_network work (`pr#27811 <https://github.com/ceph/ceph/pull/27811>`_, Jianpeng Ma) -* common: messages: MOSDPGCreate2 doesnt assume using namespace std (`pr#28342 <https://github.com/ceph/ceph/pull/28342>`_, Radoslaw Zarzynski) -* common: messages: remove MNop (`pr#27585 <https://github.com/ceph/ceph/pull/27585>`_, Kefu Chai) -* common: mgr/test_orchestrator: Add dummy data (`pr#32182 <https://github.com/ceph/ceph/pull/32182>`_, Sebastian Wagner, Volker Theile) -* common: move gen_rand_alphanumeric() helpers into common (`pr#31567 <https://github.com/ceph/ceph/pull/31567>`_, Casey Bodley) -* common: move xattr -> os/filestore/os_xattr (`pr#32219 <https://github.com/ceph/ceph/pull/32219>`_, David Disseldorp) -* common: msg/Message: remove unused local variables (`pr#29155 <https://github.com/ceph/ceph/pull/29155>`_, Kefu Chai) -* common: msg/msg_types: use inet_ntop(3) to render IP addresses (`pr#26987 <https://github.com/ceph/ceph/pull/26987>`_, Sage Weil) -* common: no need to include ceph_assert.h (`pr#28255 <https://github.com/ceph/ceph/pull/28255>`_, Kefu Chai) -* common: octopus (`pr#27009 <https://github.com/ceph/ceph/pull/27009>`_, Sage Weil) -* common: optimize check_utf8 (`pr#27628 <https://github.com/ceph/ceph/pull/27628>`_, Yibo Cai) -* common: optimize encode_utf8 (`pr#27807 <https://github.com/ceph/ceph/pull/27807>`_, Yibo Cai) -* common: OutputDataSocket retakes mutex on error path (`issue#40188 <http://tracker.ceph.com/issues/40188>`_, `pr#28431 <https://github.com/ceph/ceph/pull/28431>`_, Casey Bodley) -* common: preforker: remove useless code (`pr#31714 <https://github.com/ceph/ceph/pull/31714>`_, Xiubo Li) -* common: python-common: Add drive selection (`pr#31021 <https://github.com/ceph/ceph/pull/31021>`_, Sebastian Wagner) -* common: python-common: add py.typed (PEP 561) (`pr#33236 <https://github.com/ceph/ceph/pull/33236>`_, Sebastian Wagner) -* common: python-common: Add small Readme (`pr#30587 <https://github.com/ceph/ceph/pull/30587>`_, Sebastian Wagner) -* common: python-common: avoid using setup_requires in setup.py (`pr#31222 <https://github.com/ceph/ceph/pull/31222>`_, Sebastian Wagner) -* common: python-common: enable lint in tox tests (`pr#31068 <https://github.com/ceph/ceph/pull/31068>`_, Kiefer Chang) -* common: python-common: Fix typo in device type (`pr#31758 <https://github.com/ceph/ceph/pull/31758>`_, Volker Theile) -* common: python-common: Make Drive Group filter by AND, instead of OR (`pr#33625 <https://github.com/ceph/ceph/pull/33625>`_, Sage Weil, Sebastian Wagner) -* common: python-common: Make DriveGroupSpec a sub type of ServiceSpec (`pr#33817 <https://github.com/ceph/ceph/pull/33817>`_, Sebastian Wagner) -* common: random: added a deduction guide to make using the function ob\xe2\x80\xa6 (`pr#30224 <https://github.com/ceph/ceph/pull/30224>`_, Jesse Williamson) -* common: remove dead code in {safe,mutable}_item_history (`pr#32698 <https://github.com/ceph/ceph/pull/32698>`_, Radoslaw Zarzynski) -* common: remove unused _STR and STRINGIFY macro (`pr#29605 <https://github.com/ceph/ceph/pull/29605>`_, Yao Zongyou) -* common: rename image to container_image (`pr#30800 <https://github.com/ceph/ceph/pull/30800>`_, Sage Weil) -* common: Revert Merge pull request #33673 from cbodley/wip-denc-enum (`pr#33832 <https://github.com/ceph/ceph/pull/33832>`_, Sage Weil) -* common: selinux: Allow ceph to setsched (`pr#33404 <https://github.com/ceph/ceph/pull/33404>`_, Brad Hubbard) -* common: skip interfaces starting with lo in find_ipv{4,6}_in_subnet() (`pr#32420 <https://github.com/ceph/ceph/pull/32420>`_, Jiawei Li) -* common: sort best-matched commond by req argument count (`issue#40292 <http://tracker.ceph.com/issues/40292>`_, `pr#28510 <https://github.com/ceph/ceph/pull/28510>`_, Chang Liu) -* common: src/: remove execute permissions on nine source files (`pr#28781 <https://github.com/ceph/ceph/pull/28781>`_, J. Eric Ivancich) -* common: start logging for non-global_init users (`pr#27352 <https://github.com/ceph/ceph/pull/27352>`_, Sage Weil) -* common: systemd: Wait 5 seconds before attempting a restart of an OSD (`pr#31550 <https://github.com/ceph/ceph/pull/31550>`_, Wido den Hollander) -* common: use of malloc.h is deprecated (`pr#29397 <https://github.com/ceph/ceph/pull/29397>`_, Willem Jan Withagen) -* common: zstd: upgrade to v1.4.0 (`pr#28656 <https://github.com/ceph/ceph/pull/28656>`_, Dan van der Ster) -* core,mgr,tools: osd,tools: Balancer fixes without all of the calc_pg_upmaps() rewrites (`pr#31774 <https://github.com/ceph/ceph/pull/31774>`_, David Zafman) -* core,mgr: mgr/ActivePyModules: drop GIL to register/unregister clients (`pr#33464 <https://github.com/ceph/ceph/pull/33464>`_, Sage Weil) -* core,mgr: mgr/alerts: simple module to send health alerts (`pr#30738 <https://github.com/ceph/ceph/pull/30738>`_, Sage Weil) -* core,mgr: mgr/DaemonServer: warn when we reject reports (`pr#31471 <https://github.com/ceph/ceph/pull/31471>`_, Sage Weil) -* core,mgr: mgr/pg_autoscaler: add pg_autoscale_bias pool property and apply it to pg_num selection (`pr#27154 <https://github.com/ceph/ceph/pull/27154>`_, Sage Weil) -* core,mgr: mgr/prometheus: report per-pool pg states (`pr#32370 <https://github.com/ceph/ceph/pull/32370>`_, Aleksei Zakharov) -* core,mgr: mgr/telemetry: add report_timestamp to sent reports (`pr#27571 <https://github.com/ceph/ceph/pull/27571>`_, Dan Mick) -* core,mgr: mgr/telemetry: catch exception during requests.put (`pr#33070 <https://github.com/ceph/ceph/pull/33070>`_, Sage Weil) -* core,mgr: mgr/telemetry: obscure entity_name with a salt (`pr#29330 <https://github.com/ceph/ceph/pull/29330>`_, Sage Weil) -* core,mgr: osd,mon,mgr: report /dev/disk/by-path paths for devices (`pr#32261 <https://github.com/ceph/ceph/pull/32261>`_, Sage Weil) -* core,mon: mon,osd: use get_req<> instead of static_cast<>(get_req()) (`pr#30023 <https://github.com/ceph/ceph/pull/30023>`_, Kefu Chai) -* core,mon: mon/AuthMonitor: fix initial creation of rotating keys (`issue#40634 <http://tracker.ceph.com/issues/40634>`_, `pr#28850 <https://github.com/ceph/ceph/pull/28850>`_, Sage Weil) -* core,mon: mon/MonClient: add proper SRV priority support (`pr#27126 <https://github.com/ceph/ceph/pull/27126>`_, Kefu Chai) -* core,mon: mon/Monitor.cc: fix condition that checks for unrecognized auth mode (`pr#30015 <https://github.com/ceph/ceph/pull/30015>`_, Neha Ojha) -* core,mon: mon/Monitor.cc: print min_mon_release correctly (`pr#27107 <https://github.com/ceph/ceph/pull/27107>`_, Neha Ojha) -* core,mon: mon/OSDMonitor: clean up removed_snap keys (`pr#30518 <https://github.com/ceph/ceph/pull/30518>`_, Sage Weil) -* core,mon: mon/OSDMonitor: expand iec_options for osd pool set (`pr#31196 <https://github.com/ceph/ceph/pull/31196>`_, Sage Weil) -* core,mon: mon/OSDMonitor: Use generic priority cache tuner for mon caches (`issue#40870 <http://tracker.ceph.com/issues/40870>`_, `pr#28227 <https://github.com/ceph/ceph/pull/28227>`_, Sridhar Seshasayee) -* core,pybind: pybind/ceph_argparse: avoid int overflow (`pr#33101 <https://github.com/ceph/ceph/pull/33101>`_, Kefu Chai) -* core,pybind: pybind/rados: fix set_omap() crash on py3 (`pr#29096 <https://github.com/ceph/ceph/pull/29096>`_, Sage Weil) -* core,pybind: pybind/rados: fixed Python3 string conversion issue on get_fsid (`issue#38381 <http://tracker.ceph.com/issues/38381>`_, `pr#26514 <https://github.com/ceph/ceph/pull/26514>`_, Jason Dillaman) -* core,rbd: common/config: use string_view for keys (`pr#27097 <https://github.com/ceph/ceph/pull/27097>`_, Kefu Chai) -* core,rbd: osd/OSDCap: rbd profile permits use of rbd_info (`issue#39973 <http://tracker.ceph.com/issues/39973>`_, `pr#28253 <https://github.com/ceph/ceph/pull/28253>`_, songweibin) -* core,rbd: osd/PrimaryLogPG: do not append outdata to TMAPUP ops (`pr#30457 <https://github.com/ceph/ceph/pull/30457>`_, Jason Dillaman) -* core,rgw,tests: librados,test,rgw: cleanups to deprecate safe_cb related functions (`pr#31045 <https://github.com/ceph/ceph/pull/31045>`_, Kefu Chai) -* core,tests: ceph_test_cls_hello: set RETURNVEC on the expected EINVAL request (`pr#33708 <https://github.com/ceph/ceph/pull/33708>`_, Sage Weil) -* core,tests: ceph_test_rados_api\\_{watch_notify,misc}: tolerate some timeouts (`pr#34011 <https://github.com/ceph/ceph/pull/34011>`_, Sage Weil) -* core,tests: Improvements to standalone tests (`pr#27279 <https://github.com/ceph/ceph/pull/27279>`_, David Zafman) -* core,tests: kv_store_bench: fix teuthology_tests() return value (`pr#30293 <https://github.com/ceph/ceph/pull/30293>`_, luo rixin) -* core,tests: mon.test: improve validation and add a test for osd pool create (`pr#30538 <https://github.com/ceph/ceph/pull/30538>`_, Kefu Chai) -* core,tests: qa/objectstore: test with reduced value of osd_memory_target (`pr#27083 <https://github.com/ceph/ceph/pull/27083>`_, Neha Ojha) -* core,tests: qa/standalone/ceph-helpers: more osd debug (`issue#40666 <http://tracker.ceph.com/issues/40666>`_, `pr#28867 <https://github.com/ceph/ceph/pull/28867>`_, Sage Weil) -* core,tests: qa/standalone/misc/ok-to-stop: improve test (`pr#32738 <https://github.com/ceph/ceph/pull/32738>`_, Sage Weil) -* core,tests: qa/standalone/mon/health-mute.sh: misc fixes (`pr#29744 <https://github.com/ceph/ceph/pull/29744>`_, Sage Weil) -* core,tests: qa/standalone/osd/osd-backfill-recovery-log.sh: fix TEST_backfill_log\\_[1, 2] (`pr#32851 <https://github.com/ceph/ceph/pull/32851>`_, Neha Ojha) -* core,tests: qa/standalone/scrub/osd-scrub-snaps: snapmapper omap is now m (`pr#29774 <https://github.com/ceph/ceph/pull/29774>`_, Sage Weil) -* core,tests: qa/standalone/scrub/osd-scrub-test: wait longer for update (`pr#33809 <https://github.com/ceph/ceph/pull/33809>`_, Sage Weil) -* core,tests: qa/suites/rados/multimon: whitelist SLOW_OPS while thrashing mons (`pr#29121 <https://github.com/ceph/ceph/pull/29121>`_, Sage Weil) -* core,tests: qa/suites/rados/perf: run on ubuntu (`pr#32355 <https://github.com/ceph/ceph/pull/32355>`_, Sage Weil) -* core,tests: qa/suites/rados/rest: run restful test on el8 (`pr#32920 <https://github.com/ceph/ceph/pull/32920>`_, Sage Weil) -* core,tests: qa/suites/rados/singleton-bluestore/cephtool: whitelist MON_DOWN (`pr#33645 <https://github.com/ceph/ceph/pull/33645>`_, Sage Weil) -* core,tests: qa/suites/rados/singleton/all/lost-unfound\\*: whitelist SLOW_OPS (`pr#32958 <https://github.com/ceph/ceph/pull/32958>`_, Sage Weil) -* core,tests: qa/suites/rados/singleton/all/recovery-preemption: fix pg log length (`pr#32898 <https://github.com/ceph/ceph/pull/32898>`_, Sage Weil) -* core,tests: qa/suites/rados/singleton/all/thrash-eio: whitelist slow request (`pr#33497 <https://github.com/ceph/ceph/pull/33497>`_, Sage Weil, Sridhar Seshasayee) -* core,tests: qa/suites/rados/thrash-old-clients: exclude ceph-daemon on nautilus installs (`pr#30817 <https://github.com/ceph/ceph/pull/30817>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: rejigger v1 vs v2 settings (`pr#27249 <https://github.com/ceph/ceph/pull/27249>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: tolerate MON_DOWN (`pr#30577 <https://github.com/ceph/ceph/pull/30577>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash-old-clients: use cephadm (`pr#32377 <https://github.com/ceph/ceph/pull/32377>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash: force normal pg log length with cache tiering (`issue#38358 <http://tracker.ceph.com/issues/38358>`_, `issue#24320 <http://tracker.ceph.com/issues/24320>`_, `pr#28658 <https://github.com/ceph/ceph/pull/28658>`_, Sage Weil) -* core,tests: qa/suites/rados/thrash: increase async and partial recovery test coverage (`pr#30699 <https://github.com/ceph/ceph/pull/30699>`_, Neha Ojha) -* core,tests: qa/suites/rados/valgrind-leaks: independently verify we detect leaks on mon, osd, mgr (`pr#32946 <https://github.com/ceph/ceph/pull/32946>`_, Sage Weil) -* core,tests: qa/suites/rados/verify/tasks/mon_recovery: whitelist SLOW_OPS (`pr#33644 <https://github.com/ceph/ceph/pull/33644>`_, Sage Weil) -* core,tests: qa/suites/rados/verify: debug monc = 20 (`pr#32968 <https://github.com/ceph/ceph/pull/32968>`_, Sage Weil) -* core,tests: qa/suites/rados/verify: debug_ms = 1 (`pr#33871 <https://github.com/ceph/ceph/pull/33871>`_, Sage Weil) -* core,tests: qa/suites/rados: move cephadm_orchestrator to el8 (`pr#32407 <https://github.com/ceph/ceph/pull/32407>`_, Sage Weil) -* core,tests: qa/suites/upgrade/mimic-x-singleton: suppress TOO_FEW_PGS warning (`pr#31054 <https://github.com/ceph/ceph/pull/31054>`_, Sage Weil) -* core,tests: qa/suites/upgrade: fix mimic-x-singleton (`pr#32719 <https://github.com/ceph/ceph/pull/32719>`_, Sage Weil) -* core,tests: qa/suites/upgrade: misc fixes for octopus (`pr#32750 <https://github.com/ceph/ceph/pull/32750>`_, Sage Weil, Josh Durgin) -* core,tests: qa/tasks/cbt: run stop-all.sh while shutting down (`pr#31171 <https://github.com/ceph/ceph/pull/31171>`_, Sage Weil) -* core,tests: qa/tasks/ceph: restart: stop osd, mark down, then start (`pr#30196 <https://github.com/ceph/ceph/pull/30196>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: add --log-early to raw_cluster_cmd (`pr#32989 <https://github.com/ceph/ceph/pull/32989>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: enable ceph-objectstore-tool via cephadm (`pr#32411 <https://github.com/ceph/ceph/pull/32411>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: fix ceph-objectstore-tool incantations (`pr#32701 <https://github.com/ceph/ceph/pull/32701>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: fix chmod on log dir during pg export copy (`pr#32943 <https://github.com/ceph/ceph/pull/32943>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: fix post-osd-kill pg peered check (`pr#32737 <https://github.com/ceph/ceph/pull/32737>`_, Sage Weil) -* core,tests: qa/tasks/ceph_manager: make is\\_{clean,recovered,active_or_down} less racy (`pr#28969 <https://github.com/ceph/ceph/pull/28969>`_, Sage Weil) -* core,tests: qa/tasks/mon_thrash: sync force requires some force flags (`pr#30361 <https://github.com/ceph/ceph/pull/30361>`_, Sage Weil) -* core,tests: qa/tasks/radosbench: fix usage of -O (`pr#33744 <https://github.com/ceph/ceph/pull/33744>`_, Sage Weil) -* core,tests: qa/tasks/thrashosds-health: disable osd_max_markdown behavior (`pr#33601 <https://github.com/ceph/ceph/pull/33601>`_, Sage Weil) -* core,tests: qa/workunits/cephtool/test.sh: delete test_erasure pool (`pr#33188 <https://github.com/ceph/ceph/pull/33188>`_, Sage Weil) -* core,tests: qa/workunits/rados/test_crash.sh: suppress core files (`pr#32724 <https://github.com/ceph/ceph/pull/32724>`_, Sage Weil) -* core,tests: qa: add basic omap testing capability (`pr#29120 <https://github.com/ceph/ceph/pull/29120>`_, Neha Ojha) -* core,tests: remove ceph_test_rados_watch_notify (`pr#34044 <https://github.com/ceph/ceph/pull/34044>`_, Sage Weil) -* core,tests: test/CMakeLists: disable memstore make check test (`pr#33473 <https://github.com/ceph/ceph/pull/33473>`_, Sage Weil) -* core,tests: test/librados: dont release handler if set_pg_num failed (`pr#32112 <https://github.com/ceph/ceph/pull/32112>`_, huangjun) -* core,tests: test/osd/safe-to-destroy.sh: fix typo (`pr#27651 <https://github.com/ceph/ceph/pull/27651>`_, Sage Weil) -* core,tests: test/pybind/test_rados.py: test test_aio_remove (`pr#31003 <https://github.com/ceph/ceph/pull/31003>`_, Zhang Jiao) -* core,tests: test/unittest_lockdep: do not start extra threads (`pr#32772 <https://github.com/ceph/ceph/pull/32772>`_, Kefu Chai) -* core,tests: test: Bump sleep time for slower machines (`pr#29494 <https://github.com/ceph/ceph/pull/29494>`_, David Zafman) -* core,tests: test: Make sure that extra scheduled scrubs dont confuse test (`issue#40078 <http://tracker.ceph.com/issues/40078>`_, `pr#28302 <https://github.com/ceph/ceph/pull/28302>`_, David Zafman) -* core,tests: tests/osd: fix typo in unittest_osdmap (`pr#29790 <https://github.com/ceph/ceph/pull/29790>`_, huangjun) -* core,tests: tools/rados: use num ops instead of num objs for tracking outstanding IO (`pr#29734 <https://github.com/ceph/ceph/pull/29734>`_, Albert H Chen) -* core,tests: unittest_lockdep: avoid any threads for death test (`pr#32765 <https://github.com/ceph/ceph/pull/32765>`_, Sage Weil) -* core,tools: ceph-objectstore-tool cant remove head with bad snapset (`pr#29919 <https://github.com/ceph/ceph/pull/29919>`_, David Zafman) -* core,tools: ceph.in: check ceph-conf returncode (`pr#30695 <https://github.com/ceph/ceph/pull/30695>`_, Dimitri Savineau) -* core,tools: src/tools/ceph-dedup-tool: Fix chunk scru (`pr#28765 <https://github.com/ceph/ceph/pull/28765>`_, Myoungwon Oh) -* core: ceph.in: only preload asan library for Debug build (`pr#27190 <https://github.com/ceph/ceph/pull/27190>`_, Kefu Chai) -* core: osd/ClassHandler: cleanups (`pr#28363 <https://github.com/ceph/ceph/pull/28363>`_, Kefu Chai) -* core: osd: add hdd, ssd and hybrid variants for osd_snap_trim_sleep (`pr#28772 <https://github.com/ceph/ceph/pull/28772>`_, Neha Ojha) -* core: osdc/Objecter: use unique_ptr<OSDMap> for Objecter::osdmap (`issue#38403 <http://tracker.ceph.com/issues/38403>`_, `pr#28397 <https://github.com/ceph/ceph/pull/28397>`_, Kefu Chai) -* core: Add structures for tracking in progress operations (`pr#28395 <https://github.com/ceph/ceph/pull/28395>`_, Samuel Just) -* core: auth: treat mgr the same as mon when selecting auth mode (`pr#33226 <https://github.com/ceph/ceph/pull/33226>`_, Yehuda Sadeh) -* core: backfill_toofull seen on cluster where the most full OSD is at 1% (`pr#29857 <https://github.com/ceph/ceph/pull/29857>`_, David Zafman) -* core: ceph,pybind/mgr: a few py3 fixes (`pr#32187 <https://github.com/ceph/ceph/pull/32187>`_, Sage Weil) -* core: ceph-objectstore-tool: better error message if pgid and object do not match (`pr#30501 <https://github.com/ceph/ceph/pull/30501>`_, Sage Weil) -* core: ceph.in: Fix name retval is not defined error (`pr#33516 <https://github.com/ceph/ceph/pull/33516>`_, Varsha Rao) -* core: ceph.in: improve control-c handling (`pr#33352 <https://github.com/ceph/ceph/pull/33352>`_, Sage Weil) -* core: ceph.in: only shut down rados on clean exit (`pr#33825 <https://github.com/ceph/ceph/pull/33825>`_, Sage Weil) -* core: client: fix FTBFS due to bl::iterator::advance() (`pr#33085 <https://github.com/ceph/ceph/pull/33085>`_, Radoslaw Zarzynski) -* core: cls_hello: fix typo (`pr#32976 <https://github.com/ceph/ceph/pull/32976>`_, Sage Weil) -* core: common,mon,osd: unify ceph tell and ceph daemon command sets (`pr#30217 <https://github.com/ceph/ceph/pull/30217>`_, Sage Weil) -* core: common,tools,crush,test: misc converity & klocwork fixes (`pr#29316 <https://github.com/ceph/ceph/pull/29316>`_, songweibin) -* core: common/admin_socket: Increase socket timeouts (`pr#31623 <https://github.com/ceph/ceph/pull/31623>`_, Brad Hubbard) -* core: common/assert: include ceph_abort_msg(arg) arg in log output (`pr#27732 <https://github.com/ceph/ceph/pull/27732>`_, Sage Weil) -* core: common/blkdev: fix some problems with smart scraping (`pr#28848 <https://github.com/ceph/ceph/pull/28848>`_, Sage Weil) -* core: common/blkdev: get_device_id: behave if model is lvm and id_model_enc isnt there (`pr#27156 <https://github.com/ceph/ceph/pull/27156>`_, Sage Weil) -* core: common/blkdev: handle devices with ID_MODEL as LVM PV ... but valid ID_MODEL_ENC (`pr#27020 <https://github.com/ceph/ceph/pull/27020>`_, Sage Weil) -* core: common/condition_variable_debug: do not assert() if sloppy (`pr#29854 <https://github.com/ceph/ceph/pull/29854>`_, Kefu Chai) -* core: common/config: behave when both POD_MEMORY_REQUEST and POD_MEMORY_LIMIT are set (`pr#29511 <https://github.com/ceph/ceph/pull/29511>`_, Sage Weil) -* core: common/config: less noise about configs from mon we cant apply (`pr#31988 <https://github.com/ceph/ceph/pull/31988>`_, Sage Weil) -* core: common/config: parse --default-$option as a default value (`pr#27169 <https://github.com/ceph/ceph/pull/27169>`_, Sage Weil) -* core: common/config: update values when they are removed via mon (`pr#32091 <https://github.com/ceph/ceph/pull/32091>`_, Sage Weil) -* core: common/kv/rocksdb: Fixed async compations (`pr#26786 <https://github.com/ceph/ceph/pull/26786>`_, Adam Kupczyk) -* core: common/options.cc: Lower the default value of osd_deep_scrub_large_omap_object_key_threshold (`pr#28782 <https://github.com/ceph/ceph/pull/28782>`_, Neha Ojha) -* core: common/options.cc: make rocksdb_delete_range_threshold very high (`pr#33439 <https://github.com/ceph/ceph/pull/33439>`_, Neha Ojha) -* core: common/options: allow osd_pool_default_pg_autoscale_mode to update a runtime (`pr#27821 <https://github.com/ceph/ceph/pull/27821>`_, Sage Weil) -* core: common/options: annotate some options; enable some runtime updates (`pr#27655 <https://github.com/ceph/ceph/pull/27655>`_, Sage Weil) -* core: common/options: decrease the default max_omap_entries_per_request (`pr#31506 <https://github.com/ceph/ceph/pull/31506>`_, Yan Jun) -* core: common/options: make secure mode non-experimental, and prefer/require it for mons (`pr#27012 <https://github.com/ceph/ceph/pull/27012>`_, Sage Weil) -* core: common/options: update mon_crush_min_required_version=hammer (`pr#27568 <https://github.com/ceph/ceph/pull/27568>`_, Sage Weil) -* core: common/PriorityCache: fix over-aggressive assert when mem limited (`pr#27763 <https://github.com/ceph/ceph/pull/27763>`_, Mark Nelson) -* core: common/PriorityCache: Implement a Cache Manager (`pr#27381 <https://github.com/ceph/ceph/pull/27381>`_, Mark Nelson) -* core: common/TextTable,mgr: standardize on 2 spaces between table columns (`pr#33138 <https://github.com/ceph/ceph/pull/33138>`_, Sage Weil) -* core: common/util: handle long lines in /proc/cpuinfo (`issue#38296 <http://tracker.ceph.com/issues/38296>`_, `pr#27707 <https://github.com/ceph/ceph/pull/27707>`_, Sage Weil) -* core: compressor/lz4: work around bug in liblz4 versions <1.8.2 (`pr#33584 <https://github.com/ceph/ceph/pull/33584>`_, Sage Weil, Dan van der Ster) -* core: crimson, osd: add support for Ceph Classes, part 1 (`pr#29651 <https://github.com/ceph/ceph/pull/29651>`_, Radoslaw Zarzynski) -* core: crimson/osd: add osd to crush when it boots (`pr#28689 <https://github.com/ceph/ceph/pull/28689>`_, Kefu Chai) -* core: crush/CrushCompiler: Fix __replacement_assert (`issue#39174 <http://tracker.ceph.com/issues/39174>`_, `pr#27506 <https://github.com/ceph/ceph/pull/27506>`_, Brad Hubbard) -* core: crush/CrushWrapper.cc: Fix sign compare compiler warning (`pr#31184 <https://github.com/ceph/ceph/pull/31184>`_, Prashant D) -* core: crush/CrushWrapper: behave with empty weight vector (`pr#32673 <https://github.com/ceph/ceph/pull/32673>`_, Kefu Chai) -* core: dencoder: include some missed types (`pr#27804 <https://github.com/ceph/ceph/pull/27804>`_, Greg Farnum) -* core: dmclock server side refactor (`pr#30650 <https://github.com/ceph/ceph/pull/30650>`_, Samuel Just) -* core: examples/librados: fix bufferlist::copy() in hello_world.cc (`pr#33075 <https://github.com/ceph/ceph/pull/33075>`_, Radoslaw Zarzynski) -* core: Extract peering logic into a module for use in crimson (`pr#27874 <https://github.com/ceph/ceph/pull/27874>`_, Samuel Just, sjust@redhat.com) -* core: feature: Health warnings on long network ping times, add dump_osd_network to get a report (`issue#40640 <http://tracker.ceph.com/issues/40640>`_, `pr#28755 <https://github.com/ceph/ceph/pull/28755>`_, David Zafman) -* core: Feature: Improvements to auto repair (`issue#38616 <http://tracker.ceph.com/issues/38616>`_, `pr#26942 <https://github.com/ceph/ceph/pull/26942>`_, David Zafman) -* core: global: ensure CEPH_ARGS is decoded before early arg processing (`pr#32830 <https://github.com/ceph/ceph/pull/32830>`_, Jason Dillaman) -* core: global: explicitly call out EIO events in crash dumps (`pr#27386 <https://github.com/ceph/ceph/pull/27386>`_, Sage Weil) -* core: include,os: Make ceph_le member private (`pr#30526 <https://github.com/ceph/ceph/pull/30526>`_, Ulrich Weigand) -* core: include/ceph_features: fix typo (`pr#27353 <https://github.com/ceph/ceph/pull/27353>`_, Sage Weil) -* core: include/cpp-btree: cleanups (`pr#32443 <https://github.com/ceph/ceph/pull/32443>`_, Kefu Chai) -* core: init-ceph: wait longer before resending $signal (`pr#27308 <https://github.com/ceph/ceph/pull/27308>`_, Kefu Chai) -* core: kv/KeyValueDB: fix estimate_prefix_size() (`pr#29842 <https://github.com/ceph/ceph/pull/29842>`_, Adam Kupczyk) -* core: kv/RocksDBStore: Add minimum key limit before invoking DeleteRange (`pr#31442 <https://github.com/ceph/ceph/pull/31442>`_, Mark Nelson) -* core: kv/RocksDBStore: make option: compaction_threads/disableWAL/flusher_t\xe2\x80\xa6 (`pr#32453 <https://github.com/ceph/ceph/pull/32453>`_, Jianpeng Ma) -* core: kv/RocksDBStore: tell rocksdb to set mode to 0600, not 0644 (`pr#30679 <https://github.com/ceph/ceph/pull/30679>`_, Sage Weil) -* core: kv: fix shutdown vs async compaction (`pr#32619 <https://github.com/ceph/ceph/pull/32619>`_, Sage Weil) -* core: kv: make delete range optional on number of keys (`pr#27317 <https://github.com/ceph/ceph/pull/27317>`_, Zengran Zhang) -* core: librados,osd,mon: remove traces of CEPH_OSDMAP_FULL (`pr#30614 <https://github.com/ceph/ceph/pull/30614>`_, Kefu Chai) -* core: Make dumping of reservation info congruent between scrub and recovery (`pr#30192 <https://github.com/ceph/ceph/pull/30192>`_, David Zafman) -* core: messages,osd: remove MPGStats::had_map_for (`pr#27026 <https://github.com/ceph/ceph/pull/27026>`_, Kefu Chai) -* core: messages: #include necessary header (`pr#27590 <https://github.com/ceph/ceph/pull/27590>`_, Kefu Chai) -* core: mgr/balancer: sort pool names in balancer ls output (`pr#32424 <https://github.com/ceph/ceph/pull/32424>`_, Sage Weil) -* core: mgr/balancer: tolerate pgs outside of target weight map (`pr#34014 <https://github.com/ceph/ceph/pull/34014>`_, Sage Weil) -* core: mgr/cephadm: health alert for stray services or hosts (`pr#32754 <https://github.com/ceph/ceph/pull/32754>`_, Sage Weil) -* core: mgr/crash: behave when posted crash has no backtrace (`pr#31643 <https://github.com/ceph/ceph/pull/31643>`_, Sage Weil) -* core: mgr/crash: raise warning about recent crashes and other improvements (`pr#29034 <https://github.com/ceph/ceph/pull/29034>`_, Sage Weil) -* core: mgr/DaemonServer: fix osd ok-to-stop for EC pools (`pr#32046 <https://github.com/ceph/ceph/pull/32046>`_, Sage Weil) -* core: mgr/DaemonServer: fix pg merge checks (`pr#34067 <https://github.com/ceph/ceph/pull/34067>`_, Sage Weil) -* core: mgr/DaemonServer: prevent pgp_num reductions from outpacing pg_num merges (`issue#38786 <http://tracker.ceph.com/issues/38786>`_, `pr#27473 <https://github.com/ceph/ceph/pull/27473>`_, Sage Weil) -* core: mgr/devicehealth: fix telemetry stops sending device reports after 48\xe2\x80\xa6 (`pr#32903 <https://github.com/ceph/ceph/pull/32903>`_, Yaarit Hatuka) -* core: mgr/diskprediction_cloud: Service unavailable (`issue#40478 <http://tracker.ceph.com/issues/40478>`_, `pr#28687 <https://github.com/ceph/ceph/pull/28687>`_, Rick Chen) -* core: mgr/diskprediction_local: import scipy early to fix self-test deadlock (`pr#32102 <https://github.com/ceph/ceph/pull/32102>`_, Sage Weil) -* core: mgr/diskprediction_local: some debug output during predict (and self-test) (`pr#31572 <https://github.com/ceph/ceph/pull/31572>`_, Sage Weil) -* core: mgr/MgrClient: fix open condition (`pr#31256 <https://github.com/ceph/ceph/pull/31256>`_, Sage Weil) -* core: mgr/MgrClient: fix open condition fix (`pr#31422 <https://github.com/ceph/ceph/pull/31422>`_, Sage Weil) -* core: mgr/MgrClient: fix tell mgr.x ... (`pr#31989 <https://github.com/ceph/ceph/pull/31989>`_, Sage Weil) -* core: mgr/pg_autoscaler: complete event if pool disappears (`pr#30819 <https://github.com/ceph/ceph/pull/30819>`_, Sage Weil) -* core: mgr/pg_autoscaler: default to pg_num[_min] = 16 (`pr#31636 <https://github.com/ceph/ceph/pull/31636>`_, Sage Weil) -* core: mgr/pg_autoscaler: default to pg_num[_min] = 32 (`pr#32788 <https://github.com/ceph/ceph/pull/32788>`_, Neha Ojha) -* core: mgr/pg_autoscaler: fix division by zero (`pr#33402 <https://github.com/ceph/ceph/pull/33402>`_, Sage Weil) -* core: mgr/pg_autoscaler: only generate target\\_\\* health warnings if targets set (`pr#31638 <https://github.com/ceph/ceph/pull/31638>`_, Sage Weil) -* core: mgr/progress: behave if pgs disappear (due to a racing pg merge) (`issue#38157 <http://tracker.ceph.com/issues/38157>`_, `pr#27546 <https://github.com/ceph/ceph/pull/27546>`_, Sage Weil) -* core: mgr/progress: fix duration strings (`pr#34045 <https://github.com/ceph/ceph/pull/34045>`_, Sage Weil) -* core: mgr/progress: progress clear command should clear events in ceph -s (`pr#33400 <https://github.com/ceph/ceph/pull/33400>`_, Sage Weil) -* core: mgr/telemetry: add some more telemetry (`pr#31226 <https://github.com/ceph/ceph/pull/31226>`_, Sage Weil) -* core: mgr/telemetry: include pg_autoscaler and balancer status (`pr#30871 <https://github.com/ceph/ceph/pull/30871>`_, Sage Weil) -* core: mgr/telemetry: send device telemetry via per-host POST to device endpoint (`pr#31225 <https://github.com/ceph/ceph/pull/31225>`_, Sage Weil) -* core: mgr/telemetry: split entity_name only once (handle ids with dots) (`pr#33094 <https://github.com/ceph/ceph/pull/33094>`_, Dan Mick) -* core: Miscellaneous lost fixes (`pr#27599 <https://github.com/ceph/ceph/pull/27599>`_, Xinze Chi, Greg Farnum, linbing, shangfufei) -* core: mon, osd: parallel clean_pg_upmaps (`issue#40104 <http://tracker.ceph.com/issues/40104>`_, `pr#28373 <https://github.com/ceph/ceph/pull/28373>`_, xie xingguo) -* core: mon,msg/async: fix mon to mon authentication (`pr#27823 <https://github.com/ceph/ceph/pull/27823>`_, Sage Weil) -* core: mon,osd: add dead_epoch, --dead flag to osd down (`pr#29221 <https://github.com/ceph/ceph/pull/29221>`_, Sage Weil) -* core: mon,osd: add no{out,down,in,out} flags on CRUSH nodes (`pr#27563 <https://github.com/ceph/ceph/pull/27563>`_, Sage Weil) -* core: mon,osd: deprecate forward and readforward cache modes (`pr#28944 <https://github.com/ceph/ceph/pull/28944>`_, Sage Weil) -* core: mon,osd: track history and past_intervals for creating pgs (`pr#27696 <https://github.com/ceph/ceph/pull/27696>`_, Sage Weil) -* core: mon,osd: various octopus feature bits (`pr#27141 <https://github.com/ceph/ceph/pull/27141>`_, Sage Weil) -* core: mon/ConfigMap: search nested sections (`pr#31327 <https://github.com/ceph/ceph/pull/31327>`_, Sage Weil) -* core: mon/ConfigMonitor: fix handling of NO_MON_UPDATE settings (`pr#32726 <https://github.com/ceph/ceph/pull/32726>`_, Sage Weil) -* core: mon/ConfigMonitor: only propose if leader (`pr#32975 <https://github.com/ceph/ceph/pull/32975>`_, Sage Weil) -* core: mon/ConfigMonitor: prefix all global config options with global/ (`pr#32786 <https://github.com/ceph/ceph/pull/32786>`_, Sage Weil) -* core: mon/LogMonitor: add mon_cluster_log_to_file bool option (`pr#27343 <https://github.com/ceph/ceph/pull/27343>`_, Sage Weil) -* core: mon/MgrMonitor: fix null deref when invalid formatter is specified (`pr#29089 <https://github.com/ceph/ceph/pull/29089>`_, Sage Weil) -* core: mon/MgrMonitor: make mgr fail work with no arguments (`pr#33997 <https://github.com/ceph/ceph/pull/33997>`_, Sage Weil) -* core: mon/MgrStatMonitor: ensure only one copy of initial service map (`issue#38839 <http://tracker.ceph.com/issues/38839>`_, `pr#27101 <https://github.com/ceph/ceph/pull/27101>`_, Sage Weil) -* core: mon/MonClient: do not dereference auth_supported.end() (`pr#27196 <https://github.com/ceph/ceph/pull/27196>`_, Kefu Chai) -* core: mon/MonClient: ENXIO when sending command to down mon (`pr#29090 <https://github.com/ceph/ceph/pull/29090>`_, Sage Weil, Greg Farnum) -* core: mon/MonClient: send logs to mon on separate schedule than pings (`pr#33732 <https://github.com/ceph/ceph/pull/33732>`_, Sage Weil) -* core: mon/MonClient: skip CEPHX_V2 challenge if client doesnt support it (`pr#30523 <https://github.com/ceph/ceph/pull/30523>`_, Sage Weil) -* core: mon/Monitor: fail forwarded tell commands (`pr#33542 <https://github.com/ceph/ceph/pull/33542>`_, Sage Weil) -* core: mon/MonMap: encode (more) valid compat monmap when we have v2-only addrs (`pr#31472 <https://github.com/ceph/ceph/pull/31472>`_, Sage Weil) -* core: mon/MonmapMonitor: clean up empty created stamp in monmap (`issue#39085 <http://tracker.ceph.com/issues/39085>`_, `pr#27327 <https://github.com/ceph/ceph/pull/27327>`_, Sage Weil) -* core: mon/OSDMonitor.cc: Add current numbers of objects and bytes (`pr#18694 <https://github.com/ceph/ceph/pull/18694>`_, Shinobu Kinjo) -* core: mon/OSDMonitor.cc: better error message about min_size (`pr#29184 <https://github.com/ceph/ceph/pull/29184>`_, Neha Ojha) -* core: mon/OSDMonitor: accept autoscale_mode argument to osd pool create (`pr#33092 <https://github.com/ceph/ceph/pull/33092>`_, Sage Weil) -* core: mon/OSDMonitor: add check for crush rule size in pool set size command (`pr#30723 <https://github.com/ceph/ceph/pull/30723>`_, Vikhyat Umrao) -* core: mon/OSDMonitor: allow osd pool set pgp_num_actual (`pr#27010 <https://github.com/ceph/ceph/pull/27010>`_, Sage Weil) -* core: mon/OSDMonitor: allow pg_num to increase when require_osd_release < N (`issue#39570 <http://tracker.ceph.com/issues/39570>`_, `pr#27928 <https://github.com/ceph/ceph/pull/27928>`_, Sage Weil) -* core: mon/OSDMonitor: Dont update mon cache settings if rocksdb is not used (`pr#32473 <https://github.com/ceph/ceph/pull/32473>`_, Sridhar Seshasayee) -* core: mon/OSDMonitor: fix format error ceph osd stat --format json (`pr#31399 <https://github.com/ceph/ceph/pull/31399>`_, Zheng Yin) -* core: mon/OSDMonitor: make memory autotune disable itself if no rocksd (`pr#32044 <https://github.com/ceph/ceph/pull/32044>`_, Sage Weil) -* core: mon/OSDMonitor: tolerate duplicate MRemoveSnaps messages (`issue#40774 <http://tracker.ceph.com/issues/40774>`_, `pr#29051 <https://github.com/ceph/ceph/pull/29051>`_, Sage Weil) -* core: mon/PGMap.h: disable network stats in dump_osd_stats (`pr#32406 <https://github.com/ceph/ceph/pull/32406>`_, Neha Ojha, David Zafman) -* core: mon/PGMap: drop indentation on df human output (`pr#30848 <https://github.com/ceph/ceph/pull/30848>`_, Sage Weil) -* core: mon/PGMap: fix summary display of >32bit pg states (`pr#33137 <https://github.com/ceph/ceph/pull/33137>`_, Sage Weil) -* core: mon/PGMap: use NONE for pg ls[-\\*] output too (`pr#32048 <https://github.com/ceph/ceph/pull/32048>`_, Sage Weil) -* core: mon/Session: only index osd ids >= 0 (`pr#32764 <https://github.com/ceph/ceph/pull/32764>`_, Sage Weil) -* core: More PeeringState and related cleanups to ease use in crimson (`pr#28048 <https://github.com/ceph/ceph/pull/28048>`_, Samuel Just) -* core: msg,auth: migrate msg/async V1 implementation to new Auth{Server,Client} interfaces (`pr#27566 <https://github.com/ceph/ceph/pull/27566>`_, Sage Weil) -* core: msg/async/frames_v2.h: fix warning (`pr#27464 <https://github.com/ceph/ceph/pull/27464>`_, Sage Weil) -* core: msg/async/ProtocolV2: fix typo in register_lossy_clients fix (`pr#33559 <https://github.com/ceph/ceph/pull/33559>`_, Sage Weil) -* core: msg/async/ProtocolV[12]: add ms_learn_addr_from_peer (`pr#27341 <https://github.com/ceph/ceph/pull/27341>`_, Sage Weil) -* core: msg/async: clear_payload when requeue_sent (`pr#30211 <https://github.com/ceph/ceph/pull/30211>`_, Jianpeng Ma) -* core: msg/async: optimizations (`pr#26531 <https://github.com/ceph/ceph/pull/26531>`_, Jianpeng Ma) -* core: msg/auth: handle decode errors instead of throwing exceptions (`pr#31052 <https://github.com/ceph/ceph/pull/31052>`_, Sage Weil) -* core: msg/DispatchQueue: Set throttle stamp for local_delivery (`pr#31137 <https://github.com/ceph/ceph/pull/31137>`_, Brad Hubbard) -* core: msg/Policy: limit unregistered anon connections to mon (`pr#33163 <https://github.com/ceph/ceph/pull/33163>`_, Sage Weil) -* core: msg/Policy: make stateless_server default to anon (again) (`pr#33633 <https://github.com/ceph/ceph/pull/33633>`_, Sage Weil) -* core: objclass, osd: clean up the cls-host interface. Turn ClassHandler into singleton (`pr#29322 <https://github.com/ceph/ceph/pull/29322>`_, Radoslaw Zarzynski) -* core: object_stat_sum_t decode broken if given older version (`issue#39284 <http://tracker.ceph.com/issues/39284>`_, `issue#39281 <http://tracker.ceph.com/issues/39281>`_, `pr#27564 <https://github.com/ceph/ceph/pull/27564>`_, David Zafman) -* core: os, osd: readv (`pr#30061 <https://github.com/ceph/ceph/pull/30061>`_, xie xingguo) -* core: os/bluestore: Add config observer for osd memory specific options (`pr#29606 <https://github.com/ceph/ceph/pull/29606>`_, Sridhar Seshasayee) -* core: os/filestore: assure sufficient leaves in pre-split (`issue#39390 <http://tracker.ceph.com/issues/39390>`_, `pr#27689 <https://github.com/ceph/ceph/pull/27689>`_, Jeegn Chen) -* core: os/Transaction: dump alloc hint flags in op (`pr#28881 <https://github.com/ceph/ceph/pull/28881>`_, Zengran Zhang) -* core: os: remove KineticStore (`pr#30653 <https://github.com/ceph/ceph/pull/30653>`_, Kefu Chai) -* core: osd,crimson: use make_message for creating message (`pr#30412 <https://github.com/ceph/ceph/pull/30412>`_, Kefu Chai) -* core: osd,messages: changes for preparing for crimson-osd (`pr#27003 <https://github.com/ceph/ceph/pull/27003>`_, Kefu Chai) -* core: osd,mon: remove pg_pool_t::removed_snaps (`pr#28330 <https://github.com/ceph/ceph/pull/28330>`_, Sage Weil) -* core: osd/ECTransaction,ReplicatedBackend: create op is new in octopus (`pr#29092 <https://github.com/ceph/ceph/pull/29092>`_, Sage Weil) -* core: osd/MissingLoc, PeeringState: remove osd from missing loc in purge_strays() (`pr#30119 <https://github.com/ceph/ceph/pull/30119>`_, Neha Ojha) -* core: osd/MissingLoc.cc: do not rely on missing_loc_sources only (`pr#30226 <https://github.com/ceph/ceph/pull/30226>`_, Neha Ojha) -* core: osd/OSD.cc: make osd bench description consistent with parameters (`issue#39006 <http://tracker.ceph.com/issues/39006>`_, `pr#27600 <https://github.com/ceph/ceph/pull/27600>`_, Neha Ojha) -* core: osd/osd: add an err log to set_numa_affinty (`pr#30870 <https://github.com/ceph/ceph/pull/30870>`_, luo rixin) -* core: osd/OSD: auto mark heartbeat sessions as stale and tear them down (`issue#40586 <http://tracker.ceph.com/issues/40586>`_, `pr#28752 <https://github.com/ceph/ceph/pull/28752>`_, xie xingguo) -* core: osd/OSD: choose more heartbeat peers from different subtrees (`pr#33037 <https://github.com/ceph/ceph/pull/33037>`_, xie xingguo) -* core: osd/OSD: enhance osd numa affinity compatibility (`pr#31274 <https://github.com/ceph/ceph/pull/31274>`_, Dai zhiwei) -* core: osd/OSD: keep synchronizing with mon if stuck at booting (`pr#28404 <https://github.com/ceph/ceph/pull/28404>`_, xie xingguo) -* core: osd/OSD: Log slow ops/types to cluster logs (`pr#33328 <https://github.com/ceph/ceph/pull/33328>`_, Sridhar Seshasayee) -* core: osd/OSD: only wake up empty pqueue (`pr#28832 <https://github.com/ceph/ceph/pull/28832>`_, Jianpeng Ma) -* core: osd/OSD: prevent down osds from immediately rejoining the culster (`pr#33039 <https://github.com/ceph/ceph/pull/33039>`_, xie xingguo) -* core: osd/osd: Refactor get_iface_numa_node (`pr#31965 <https://github.com/ceph/ceph/pull/31965>`_, Dai zhiwei, luo rixin) -* core: osd/OSD: remove unused func enqueue_peering_evt_front (`pr#32496 <https://github.com/ceph/ceph/pull/32496>`_, Jianpeng Ma) -* core: osd/OSD: remove unused parameter osdmap_lock_name (`pr#32514 <https://github.com/ceph/ceph/pull/32514>`_, Jianpeng Ma) -* core: osd/OSDCap: Check for empty namespace (`issue#40835 <http://tracker.ceph.com/issues/40835>`_, `pr#29146 <https://github.com/ceph/ceph/pull/29146>`_, Brad Hubbard) -* core: osd/OSDMap.cc: add more info in json output of osd stat (`pr#30344 <https://github.com/ceph/ceph/pull/30344>`_, Shen Hang) -* core: osd/OSDMap.cc: dont output over/underfull messages to lderr (`pr#31542 <https://github.com/ceph/ceph/pull/31542>`_, Neha Ojha) -* core: osd/OSDMap: add zone to default crush map (`pr#27070 <https://github.com/ceph/ceph/pull/27070>`_, Sage Weil) -* core: osd/OSDMap: calc_pg_upmaps - restrict optimization to origin pools only (`issue#38897 <http://tracker.ceph.com/issues/38897>`_, `pr#27142 <https://github.com/ceph/ceph/pull/27142>`_, xie xingguo) -* core: osd/OSDMap: consider overfull osds only when trying to do upmap (`pr#32368 <https://github.com/ceph/ceph/pull/32368>`_, xie xingguo) -* core: osd/OSDMap: do not trust partially simplified pg_upmap_item (`pr#30576 <https://github.com/ceph/ceph/pull/30576>`_, xie xingguo) -* core: osd/OSDMap: fix calc_pg_role (`pr#32132 <https://github.com/ceph/ceph/pull/32132>`_, Sage Weil) -* core: osd/OSDMap: health alert for non-power-of-two pg_num (`pr#30525 <https://github.com/ceph/ceph/pull/30525>`_, Sage Weil) -* core: osd/OSDMap: Replace get_out_osds with get_out_existing_osds (`issue#39154 <http://tracker.ceph.com/issues/39154>`_, `pr#27663 <https://github.com/ceph/ceph/pull/27663>`_, Brad Hubbard) -* core: osd/OSDMap: Show health warning if a pool is configured with size 1 (`pr#31416 <https://github.com/ceph/ceph/pull/31416>`_, Sridhar Seshasayee) -* core: osd/OSDMap: stop encoding osd_state with >8 bits wide states only for old client (`pr#33814 <https://github.com/ceph/ceph/pull/33814>`_, xie xingguo) -* core: osd/osd_types: bump up some encoding versions (`pr#29923 <https://github.com/ceph/ceph/pull/29923>`_, xie xingguo) -* core: osd/osd_types: drop last_backfill_bitwise member (`pr#28766 <https://github.com/ceph/ceph/pull/28766>`_, Sage Weil) -* core: osd/osd_types: fix {omap,hitset_bytes}_stats_invalid handling on split/merge (`pr#30479 <https://github.com/ceph/ceph/pull/30479>`_, Sage Weil) -* core: osd/osd_types: inc-recovery - add special handler for lost_revert (`pr#29893 <https://github.com/ceph/ceph/pull/29893>`_, xie xingguo) -* core: osd/osd_types: pool_stat_t::dump - fix num_store_stats field (`issue#39340 <http://tracker.ceph.com/issues/39340>`_, `pr#27633 <https://github.com/ceph/ceph/pull/27633>`_, xie xingguo) -* core: osd/PeeringState.cc: dont let num_objects become negative (`pr#32305 <https://github.com/ceph/ceph/pull/32305>`_, Neha Ojha) -* core: osd/PeeringState.cc: skip peer_purged when discovering all missing (`pr#32195 <https://github.com/ceph/ceph/pull/32195>`_, Neha Ojha) -* core: osd/PeeringState.h: Fix pg stuck in WaitActingChange (`pr#29669 <https://github.com/ceph/ceph/pull/29669>`_, chen qiuzhang) -* core: osd/PeeringState.h: get_num_missing() should report num_missing() (`pr#30414 <https://github.com/ceph/ceph/pull/30414>`_, Neha Ojha) -* core: osd/PeeringState.h: ignore RemoteBackfillReserved in WaitLocalBackfillReserved (`pr#33525 <https://github.com/ceph/ceph/pull/33525>`_, Neha Ojha) -* core: osd/PeeringState: base lease support checks on features, not require_osd_release (`pr#30721 <https://github.com/ceph/ceph/pull/30721>`_, Sage Weil) -* core: osd/PeeringState: clear LAGGY and WAIT states on exiting Started (`pr#31864 <https://github.com/ceph/ceph/pull/31864>`_, Sage Weil) -* core: osd/PeeringState: disable read lease until require_osd_release >= octopus (`pr#30692 <https://github.com/ceph/ceph/pull/30692>`_, Sage Weil) -* core: osd/PeeringState: do not complain about past_intervals constrained by oldest epoch (`pr#29747 <https://github.com/ceph/ceph/pull/29747>`_, Sage Weil) -* core: osd/PeeringState: do not exclude up from acting_recovery_backfill (`pr#31703 <https://github.com/ceph/ceph/pull/31703>`_, xie xingguo) -* core: osd/PeeringState: do not start renewing leases until PG is activated (`pr#33129 <https://github.com/ceph/ceph/pull/33129>`_, Sage Weil) -* core: osd/PeeringState: fix wrong history of merge target (`pr#29835 <https://github.com/ceph/ceph/pull/29835>`_, xie xingguo) -* core: osd/PeeringState: on_new_interval on child PG after split (`pr#29780 <https://github.com/ceph/ceph/pull/29780>`_, Sage Weil) -* core: osd/PeeringState: recover_got - add special handler for empty log (`pr#30503 <https://github.com/ceph/ceph/pull/30503>`_, xie xingguo) -* core: osd/PeeringState: require SERVER_OCTOPUS to respond to RenewLease (`pr#33339 <https://github.com/ceph/ceph/pull/33339>`_, Neha Ojha) -* core: osd/PeeringState: send pg_info2 if release >= octopus (`pr#30836 <https://github.com/ceph/ceph/pull/30836>`_, Kefu Chai) -* core: osd/PeeringState: transit async_recovery_targets back into acting before backfilling (`pr#32202 <https://github.com/ceph/ceph/pull/32202>`_, xie xingguo) -* core: osd/PG: Add PG to large omap log message (`pr#30682 <https://github.com/ceph/ceph/pull/30682>`_, Brad Hubbard) -* core: osd/PG: adjust pg history on fabricated merge target if necessary (`issue#38623 <http://tracker.ceph.com/issues/38623>`_, `pr#26822 <https://github.com/ceph/ceph/pull/26822>`_, Sage Weil) -* core: osd/PG: clean up fastinfo key when last_update does not increase (`pr#32615 <https://github.com/ceph/ceph/pull/32615>`_, Sage Weil, Kefu Chai) -* core: osd/PG: discover missing objects when an OSD peers and PG is degraded (`pr#27288 <https://github.com/ceph/ceph/pull/27288>`_, Jonas Jelten) -* core: osd/PG: do not leak cluster message when theres no con (`pr#32897 <https://github.com/ceph/ceph/pull/32897>`_, Sage Weil) -* core: osd/PG: do not queue scrub if PG is not active when unblock (`issue#40451 <http://tracker.ceph.com/issues/40451>`_, `pr#28660 <https://github.com/ceph/ceph/pull/28660>`_, Sage Weil) -* core: osd/PG: do not use approx_missing_objects pre-nautilus (`pr#27798 <https://github.com/ceph/ceph/pull/27798>`_, Neha Ojha) -* core: osd/PG: fix cleanup of pgmeta-like objects on PG deletion; disallow empty object names (`pr#27929 <https://github.com/ceph/ceph/pull/27929>`_, Sage Weil) -* core: osd/PG: fix last_complete re-calculation on splitting (`issue#26958 <http://tracker.ceph.com/issues/26958>`_, `pr#27702 <https://github.com/ceph/ceph/pull/27702>`_, xie xingguo) -* core: osd/PG: fix _finish_recovery vs repair race (`pr#30059 <https://github.com/ceph/ceph/pull/30059>`_, xie xingguo) -* core: osd/PG: introduce all_missing_unfound helper (`issue#38784 <http://tracker.ceph.com/issues/38784>`_, `issue#38931 <http://tracker.ceph.com/issues/38931>`_, `pr#27205 <https://github.com/ceph/ceph/pull/27205>`_, xie xingguo) -* core: osd/PG: move down peers out from peer_purged (`issue#38931 <http://tracker.ceph.com/issues/38931>`_, `pr#27182 <https://github.com/ceph/ceph/pull/27182>`_, xie xingguo) -* core: osd/PG: move } to the proper place (`pr#27204 <https://github.com/ceph/ceph/pull/27204>`_, xie xingguo) -* core: osd/PG: remove unused code (`pr#30930 <https://github.com/ceph/ceph/pull/30930>`_, Jianpeng Ma) -* core: osd/PG: restart peering for undersized PG on any down stray peer coming back (`pr#33106 <https://github.com/ceph/ceph/pull/33106>`_, xie xingguo, Yan Jun) -* core: osd/PG: skip rollforward when !transaction_applied during append_log() (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `pr#26996 <https://github.com/ceph/ceph/pull/26996>`_, Neha Ojha) -* core: osd/PG: the warning seems more serious than what it wanna transmit (`pr#27509 <https://github.com/ceph/ceph/pull/27509>`_, Zengran Zhang) -* core: osd/PG: use emplace() to construct new element in-place (`pr#27124 <https://github.com/ceph/ceph/pull/27124>`_, Zengran Zhang) -* core: osd/PGLog.h: print olog_can_rollback_to before deciding to rollback (`issue#38894 <http://tracker.ceph.com/issues/38894>`_, `issue#21174 <http://tracker.ceph.com/issues/21174>`_, `pr#27105 <https://github.com/ceph/ceph/pull/27105>`_, Neha Ojha) -* core: osd/PGLog: persist num_objects_missing for replicas when peering is done (`pr#30466 <https://github.com/ceph/ceph/pull/30466>`_, xie xingguo) -* core: osd/PGLog: preserve original_crt to check rollbackability (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `pr#27200 <https://github.com/ceph/ceph/pull/27200>`_, Neha Ojha) -* core: osd/PGLog: reset log.complete_to when recover obect failed (`pr#30533 <https://github.com/ceph/ceph/pull/30533>`_, Tao Ning) -* core: osd/PGStateUtils: initialize NamedState::enter_time (`pr#33813 <https://github.com/ceph/ceph/pull/33813>`_, Jianpeng Ma) -* core: osd/PrimaryLogPG: always use strict priority ordering for kicked recovery ops (`pr#30632 <https://github.com/ceph/ceph/pull/30632>`_, xie xingguo) -* core: osd/PrimaryLogPG: Avoid accessing destroyed references in finish_degr\xe2\x80\xa6 (`pr#29663 <https://github.com/ceph/ceph/pull/29663>`_, Tao Ning) -* core: osd/PrimaryLogPG: cancel in-flight manifest ops on interval changing; fix race with scru (`pr#29985 <https://github.com/ceph/ceph/pull/29985>`_, xie xingguo) -* core: osd/PrimaryLogPG: do_op - do not create head object twice (`pr#28785 <https://github.com/ceph/ceph/pull/28785>`_, xie xingguo) -* core: osd/PrimaryLogPG: finish_copyfrom - dirty omap if necessary (`pr#29729 <https://github.com/ceph/ceph/pull/29729>`_, xie xingguo) -* core: osd/PrimaryLogPG: fix dirty range of write_full (`pr#29726 <https://github.com/ceph/ceph/pull/29726>`_, xie xingguo) -* core: osd/PrimaryLogPG: fix warning (`pr#30716 <https://github.com/ceph/ceph/pull/30716>`_, Sage Weil) -* core: osd/PrimaryLogPG: include op_returns in dup replies (`pr#30640 <https://github.com/ceph/ceph/pull/30640>`_, Sage Weil) -* core: osd/PrimaryLogPG: kill obsolete ondisk\\_{read,write}_lock comments (`pr#29719 <https://github.com/ceph/ceph/pull/29719>`_, xie xingguo) -* core: osd/PrimaryLogPG: more constness (`pr#28786 <https://github.com/ceph/ceph/pull/28786>`_, Kefu Chai) -* core: osd/PrimaryLogPG: remove unused parent pgls-filter (`pr#29675 <https://github.com/ceph/ceph/pull/29675>`_, Radoslaw Zarzynski, Kefu Chai) -* core: osd/PrimaryLogPG: simple debug message (`pr#32444 <https://github.com/ceph/ceph/pull/32444>`_, Jianpeng Ma) -* core: osd/PrimaryLogPG: skip obcs that dont exist during backfill scan_range (`pr#30715 <https://github.com/ceph/ceph/pull/30715>`_, Sage Weil) -* core: osd/PrimaryLogPG: update oi.size on write op implicitly truncating object up (`pr#30085 <https://github.com/ceph/ceph/pull/30085>`_, xie xingguo) -* core: osd/PrimaryLogPG: use legacy timestamp rendering for hit_set objects (`pr#33117 <https://github.com/ceph/ceph/pull/33117>`_, Sage Weil) -* core: osd/ReplicatedBackend: check against empty data_included before enabling crc (`pr#29621 <https://github.com/ceph/ceph/pull/29621>`_, xie xingguo) -* core: osd/scheduler/OpSchedulerItem: schedule backoffs as client ops (`pr#32382 <https://github.com/ceph/ceph/pull/32382>`_, Samuel Just) -* core: osd/SnapMapper: remove pre-octopus snapmapper keys after conversion (`pr#30368 <https://github.com/ceph/ceph/pull/30368>`_, Sage Weil) -* core: osd/SnapMirror: no need to record purged_snaps every epoch (`pr#31866 <https://github.com/ceph/ceph/pull/31866>`_, Sage Weil) -* core: OSD: modify n.cookie to op.notify.cookie (`pr#29418 <https://github.com/ceph/ceph/pull/29418>`_, yangjun) -* core: osdc/Objecter: always add `\\0 after strncpy() (`pr#27286 <https://github.com/ceph/ceph/pull/27286>`_, Kefu Chai) -* core: osdc/Objecter: Boost.Asio (I object!) (`pr#16715 <https://github.com/ceph/ceph/pull/16715>`_, Adam C. Emerson) -* core: osdc/Objecter: debug pause/unpause transition (`pr#32850 <https://github.com/ceph/ceph/pull/32850>`_, Sage Weil) -* core: osdc/Objecter: fix OSDMap leak in handle_osd_map (`issue#20491 <http://tracker.ceph.com/issues/20491>`_, `pr#28242 <https://github.com/ceph/ceph/pull/28242>`_, Sage Weil) -* core: osdc/Objecter: only pause if respects_full() (`pr#33020 <https://github.com/ceph/ceph/pull/33020>`_, Sage Weil) -* core: osdc/Objecter: pg-mapping cache (`pr#28487 <https://github.com/ceph/ceph/pull/28487>`_, xie xingguo) -* core: osdc/Objecter: _calc_target - inline spgid (`pr#28570 <https://github.com/ceph/ceph/pull/28570>`_, xie xingguo) -* core: osdc: Fix a missing : for the correct namespace (`pr#29472 <https://github.com/ceph/ceph/pull/29472>`_, Willem Jan Withagen) -* core: pybind/ceph_argparse: improve ceph -h syntax (`pr#30431 <https://github.com/ceph/ceph/pull/30431>`_, Sage Weil) -* core: pybind/mgr/mgr_module: fix standby module logging options (`pr#33639 <https://github.com/ceph/ceph/pull/33639>`_, Sage Weil) -* core: pybind/mgr/mgr_util: fix pretty time delta (`pr#33794 <https://github.com/ceph/ceph/pull/33794>`_, Sage Weil) -* core: pybind/mgr/\\*: fix config_notify handling of default values (`pr#32755 <https://github.com/ceph/ceph/pull/32755>`_, Sage Weil) -* core: qa/distros: add rhel/centos 8.1 (`pr#33026 <https://github.com/ceph/ceph/pull/33026>`_, Sage Weil) -* core: qa/distros: centos 7.6; update centos and ubuntu latest symlinks (`pr#27349 <https://github.com/ceph/ceph/pull/27349>`_, Sage Weil) -* core: qa/standalone/mon/osd-create-pool: fix utf-8 grep LANG (`pr#32711 <https://github.com/ceph/ceph/pull/32711>`_, Sage Weil) -* core: qa/standalone/osd/divergent-priors: add reproducer for bug 41816 (`pr#30506 <https://github.com/ceph/ceph/pull/30506>`_, Sage Weil) -* core: qa/standalone/osd/osd-bench: debug bluestore (`pr#32961 <https://github.com/ceph/ceph/pull/32961>`_, Sage Weil) -* core: qa/standalone/osd/osd-markdown: fix dup command disabling (`issue#38359 <http://tracker.ceph.com/issues/38359>`_, `pr#27499 <https://github.com/ceph/ceph/pull/27499>`_, Sage Weil) -* core: qa/standalone/scrub/osd-scrub-snaps: misc fixes for removed_snaps change (`issue#40725 <http://tracker.ceph.com/issues/40725>`_, `pr#29003 <https://github.com/ceph/ceph/pull/29003>`_, Sage Weil) -* core: qa/standalone: python -> python3 (`pr#32383 <https://github.com/ceph/ceph/pull/32383>`_, Sage Weil) -* core: qa/suites/rados/multimon/tasks/mon_clock_with_skews: disable ntpd etc (`pr#33184 <https://github.com/ceph/ceph/pull/33184>`_, Sage Weil) -* core: qa/suites/rados/multimon: fix failures (`issue#40112 <http://tracker.ceph.com/issues/40112>`_, `pr#28353 <https://github.com/ceph/ceph/pull/28353>`_, Sage Weil) -* core: qa/suites/rados/singleton-nomsgr/all/balancer: whitelist PG_AVAILABILITY (`pr#31747 <https://github.com/ceph/ceph/pull/31747>`_, Sage Weil) -* core: qa/suites/rados/singleton/all/ec-lost-unfound: no rbd pool (`pr#30596 <https://github.com/ceph/ceph/pull/30596>`_, Sage Weil) -* core: qa/suites/rados/thrash-old-clients: centos -> ubuntu (`pr#32356 <https://github.com/ceph/ceph/pull/32356>`_, Sage Weil) -* core: qa/suites/rados/thrash-old-clients: skip TestClsRbd.mirror test (`pr#31745 <https://github.com/ceph/ceph/pull/31745>`_, Sage Weil) -* core: qa/suites/rados/thrash: debug monc (`pr#32885 <https://github.com/ceph/ceph/pull/32885>`_, Sage Weil) -* core: qa/suites/upgrade/nautilus-x: misc updates (`pr#27138 <https://github.com/ceph/ceph/pull/27138>`_, Sage Weil) -* core: qa/suites/upgrade/\\*-x-singleton: enable bluestore debugging settings (`pr#27786 <https://github.com/ceph/ceph/pull/27786>`_, Sage Weil) -* core: qa/suites/upgrade: all upgrades to octopus on ubuntu only (`pr#32275 <https://github.com/ceph/ceph/pull/32275>`_, Sage Weil) -* core: qa/suits/rados/basic/tasks/rados_api_tests: pgs can go degraded (`pr#30627 <https://github.com/ceph/ceph/pull/30627>`_, Sage Weil) -* core: qa/tasks/ceph2: teuthology task to bring up a ceph-daemon+ssh cluster (`pr#31502 <https://github.com/ceph/ceph/pull/31502>`_, Sage Weil) -* core: qa/tasks/ceph: only re-request scrub on unscrubbed pgs (`pr#32988 <https://github.com/ceph/ceph/pull/32988>`_, Sage Weil) -* core: qa/tasks/ceph_manager: fix thrash_pg_upmap_items when no pools (`pr#29144 <https://github.com/ceph/ceph/pull/29144>`_, Sage Weil) -* core: qa/tasks/ceph_manager: make upmap thrasher behave when no pools/pgs (`pr#29069 <https://github.com/ceph/ceph/pull/29069>`_, Sage Weil) -* core: qa/tasks/ceph_manager: remove race from all_active_or_peered() (`pr#29498 <https://github.com/ceph/ceph/pull/29498>`_, Sage Weil) -* core: qa/tasks/ceph_manager: wait for clean before asserting clean on minsize test (`pr#29109 <https://github.com/ceph/ceph/pull/29109>`_, Sage Weil) -* core: qa/workunits/rados/test_large_omap_detection: py3-ify (`pr#32405 <https://github.com/ceph/ceph/pull/32405>`_, Sage Weil) -* core: qa: increase mon tell retries when injecting msgr failures (`pr#30872 <https://github.com/ceph/ceph/pull/30872>`_, Sage Weil) -* core: qa: more fixes for the removed_snaps changeset (`issue#40674 <http://tracker.ceph.com/issues/40674>`_, `pr#28901 <https://github.com/ceph/ceph/pull/28901>`_, Sage Weil) -* core: qa: run various tests on ubuntu (`pr#32278 <https://github.com/ceph/ceph/pull/32278>`_, Sage Weil) -* core: rados bench: fix the delayed checking of completed ops (`pr#32928 <https://github.com/ceph/ceph/pull/32928>`_, Jianshen Liu) -* core: Revert common: default pg_autoscale_mode=on for new pools (`pr#30440 <https://github.com/ceph/ceph/pull/30440>`_, David Zafman) -* core: Revert crush: remove invalid upmap items (`pr#32017 <https://github.com/ceph/ceph/pull/32017>`_, David Zafman) -* core: Revert Merge pull request #16715 from adamemerson/wip-I-Object! (`pr#31790 <https://github.com/ceph/ceph/pull/31790>`_, Sage Weil) -* core: Revert test: librados startup/shutdown racer test (`pr#31092 <https://github.com/ceph/ceph/pull/31092>`_, Sage Weil) -* core: rgw/rgw_tools: fix osd pool set json syntax (`pr#27967 <https://github.com/ceph/ceph/pull/27967>`_, Sage Weil) -* core: rocksdb: enable rocksdb_rmrange=true by default (`pr#29323 <https://github.com/ceph/ceph/pull/29323>`_, Sage Weil) -* core: rocksdb: Updated to v6.1.2 (`pr#29026 <https://github.com/ceph/ceph/pull/29026>`_, Mark Nelson) -* core: sample.ceph.conf: correct the default value of filestore merge threshold (`pr#28653 <https://github.com/ceph/ceph/pull/28653>`_, zhang Shaowen) -* core: selinux: Allow ceph to read udev d (`pr#29071 <https://github.com/ceph/ceph/pull/29071>`_, Boris Ranto) -* core: src/: Clean up endian handling (`pr#30409 <https://github.com/ceph/ceph/pull/30409>`_, Ulrich Weigand) -* core: src/dmclock: bring in fixes for indirect_intrusive_heap (`pr#32380 <https://github.com/ceph/ceph/pull/32380>`_, Samuel Just) -* core: src/osd: add tier-flush op (`pr#28778 <https://github.com/ceph/ceph/pull/28778>`_, Myoungwon Oh) -* core: test: add librados-based startup/shutdown racer test (`pr#30552 <https://github.com/ceph/ceph/pull/30552>`_, Jeff Layton) -* core: tools/rados: call pool_lookup() after rados is connected (`pr#30413 <https://github.com/ceph/ceph/pull/30413>`_, Vikhyat Umrao) -* core: tools/rados: prevent put operation from recreating object when --offset=0 (`pr#31230 <https://github.com/ceph/ceph/pull/31230>`_, Adam Kupczyk) -* core: tools/rados: Unmask -o to restore original behaviour (`pr#31310 <https://github.com/ceph/ceph/pull/31310>`_, Brad Hubbard) -* core: Wip lazy omap test (`pr#28070 <https://github.com/ceph/ceph/pull/28070>`_, Brad Hubbard) -* crimon/osd: serve read requests (`pr#26697 <https://github.com/ceph/ceph/pull/26697>`_, Kefu Chai) -* Crimson build fixes (`pr#33345 <https://github.com/ceph/ceph/pull/33345>`_, Samuel Just) -* crimson, common: Add ephemeral ObjectContext state to crimson (`pr#31202 <https://github.com/ceph/ceph/pull/31202>`_, Samuel Just) -* crimson,auth: fix FTBFS of crimson-osd and fix v1/v2 auth (`pr#27809 <https://github.com/ceph/ceph/pull/27809>`_, Kefu Chai, Yingxin Cheng) -* crimson,osd: performance fixes (`pr#28071 <https://github.com/ceph/ceph/pull/28071>`_, Kefu Chai, Radoslaw Zarzynski) -* crimson/common/errorator.h: add handle_error() method (`pr#31856 <https://github.com/ceph/ceph/pull/31856>`_, Radoslaw Zarzynski) -* crimson/common/errorator.h: simplify the compound safe_then() variant (`pr#31918 <https://github.com/ceph/ceph/pull/31918>`_, Radoslaw Zarzynski) -* crimson/common: more friendly to seastar::do_with() (`pr#33199 <https://github.com/ceph/ceph/pull/33199>`_, Kefu Chai) -* crimson/common: remove unused file .#log.cc (`pr#28828 <https://github.com/ceph/ceph/pull/28828>`_, Changcheng Liu) -* crimson/mon: fix the v1 auth (`pr#28041 <https://github.com/ceph/ceph/pull/28041>`_, Kefu Chai) -* crimson/mon: use shared_future for waiting MauthReply (`pr#30366 <https://github.com/ceph/ceph/pull/30366>`_, chunmei Liu) -* crimson/net: bug fixes from v2 failover tests (`pr#29882 <https://github.com/ceph/ceph/pull/29882>`_, Yingxin Cheng) -* crimson/net: clean-up and fixes of messenger (`pr#29057 <https://github.com/ceph/ceph/pull/29057>`_, Yingxin Cheng) -* crimson/net: extract do_write_dispatch_sweep() (`pr#27428 <https://github.com/ceph/ceph/pull/27428>`_, Yingxin Cheng) -* crimson/net: implement preemptive shutdown/close (`pr#28682 <https://github.com/ceph/ceph/pull/28682>`_, Yingxin Cheng) -* crimson/net: improve batching in the write path (`pr#27788 <https://github.com/ceph/ceph/pull/27788>`_, Yingxin Cheng) -* crimson/net: lossless policy for v2 protocol (`pr#29378 <https://github.com/ceph/ceph/pull/29378>`_, Yingxin Cheng) -* crimson/net: lossy connection for ProtocolV2 (`pr#26710 <https://github.com/ceph/ceph/pull/26710>`_, Yingxin Cheng) -* crimson/net: misc fixes in v1 read path (`pr#27837 <https://github.com/ceph/ceph/pull/27837>`_, Yingxin Cheng) -* crimson/net: prefer <fmt/chrono.h> over <fmt/time.h> (`pr#27831 <https://github.com/ceph/ceph/pull/27831>`_, Kefu Chai) -* crimson/net: prevent reusing the sent messages (`pr#28890 <https://github.com/ceph/ceph/pull/28890>`_, Yingxin Cheng) -* crimson/net: print tx/rx messages using logger().info() (`pr#28798 <https://github.com/ceph/ceph/pull/28798>`_, Kefu Chai) -* crimson/net: remove redundant std::move() (`pr#28317 <https://github.com/ceph/ceph/pull/28317>`_, Kefu Chai) -* crimson/net: v2 racing tests, stall tests and bug fixes (`pr#30313 <https://github.com/ceph/ceph/pull/30313>`_, Yingxin Cheng) -* crimson/os: do not fail if fsid file exists when mkfs (`pr#27006 <https://github.com/ceph/ceph/pull/27006>`_, chunmei Liu, Kefu Chai) -* crimson/os: init PG with pg coll not meta coll (`pr#33084 <https://github.com/ceph/ceph/pull/33084>`_, Kefu Chai) -* crimson/os: Object::read() returns bufferlist instead of never used errcode (`pr#30380 <https://github.com/ceph/ceph/pull/30380>`_, Radoslaw Zarzynski) -* crimson/osd/osd_operation.h: clean up duplicative check (`pr#31859 <https://github.com/ceph/ceph/pull/31859>`_, Radoslaw Zarzynski) -* crimson/osd/pg: start_operation for read_state, schedule_event_on_commit (`pr#28771 <https://github.com/ceph/ceph/pull/28771>`_, Samuel Just) -* crimson/osd/pg_meta: use initializer list for passing set<> (`pr#28461 <https://github.com/ceph/ceph/pull/28461>`_, Kefu Chai) -* crimson/osd: abort on unsupported objectstore type (`pr#28790 <https://github.com/ceph/ceph/pull/28790>`_, Kefu Chai) -* crimson/osd: add --help-seastar command line option (`pr#28794 <https://github.com/ceph/ceph/pull/28794>`_, Kefu Chai) -* crimson/osd: add minimal state machine for PG peering (`pr#27071 <https://github.com/ceph/ceph/pull/27071>`_, Kefu Chai) -* crimson/osd: add pgls support (`pr#30433 <https://github.com/ceph/ceph/pull/30433>`_, Kefu Chai) -* crimson/osd: cache object_info and snapset in PGBackend (`pr#27310 <https://github.com/ceph/ceph/pull/27310>`_, Kefu Chai) -* crimson/osd: call at_exit() before stopping the engine (`pr#27177 <https://github.com/ceph/ceph/pull/27177>`_, Kefu Chai) -* crimson/osd: call engine().exit(0) after mkfs (`pr#27061 <https://github.com/ceph/ceph/pull/27061>`_, Kefu Chai) -* crimson/osd: capture watcher when calling its member function (`pr#33425 <https://github.com/ceph/ceph/pull/33425>`_, Kefu Chai) -* crimson/osd: cleanups (`pr#30736 <https://github.com/ceph/ceph/pull/30736>`_, Kefu Chai) -* crimson/osd: consolidate the code to initialize msgrs (`pr#27426 <https://github.com/ceph/ceph/pull/27426>`_, Kefu Chai) -* crimson/osd: create msgrs in main.cc (`pr#27066 <https://github.com/ceph/ceph/pull/27066>`_, Kefu Chai) -* crimson/osd: crimson/osd: do not load fullmap.0 (`pr#27004 <https://github.com/ceph/ceph/pull/27004>`_, chunmei Liu, Kefu Chai) -* crimson/osd: differentiate write from writefull (`pr#28959 <https://github.com/ceph/ceph/pull/28959>`_, Kefu Chai) -* crimson/osd: do not add whoami as hb peer and cleanups (`pr#27307 <https://github.com/ceph/ceph/pull/27307>`_, Kefu Chai) -* crimson/osd: extend OpsExecuter to carry about op effects (`pr#30310 <https://github.com/ceph/ceph/pull/30310>`_, Radoslaw Zarzynski) -* crimson/osd: fix the build broken by df771861 (`pr#28053 <https://github.com/ceph/ceph/pull/28053>`_, chunmei Liu) -* crimson/osd: fix the Clang build in create_watch_info() (`pr#33350 <https://github.com/ceph/ceph/pull/33350>`_, Radoslaw Zarzynski) -* crimson/osd: implement replicated write (`pr#29076 <https://github.com/ceph/ceph/pull/29076>`_, Kefu Chai) -* crimson/osd: init PG with more info (`pr#27064 <https://github.com/ceph/ceph/pull/27064>`_, Kefu Chai) -* crimson/osd: lower debug level on i/o path (`pr#27338 <https://github.com/ceph/ceph/pull/27338>`_, Kefu Chai) -* crimson/osd: misc fixes and cleanup (`pr#33528 <https://github.com/ceph/ceph/pull/33528>`_, Yingxin Cheng) -* crimson/osd: misc fixes for OSD reboot-ability (`pr#33595 <https://github.com/ceph/ceph/pull/33595>`_, Yingxin Cheng) -* crimson/osd: partition args the right way (`pr#27211 <https://github.com/ceph/ceph/pull/27211>`_, Kefu Chai) -* crimson/osd: pass unknown args to ConfigProxy::parse_args() (`pr#27062 <https://github.com/ceph/ceph/pull/27062>`_, Kefu Chai) -* crimson/osd: remove unneeded captures - pg.cc (`pr#33349 <https://github.com/ceph/ceph/pull/33349>`_, Ronen Friedman) -* crimson/osd: report pg_stats to mgr (`pr#27065 <https://github.com/ceph/ceph/pull/27065>`_, Kefu Chai) -* crimson/osd: should handle pg_lease messages (`pr#30834 <https://github.com/ceph/ceph/pull/30834>`_, Kefu Chai) -* crimson/osd: shutdown services in the right order (`pr#27987 <https://github.com/ceph/ceph/pull/27987>`_, Kefu Chai) -* crimson/osd: some cleanups (`pr#28402 <https://github.com/ceph/ceph/pull/28402>`_, Kefu Chai) -* crimson/osd: support write pid_file when osd start (`pr#27413 <https://github.com/ceph/ceph/pull/27413>`_, chunmei Liu) -* crimson/osd: update peering_state in PG::on_activate_complete() (`pr#28747 <https://github.com/ceph/ceph/pull/28747>`_, Kefu Chai) -* crimson/osd: use single-pg peering ops (`pr#30372 <https://github.com/ceph/ceph/pull/30372>`_, Kefu Chai) -* crimson/thread: generalize Task so it works w/ func returns void (`pr#32742 <https://github.com/ceph/ceph/pull/32742>`_, Kefu Chai) -* crimson/{net,mon,osd}: misc logging changes (`pr#27099 <https://github.com/ceph/ceph/pull/27099>`_, Kefu Chai) -* crimson/{osd,heartbeat}: allow heartbeat to have access to authorizer (`pr#27059 <https://github.com/ceph/ceph/pull/27059>`_, Kefu Chai) -* crimson/{osd,mon}: lower log level when sending a replicated op (`pr#30957 <https://github.com/ceph/ceph/pull/30957>`_, Kefu Chai) -* crimson: add editor properties header (`pr#33408 <https://github.com/ceph/ceph/pull/33408>`_, Kefu Chai) -* crimson: add FuturizedStore to encapsulate CyanStore (`pr#28358 <https://github.com/ceph/ceph/pull/28358>`_, chunmei Liu) -* crimson: add missing include in common/errorator.h (`pr#32490 <https://github.com/ceph/ceph/pull/32490>`_, Radoslaw Zarzynski) -* crimson: add support for basic write path (`pr#27873 <https://github.com/ceph/ceph/pull/27873>`_, Radoslaw Zarzynski) -* crimson: add support for watch / notify, part 1 (`pr#32679 <https://github.com/ceph/ceph/pull/32679>`_, Radoslaw Zarzynski) -* crimson: bring ceph::errorator with its first appliances (`pr#30387 <https://github.com/ceph/ceph/pull/30387>`_, Radoslaw Zarzynski) -* crimson: CLANG-related fixes to errorator.h (`pr#32488 <https://github.com/ceph/ceph/pull/32488>`_, Ronen Friedman, Radoslaw Zarzynski) -* crimson: clean up and refactor asok (`pr#33357 <https://github.com/ceph/ceph/pull/33357>`_, Kefu Chai) -* crimson: enable cephx for v2 msgr (`pr#27514 <https://github.com/ceph/ceph/pull/27514>`_, Kefu Chai) -* crimson: fix build with GCC-10 (`pr#33233 <https://github.com/ceph/ceph/pull/33233>`_, Kefu Chai) -* crimson: fix crimson pg coll usage error (`pr#33076 <https://github.com/ceph/ceph/pull/33076>`_, Chunmei Liu) -* crimson: fix lambda captures of non-variables (`pr#32494 <https://github.com/ceph/ceph/pull/32494>`_, Ronen Friedman) -* crimson: futurized CyanStores member functions and Collection (`pr#29470 <https://github.com/ceph/ceph/pull/29470>`_, Kefu Chai, chunmei Liu) -* crimson: handle MOSDPGQuery2 properly (`pr#30399 <https://github.com/ceph/ceph/pull/30399>`_, Kefu Chai) -* crimson: make seastar::do_with() a friend of errorated futures (`pr#32175 <https://github.com/ceph/ceph/pull/32175>`_, Radoslaw Zarzynski) -* crimson: move dummy impl of AuthServer to DummyAuth (`pr#27452 <https://github.com/ceph/ceph/pull/27452>`_, Kefu Chai) -* crimson: move os/cyan\\_\\* down to os/cyanstore/\\* (`pr#31874 <https://github.com/ceph/ceph/pull/31874>`_, Kefu Chai) -* crimson: pass `Connection\\*` to Dispatch::ms_dispatch() (`pr#27690 <https://github.com/ceph/ceph/pull/27690>`_, Yingxin Cheng, Kefu Chai) -* crimson: pickup change to fix --cpuset support and cleanups (`pr#33250 <https://github.com/ceph/ceph/pull/33250>`_, Kefu Chai) -* crimson: remove some attributes from lambda (`pr#32604 <https://github.com/ceph/ceph/pull/32604>`_, Ronen Friedman) -* crimson: run in foreground if possible, silence warnings (`pr#30474 <https://github.com/ceph/ceph/pull/30474>`_, Samuel Just, Kefu Chai) -* crimson: s/ceph/crimson/ in namespace names (`pr#31069 <https://github.com/ceph/ceph/pull/31069>`_, Kefu Chai) -* crimson: serve basic RBD traffic coming from fio (`pr#30339 <https://github.com/ceph/ceph/pull/30339>`_, Radoslaw Zarzynski) -* crimson: solve the problem that crimson-osd\s created pgs stuck in unknown state (`pr#33780 <https://github.com/ceph/ceph/pull/33780>`_, Xuehan Xu) -* crimson: stop osd before stopping messengers (`pr#31904 <https://github.com/ceph/ceph/pull/31904>`_, Kefu Chai) -* crimson: support pgnls and delete op (`pr#28079 <https://github.com/ceph/ceph/pull/28079>`_, Kefu Chai) -* crimson: update osd when peer gets authenticated (`pr#27416 <https://github.com/ceph/ceph/pull/27416>`_, Kefu Chai) -* crimson: use given osd_fsid when mkfs (`pr#28800 <https://github.com/ceph/ceph/pull/28800>`_, Kefu Chai) -* crimson:: add alien blue store (`pr#31041 <https://github.com/ceph/ceph/pull/31041>`_, Samuel Just, Chunmei Liu, Kefu Chai) -* crush: add root_bucket to identify underfull buckets (`issue#38826 <http://tracker.ceph.com/issues/38826>`_, `pr#27068 <https://github.com/ceph/ceph/pull/27068>`_, huangjun) -* crush: remove invalid upmap items (`pr#31131 <https://github.com/ceph/ceph/pull/31131>`_, huangjun) -* crush: remove invalid upmap items (`pr#32099 <https://github.com/ceph/ceph/pull/32099>`_, huangjun) -* crush: various fixes for weight-sets, the osd_crush_update_weight_set option, and tests (`pr#26955 <https://github.com/ceph/ceph/pull/26955>`_, Sage Weil) -* dashboard/services: fix lint error (`pr#30289 <https://github.com/ceph/ceph/pull/30289>`_, Willem Jan Withagen) -* deb,rpm: switch to python 3 (`pr#32252 <https://github.com/ceph/ceph/pull/32252>`_, Sage Weil, Alfredo Deza) -* debian: add python3-jsonpatch as dependency (`pr#33298 <https://github.com/ceph/ceph/pull/33298>`_, Sebastian Wagner) -* denc: allow DencDumper to dump OOB buffer (`pr#27704 <https://github.com/ceph/ceph/pull/27704>`_, Kefu Chai) -* doc/bootstrap: fixed default --keyring target (`pr#32643 <https://github.com/ceph/ceph/pull/32643>`_, Yaarit Hatuka) -* doc/foundation: fix amihan (`pr#32999 <https://github.com/ceph/ceph/pull/32999>`_, Sage Weil) -* doc: .organizationmap: Wido 42on -> 42on (`pr#32260 <https://github.com/ceph/ceph/pull/32260>`_, Sage Weil) -* doc: add a deduplication document (`pr#28462 <https://github.com/ceph/ceph/pull/28462>`_, Myoungwon Oh) -* doc: add a doc for vstart_runner.py (`pr#29907 <https://github.com/ceph/ceph/pull/29907>`_, Rishabh Dave) -* doc: add a new document on distributed cephfs metadata cache (`pr#30265 <https://github.com/ceph/ceph/pull/30265>`_, Jeff Layton) -* doc: Add a new document on Dynamic Metadata Management in CephFS (`pr#30348 <https://github.com/ceph/ceph/pull/30348>`_, Sidharth Anupkrishnan) -* doc: Add a RGW swift auth note (`pr#31309 <https://github.com/ceph/ceph/pull/31309>`_, Matthew Oliver) -* doc: add ceph fs volumes and subvolumes documentation (`pr#30381 <https://github.com/ceph/ceph/pull/30381>`_, Ramana Raja) -* doc: add CephFS Octopus release notes (`pr#33450 <https://github.com/ceph/ceph/pull/33450>`_, Patrick Donnelly) -* doc: add changelog for nautilus (`pr#27048 <https://github.com/ceph/ceph/pull/27048>`_, Abhishek Lekshmanan) -* doc: add chrony to preflight checklist for Ubuntu 18.04 (`pr#31948 <https://github.com/ceph/ceph/pull/31948>`_, Zac Dover) -* doc: add config help/get/set section for runtime client configuration (`issue#41688 <http://tracker.ceph.com/issues/41688>`_, `pr#32117 <https://github.com/ceph/ceph/pull/32117>`_, Venky Shankar) -* doc: Add Dashboard Octopus release notes (`pr#33555 <https://github.com/ceph/ceph/pull/33555>`_, Lenz Grimmer) -* doc: add description for fuse_disable_pagecache (`pr#31902 <https://github.com/ceph/ceph/pull/31902>`_, Yan, Zheng) -* doc: add doc for blacklisting older CephFS clients (`issue#39130 <http://tracker.ceph.com/issues/39130>`_, `pr#27412 <https://github.com/ceph/ceph/pull/27412>`_, Patrick Donnelly) -* doc: add doc for cephfs lazyio (`issue#38729 <http://tracker.ceph.com/issues/38729>`_, `pr#26976 <https://github.com/ceph/ceph/pull/26976>`_, Yan, Zheng) -* doc: add guide for running tests with teuthology (`pr#32114 <https://github.com/ceph/ceph/pull/32114>`_, Rishabh Dave) -* doc: add mds map to list of ceph monitor assets (`pr#32631 <https://github.com/ceph/ceph/pull/32631>`_, Zac Dover) -* doc: add missed word than in doc/man/8/rbd.rst (`pr#31022 <https://github.com/ceph/ceph/pull/31022>`_, Drunkard Zhang) -* doc: Add missing mgr cap for the bootstrap keyring (`pr#27201 <https://github.com/ceph/ceph/pull/27201>`_, Bryan Stillwell) -* doc: add missing virtualenv for build-doc (`pr#31896 <https://github.com/ceph/ceph/pull/31896>`_, Rodrigo Severo) -* doc: Add note to execute cephfs-shell (`pr#27369 <https://github.com/ceph/ceph/pull/27369>`_, Varsha Rao) -* doc: add package for Golang (`issue#38730 <http://tracker.ceph.com/issues/38730>`_, `pr#26937 <https://github.com/ceph/ceph/pull/26937>`_, Irek Fasikhov) -* doc: add Python 2 to Ubuntu 18.04 installations (`pr#31947 <https://github.com/ceph/ceph/pull/31947>`_, Zac Dover) -* doc: add release notes for 13.2.5 mimic (`pr#26913 <https://github.com/ceph/ceph/pull/26913>`_, Abhishek Lekshmanan) -* doc: add release notes for v13.2.6 mimic (`pr#28385 <https://github.com/ceph/ceph/pull/28385>`_, Abhishek Lekshmanan) -* doc: Add sphinx_autodoc_typehints extension (`pr#33577 <https://github.com/ceph/ceph/pull/33577>`_, Sebastian Wagner) -* doc: Add stat command usage in cephfs-shell (`pr#28236 <https://github.com/ceph/ceph/pull/28236>`_, Varsha Rao) -* doc: Add usage for shortcuts command in cephfs-shell (`pr#27373 <https://github.com/ceph/ceph/pull/27373>`_, Varsha Rao) -* doc: Add warning that the root directory cannot be fragmented (`pr#28354 <https://github.com/ceph/ceph/pull/28354>`_, Nathan Fish) -* doc: Added a link to Ceph Community Calendar (`pr#31475 <https://github.com/ceph/ceph/pull/31475>`_, Zac Dover) -* doc: added a remark to always use powers of two for pg_num (`pr#31541 <https://github.com/ceph/ceph/pull/31541>`_, Thomas Schneider) -* doc: added an is where it was needed (`pr#32374 <https://github.com/ceph/ceph/pull/32374>`_, Zac Dover) -* doc: Added dashboard features, improved wording (`pr#27997 <https://github.com/ceph/ceph/pull/27997>`_, Lenz Grimmer) -* doc: added section on creating RESTful API user (`pr#26016 <https://github.com/ceph/ceph/pull/26016>`_, James McClune) -* doc: Added the crisp getting started guide to index.rst (`pr#32531 <https://github.com/ceph/ceph/pull/32531>`_, Zac Dover) -* doc: Adding US-Mid-West Mirror to docs (`pr#25099 <https://github.com/ceph/ceph/pull/25099>`_, Mike Perez) -* doc: Adds cmake build options for optionally skipping few components (`pr#31066 <https://github.com/ceph/ceph/pull/31066>`_, Deepika Upadhyay) -* doc: adjust for mon_status changes in octopus (`pr#33703 <https://github.com/ceph/ceph/pull/33703>`_, Nathan Cutler) -* doc: admin,doc/_ext/ceph_releases.py: use yaml.safe_load() (`pr#28463 <https://github.com/ceph/ceph/pull/28463>`_, Kefu Chai) -* doc: admin/build-doc: always install python3-\\* for build deps (`pr#32481 <https://github.com/ceph/ceph/pull/32481>`_, Kefu Chai) -* doc: admin/build-doc: do not use system site-packages (`pr#32285 <https://github.com/ceph/ceph/pull/32285>`_, Sage Weil) -* doc: admin/build-doc: Fix doxygen typo (`pr#32572 <https://github.com/ceph/ceph/pull/32572>`_, Varsha Rao) -* doc: admin/build-doc: use python3 (`pr#29528 <https://github.com/ceph/ceph/pull/29528>`_, Kefu Chai) -* doc: admin/doc-requirements.txt: bump up Sphinx and breathe (`pr#32301 <https://github.com/ceph/ceph/pull/32301>`_, Kefu Chai) -* doc: admin/serve-doc: Switch to python3 only (`pr#33596 <https://github.com/ceph/ceph/pull/33596>`_, Brad Hubbard) -* doc: always load resources via HTTPS (`pr#29544 <https://github.com/ceph/ceph/pull/29544>`_, Tiago Melo) -* doc: ceph-monstore-tool: correct the key for storing mgr_command_descs (`pr#33172 <https://github.com/ceph/ceph/pull/33172>`_, Kefu Chai) -* doc: cephfs: add section on fsync error reporting to posix.rst (`issue#24641 <http://tracker.ceph.com/issues/24641>`_, `pr#28300 <https://github.com/ceph/ceph/pull/28300>`_, Jeff Layton) -* doc: change case from `apis` to `APIs` (`pr#33664 <https://github.com/ceph/ceph/pull/33664>`_, Deepika Upadhyay) -* doc: clarify difference between fs and kcephfs suite (`pr#32144 <https://github.com/ceph/ceph/pull/32144>`_, Rishabh Dave) -* doc: clarify priority use (`pr#32191 <https://github.com/ceph/ceph/pull/32191>`_, Yuri Weinstein) -* doc: clarify support for rbd fancy striping (`pr#32176 <https://github.com/ceph/ceph/pull/32176>`_, Ilya Dryomov) -* doc: cleanup CephFS Landing Page (`pr#30542 <https://github.com/ceph/ceph/pull/30542>`_, Milind Changire) -* doc: coding-style: update a link and fix typos (`pr#33128 <https://github.com/ceph/ceph/pull/33128>`_, Ponnuvel Palaniyappan) -* doc: common/admin_socket: Add doxygen for call and call_async (`pr#32547 <https://github.com/ceph/ceph/pull/32547>`_, Adam Kupczyk) -* doc: common/hobject: Error invocation of formula in documentation (`pr#28366 <https://github.com/ceph/ceph/pull/28366>`_, Albert) -* doc: config-ref: add a note on current scheduler settings (`pr#27243 <https://github.com/ceph/ceph/pull/27243>`_, Abhishek Lekshmanan) -* doc: correct example to use vstart to run up cluster (`pr#26816 <https://github.com/ceph/ceph/pull/26816>`_, Changcheng Liu) -* doc: cover more cache modes in rados/operations/cache-tiering.rst (`issue#14153 <http://tracker.ceph.com/issues/14153>`_, `pr#17614 <https://github.com/ceph/ceph/pull/17614>`_, Nathan Cutler) -* doc: default values for mon_health_to_clog\\_\\* were flipped (`pr#29867 <https://github.com/ceph/ceph/pull/29867>`_, James McClune) -* doc: describe metadata_heap cleanup (`issue#18174 <http://tracker.ceph.com/issues/18174>`_, `pr#26915 <https://github.com/ceph/ceph/pull/26915>`_, Dan van der Ster) -* doc: Describe recovery and backfill prioritizations (`issue#39011 <http://tracker.ceph.com/issues/39011>`_, `pr#27941 <https://github.com/ceph/ceph/pull/27941>`_, David Zafman) -* doc: doc : fixed capitalization (`pr#27379 <https://github.com/ceph/ceph/pull/27379>`_, Servesha Dudhgaonkar) -* doc: doc, qa: remove invalid option mon_pg_warn_max_per_osd (`pr#30787 <https://github.com/ceph/ceph/pull/30787>`_, zhang daolong) -* doc: doc,admin: fix the builtin search (`pr#33592 <https://github.com/ceph/ceph/pull/33592>`_, Kefu Chai) -* doc: doc/architecture.rst: fix a typo in EC section (`pr#33241 <https://github.com/ceph/ceph/pull/33241>`_, Nag Pavan Chilakam) -* doc: doc/bootstrap.rst: fix githus url (`pr#31086 <https://github.com/ceph/ceph/pull/31086>`_, Alexandre Bruyelles) -* doc: doc/bootstrap: add mds and rgw steps to bootstrap (`pr#33088 <https://github.com/ceph/ceph/pull/33088>`_, Sage Weil) -* doc: doc/ceph-fuse: describe -n option (`pr#30911 <https://github.com/ceph/ceph/pull/30911>`_, Rishabh Dave) -* doc: doc/ceph-fuse: mention -k option in ceph-fuse man page (`pr#30561 <https://github.com/ceph/ceph/pull/30561>`_, Rishabh Dave) -* doc: doc/ceph-kvstore-tool: add description for stats command (`pr#29990 <https://github.com/ceph/ceph/pull/29990>`_, Josh Durgin, Adam Kupczyk) -* doc: doc/ceph-volume: initial docs for zfs/inventory and zfs/api (`pr#31252 <https://github.com/ceph/ceph/pull/31252>`_, Willem Jan Withagen) -* doc: doc/cephadm/administration: clarify log gathering (`pr#33627 <https://github.com/ceph/ceph/pull/33627>`_, Nathan Cutler) -* doc: doc/cephadm: adjust syntax for config set (`pr#33600 <https://github.com/ceph/ceph/pull/33600>`_, Joshua Schmid) -* doc: doc/cephadm: big cleanup of cephadm docs (`pr#33981 <https://github.com/ceph/ceph/pull/33981>`_, Sage Weil) -* doc: doc/cephadm: Troubleshooting (`pr#33460 <https://github.com/ceph/ceph/pull/33460>`_, Sebastian Wagner) -* doc: doc/cephfs/client-auth: description and example are inconsistent (`pr#32762 <https://github.com/ceph/ceph/pull/32762>`_, Ilya Dryomov) -* doc: doc/cephfs/disaster-recovery-experts: Add link for scrub and note for scrub_path (`pr#32124 <https://github.com/ceph/ceph/pull/32124>`_, Varsha Rao) -* doc: doc/cephfs: add doc for cephfs io path (`pr#30369 <https://github.com/ceph/ceph/pull/30369>`_, Yan, Zheng) -* doc: doc/cephfs: correct a description mistake about mds states (`issue#41893 <http://tracker.ceph.com/issues/41893>`_, `pr#30427 <https://github.com/ceph/ceph/pull/30427>`_, Xiao Guodong) -* doc: doc/cephfs: improve add/remove MDS section (`issue#39620 <http://tracker.ceph.com/issues/39620>`_, `pr#28700 <https://github.com/ceph/ceph/pull/28700>`_, Patrick Donnelly) -* doc: doc/cephfs: migrate best practices recommendations to relevant docs (`pr#32522 <https://github.com/ceph/ceph/pull/32522>`_, Rishabh Dave) -* doc: doc/cleanup: drop repo-access.rst (`pr#32276 <https://github.com/ceph/ceph/pull/32276>`_, Nathan Cutler) -* doc: doc/corpus: update to adapt the change from autotools to cmake (`pr#27552 <https://github.com/ceph/ceph/pull/27552>`_, Kefu Chai) -* doc: doc/dev/corpus.rst: correct instructions (`pr#27741 <https://github.com/ceph/ceph/pull/27741>`_, Kefu Chai) -* doc: doc/dev/corpus.rst: minor tweaks (`pr#28877 <https://github.com/ceph/ceph/pull/28877>`_, Kefu Chai) -* doc: doc/dev/crimson.rst: document CBT testing (`pr#30290 <https://github.com/ceph/ceph/pull/30290>`_, Kefu Chai) -* doc: doc/dev/crimson: transpose options of compare.py (`pr#30453 <https://github.com/ceph/ceph/pull/30453>`_, Kefu Chai) -* doc: doc/dev/developer_guide/index.rst: add youtube reference for Getting Started (`pr#29712 <https://github.com/ceph/ceph/pull/29712>`_, Neha Ojha) -* doc: doc/dev/developer_guide/index.rst: add youtube references (`pr#29033 <https://github.com/ceph/ceph/pull/29033>`_, Neha Ojha) -* doc: doc/dev/developer_guide: fix heading level (`pr#30428 <https://github.com/ceph/ceph/pull/30428>`_, Nathan Cutler) -* doc: doc/dev/developer_guide: remove web address (`pr#29183 <https://github.com/ceph/ceph/pull/29183>`_, gabriellasroman) -* doc: doc/dev/kubernetes: Update (`pr#28081 <https://github.com/ceph/ceph/pull/28081>`_, Sebastian Wagner) -* doc: doc/dev/osd_internals/async_recovery: update cost calculation (`pr#28036 <https://github.com/ceph/ceph/pull/28036>`_, Neha Ojha) -* doc: doc/dev: add crimson.rst (`pr#28674 <https://github.com/ceph/ceph/pull/28674>`_, Kefu Chai) -* doc: doc/dev: add teuthology priority recommendations (`pr#30308 <https://github.com/ceph/ceph/pull/30308>`_, Patrick Donnelly) -* doc: doc/developer: fix dev mailing list address (`pr#32442 <https://github.com/ceph/ceph/pull/32442>`_, Willem Jan Withagen) -* doc: doc/drivegroups: add docs for DriveGroups with excessive examples (`pr#33044 <https://github.com/ceph/ceph/pull/33044>`_, Joshua Schmid) -* doc: doc/foundation: add ceph foundation info here (`pr#31955 <https://github.com/ceph/ceph/pull/31955>`_, Sage Weil) -* doc: doc/foundation: add cloudbase and vexxhost (`pr#32013 <https://github.com/ceph/ceph/pull/32013>`_, Sage Weil) -* doc: doc/foundation: add Samsung Electronics (`pr#33518 <https://github.com/ceph/ceph/pull/33518>`_, Sage Weil) -* doc: doc/governance: add cbodey (`pr#27708 <https://github.com/ceph/ceph/pull/27708>`_, Sage Weil) -* doc: doc/index: remove quick start from front page for now (`pr#33207 <https://github.com/ceph/ceph/pull/33207>`_, Sage Weil) -* doc: doc/install/containers: add summary of containers and branches (`pr#31465 <https://github.com/ceph/ceph/pull/31465>`_, Sage Weil) -* doc: doc/install/containers: note vX.Y.Z[-YYYYMMDD] tags (`pr#31975 <https://github.com/ceph/ceph/pull/31975>`_, Sage Weil) -* doc: doc/install/manual-deployment: Change owner to ceph for the keyring file (`pr#31452 <https://github.com/ceph/ceph/pull/31452>`_, Jeffrey Chu) -* doc: doc/install/upgrading-ceph: systemctl in Ubuntu instructions (`pr#32595 <https://github.com/ceph/ceph/pull/32595>`_, Rodrigo Severo) -* doc: doc/install: rethink install doc installation methods order (`pr#33890 <https://github.com/ceph/ceph/pull/33890>`_, Zac Dover, Sebastian Wagner) -* doc: doc/man/ceph: document ceph config (`pr#30645 <https://github.com/ceph/ceph/pull/30645>`_, Kefu Chai) -* doc: doc/man: improve bluefs-bdev-expand option (`pr#32590 <https://github.com/ceph/ceph/pull/32590>`_, Kefu Chai) -* doc: doc/mgr/ansible.rst: fix typo (`pr#28827 <https://github.com/ceph/ceph/pull/28827>`_, Lan Liu) -* doc: doc/mgr/cephadm: document adoption process (`pr#33459 <https://github.com/ceph/ceph/pull/33459>`_, Sage Weil) -* doc: doc/mgr/orchestrator.rst: updated current implementation status (`pr#33410 <https://github.com/ceph/ceph/pull/33410>`_, Kai Wagner) -* doc: doc/mgr/orchestrator: Add Cephfs (`pr#33574 <https://github.com/ceph/ceph/pull/33574>`_, Sebastian Wagner) -* doc: doc/mgr/orchestrator_cli: Rook orch supports mon update (`issue#39137 <http://tracker.ceph.com/issues/39137>`_, `pr#27431 <https://github.com/ceph/ceph/pull/27431>`_, Sebastian Wagner) -* doc: doc/mgr/telemetry: added device channel details (`pr#33113 <https://github.com/ceph/ceph/pull/33113>`_, Yaarit Hatuka) -* doc: doc/mgr/telemetry: update default interval (`pr#31008 <https://github.com/ceph/ceph/pull/31008>`_, Tim Serong) -* doc: doc/mgr: Enhance placement specs (`pr#33924 <https://github.com/ceph/ceph/pull/33924>`_, Sebastian Wagner) -* doc: doc/orchestrator: Fix broken bullet points (`issue#39094 <http://tracker.ceph.com/issues/39094>`_, `pr#27121 <https://github.com/ceph/ceph/pull/27121>`_, Sebastian Wagner) -* doc: doc/orchestrator: Fix various issues in Orchestrator CLI documentation (`pr#31353 <https://github.com/ceph/ceph/pull/31353>`_, Volker Theile) -* doc: doc/orchestrator: Sync status with reality (`pr#30281 <https://github.com/ceph/ceph/pull/30281>`_, Sebastian Wagner) -* doc: doc/orchestrator: update rgw creation (`pr#33540 <https://github.com/ceph/ceph/pull/33540>`_, Yehuda Sadeh) -* doc: doc/rados/api/python: Add documentation for mon_command (`pr#26934 <https://github.com/ceph/ceph/pull/26934>`_, Sebastian Wagner) -* doc: doc/rados/configuration/osd-config-ref.rst: document osd_delete_sleep (`pr#28775 <https://github.com/ceph/ceph/pull/28775>`_, Neha Ojha) -* doc: doc/rados/configuration: fix typo in mon-lookup-dns (`pr#27362 <https://github.com/ceph/ceph/pull/27362>`_, Vanush Misha Paturyan) -* doc: doc/rados/configuration: fix typos in osd-config-ref.rst (`pr#28805 <https://github.com/ceph/ceph/pull/28805>`_, Lan Liu) -* doc: doc/rados/configuration: update to be in sync with ConfUtils changes (`pr#28753 <https://github.com/ceph/ceph/pull/28753>`_, Kefu Chai) -* doc: doc/rados/deployment/ceph-deploy-mon: fix typo (`pr#31164 <https://github.com/ceph/ceph/pull/31164>`_, Kefu Chai) -* doc: doc/rados/operations/crush-map-edits: recompile and set instructions (`pr#32451 <https://github.com/ceph/ceph/pull/32451>`_, Rodrigo Severo) -* doc: doc/rados/operations/devices: document device failure prediction (`pr#27472 <https://github.com/ceph/ceph/pull/27472>`_, Sage Weil) -* doc: doc/rados/operations/erasure-code.rst: allow recovery below min_size (`pr#28750 <https://github.com/ceph/ceph/pull/28750>`_, Greg Farnum, Neha Ojha) -* doc: doc/rados/operations: add safe-to-destroy check to OSD replacement workflow (`pr#28491 <https://github.com/ceph/ceph/pull/28491>`_, Sage Weil) -* doc: doc/rados/operations: crush_rule is a name (`pr#29367 <https://github.com/ceph/ceph/pull/29367>`_, Kefu Chai) -* doc: doc/rados/operations: document BLUEFS_SPILLOVER (`pr#27316 <https://github.com/ceph/ceph/pull/27316>`_, Sage Weil) -* doc: doc/rados/operations: min_size is applicable to EC (`pr#33543 <https://github.com/ceph/ceph/pull/33543>`_, Brad Hubbard) -* doc: doc/rados/operations: OSD_OUT_OF_ORDER_FULL fullness order is wrong (`pr#31588 <https://github.com/ceph/ceph/pull/31588>`_, Tsung-Ju Lii) -* doc: doc/rados: Better block.db size recommendations for bluestore (`pr#32226 <https://github.com/ceph/ceph/pull/32226>`_, Neha Ojha) -* doc: doc/rados: Correcting some typos in the clay code documentation (`pr#29889 <https://github.com/ceph/ceph/pull/29889>`_, Myna) -* doc: doc/rados: update osd_min_pg_log_entries and add osd_max_pg_log_entries (`pr#32790 <https://github.com/ceph/ceph/pull/32790>`_, Neha Ojha) -* doc: doc/radosgw/admin:fix how to modify subuser info (`pr#29839 <https://github.com/ceph/ceph/pull/29839>`_, Feng Hualong) -* doc: doc/radosgw/compression.rst: fix typo (`pr#28749 <https://github.com/ceph/ceph/pull/28749>`_, hydro-) -* doc: doc/radosgw/config-ref: paragraph to explain the gc settings (`pr#32367 <https://github.com/ceph/ceph/pull/32367>`_, Kai Wagner) -* doc: doc/radosgw/multisite-sync-policy.rst: fix typo (`pr#33230 <https://github.com/ceph/ceph/pull/33230>`_, Liu Lan) -* doc: doc/radosgw: fix typos (`pr#30642 <https://github.com/ceph/ceph/pull/30642>`_, Liu Lan) -* doc: doc/radosgw: update documentation examples with the current S3 PHP client (`pr#25985 <https://github.com/ceph/ceph/pull/25985>`_, Laurent VOULLEMIER) -* doc: doc/rbd/rbd-cloudstack: update disk offering URL to new docs (`pr#27713 <https://github.com/ceph/ceph/pull/27713>`_, Kefu Chai) -* doc: doc/rbd: document the new snapshot-based mirroring feature (`pr#33561 <https://github.com/ceph/ceph/pull/33561>`_, Jason Dillaman) -* doc: doc/rbd: fix small typos (`pr#33689 <https://github.com/ceph/ceph/pull/33689>`_, songweibin) -* doc: doc/rbd: initial kubernetes / ceph-csi integration documentation (`pr#29429 <https://github.com/ceph/ceph/pull/29429>`_, Jason Dillaman) -* doc: doc/rbd: re-organize top-level and add live-migration docs (`issue#40486 <http://tracker.ceph.com/issues/40486>`_, `pr#29135 <https://github.com/ceph/ceph/pull/29135>`_, Jason Dillaman) -* doc: doc/rbd: refine rbd/libvirt usage (`pr#32273 <https://github.com/ceph/ceph/pull/32273>`_, Changcheng Liu) -* doc: doc/rbd: s/guess/xml/ for codeblock lexer (`pr#30953 <https://github.com/ceph/ceph/pull/30953>`_, Kefu Chai) -* doc: doc/rbd: simplify libvirt usage (`pr#32142 <https://github.com/ceph/ceph/pull/32142>`_, Changcheng Liu) -* doc: doc/rbd: update krbd version support for RBD features (`issue#40802 <http://tracker.ceph.com/issues/40802>`_, `pr#29083 <https://github.com/ceph/ceph/pull/29083>`_, Jason Dillaman) -* doc: doc/release/nautilus: 14.2.2 changes redone (`pr#29145 <https://github.com/ceph/ceph/pull/29145>`_, Sage Weil) -* doc: doc/release/octopus: note about upgrade times (`pr#33401 <https://github.com/ceph/ceph/pull/33401>`_, Sage Weil) -* doc: doc/releases/nautilus,PendingReleaseNotes: consolidate telemetry note (`pr#32160 <https://github.com/ceph/ceph/pull/32160>`_, Sage Weil) -* doc: doc/releases/nautilus.rst: fix command to check min_compat_client (`pr#28526 <https://github.com/ceph/ceph/pull/28526>`_, Osama Elswah) -* doc: doc/releases/nautilus.rst: remove a redundant \\* (`pr#32577 <https://github.com/ceph/ceph/pull/32577>`_, Servesha Dudhgaonkar) -* doc: doc/releases/nautilus: Correct a systemctl command in an upgrade guide (`pr#27773 <https://github.com/ceph/ceph/pull/27773>`_, Teeranai Kormongkolkul) -* doc: doc/releases/nautilus: final notes for v14.2.0 (`pr#27019 <https://github.com/ceph/ceph/pull/27019>`_, Sage Weil) -* doc: doc/releases/nautilus: fix config update step (`pr#27495 <https://github.com/ceph/ceph/pull/27495>`_, Sage Weil) -* doc: doc/releases/nautilus: fix release notes (crash->device) (`pr#32148 <https://github.com/ceph/ceph/pull/32148>`_, Sage Weil) -* doc: doc/releases/octopus.rst: add note about ec recovery below min_size (`pr#34092 <https://github.com/ceph/ceph/pull/34092>`_, Neha Ojha) -* doc: doc/releases/octopus.rst: format tweaks (`pr#33971 <https://github.com/ceph/ceph/pull/33971>`_, Kefu Chai) -* doc: doc/releases/octopus.rst: formatting tweaks (`pr#33987 <https://github.com/ceph/ceph/pull/33987>`_, Kefu Chai) -* doc: doc/releases/octopus: add additional RBD improvements (`pr#34032 <https://github.com/ceph/ceph/pull/34032>`_, Jason Dillaman) -* doc: doc/releases/schedule.rst: add 14.2.3, 14.2.4, 15.0.0 and drop dumpling (`pr#30430 <https://github.com/ceph/ceph/pull/30430>`_, Nathan Cutler) -* doc: doc/releases: access main releases page from top-level TOC (`pr#30598 <https://github.com/ceph/ceph/pull/30598>`_, Nathan Cutler) -* doc: doc/releases: add 14.2.8 to release timeline (`pr#33721 <https://github.com/ceph/ceph/pull/33721>`_, Nathan Cutler) -* doc: doc/releases: add mimic v13.2.7 to releases timeline (`pr#31872 <https://github.com/ceph/ceph/pull/31872>`_, Nathan Cutler) -* doc: doc/releases: add release notes for mimic v13.2.7 (`pr#31777 <https://github.com/ceph/ceph/pull/31777>`_, Nathan Cutler) -* doc: doc/releases: add release notes for mimic v13.2.8 (`pr#32040 <https://github.com/ceph/ceph/pull/32040>`_, Nathan Cutler) -* doc: doc/releases: add release notes for nautilus v14.2.5 (`pr#31970 <https://github.com/ceph/ceph/pull/31970>`_, Nathan Cutler) -* doc: doc/releases: Ceph Nautilus v14.2.4 Release Notes (`pr#30429 <https://github.com/ceph/ceph/pull/30429>`_, Nathan Cutler) -* doc: doc/releases: octopus draft notes (`pr#33043 <https://github.com/ceph/ceph/pull/33043>`_, Sage Weil) -* doc: doc/releases: Octopus is not stable yet (`pr#33729 <https://github.com/ceph/ceph/pull/33729>`_, Nathan Cutler) -* doc: doc/releases: update for 12 month cycle (`pr#28864 <https://github.com/ceph/ceph/pull/28864>`_, Sage Weil) -* doc: doc/rgw: add design doc for multisite resharding (`pr#33539 <https://github.com/ceph/ceph/pull/33539>`_, Casey Bodley) -* doc: doc/rgw: document CreateBucketConfiguration for s3 PUT Bucket api (`issue#39597 <http://tracker.ceph.com/issues/39597>`_, `pr#27977 <https://github.com/ceph/ceph/pull/27977>`_, Casey Bodley) -* doc: doc/rgw: document use of realm pull instead of period pull (`issue#39655 <http://tracker.ceph.com/issues/39655>`_, `pr#28052 <https://github.com/ceph/ceph/pull/28052>`_, Casey Bodley) -* doc: doc/rgw: fix broken link to boto s3 extensions document (`pr#32740 <https://github.com/ceph/ceph/pull/32740>`_, Casey Bodley) -* doc: doc/rgw: update civetweb rgw_frontends config example (`pr#27054 <https://github.com/ceph/ceph/pull/27054>`_, Casey Bodley) -* doc: doc/start/documenting-ceph.rst: make better doc recommendations (`pr#30273 <https://github.com/ceph/ceph/pull/30273>`_, Neha Ojha) -* doc: doc/start/hardware-recommendations.rst: minor tweaks (`pr#30837 <https://github.com/ceph/ceph/pull/30837>`_, Amrita Sakthivel) -* doc: doc/_templates/page.html: redirect to etherpad (`pr#32197 <https://github.com/ceph/ceph/pull/32197>`_, Neha Ojha) -* doc: Doc: Add Nautilus 14.2.2 to schedule and releases (`issue#40988 <http://tracker.ceph.com/issues/40988>`_, `pr#29362 <https://github.com/ceph/ceph/pull/29362>`_, JuanJose Galvez) -* doc: Doc: update release schedule (`pr#28466 <https://github.com/ceph/ceph/pull/28466>`_, Torben H\xc3\xb8rup) -* doc: docs: fix rgw_ldap_dnattr username token (`pr#27964 <https://github.com/ceph/ceph/pull/27964>`_, Thomas Kriechbaumer) -* doc: docs: improve rgw ldap auth options (`pr#28157 <https://github.com/ceph/ceph/pull/28157>`_, Thomas Kriechbaumer) -* doc: docs: rgw: fix bucket operation spelling: ListBucketMultipartUploads (`pr#28885 <https://github.com/ceph/ceph/pull/28885>`_, Thomas Kriechbaumer) -* doc: docs: Update au.ceph.com maintainers, update README.md (`pr#32814 <https://github.com/ceph/ceph/pull/32814>`_, Matthew Taylor) -* doc: Document Export Process during Subtree Migrations (`pr#30751 <https://github.com/ceph/ceph/pull/30751>`_, Sidharth Anupkrishnan) -* doc: document mds journal event types (`issue#42190 <http://tracker.ceph.com/issues/42190>`_, `pr#30749 <https://github.com/ceph/ceph/pull/30749>`_, Venky Shankar) -* doc: document mds journaling (`issue#41783 <http://tracker.ceph.com/issues/41783>`_, `pr#30396 <https://github.com/ceph/ceph/pull/30396>`_, Venky Shankar) -* doc: document mode param for rbd mirror image enable command (`pr#32735 <https://github.com/ceph/ceph/pull/32735>`_, Mykola Golub) -* doc: document rank option for journal reset (`pr#31201 <https://github.com/ceph/ceph/pull/31201>`_, Patrick Donnelly) -* doc: document the new --addv argument (`issue#40568 <http://tracker.ceph.com/issues/40568>`_, `pr#28819 <https://github.com/ceph/ceph/pull/28819>`_, Luca Castoro) -* doc: Documentation: Add missing ceph-volume lvm batch argument to ceph-volume.rst (`pr#29081 <https://github.com/ceph/ceph/pull/29081>`_, Andreas Krebs) -* doc: Documentation: Centos ceph-deploys python dependencies (`pr#32591 <https://github.com/ceph/ceph/pull/32591>`_, Cl\xc3\xa9ment Hampa\xc3\xaf) -* doc: documentation: Updated Dashboard Features, improved flow (`pr#33919 <https://github.com/ceph/ceph/pull/33919>`_, Lenz Grimmer) -* doc: drop and update troubleshooting (`pr#28900 <https://github.com/ceph/ceph/pull/28900>`_, Jos Collin) -* doc: emphasize the importance of require-osd-release nautilus (`pr#32587 <https://github.com/ceph/ceph/pull/32587>`_, Zac Dover) -* doc: fix a typo in a command (`pr#32230 <https://github.com/ceph/ceph/pull/32230>`_, taeuk_kim) -* doc: Fix a typo in balancer documentation (`pr#30210 <https://github.com/ceph/ceph/pull/30210>`_, Francois Deppierraz) -* doc: fix boot transition in mds state diagram (`pr#27685 <https://github.com/ceph/ceph/pull/27685>`_, Patrick Donnelly) -* doc: fix errors in search page and use relative address for releases.json (`pr#33423 <https://github.com/ceph/ceph/pull/33423>`_, Kefu Chai) -* doc: Fix for new ceph-devel mailing list (`pr#29492 <https://github.com/ceph/ceph/pull/29492>`_, David Zafman) -* doc: Fix FUSE expansion (`pr#30473 <https://github.com/ceph/ceph/pull/30473>`_, Sidharth Anupkrishnan) -* doc: fix Getting Started with CephFS (`pr#32457 <https://github.com/ceph/ceph/pull/32457>`_, Jos Collin) -* doc: fix links in developer_guide (`pr#32728 <https://github.com/ceph/ceph/pull/32728>`_, Rishabh Dave) -* doc: fix LRC documentation (`pr#27106 <https://github.com/ceph/ceph/pull/27106>`_, Danny Al-Gaaf) -* doc: fix parameter to set pg autoscale mode (`pr#27422 <https://github.com/ceph/ceph/pull/27422>`_, Changcheng Liu) -* doc: Fix rbd namespace documentation (`pr#29445 <https://github.com/ceph/ceph/pull/29445>`_, Ricardo Marques) -* doc: Fix the pg states and auto repair config options (`issue#38896 <http://tracker.ceph.com/issues/38896>`_, `pr#27143 <https://github.com/ceph/ceph/pull/27143>`_, David Zafman) -* doc: fix typo (`pr#28888 <https://github.com/ceph/ceph/pull/28888>`_, Jos Collin) -* doc: fix typo in doc/radosgw/layout.rst (`pr#29932 <https://github.com/ceph/ceph/pull/29932>`_, ypdai) -* doc: fix typo to auto scale pg number (`pr#31065 <https://github.com/ceph/ceph/pull/31065>`_, Changcheng Liu) -* doc: fix typos (`pr#30583 <https://github.com/ceph/ceph/pull/30583>`_, Michael Prokop) -* doc: fix urls (`pr#29300 <https://github.com/ceph/ceph/pull/29300>`_, Jos Collin) -* doc: fixed --read-only argument value in multisite doc (`pr#28655 <https://github.com/ceph/ceph/pull/28655>`_, Chenjiong Deng) -* doc: fixed broken link in Swift Settings section (`pr#28774 <https://github.com/ceph/ceph/pull/28774>`_, James McClune) -* doc: fixed broken links in nautilus release page (`pr#28074 <https://github.com/ceph/ceph/pull/28074>`_, James McClune) -* doc: fixed broken reference link for Graphviz (`pr#32021 <https://github.com/ceph/ceph/pull/32021>`_, James McClune) -* doc: fixed caps (`pr#27397 <https://github.com/ceph/ceph/pull/27397>`_, Servesha Dudhgaonkar) -* doc: fixed telemetry module reference link (`pr#27624 <https://github.com/ceph/ceph/pull/27624>`_, James McClune) -* doc: fixed typo in leadership names (`pr#27396 <https://github.com/ceph/ceph/pull/27396>`_, Servesha Dudhgaonkar) -* doc: Fixes OSD node labels which based on the osd_devices name (`pr#23312 <https://github.com/ceph/ceph/pull/23312>`_, Siyu Sun) -* doc: Fixes typo for ceph dashboard command (`pr#30292 <https://github.com/ceph/ceph/pull/30292>`_, Fabian Bonk) -* doc: hide page contents for Ceph Internals (`pr#31046 <https://github.com/ceph/ceph/pull/31046>`_, Milind Changire) -* doc: improve ceph-backport.sh comment block (`pr#28042 <https://github.com/ceph/ceph/pull/28042>`_, Nathan Cutler) -* doc: improve developer guide doc (`pr#30435 <https://github.com/ceph/ceph/pull/30435>`_, Rishabh Dave) -* doc: improve in mount.ceph man page (`pr#31024 <https://github.com/ceph/ceph/pull/31024>`_, Rishabh Dave) -* doc: Improved the dashboard proxy config section (`pr#27581 <https://github.com/ceph/ceph/pull/27581>`_, Lenz Grimmer) -* doc: indicate imperative mood for commit titles (`pr#29509 <https://github.com/ceph/ceph/pull/29509>`_, Patrick Donnelly) -* doc: Make ceph-dashboard require grafana dashboards (`pr#28997 <https://github.com/ceph/ceph/pull/28997>`_, Boris Ranto) -* doc: mds-config-ref: update mds_log_max_segments value (`pr#29412 <https://github.com/ceph/ceph/pull/29412>`_, Konstantin Shalygin) -* doc: mention --namespace option in rados manpage (`pr#31871 <https://github.com/ceph/ceph/pull/31871>`_, Nathan Cutler) -* doc: mgr/dashboard: Add frontend code documentation (`issue#36243 <http://tracker.ceph.com/issues/36243>`_, `pr#27433 <https://github.com/ceph/ceph/pull/27433>`_, Ernesto Puerta) -* doc: mgr/dashboard: Document UiApiController with ApiController usage (`pr#29819 <https://github.com/ceph/ceph/pull/29819>`_, Stephan M\xc3\xbcller) -* doc: mgr/dashboard: Extend Writing End-to-End Tests section (describe vs it) (`pr#29707 <https://github.com/ceph/ceph/pull/29707>`_, Adam King, Rafael Quintero) -* doc: mgr/dashboard: fix hacking.rst (`pr#27222 <https://github.com/ceph/ceph/pull/27222>`_, Ernesto Puerta) -* doc: mgr/dashboard: Fix link format to HACKING.rst (`pr#28897 <https://github.com/ceph/ceph/pull/28897>`_, Ernesto Puerta) -* doc: mgr/dashboard: fix typos in HACKING.rst (`pr#30847 <https://github.com/ceph/ceph/pull/30847>`_, Ernesto Puerta) -* doc: mgr/orchestrator: Add error handling to interface (`pr#26404 <https://github.com/ceph/ceph/pull/26404>`_, Sebastian Wagner) -* doc: mgr/orchestrator: Fix disabling the orchestrator (`issue#40779 <http://tracker.ceph.com/issues/40779>`_, `pr#29042 <https://github.com/ceph/ceph/pull/29042>`_, Sebastian Wagner) -* doc: mgr/orchestrator_cli: Update doc link in README (`pr#31731 <https://github.com/ceph/ceph/pull/31731>`_, Varsha Rao) -* doc: mgr/ssh: HACKING.rst: Add Understanding `AsyncCompletion` (`pr#31967 <https://github.com/ceph/ceph/pull/31967>`_, Sebastian Wagner) -* doc: mgr/ssh: update ssh-orch bootstrap guide (Vagrantfile & docs) (`pr#31457 <https://github.com/ceph/ceph/pull/31457>`_, Joshua Schmid) -* doc: mgr/telemetry: force --license when sending while opted-out (`pr#33747 <https://github.com/ceph/ceph/pull/33747>`_, Yaarit Hatuka) -* doc: minor fix in mount.ceph (`pr#32748 <https://github.com/ceph/ceph/pull/32748>`_, Rishabh Dave) -* doc: Miscellaneous spelling fixes (`pr#27202 <https://github.com/ceph/ceph/pull/27202>`_, Bryan Stillwell) -* doc: Modify nature theme (`pr#32312 <https://github.com/ceph/ceph/pull/32312>`_, Brad Hubbard) -* doc: mon/OSDMonitor: Fix pool set target_size_bytes (etc) with unit suffix (`pr#30701 <https://github.com/ceph/ceph/pull/30701>`_, Prashant D) -* doc: mounting CephFS subdirectory and Persistent Mounts cleanup (`pr#32498 <https://github.com/ceph/ceph/pull/32498>`_, Jos Collin) -* doc: Move ceph-deploy docs to doc/install/ceph-deploy (`pr#33953 <https://github.com/ceph/ceph/pull/33953>`_, Sebastian Wagner) -* doc: move cephadm files to its own directory (`pr#33551 <https://github.com/ceph/ceph/pull/33551>`_, Alexandra Settle, Sebastian Wagner) -* doc: move Developer Guide to its own subdirectory (`pr#27159 <https://github.com/ceph/ceph/pull/27159>`_, Nathan Cutler) -* doc: nautilus 14.2.2 release notes, take three (`pr#29171 <https://github.com/ceph/ceph/pull/29171>`_, Nathan Cutler) -* doc: Nautilus mailmaps (`pr#27092 <https://github.com/ceph/ceph/pull/27092>`_, Abhishek Lekshmanan) -* doc: note explicitly that profile rbd allows blacklisting (`pr#28296 <https://github.com/ceph/ceph/pull/28296>`_, Matthew Vernon) -* doc: obsolete entries for allow_standby_replay (`pr#31897 <https://github.com/ceph/ceph/pull/31897>`_, Rodrigo Severo) -* doc: operations: correct comma-delimited (`pr#29644 <https://github.com/ceph/ceph/pull/29644>`_, Anthony DAtri) -* doc: operations: improve reweight-by-utilization (`pr#27657 <https://github.com/ceph/ceph/pull/27657>`_, Anthony DAtri) -* doc: PendingReleaseNotes: 14.2.1 note on crush required version (`pr#27649 <https://github.com/ceph/ceph/pull/27649>`_, Sage Weil) -* doc: PendingReleaseNotes: fix typo (`pr#31853 <https://github.com/ceph/ceph/pull/31853>`_, Sage Weil) -* doc: PendingReleaseNotes: note on python3.6 changes (`issue#39164 <http://tracker.ceph.com/issues/39164>`_, `pr#27490 <https://github.com/ceph/ceph/pull/27490>`_, Kefu Chai) -* doc: pg_num should always be a power of two (`pr#29364 <https://github.com/ceph/ceph/pull/29364>`_, Lars Marowsky-Bree, Kai Wagner) -* doc: QAT Acceleration for Encryption and Compression (`pr#26967 <https://github.com/ceph/ceph/pull/26967>`_, Qiaowei Ren) -* doc: quick-rbd.rst de-duplicate (`pr#32965 <https://github.com/ceph/ceph/pull/32965>`_, Tim) -* doc: RBD exclusive locks (`pr#31893 <https://github.com/ceph/ceph/pull/31893>`_, Florian Haas) -* doc: README.md: remove stale cmake prerequisite (`pr#32751 <https://github.com/ceph/ceph/pull/32751>`_, Kefu Chai) -* doc: release note: Add pending release notes for already merged code (`pr#32041 <https://github.com/ceph/ceph/pull/32041>`_, David Zafman) -* doc: release notes for 14.2.1 (`pr#27793 <https://github.com/ceph/ceph/pull/27793>`_, Abhishek Lekshmanan) -* doc: release notes for Luminous v12.2.13 (`pr#33030 <https://github.com/ceph/ceph/pull/33030>`_, Nathan Cutler) -* doc: release notes for nautilus 14.2.2 (`pr#29011 <https://github.com/ceph/ceph/pull/29011>`_, Sage Weil, Nathan Cutler) -* doc: release notes for Nautilus 14.2.7 (`pr#33031 <https://github.com/ceph/ceph/pull/33031>`_, Nathan Cutler) -* doc: release notes for v14.2.3 nautilus (`pr#29973 <https://github.com/ceph/ceph/pull/29973>`_, Abhishek Lekshmanan) -* doc: release notes for v14.2.6 (`pr#32551 <https://github.com/ceph/ceph/pull/32551>`_, Abhishek Lekshmanan) -* doc: releases/luminous: release notes for 12.2.12 (`pr#27553 <https://github.com/ceph/ceph/pull/27553>`_, Abhishek Lekshmanan) -* doc: releases: 14.2.3 dashboard note (`pr#30145 <https://github.com/ceph/ceph/pull/30145>`_, Abhishek Lekshmanan) -* doc: releases: v14.2.8 release notes (`pr#33670 <https://github.com/ceph/ceph/pull/33670>`_, Abhishek Lekshmanan) -* doc: relicense LGPL-2.1 code as LGPL-2.1 or LGPL-3.0 (`pr#22446 <https://github.com/ceph/ceph/pull/22446>`_, Sage Weil) -* doc: remove prod cluster examples from hardware recs (`pr#32670 <https://github.com/ceph/ceph/pull/32670>`_, Zac Dover) -* doc: remove recommendation for kernel.pid_max (`pr#27965 <https://github.com/ceph/ceph/pull/27965>`_, Ben England) -* doc: remove reference to obsolete scrub command (`pr#32508 <https://github.com/ceph/ceph/pull/32508>`_, Patrick Donnelly) -* doc: remove the CephFS-Hadoop instructions (`pr#32980 <https://github.com/ceph/ceph/pull/32980>`_, Greg Farnum) -* doc: removed OpenStack Kilo references in Keystone docs (`pr#27203 <https://github.com/ceph/ceph/pull/27203>`_, James McClune) -* doc: removes kube-helm installation instructions (`pr#32009 <https://github.com/ceph/ceph/pull/32009>`_, Zac Dover) -* doc: reorganize CephFS landing page and ToC (`pr#32038 <https://github.com/ceph/ceph/pull/32038>`_, Patrick Donnelly) -* doc: Revert doc: do not add suffix for search result links (`pr#33562 <https://github.com/ceph/ceph/pull/33562>`_, Jason Dillaman) -* doc: rgw/pubsub: add S3 compliant API to master zone (`pr#28971 <https://github.com/ceph/ceph/pull/28971>`_, Yuval Lifshitz) -* doc: rgw/pubsub: clarify pubsub zone configuration (`pr#27493 <https://github.com/ceph/ceph/pull/27493>`_, Yuval Lifshitz) -* doc: rgw/pubsub: fix topic arn. tenant support to multisite tests (`pr#27671 <https://github.com/ceph/ceph/pull/27671>`_, Yuval Lifshitz) -* doc: rgw: Fixed bug on wrong name for user_id for OPA (`pr#31972 <https://github.com/ceph/ceph/pull/31972>`_, Seena Fallah) -* doc: s/achieve/achieves/ (Fixed a verb disagreement) (`pr#32036 <https://github.com/ceph/ceph/pull/32036>`_, Zac Dover) -* doc: script/ceph-backport.sh: add Troubleshooting notes (`pr#29948 <https://github.com/ceph/ceph/pull/29948>`_, Nathan Cutler) -* doc: set ceph_perf_msgr_server arguments (`pr#29847 <https://github.com/ceph/ceph/pull/29847>`_, Changcheng Liu) -* doc: show how to count jobs before triggering them (`pr#32145 <https://github.com/ceph/ceph/pull/32145>`_, Rishabh Dave) -* doc: Show Jenkins commands (`pr#29423 <https://github.com/ceph/ceph/pull/29423>`_, Ernesto Puerta) -* doc: Small update of SubmittingPatches-backports (`pr#31163 <https://github.com/ceph/ceph/pull/31163>`_, Laura Paduano) -* doc: split up SubmittingPatches.rst (`issue#20953 <http://tracker.ceph.com/issues/20953>`_, `pr#30705 <https://github.com/ceph/ceph/pull/30705>`_, Nathan Cutler) -* doc: Switch spelling of utilization (`pr#32537 <https://github.com/ceph/ceph/pull/32537>`_, Bryan Stillwell) -* doc: tools/rados: add --pgid in help (`pr#30383 <https://github.com/ceph/ceph/pull/30383>`_, Vikhyat Umrao) -* doc: typo fix in doc/dev/dev_cluster_deployement.rst: s/hostanme/hostname/ (`pr#31515 <https://github.com/ceph/ceph/pull/31515>`_, Drunkard Zhang) -* doc: update --force flag to be precise (`pr#32343 <https://github.com/ceph/ceph/pull/32343>`_, Jos Collin) -* doc: update adding an MDS (`pr#32291 <https://github.com/ceph/ceph/pull/32291>`_, Jos Collin) -* doc: update and improve mounting with fuse/kernel docs (`pr#30754 <https://github.com/ceph/ceph/pull/30754>`_, Rishabh Dave) -* doc: update bluestore cache settings and clarify data fraction (`issue#39522 <http://tracker.ceph.com/issues/39522>`_, `pr#27859 <https://github.com/ceph/ceph/pull/27859>`_, Jan Fajerski) -* doc: update ceph ansible iscsi info (`pr#28665 <https://github.com/ceph/ceph/pull/28665>`_, Mike Christie) -* doc: Update ceph-deploy docs from dumpling to nautilus (`pr#30269 <https://github.com/ceph/ceph/pull/30269>`_, Danny Abukalam) -* doc: Update ceph-iscsi min version (`pr#29195 <https://github.com/ceph/ceph/pull/29195>`_, Ricardo Marques) -* doc: update CephFS overview in introductory page (`pr#30014 <https://github.com/ceph/ceph/pull/30014>`_, Patrick Donnelly) -* doc: update CephFS Quick Start doc (`pr#30406 <https://github.com/ceph/ceph/pull/30406>`_, Rishabh Dave) -* doc: Update commands in bootstrap.rst (`pr#31800 <https://github.com/ceph/ceph/pull/31800>`_, Zac Dover) -* doc: update default container images (`pr#33974 <https://github.com/ceph/ceph/pull/33974>`_, Sage Weil) -* doc: Update documentation for LazyIO methods lazyio_synchronize() and lazyio_propagate() (`pr#29711 <https://github.com/ceph/ceph/pull/29711>`_, Sidharth Anupkrishnan) -* doc: update documentation for the MANY_OBJECTS_PER_PG warning (`pr#27403 <https://github.com/ceph/ceph/pull/27403>`_, Vangelis Tasoulas) -* doc: update documents on using kcephfs (`pr#30626 <https://github.com/ceph/ceph/pull/30626>`_, Jeff Layton) -* doc: update erasure-code-profile.rst (`pr#33707 <https://github.com/ceph/ceph/pull/33707>`_, Guillaume Abrioux) -* doc: Update link to Red Hat documentation (`pr#27976 <https://github.com/ceph/ceph/pull/27976>`_, Yaniv Kaul) -* doc: update list of formats for --format flag for ceph pg dump (`pr#32373 <https://github.com/ceph/ceph/pull/32373>`_, Zac Dover) -* doc: Update mailing lists (`pr#31666 <https://github.com/ceph/ceph/pull/31666>`_, hrchu) -* doc: update mondb recovery script (`pr#28515 <https://github.com/ceph/ceph/pull/28515>`_, Hannes von Haugwitz) -* doc: Update mount CephFS index (`pr#28955 <https://github.com/ceph/ceph/pull/28955>`_, Jos Collin) -* doc: Update python-rtsli and tcmu-runner min versions (`pr#28494 <https://github.com/ceph/ceph/pull/28494>`_, Ricardo Marques) -* doc: Update requirements for using CephFS (`pr#30251 <https://github.com/ceph/ceph/pull/30251>`_, Varsha Rao) -* doc: update with osd addition (`pr#31244 <https://github.com/ceph/ceph/pull/31244>`_, Changcheng Liu) -* doc: update with zone bucket and straw2 addition (`pr#31177 <https://github.com/ceph/ceph/pull/31177>`_, Changcheng Liu) -* doc: update Zabbix template reference (`pr#33661 <https://github.com/ceph/ceph/pull/33661>`_, Mathijs Smit) -* doc: updated ceph monitor config options (`pr#29982 <https://github.com/ceph/ceph/pull/29982>`_, James McClune) -* doc: Updated dashboard iSCSI configuration, added labels (`pr#27074 <https://github.com/ceph/ceph/pull/27074>`_, Lenz Grimmer) -* doc: updated OpenStack rbd documentation (`pr#28979 <https://github.com/ceph/ceph/pull/28979>`_, James McClune) -* doc: updated OS recommendations and distro list (`pr#28643 <https://github.com/ceph/ceph/pull/28643>`_, Kai Wagner) -* doc: Updates link to Sepia la (`pr#28780 <https://github.com/ceph/ceph/pull/28780>`_, Varsha Rao) -* doc: use subsection for representing components in release notes (`pr#33940 <https://github.com/ceph/ceph/pull/33940>`_, Kefu Chai) -* doc: use the console lexer for rendering command line sessions (`pr#32141 <https://github.com/ceph/ceph/pull/32141>`_, Kefu Chai) -* do_cmake.sh: fedora-32 (rawhide) build with python-3.8 (`pr#32474 <https://github.com/ceph/ceph/pull/32474>`_, Kaleb S. Keithley) -* errorator: improve general error handlers (`pr#33344 <https://github.com/ceph/ceph/pull/33344>`_, Samuel Just) -* github/codeowners: Add orchestrator team (`pr#31441 <https://github.com/ceph/ceph/pull/31441>`_, Sebastian Wagner) -* github: Add ceph-volume to list of jenkins commands (`pr#31191 <https://github.com/ceph/ceph/pull/31191>`_, Sebastian Wagner) -* include/config-h.in.cmake: remove HAVE_XIO (`pr#28465 <https://github.com/ceph/ceph/pull/28465>`_, Kefu Chai) -* include/utime: do not cast sec to time_t (`pr#27861 <https://github.com/ceph/ceph/pull/27861>`_, Kefu Chai) -* include: buffer_raw.h: Copyright time fix (`pr#28481 <https://github.com/ceph/ceph/pull/28481>`_, Changcheng Liu) -* install-deps.sh: remove failing error catching (`pr#29403 <https://github.com/ceph/ceph/pull/29403>`_, Ernesto Puerta) -* Integrate PeeringState into crimson, fix related bugs (`pr#28180 <https://github.com/ceph/ceph/pull/28180>`_, Samuel Just) -* krbd: do away with explicit memory management and other cleanups (`pr#31919 <https://github.com/ceph/ceph/pull/31919>`_, Ilya Dryomov) -* librados: allow passing flags to operate sync APIs (`pr#33536 <https://github.com/ceph/ceph/pull/33536>`_, Yuval Lifshitz) -* librados: fix leak in getxattr and getxattrs (`pr#32183 <https://github.com/ceph/ceph/pull/32183>`_, Adam Kupczyk) -* librados: move buffer free functions to inline namespace (`issue#39972 <http://tracker.ceph.com/issues/39972>`_, `pr#28167 <https://github.com/ceph/ceph/pull/28167>`_, Jason Dillaman) -* librados: prefer reinterpret_cast over c-style cast (`pr#33038 <https://github.com/ceph/ceph/pull/33038>`_, Kefu Chai) -* librbd: add reference counting (`pr#30397 <https://github.com/ceph/ceph/pull/30397>`_, Mahati Chamarthy, Venky Shankar) -* librbd: add snap_get_name and snap_get_id method API (`pr#31280 <https://github.com/ceph/ceph/pull/31280>`_, Zheng Yin) -* librbd: added missing <string> include to PoolMetadata header (`pr#32614 <https://github.com/ceph/ceph/pull/32614>`_, Kaleb S. Keithley) -* librbd: adjust the else-if conditions in validate_striping() (`pr#30053 <https://github.com/ceph/ceph/pull/30053>`_, mxdInspur) -* librbd: always initialize local variables (`pr#31311 <https://github.com/ceph/ceph/pull/31311>`_, Kefu Chai) -* librbd: always try to acquire exclusive lock when removing image (`pr#29775 <https://github.com/ceph/ceph/pull/29775>`_, Mykola Golub) -* librbd: async open/close should free ImageCtx before issuing callback (`issue#39031 <http://tracker.ceph.com/issues/39031>`_, `pr#27682 <https://github.com/ceph/ceph/pull/27682>`_, Jason Dillaman) -* librbd: avoid dereferencing an empty container during deep-copy (`issue#40368 <http://tracker.ceph.com/issues/40368>`_, `pr#28559 <https://github.com/ceph/ceph/pull/28559>`_, Jason Dillaman) -* librbd: behave more gracefully when data pool removed (`pr#29613 <https://github.com/ceph/ceph/pull/29613>`_, Mykola Golub) -* librbd: bump minor version to match octopus (`pr#32402 <https://github.com/ceph/ceph/pull/32402>`_, Jason Dillaman) -* librbd: clean up unused variable (`pr#30019 <https://github.com/ceph/ceph/pull/30019>`_, mxdInspur) -* librbd: clone copy-on-write operations should preserve sparseness (`pr#27999 <https://github.com/ceph/ceph/pull/27999>`_, Mykola Golub) -* librbd: copyup read stats were incorrectly tied to child (`pr#27757 <https://github.com/ceph/ceph/pull/27757>`_, Jason Dillaman) -* librbd: defer event socket completion until after callback issued (`pr#33994 <https://github.com/ceph/ceph/pull/33994>`_, Jason Dillaman) -* librbd: diff iterate with fast-diff now correctly includes parent (`pr#32403 <https://github.com/ceph/ceph/pull/32403>`_, Jason Dillaman) -* librbd: disable zero-copy writes by default (`pr#31794 <https://github.com/ceph/ceph/pull/31794>`_, Jason Dillaman) -* librbd: dispatch delayed requests only if read intersects (`pr#27446 <https://github.com/ceph/ceph/pull/27446>`_, Mykola Golub) -* librbd: do not allow to deep copy migrating image (`pr#27194 <https://github.com/ceph/ceph/pull/27194>`_, Mykola Golub) -* librbd: do not unblock IO prior to growing object map during resize (`issue#39952 <http://tracker.ceph.com/issues/39952>`_, `pr#28295 <https://github.com/ceph/ceph/pull/28295>`_, Jason Dillaman) -* librbd: dont call refresh from mirror::GetInfoRequest state machine (`pr#32734 <https://github.com/ceph/ceph/pull/32734>`_, Mykola Golub) -* librbd: dont use complete_external_callback if ImageCtx destroyed (`pr#29263 <https://github.com/ceph/ceph/pull/29263>`_, Mykola Golub) -* librbd: explicitly specify mode on mirror image enable (`pr#32217 <https://github.com/ceph/ceph/pull/32217>`_, Mykola Golub) -* librbd: features converting bitmask and string API (`pr#31188 <https://github.com/ceph/ceph/pull/31188>`_, Zheng Yin) -* librbd: finish write request early (`pr#32113 <https://github.com/ceph/ceph/pull/32113>`_, Li, Xiaoyan) -* librbd: fix broken group snapshot handling (`pr#33448 <https://github.com/ceph/ceph/pull/33448>`_, Jason Dillaman) -* librbd: fix build on freebsd (`pr#32938 <https://github.com/ceph/ceph/pull/32938>`_, Mykola Golub) -* librbd: fix issues with object-map/fast-diff feature interlock (`issue#39521 <http://tracker.ceph.com/issues/39521>`_, `pr#28051 <https://github.com/ceph/ceph/pull/28051>`_, Jason Dillaman) -* librbd: fix potential race conditions (`pr#33563 <https://github.com/ceph/ceph/pull/33563>`_, Mahati Chamarthy) -* librbd: fix potential snapshot remove failure due to duplicate RPC messages (`pr#32760 <https://github.com/ceph/ceph/pull/32760>`_, Mykola Golub) -* librbd: fix rbd_features_to_string output (`pr#31006 <https://github.com/ceph/ceph/pull/31006>`_, Zheng Yin) -* librbd: fix rbd_open_by_id, rbd_open_by_id_read_only (`pr#32105 <https://github.com/ceph/ceph/pull/32105>`_, yangjun) -* librbd: fix some edge cases for snapshot mirror mode promote (`pr#32567 <https://github.com/ceph/ceph/pull/32567>`_, Mykola Golub) -* librbd: fix typo in deep_copy::ObjectCopyRequest::compute_read_ops (`pr#27049 <https://github.com/ceph/ceph/pull/27049>`_, Mykola Golub) -* librbd: fixed several race conditions related to copyup (`issue#39021 <http://tracker.ceph.com/issues/39021>`_, `pr#27357 <https://github.com/ceph/ceph/pull/27357>`_, Jason Dillaman) -* librbd: force reacquire lock if blacklist is disabled (`pr#30955 <https://github.com/ceph/ceph/pull/30955>`_, luo.runbing) -* librbd: implement ordering for overlapping IOs (`pr#28952 <https://github.com/ceph/ceph/pull/28952>`_, Mahati Chamarthy) -* librbd: improve journal performance to match expected degradation (`issue#40072 <http://tracker.ceph.com/issues/40072>`_, `pr#28539 <https://github.com/ceph/ceph/pull/28539>`_, Jason Dillaman) -* librbd: improved support for balanced and localized reads (`pr#33493 <https://github.com/ceph/ceph/pull/33493>`_, Zheng Yin) -* librbd: initial consolidation of internal locks (`pr#27756 <https://github.com/ceph/ceph/pull/27756>`_, Jason Dillaman) -* librbd: introduce new default write-around cache policy (`pr#27229 <https://github.com/ceph/ceph/pull/27229>`_, Jason Dillaman) -* librbd: leak on canceling simple io scheduler timer task (`pr#27755 <https://github.com/ceph/ceph/pull/27755>`_, Mykola Golub) -* librbd: look for mirror peers in default namespace (`pr#32338 <https://github.com/ceph/ceph/pull/32338>`_, Mykola Golub) -* librbd: look for pool metadata in default namespace (`pr#27151 <https://github.com/ceph/ceph/pull/27151>`_, Mykola Golub) -* librbd: make flush be queued by QOS throttler (`pr#26931 <https://github.com/ceph/ceph/pull/26931>`_, Mykola Golub) -* librbd: mirror image enable/disable should enable/disable journaling (`pr#28553 <https://github.com/ceph/ceph/pull/28553>`_, Mykola Golub) -* librbd: optimize image copy state machine to use fast-diff (`pr#33867 <https://github.com/ceph/ceph/pull/33867>`_, Jason Dillaman) -* librbd: optionally move parent image to trash on remove (`pr#27521 <https://github.com/ceph/ceph/pull/27521>`_, Mykola Golub) -* librbd: prevent concurrent AIO callbacks to external clients (`issue#40417 <http://tracker.ceph.com/issues/40417>`_, `pr#28743 <https://github.com/ceph/ceph/pull/28743>`_, Jason Dillaman) -* librbd: Remove duplicated AsyncOpTracker in librbd/Utils.h (`pr#29653 <https://github.com/ceph/ceph/pull/29653>`_, Xiaoyan Li) -* librbd: remove pool objects when removing a namespace (`pr#32401 <https://github.com/ceph/ceph/pull/32401>`_, Jason Dillaman) -* librbd: shared read-only cache hook (`pr#27285 <https://github.com/ceph/ceph/pull/27285>`_, Dehao Shang, Yuan Zhou) -* librbd: silence -Wunused-variable warnings (`pr#27513 <https://github.com/ceph/ceph/pull/27513>`_, David Disseldorp) -* librbd: simple scheduler plugin for object dispatcher layer (`pr#26675 <https://github.com/ceph/ceph/pull/26675>`_, Mykola Golub) -* librbd: snapshot object maps can go inconsistent during copyup (`issue#39435 <http://tracker.ceph.com/issues/39435>`_, `pr#27724 <https://github.com/ceph/ceph/pull/27724>`_, Ilya Dryomov) -* librbd: support compression allocation hints to the OSD (`pr#32687 <https://github.com/ceph/ceph/pull/32687>`_, Jason Dillaman) -* librbd: support EC data pool images sparsify (`pr#27268 <https://github.com/ceph/ceph/pull/27268>`_, Mykola Golub) -* librbd: support zero-copy writes via the C API (`pr#27895 <https://github.com/ceph/ceph/pull/27895>`_, Jason Dillaman) -* librbd: trash move return EBUSY instead of EINVAL for migrating image (`pr#27136 <https://github.com/ceph/ceph/pull/27136>`_, Mykola Golub) -* librbd: tweak deep-copy to avoid creating last snapshot until sync is complete (`pr#33097 <https://github.com/ceph/ceph/pull/33097>`_, Jason Dillaman) -* librbd: tweaks to increase IOPS and reduce CPU usage (`pr#28044 <https://github.com/ceph/ceph/pull/28044>`_, Jason Dillaman) -* librbd: use custom allocator for aligned boost::lockfree::queue (`issue#39703 <http://tracker.ceph.com/issues/39703>`_, `pr#28093 <https://github.com/ceph/ceph/pull/28093>`_, Jason Dillaman) -* librbd: v1 clones are restricted to the same namespace (`pr#30711 <https://github.com/ceph/ceph/pull/30711>`_, Jason Dillaman) -* librbd: when unlinking peer from mirror snaps do it in all namespaces (`pr#32463 <https://github.com/ceph/ceph/pull/32463>`_, Mykola Golub) -* librbd:move all snapshot API functions in internal.cc over to api/Snapshot.cc (`pr#31589 <https://github.com/ceph/ceph/pull/31589>`_, Zheng Yin) -* log: avoid logging anything when log_to_file=false (`pr#27133 <https://github.com/ceph/ceph/pull/27133>`_, Sage Weil) -* log: fix store_statfs log line (`pr#28564 <https://github.com/ceph/ceph/pull/28564>`_, Mohamad Gebai) -* log: just return if t is empty (`pr#31243 <https://github.com/ceph/ceph/pull/31243>`_, Xiubo Li) -* log: print pthread ID / name mapping in recent events dump (`pr#32354 <https://github.com/ceph/ceph/pull/32354>`_, Radoslaw Zarzynski) -* lvm deactivate command (`pr#32179 <https://github.com/ceph/ceph/pull/32179>`_, Jan Fajerski) -* mds: add command that config individual client session (`issue#40811 <http://tracker.ceph.com/issues/40811>`_, `pr#29104 <https://github.com/ceph/ceph/pull/29104>`_, Yan, Zheng) -* mds: add config to require forward to auth MDS (`pr#29995 <https://github.com/ceph/ceph/pull/29995>`_, simon gao) -* mds: add configurable snapshot limit (`pr#30710 <https://github.com/ceph/ceph/pull/30710>`_, Milind Changire) -* mds: add perf counter for finisher of MDSRank (`pr#29377 <https://github.com/ceph/ceph/pull/29377>`_, simon gao) -* mds: add perf counters for openfiletable (`pr#33363 <https://github.com/ceph/ceph/pull/33363>`_, Milind Changire) -* mds: add scrub_info_t into mempool (`pr#33180 <https://github.com/ceph/ceph/pull/33180>`_, Jun Su) -* mds: answering all pending getattr/lookups targeting the same inode in one go (`issue#36608 <http://tracker.ceph.com/issues/36608>`_, `pr#24794 <https://github.com/ceph/ceph/pull/24794>`_, Patrick Donnelly, Xuehan Xu) -* mds: apply configuration changes through MDSRank (`pr#28951 <https://github.com/ceph/ceph/pull/28951>`_, Patrick Donnelly) -* mds: async dir operation support (`pr#27866 <https://github.com/ceph/ceph/pull/27866>`_, Yan, Zheng) -* mds: async dirop support (`pr#32816 <https://github.com/ceph/ceph/pull/32816>`_, Yan, Zheng) -* mds: avoid check session connections features when issuing caps (`pr#26881 <https://github.com/ceph/ceph/pull/26881>`_, Yan, Zheng) -* mds: avoid revoking Fsx from loner during directory fragmentation (`pr#26817 <https://github.com/ceph/ceph/pull/26817>`_, Yan, Zheng) -* mds: avoid sending too many osd requests at once after mds restarts (`issue#40028 <http://tracker.ceph.com/issues/40028>`_, `pr#27436 <https://github.com/ceph/ceph/pull/27436>`_, simon gao) -* mds: better output of ceph health detail when some client is failing to advance oldest client/flush tid (`issue#39266 <http://tracker.ceph.com/issues/39266>`_, `pr#27537 <https://github.com/ceph/ceph/pull/27537>`_, Shen Hang) -* mds: check dir fragment to split dir if mkdir makes it oversized (`pr#27480 <https://github.com/ceph/ceph/pull/27480>`_, Erqi Chen) -* mds: check directory split after rename (`issue#38994 <http://tracker.ceph.com/issues/38994>`_, `pr#27214 <https://github.com/ceph/ceph/pull/27214>`_, Shen Hang) -* mds: clarify comment (`pr#31401 <https://github.com/ceph/ceph/pull/31401>`_, Patrick Donnelly) -* mds: cleanup truncating inodes when standby replay mds trim log segments (`pr#28686 <https://github.com/ceph/ceph/pull/28686>`_, Yan, Zheng) -* mds: cleanup unneeded client_snap_caps when splitting snap inode (`issue#39987 <http://tracker.ceph.com/issues/39987>`_, `pr#28190 <https://github.com/ceph/ceph/pull/28190>`_, Yan, Zheng) -* mds: complete all the replay op when mds is restarted (`issue#40784 <http://tracker.ceph.com/issues/40784>`_, `pr#29059 <https://github.com/ceph/ceph/pull/29059>`_, Shen Hang) -* mds: convert unnecessary usage of std::list to std::vector (`pr#26895 <https://github.com/ceph/ceph/pull/26895>`_, Patrick Donnelly) -* mds: count purge queue items left in journal (`issue#40121 <http://tracker.ceph.com/issues/40121>`_, `pr#28376 <https://github.com/ceph/ceph/pull/28376>`_, Zhi Zhang) -* mds: delay exporting directory whose pin value exceeds max rank id (`issue#40603 <http://tracker.ceph.com/issues/40603>`_, `pr#28804 <https://github.com/ceph/ceph/pull/28804>`_, Zhi Zhang) -* mds: display scrub status in ceph status (`pr#28855 <https://github.com/ceph/ceph/pull/28855>`_, Venky Shankar) -* mds: do not include metric_spec in MClientSession from MDS (`pr#32659 <https://github.com/ceph/ceph/pull/32659>`_, Patrick Donnelly) -* mds: dont add metadata to session close message (`pr#32318 <https://github.com/ceph/ceph/pull/32318>`_, Yan, Zheng) -* mds: dont mark cap NEEDSNAPFLUSH if client has no pending capsnap (`pr#28551 <https://github.com/ceph/ceph/pull/28551>`_, Yan, Zheng) -* mds: dont print subtrees if they are too big or too many (`pr#26056 <https://github.com/ceph/ceph/pull/26056>`_, Rishabh Dave) -* mds: dont respond getattr with -EROFS when mds is readonly (`pr#32676 <https://github.com/ceph/ceph/pull/32676>`_, Yan, Zheng) -* mds: drive cap recall while dropping cache (`pr#30389 <https://github.com/ceph/ceph/pull/30389>`_, Patrick Donnelly) -* mds: evict an unresponsive client only when another client wants its caps (`issue#17854 <http://tracker.ceph.com/issues/17854>`_, `pr#22645 <https://github.com/ceph/ceph/pull/22645>`_, Rishabh Dave) -* mds: execute PurgeQueue on_error handler in finisher (`pr#29064 <https://github.com/ceph/ceph/pull/29064>`_, Yan, Zheng) -* mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable (`pr#32020 <https://github.com/ceph/ceph/pull/32020>`_, Yan, Zheng) -* mds: fix bug of batch getattr/lookup (`pr#32268 <https://github.com/ceph/ceph/pull/32268>`_, Yan, Zheng) -* mds: fix can wrlock check in Locker::acquire_locks() (`pr#33005 <https://github.com/ceph/ceph/pull/33005>`_, Yan, Zheng) -* mds: fix infinite loop in Locker::file_update_finish (`pr#29902 <https://github.com/ceph/ceph/pull/29902>`_, Yan, Zheng) -* mds: fix InoTable::force_consume_to() (`pr#29411 <https://github.com/ceph/ceph/pull/29411>`_, Yan, Zheng) -* mds: fix invalid access of mdr->dn[0].back() (`pr#31534 <https://github.com/ceph/ceph/pull/31534>`_, Yan, Zheng) -* mds: fix is session in blacklist check in Server::apply_blacklist() (`issue#40061 <http://tracker.ceph.com/issues/40061>`_, `pr#28293 <https://github.com/ceph/ceph/pull/28293>`_, Yan, Zheng) -* mds: Fix MDCache.h reorder compiler warnings (`pr#31409 <https://github.com/ceph/ceph/pull/31409>`_, Varsha Rao) -* mds: fix null pointer dereference in Server::handle_client_link() (`pr#32722 <https://github.com/ceph/ceph/pull/32722>`_, Yan, Zheng) -* mds: fix revoking caps after after stale->resume circle (`pr#31662 <https://github.com/ceph/ceph/pull/31662>`_, Yan, Zheng) -* mds: fix SnapRealm::resolve_snapname for long name (`pr#27511 <https://github.com/ceph/ceph/pull/27511>`_, Yan, Zheng) -* mds: fix use-after-free in Migrater (`pr#33291 <https://github.com/ceph/ceph/pull/33291>`_, Yan, Zheng) -* mds: handle bad purge queue item encoding (`pr#33449 <https://github.com/ceph/ceph/pull/33449>`_, Yan, Zheng) -* mds: handle ceph_assert on blacklisting (`pr#33662 <https://github.com/ceph/ceph/pull/33662>`_, Milind Changire) -* mds: increase default cache memory limit to 4G (`pr#32042 <https://github.com/ceph/ceph/pull/32042>`_, Patrick Donnelly) -* mds: initialize cap_revoke_eviction_timeout with conf (`issue#38844 <http://tracker.ceph.com/issues/38844>`_, `pr#26970 <https://github.com/ceph/ceph/pull/26970>`_, simon gao) -* mds: initialize the monc later in init() (`pr#31715 <https://github.com/ceph/ceph/pull/31715>`_, Xiubo Li) -* mds: just delete MDSIOContextBase during shutdown (`pr#33538 <https://github.com/ceph/ceph/pull/33538>`_, Patrick Donnelly) -* mds: maintain client provided metric flags in client metadata (`pr#32201 <https://github.com/ceph/ceph/pull/32201>`_, Venky Shankar) -* mds: make mds-mds per-message versioned (`issue#12107 <http://tracker.ceph.com/issues/12107>`_, `pr#20160 <https://github.com/ceph/ceph/pull/20160>`_, dongdong tao) -* mds: make MDSIOContextBase delete itself when shutting down (`pr#29752 <https://github.com/ceph/ceph/pull/29752>`_, Xuehan Xu) -* mds: mds returns -5(EIO) error when the deleted file does not exist (`pr#30403 <https://github.com/ceph/ceph/pull/30403>`_, huanwen ren) -* mds: move some MDCache member init to header (`pr#29543 <https://github.com/ceph/ceph/pull/29543>`_, Patrick Donnelly) -* mds: no assert on frozen dir when scrub path (`pr#30835 <https://github.com/ceph/ceph/pull/30835>`_, Zhi Zhang) -* mds: note client features when rejecting client (`pr#32505 <https://github.com/ceph/ceph/pull/32505>`_, Patrick Donnelly) -* mds: obsoleting mds_cache_size (`pr#31729 <https://github.com/ceph/ceph/pull/31729>`_, Patrick Donnelly, Ramana Raja) -* mds: optimize function, fragset_t::simplify, to improve the efficiency of merging fragment (`pr#31595 <https://github.com/ceph/ceph/pull/31595>`_, simon gao) -* mds: output lock state in format dump (`issue#39645 <http://tracker.ceph.com/issues/39645>`_, `pr#27717 <https://github.com/ceph/ceph/pull/27717>`_, Zhi Zhang) -* mds: pass proper MutationImpl::LockOp to Locker::wrlock_start() (`pr#33719 <https://github.com/ceph/ceph/pull/33719>`_, Yan, Zheng) -* mds: preparation for async dir operation support (`pr#30972 <https://github.com/ceph/ceph/pull/30972>`_, Yan, Zheng) -* mds: properly evaluate unstable locks when evicting client (`pr#31548 <https://github.com/ceph/ceph/pull/31548>`_, Yan, Zheng) -* mds: recall caps from quiescent sessions (`pr#28702 <https://github.com/ceph/ceph/pull/28702>`_, Patrick Donnelly) -* mds: register with mgr only after added to FSMap (`pr#31400 <https://github.com/ceph/ceph/pull/31400>`_, Patrick Donnelly) -* mds: reject sessionless messages (`pr#29594 <https://github.com/ceph/ceph/pull/29594>`_, Xiao Guodong) -* mds: release free heap pages after trim (`pr#31793 <https://github.com/ceph/ceph/pull/31793>`_, Patrick Donnelly) -* mds: relevel debug message levels for balancer/migrator (`pr#33471 <https://github.com/ceph/ceph/pull/33471>`_, Patrick Donnelly) -* mds: remove dead get_commands code (`pr#33390 <https://github.com/ceph/ceph/pull/33390>`_, Patrick Donnelly) -* mds: remove duplicated check on balance amount (`pr#27087 <https://github.com/ceph/ceph/pull/27087>`_, Zhi Zhang) -* mds: remove superfluous error in StrayManager::advance_delayed() (`issue#38679 <http://tracker.ceph.com/issues/38679>`_, `pr#27051 <https://github.com/ceph/ceph/pull/27051>`_, Yan, Zheng) -* mds: remove the code that skip evicting the only client (`pr#28642 <https://github.com/ceph/ceph/pull/28642>`_, Yan, Zheng) -* mds: remove the incorrect comments (`pr#31775 <https://github.com/ceph/ceph/pull/31775>`_, Xiubo Li) -* mds: remove unnecessary debug warning (`pr#31898 <https://github.com/ceph/ceph/pull/31898>`_, Patrick Donnelly) -* mds: remove unused CDir members (`pr#33227 <https://github.com/ceph/ceph/pull/33227>`_, Jun Su) -* mds: Reorganize class members in Anchor header (`pr#30090 <https://github.com/ceph/ceph/pull/30090>`_, Varsha Rao) -* mds: Reorganize class members in Capability header (`pr#29166 <https://github.com/ceph/ceph/pull/29166>`_, Varsha Rao) -* mds: Reorganize class members in CDir header (`pr#28860 <https://github.com/ceph/ceph/pull/28860>`_, Varsha Rao) -* mds: Reorganize class members in CInode header (`pr#29066 <https://github.com/ceph/ceph/pull/29066>`_, Varsha Rao) -* mds: Reorganize class members in DamageTable header (`pr#29569 <https://github.com/ceph/ceph/pull/29569>`_, Varsha Rao) -* mds: Reorganize class members in FSMap header (`pr#29572 <https://github.com/ceph/ceph/pull/29572>`_, Varsha Rao) -* mds: Reorganize class members in FSMapUser header (`pr#29574 <https://github.com/ceph/ceph/pull/29574>`_, Varsha Rao) -* mds: Reorganize class members in InoTable header (`pr#29883 <https://github.com/ceph/ceph/pull/29883>`_, Varsha Rao) -* mds: Reorganize class members in JournalPointer header (`pr#29888 <https://github.com/ceph/ceph/pull/29888>`_, Varsha Rao) -* mds: Reorganize class members in LocalLock header (`pr#30143 <https://github.com/ceph/ceph/pull/30143>`_, Varsha Rao) -* mds: Reorganize class members in Locker header (`pr#30164 <https://github.com/ceph/ceph/pull/30164>`_, Varsha Rao) -* mds: Reorganize class members in LogEvent header (`pr#30205 <https://github.com/ceph/ceph/pull/30205>`_, Varsha Rao) -* mds: Reorganize class members in LogSegment header (`pr#30202 <https://github.com/ceph/ceph/pull/30202>`_, Varsha Rao) -* mds: Reorganize class members in MDBalancer header (`pr#30559 <https://github.com/ceph/ceph/pull/30559>`_, Varsha Rao) -* mds: Reorganize class members in MDCache header (`pr#30745 <https://github.com/ceph/ceph/pull/30745>`_, Varsha Rao) -* mds: Reorganize class members in MDLog header (`pr#30744 <https://github.com/ceph/ceph/pull/30744>`_, Varsha Rao) -* mds: Reorganize class members in MDSAuthCaps header (`pr#30915 <https://github.com/ceph/ceph/pull/30915>`_, Varsha Rao) -* mds: Reorganize class members in MDSCacheObject header (`pr#30938 <https://github.com/ceph/ceph/pull/30938>`_, Varsha Rao) -* mds: Reorganize class members in MDSDaemon header (`pr#30990 <https://github.com/ceph/ceph/pull/30990>`_, Varsha Rao) -* mds: Reorganize class members in MDSMap header (`pr#31118 <https://github.com/ceph/ceph/pull/31118>`_, Varsha Rao) -* mds: Reorganize class members in MDSRank header (`pr#31120 <https://github.com/ceph/ceph/pull/31120>`_, Varsha Rao) -* mds: Reorganize class members in MDSTable header (`pr#31122 <https://github.com/ceph/ceph/pull/31122>`_, Varsha Rao) -* mds: Reorganize class members in MDSTableClient header (`pr#31115 <https://github.com/ceph/ceph/pull/31115>`_, Varsha Rao) -* mds: Reorganize class members in MDSTableServer header (`pr#31250 <https://github.com/ceph/ceph/pull/31250>`_, Varsha Rao) -* mds: Reorganize class members in Migrator header (`pr#31253 <https://github.com/ceph/ceph/pull/31253>`_, Varsha Rao) -* mds: Reorganize class members in OpenFileTable header (`pr#31597 <https://github.com/ceph/ceph/pull/31597>`_, Varsha Rao) -* mds: Reorganize class members in PurgeQueue header (`pr#31596 <https://github.com/ceph/ceph/pull/31596>`_, Varsha Rao) -* mds: Reorganize class members in RecoveryQueue header (`pr#31635 <https://github.com/ceph/ceph/pull/31635>`_, Varsha Rao) -* mds: Reorganize class members in ScatterLock header (`pr#31716 <https://github.com/ceph/ceph/pull/31716>`_, Varsha Rao) -* mds: Reorganize class members in ScrubHeader header (`pr#31717 <https://github.com/ceph/ceph/pull/31717>`_, Varsha Rao) -* mds: Reorganize class members in ScrubStack header (`pr#31718 <https://github.com/ceph/ceph/pull/31718>`_, Varsha Rao) -* mds: Reorganize class members in Server header (`pr#31719 <https://github.com/ceph/ceph/pull/31719>`_, Varsha Rao) -* mds: Reorganize class members in SessionMap header (`pr#32320 <https://github.com/ceph/ceph/pull/32320>`_, Varsha Rao) -* mds: Reorganize class members in SimpleLock header (`pr#32322 <https://github.com/ceph/ceph/pull/32322>`_, Varsha Rao) -* mds: Reorganize class members in SnapClient header (`pr#32326 <https://github.com/ceph/ceph/pull/32326>`_, Varsha Rao) -* mds: Reorganize class members in SnapServer header (`pr#32350 <https://github.com/ceph/ceph/pull/32350>`_, Varsha Rao) -* mds: Reorganize struct members in Mutation header (`pr#31481 <https://github.com/ceph/ceph/pull/31481>`_, Varsha Rao) -* mds: Reorganize structure and class members in mdstypes header (`pr#32435 <https://github.com/ceph/ceph/pull/32435>`_, Varsha Rao) -* mds: Reorganize structure members in flock header (`pr#32416 <https://github.com/ceph/ceph/pull/32416>`_, Varsha Rao) -* mds: Reorganize structure members in inode_backtrace header (`pr#32431 <https://github.com/ceph/ceph/pull/32431>`_, Varsha Rao) -* mds: Reorganize structure members in snap header (`pr#32432 <https://github.com/ceph/ceph/pull/32432>`_, Varsha Rao) -* mds: Reorganize structure members in SnapRealm header (`pr#32348 <https://github.com/ceph/ceph/pull/32348>`_, Varsha Rao) -* mds: Reorganize structure members in StrayManager header (`pr#32397 <https://github.com/ceph/ceph/pull/32397>`_, Varsha Rao) -* mds: reset heartbeat inside big loop (`pr#28406 <https://github.com/ceph/ceph/pull/28406>`_, Yan, Zheng) -* mds: split the dir if the op makes it oversized, because some ops maybe in flight (`pr#29921 <https://github.com/ceph/ceph/pull/29921>`_, simon gao) -* mds: there is an assertion when calling Beacon::shutdown() (`issue#38822 <http://tracker.ceph.com/issues/38822>`_, `pr#27063 <https://github.com/ceph/ceph/pull/27063>`_, huanwen ren) -* mds: throttle scrub start for multiple active MDS (`pr#32521 <https://github.com/ceph/ceph/pull/32521>`_, Patrick Donnelly, Milind Changire) -* mds: tolerate no snaprealm encoded in on-disk root inode (`pr#31455 <https://github.com/ceph/ceph/pull/31455>`_, Yan, Zheng) -* mds: track high water mark for purges (`pr#32667 <https://github.com/ceph/ceph/pull/32667>`_, Patrick Donnelly) -* mds: trim cache during standby-replay (`issue#40213 <http://tracker.ceph.com/issues/40213>`_, `pr#28212 <https://github.com/ceph/ceph/pull/28212>`_, simon gao) -* mds: trim cache on regular schedule (`pr#29542 <https://github.com/ceph/ceph/pull/29542>`_, Patrick Donnelly) -* mds: unify daemon and tell commands (`pr#31255 <https://github.com/ceph/ceph/pull/31255>`_, Sage Weil) -* mds: update projected_version when upgrading snaptable (`issue#38835 <http://tracker.ceph.com/issues/38835>`_, `pr#27238 <https://github.com/ceph/ceph/pull/27238>`_, Yan, Zheng) -* mds: use set to store to evict client (`pr#30029 <https://github.com/ceph/ceph/pull/30029>`_, Erqi Chen) -* mds: use vector::empty in feature_bitset_t (`pr#32541 <https://github.com/ceph/ceph/pull/32541>`_, Jos Collin) -* mds: wake up lock waiters after forcibly changing lock state (`issue#39987 <http://tracker.ceph.com/issues/39987>`_, `pr#28459 <https://github.com/ceph/ceph/pull/28459>`_, Yan, Zheng) -* mgr,mon,rbd: mon/mgr: add rbd_support to list of always-on mgr modules (`issue#40790 <http://tracker.ceph.com/issues/40790>`_, `pr#29073 <https://github.com/ceph/ceph/pull/29073>`_, Jason Dillaman) -* mgr,mon: mon,mgr: pass MessageRef to monc.send_mon_message() \xe2\x80\xa6 (`pr#30449 <https://github.com/ceph/ceph/pull/30449>`_, Kefu Chai) -* mgr,mon: mon/MgrMonitor.cc: add always_on_modules to the output of ceph mgr module ls (`pr#32939 <https://github.com/ceph/ceph/pull/32939>`_, Neha Ojha) -* mgr,mon: mon/MgrMonitor.cc: warn about missing mgr in a cluster with osds (`pr#33025 <https://github.com/ceph/ceph/pull/33025>`_, Neha Ojha) -* mgr,pybind: pybind/mgr/prometheus: remove scrape_duration metric (`pr#27034 <https://github.com/ceph/ceph/pull/27034>`_, Jan Fajerski) -* mgr,rbd: mgr/dashboard: block mirroring page results in internal server error (`pr#31907 <https://github.com/ceph/ceph/pull/31907>`_, Jason Dillaman) -* mgr,rbd: mgr/rbd_support: dont scan pools that dont have schedules (`pr#33840 <https://github.com/ceph/ceph/pull/33840>`_, Mykola Golub) -* mgr,rbd: mgr/rbd_support: implement mirror snapshot scheduler (`pr#32434 <https://github.com/ceph/ceph/pull/32434>`_, Mykola Golub) -* mgr,rbd: mgr/rbd_support: support scheduling long-running background operations (`issue#40621 <http://tracker.ceph.com/issues/40621>`_, `pr#29054 <https://github.com/ceph/ceph/pull/29054>`_, Jason Dillaman) -* mgr,rbd: pybind/mgr: fix format for rbd-mirror prometheus metrics (`pr#28200 <https://github.com/ceph/ceph/pull/28200>`_, Mykola Golub) -* mgr,rgw: mgr/ansible: RGW service (`pr#28468 <https://github.com/ceph/ceph/pull/28468>`_, Juan Miguel Olmo Mart\xc3\xadnez) -* mgr,tests: install-deps.sh: preload wheel for all mgr requirements.txt files (`pr#32151 <https://github.com/ceph/ceph/pull/32151>`_, Sage Weil) -* mgr,tests: mgr/orchestrator_cli: remove tox and move test to parent dir (`pr#31561 <https://github.com/ceph/ceph/pull/31561>`_, Sebastian Wagner) -* mgr,tests: mgr/progress: Created first unit test for progress module (`pr#28758 <https://github.com/ceph/ceph/pull/28758>`_, Kamoltat (Junior) Sirivadhna) -* mgr,tests: pybind/mgr: Add ceph_module.pyi to improve type checking (`pr#32502 <https://github.com/ceph/ceph/pull/32502>`_, Sebastian Wagner) -* mgr,tests: pybind/mgr: install setuptools >= 12 (`pr#29414 <https://github.com/ceph/ceph/pull/29414>`_, Kefu Chai) -* mgr,tests: pybind/tox: handle possible WITH_PYTHON3 values other than 3 (`pr#28002 <https://github.com/ceph/ceph/pull/28002>`_, Nathan Cutler) -* mgr,tests: qa/mgr/balancer: Add cram based test for altering target_max_misplaced_ratio setting (`pr#30646 <https://github.com/ceph/ceph/pull/30646>`_, Shyukri Shyukriev) -* mgr,tests: qa/mgr/progress: update the test suite for progress module (`issue#40618 <http://tracker.ceph.com/issues/40618>`_, `pr#29111 <https://github.com/ceph/ceph/pull/29111>`_, Kamoltat (Junior) Sirivadhna) -* mgr,tools: Remove use of rules batching for upmap balancer and default for upmap_max_deviation to 5 (`pr#32247 <https://github.com/ceph/ceph/pull/32247>`_, David Zafman) -* mgr/ansible: Host ls implementation (`pr#26185 <https://github.com/ceph/ceph/pull/26185>`_, Juan Miguel Olmo Mart\xc3\xadnez) -* mgr/ansible: Integrate mgr/ansible/tox into mgr/tox (`pr#32149 <https://github.com/ceph/ceph/pull/32149>`_, Sebastian Wagner) -* mgr/ansible: TLS Mutual Authentication (`pr#27512 <https://github.com/ceph/ceph/pull/27512>`_, Juan Miguel Olmo Mart\xc3\xadnez) -* mgr/cephadm: a few fixes around daemon and device caches (`pr#33495 <https://github.com/ceph/ceph/pull/33495>`_, Sage Weil) -* mgr/cephadm: adapt osd deployment to service_apply (`pr#33922 <https://github.com/ceph/ceph/pull/33922>`_, Sage Weil, Joshua Schmid) -* mgr/cephadm: add drivegroup support; workaround c-v batch shortcoming (`pr#32972 <https://github.com/ceph/ceph/pull/32972>`_, Sage Weil, Joshua Schmid) -* mgr/cephadm: add HostAssignment.validate() (`pr#34005 <https://github.com/ceph/ceph/pull/34005>`_, Sebastian Wagner) -* mgr/cephadm: Add progress to update_mgr() (`pr#32372 <https://github.com/ceph/ceph/pull/32372>`_, Sebastian Wagner) -* mgr/cephadm: Add unittest for osd removal (`pr#33602 <https://github.com/ceph/ceph/pull/33602>`_, Sage Weil, Sebastian Wagner) -* mgr/cephadm: Add unittest for service_action (`pr#32209 <https://github.com/ceph/ceph/pull/32209>`_, Sebastian Wagner) -* mgr/cephadm: allow osd replacement/removal in the background (`pr#32983 <https://github.com/ceph/ceph/pull/32983>`_, Joshua Schmid) -* mgr/cephadm: auto-select python version to use remotely (`pr#32327 <https://github.com/ceph/ceph/pull/32327>`_, Sage Weil) -* mgr/cephadm: cache device inventory; zap (`pr#33394 <https://github.com/ceph/ceph/pull/33394>`_, Sage Weil) -* mgr/cephadm: catch exceptions when scraping ceph-volume inventory (`pr#33484 <https://github.com/ceph/ceph/pull/33484>`_, Sage Weil) -* mgr/cephadm: catch excpetions in serve() thread (`pr#33139 <https://github.com/ceph/ceph/pull/33139>`_, Sage Weil) -* mgr/cephadm: check-host on host add (`pr#32385 <https://github.com/ceph/ceph/pull/32385>`_, Sage Weil) -* mgr/cephadm: clean up client.crash.\\* container_image settings after upgrade (`pr#34068 <https://github.com/ceph/ceph/pull/34068>`_, Sage Weil) -* mgr/cephadm: consolidate/refactor all add\\_ and apply\\_ methods (`pr#33496 <https://github.com/ceph/ceph/pull/33496>`_, Sage Weil) -* mgr/cephadm: Convert HostNotFound to OrchestratorError (`pr#33310 <https://github.com/ceph/ceph/pull/33310>`_, Sebastian Wagner) -* mgr/cephadm: deploy Grafana (`pr#33515 <https://github.com/ceph/ceph/pull/33515>`_, Patrick Seidensal) -* mgr/cephadm: do not include osd service in orch ls output (`pr#33968 <https://github.com/ceph/ceph/pull/33968>`_, Sage Weil) -* mgr/cephadm: do not reconfig orphan daemons; fix test to not remote orphans (`pr#34027 <https://github.com/ceph/ceph/pull/34027>`_, Sage Weil) -* mgr/cephadm: do not refresh daemon and device inventory as often (`pr#33734 <https://github.com/ceph/ceph/pull/33734>`_, Sage Weil) -* mgr/cephadm: drop mixin parent (`pr#33514 <https://github.com/ceph/ceph/pull/33514>`_, Sage Weil) -* mgr/cephadm: Enable provisioning alertmanager via orchestrator (`pr#33554 <https://github.com/ceph/ceph/pull/33554>`_, Kristoffer Gr\xc3\xb6nlund) -* mgr/cephadm: fix dump output by formatting to yaml first (`pr#33891 <https://github.com/ceph/ceph/pull/33891>`_, Joshua Schmid) -* mgr/cephadm: fix listing services by host (`pr#32314 <https://github.com/ceph/ceph/pull/32314>`_, Kiefer Chang) -* mgr/cephadm: fix orch rm and upgrade (`pr#33772 <https://github.com/ceph/ceph/pull/33772>`_, Sage Weil) -* mgr/cephadm: fix osd reconfig/redeploy (`pr#32812 <https://github.com/ceph/ceph/pull/32812>`_, Sage Weil) -* mgr/cephadm: Fix placement for new services (`pr#33205 <https://github.com/ceph/ceph/pull/33205>`_, Sebastian Wagner) -* mgr/cephadm: fix placement when existing + specified dont overlap (`pr#33766 <https://github.com/ceph/ceph/pull/33766>`_, Sage Weil) -* mgr/cephadm: fix prom config generation when hosts have no labels or addrs (`pr#33800 <https://github.com/ceph/ceph/pull/33800>`_, Sage Weil) -* mgr/cephadm: Fix remove_osds() (`pr#32146 <https://github.com/ceph/ceph/pull/32146>`_, Sebastian Wagner) -* mgr/cephadm: fix section name for mon options in ceph.conf (`pr#32681 <https://github.com/ceph/ceph/pull/32681>`_, Sage Weil) -* mgr/cephadm: fix service list filtering (`pr#33838 <https://github.com/ceph/ceph/pull/33838>`_, Kiefer Chang) -* mgr/cephadm: fix type of timeout options (`pr#32316 <https://github.com/ceph/ceph/pull/32316>`_, Kiefer Chang) -* mgr/cephadm: fix upgrade ok-to-stop condition check (`pr#33469 <https://github.com/ceph/ceph/pull/33469>`_, Sage Weil) -* mgr/cephadm: fix upgrade order (`pr#33811 <https://github.com/ceph/ceph/pull/33811>`_, Sage Weil) -* mgr/cephadm: fix upgrade wait loop (`pr#33447 <https://github.com/ceph/ceph/pull/33447>`_, Sage Weil) -* mgr/cephadm: fix upgrade when daemon is stopped (`pr#33678 <https://github.com/ceph/ceph/pull/33678>`_, Sage Weil) -* mgr/cephadm: if we had no record of deps, and deps are [], do not reconfig (`pr#33733 <https://github.com/ceph/ceph/pull/33733>`_, Sage Weil) -* mgr/cephadm: implement apply mon, mon removal checks (`pr#33792 <https://github.com/ceph/ceph/pull/33792>`_, Sage Weil) -* mgr/cephadm: implement pause/resume to suspect non-monitoring background work (`pr#33930 <https://github.com/ceph/ceph/pull/33930>`_, Sage Weil) -* mgr/cephadm: improve pull behavior for upgrade (`pr#32878 <https://github.com/ceph/ceph/pull/32878>`_, Sage Weil) -* mgr/cephadm: init attrs created by settattr() (`pr#32957 <https://github.com/ceph/ceph/pull/32957>`_, Kefu Chai) -* mgr/cephadm: leverage service specs (`pr#33553 <https://github.com/ceph/ceph/pull/33553>`_, Sage Weil, Joshua Schmid) -* mgr/cephadm: limit number of times check host is performed in the serve loop (`pr#33866 <https://github.com/ceph/ceph/pull/33866>`_, Daniel-Pivonka) -* mgr/cephadm: log information to cluster log (`pr#33488 <https://github.com/ceph/ceph/pull/33488>`_, Sage Weil) -* mgr/cephadm: make apply move daemons, do its work synchronously (`pr#33704 <https://github.com/ceph/ceph/pull/33704>`_, Sage Weil) -* mgr/cephadm: make NodeAssignment return a simple host list (`pr#33669 <https://github.com/ceph/ceph/pull/33669>`_, Sage Weil) -* mgr/cephadm: make osd create on an existing LV idempotent (`pr#33755 <https://github.com/ceph/ceph/pull/33755>`_, Sage Weil) -* mgr/cephadm: make prometheus scrape all mgrs, node-exporters (`pr#33444 <https://github.com/ceph/ceph/pull/33444>`_, Sage Weil) -* mgr/cephadm: Make sure we dont co-locate the same daemon (`pr#33853 <https://github.com/ceph/ceph/pull/33853>`_, Sebastian Wagner) -* mgr/cephadm: misc fixes (`pr#33119 <https://github.com/ceph/ceph/pull/33119>`_, Sage Weil) -* mgr/cephadm: misc fixes + smoke test (`pr#33730 <https://github.com/ceph/ceph/pull/33730>`_, Sage Weil) -* mgr/cephadm: mon: Dont show traceback for user errors (`pr#33333 <https://github.com/ceph/ceph/pull/33333>`_, Sebastian Wagner) -* mgr/cephadm: nicer error from cephadm check-host (`pr#33935 <https://github.com/ceph/ceph/pull/33935>`_, Sage Weil) -* mgr/cephadm: point dashboard at cephadms grafana automatically (`pr#33700 <https://github.com/ceph/ceph/pull/33700>`_, Sage Weil) -* mgr/cephadm: prefix daemon ids with hostname (`pr#33012 <https://github.com/ceph/ceph/pull/33012>`_, Sage Weil) -* mgr/cephadm: progress for upgrade (`pr#33415 <https://github.com/ceph/ceph/pull/33415>`_, Sage Weil) -* mgr/cephadm: provision node-exporter (`pr#33123 <https://github.com/ceph/ceph/pull/33123>`_, Sage Weil, Patrick Seidensal) -* mgr/cephadm: provision prometheus (`pr#33073 <https://github.com/ceph/ceph/pull/33073>`_, Sage Weil) -* mgr/cephadm: reduce boilerplate for unittests (`pr#33663 <https://github.com/ceph/ceph/pull/33663>`_, Joshua Schmid) -* mgr/cephadm: refresh ceph.conf when mons change (`pr#33855 <https://github.com/ceph/ceph/pull/33855>`_, Sage Weil) -* mgr/cephadm: refresh configs when dependencies change (`pr#33671 <https://github.com/ceph/ceph/pull/33671>`_, Sage Weil) -* mgr/cephadm: refresh service state in the background (`pr#32859 <https://github.com/ceph/ceph/pull/32859>`_, Sebastian Wagner, Sage Weil) -* mgr/cephadm: remove item from cache when removing (`pr#33071 <https://github.com/ceph/ceph/pull/33071>`_, Sage Weil) -* mgr/cephadm: remove redundant /dev when blinking device light (`pr#32246 <https://github.com/ceph/ceph/pull/32246>`_, Sage Weil) -* mgr/cephadm: revamp scheduling (`pr#33523 <https://github.com/ceph/ceph/pull/33523>`_, Sage Weil) -* mgr/cephadm: set thread pool size to 10 (`pr#33463 <https://github.com/ceph/ceph/pull/33463>`_, Sebastian Wagner) -* mgr/cephadm: show age of service ls (`pr#32686 <https://github.com/ceph/ceph/pull/32686>`_, Sage Weil) -* mgr/cephadm: simplify and improve placement (`pr#33808 <https://github.com/ceph/ceph/pull/33808>`_, Sage Weil) -* mgr/cephadm: simplify tracking of daemon inventory (`pr#33249 <https://github.com/ceph/ceph/pull/33249>`_, Sage Weil) -* mgr/cephadm: two minor fixes (`pr#33736 <https://github.com/ceph/ceph/pull/33736>`_, Sage Weil) -* mgr/cephadm: update osd removal report immediately (`pr#33713 <https://github.com/ceph/ceph/pull/33713>`_, Kiefer Chang) -* mgr/cephadm: update type annotation (`pr#33784 <https://github.com/ceph/ceph/pull/33784>`_, Kefu Chai) -* mgr/cephadm: upgrade requires root mode for now (`pr#33802 <https://github.com/ceph/ceph/pull/33802>`_, Sage Weil) -* mgr/cephadm: upgrade: fix daemons missing image_id (`pr#33745 <https://github.com/ceph/ceph/pull/33745>`_, Sage Weil) -* mgr/cephadm: upgrade: handle stopped daemons (`pr#33487 <https://github.com/ceph/ceph/pull/33487>`_, Sage Weil) -* mgr/cephadm: verify hosts hostname matches cephadm host (`pr#33058 <https://github.com/ceph/ceph/pull/33058>`_, Sage Weil) -* mgr/dashbaord: Fix E2E pools page failure (`pr#32635 <https://github.com/ceph/ceph/pull/32635>`_, Stephan M\xc3\xbcller) -* mgr/dashboad: Improve iSCSI overview page (`pr#27254 <https://github.com/ceph/ceph/pull/27254>`_, Ricardo Marques) -* mgr/dashboard Displays progress bar in notification tray for background tasks (`pr#27420 <https://github.com/ceph/ceph/pull/27420>`_, Pooja) -* mgr/dashboard/qa: Improve tasks.mgr.test_dashboard.TestDashboard.test_standby (`pr#26925 <https://github.com/ceph/ceph/pull/26925>`_, Volker Theile) -* mgr/dashboard/qa: Increase timeout for test_disable (tasks.mgr.dashboard.test_mgr_module.MgrModuleTelemetryTest) (`pr#27187 <https://github.com/ceph/ceph/pull/27187>`_, Volker Theile) -* mgr/dashboard: 1 osds exist in the crush map but not in the osdmap breaks OSD page (`issue#36086 <http://tracker.ceph.com/issues/36086>`_, `pr#26836 <https://github.com/ceph/ceph/pull/26836>`_, Patrick Nawracay) -* mgr/dashboard: A block-manager can not access the pool page (`pr#30001 <https://github.com/ceph/ceph/pull/30001>`_, Volker Theile) -* mgr/dashboard: accept expected exception when SSL handshaking (`pr#31014 <https://github.com/ceph/ceph/pull/31014>`_, Kefu Chai) -* mgr/dashboard: Access control database does not restore disabled users correctly (`pr#29614 <https://github.com/ceph/ceph/pull/29614>`_, Volker Theile) -* mgr/dashboard: adapt bucket tenant API tests to new behaviour (`pr#29570 <https://github.com/ceph/ceph/pull/29570>`_, alfonsomthd) -* mgr/dashboard: adapt create_osds interface change (`pr#34000 <https://github.com/ceph/ceph/pull/34000>`_, Kiefer Chang) -* mgr/dashboard: Add Always-on column to mgr module list (`pr#33429 <https://github.com/ceph/ceph/pull/33429>`_, Volker Theile) -* mgr/dashboard: Add date range and log search functionality (`issue#37387 <http://tracker.ceph.com/issues/37387>`_, `pr#26562 <https://github.com/ceph/ceph/pull/26562>`_, guodan1) -* mgr/dashboard: add debug mode (`pr#30522 <https://github.com/ceph/ceph/pull/30522>`_, Ernesto Puerta) -* mgr/dashboard: add feature toggle for NFS and fix feature toggles regression (`pr#32419 <https://github.com/ceph/ceph/pull/32419>`_, Ernesto Puerta) -* mgr/dashboard: Add invalid pattern message for Pool name (`pr#31607 <https://github.com/ceph/ceph/pull/31607>`_, Tiago Melo) -* mgr/dashboard: Add missing text translation (`pr#29934 <https://github.com/ceph/ceph/pull/29934>`_, Volker Theile) -* mgr/dashboard: Add polish translation (`pr#27247 <https://github.com/ceph/ceph/pull/27247>`_, Sebastian Krah) -* mgr/dashboard: Add protractor-screenshoter-plugin (`pr#27166 <https://github.com/ceph/ceph/pull/27166>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Add refresh interval to the dashboard landing page (`issue#26872 <http://tracker.ceph.com/issues/26872>`_, `pr#26396 <https://github.com/ceph/ceph/pull/26396>`_, guodan1) -* mgr/dashboard: Add separate option to config SSL port (`pr#26914 <https://github.com/ceph/ceph/pull/26914>`_, Volker Theile) -* mgr/dashboard: Add support for blinking enclosure LEDs (`pr#31851 <https://github.com/ceph/ceph/pull/31851>`_, Volker Theile) -* mgr/dashboard: Add time-diff unittest and docs (`pr#31357 <https://github.com/ceph/ceph/pull/31357>`_, Volker Theile) -* mgr/dashboard: Add vertical menu (`pr#31923 <https://github.com/ceph/ceph/pull/31923>`_, Tiago Melo) -* mgr/dashboard: Add whitelist to guard (`pr#27406 <https://github.com/ceph/ceph/pull/27406>`_, Ernesto Puerta) -* mgr/dashboard: Allow deletion of RBD with snapshots (`pr#33067 <https://github.com/ceph/ceph/pull/33067>`_, Tiago Melo) -* mgr/dashboard: Allow disabling redirection on standby Dashboards (`pr#29088 <https://github.com/ceph/ceph/pull/29088>`_, Volker Theile) -* mgr/dashboard: allow refreshing inventory page (`pr#32423 <https://github.com/ceph/ceph/pull/32423>`_, Kiefer Chang) -* mgr/dashboard: Allow users to change their password on the UI (`pr#28935 <https://github.com/ceph/ceph/pull/28935>`_, Volker Theile) -* mgr/dashboard: auth ttl expired error (`pr#27098 <https://github.com/ceph/ceph/pull/27098>`_, ming416) -* mgr/dashboard: Back button component (`pr#27164 <https://github.com/ceph/ceph/pull/27164>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: behave when pwdUpdateRequired key is missing (`pr#33513 <https://github.com/ceph/ceph/pull/33513>`_, Sage Weil) -* mgr/dashboard: Bucket names cannot be formatted as IP address (`pr#30620 <https://github.com/ceph/ceph/pull/30620>`_, Volker Theile) -* mgr/dashboard: ceph dashboard i18ntool (`pr#26953 <https://github.com/ceph/ceph/pull/26953>`_, Sebastian Krah) -* mgr/dashboard: CephFS client tab switch (`pr#29556 <https://github.com/ceph/ceph/pull/29556>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: CephFS tab component (`pr#29800 <https://github.com/ceph/ceph/pull/29800>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Change the provider of services to root (`issue#39996 <http://tracker.ceph.com/issues/39996>`_, `pr#28211 <https://github.com/ceph/ceph/pull/28211>`_, Tiago Melo) -* mgr/dashboard: change warn_explicit to warn (`pr#30075 <https://github.com/ceph/ceph/pull/30075>`_, Ernesto Puerta) -* mgr/dashboard: Check if gateway is in use before deletion (`pr#27262 <https://github.com/ceph/ceph/pull/27262>`_, Ricardo Marques) -* mgr/dashboard: Check if `num_sessions` is available (`pr#30270 <https://github.com/ceph/ceph/pull/30270>`_, Ricardo Marques) -* mgr/dashboard: cheroot moved into a separate project (`pr#31431 <https://github.com/ceph/ceph/pull/31431>`_, Joshua Schmid) -* mgr/dashboard: Cleanup code (`pr#33107 <https://github.com/ceph/ceph/pull/33107>`_, Volker Theile) -* mgr/dashboard: Cleanup feature toggle status output (`pr#32569 <https://github.com/ceph/ceph/pull/32569>`_, Volker Theile) -* mgr/dashboard: Cleanup Python code (`pr#29604 <https://github.com/ceph/ceph/pull/29604>`_, Volker Theile) -* mgr/dashboard: Clone an existing user role (`pr#32653 <https://github.com/ceph/ceph/pull/32653>`_, Volker Theile) -* mgr/dashboard: commands to set SSL certificate and key (`pr#27463 <https://github.com/ceph/ceph/pull/27463>`_, Ricardo Dias) -* mgr/dashboard: Configuring an URL prefix does not work as expected (`pr#30599 <https://github.com/ceph/ceph/pull/30599>`_, Volker Theile) -* mgr/dashboard: consider mon_allow_pool_delete flag (`pr#28260 <https://github.com/ceph/ceph/pull/28260>`_, Tatjana Dehler) -* mgr/dashboard: Controls UI inputs based on type (`pr#30208 <https://github.com/ceph/ceph/pull/30208>`_, Ricardo Marques) -* mgr/dashboard: coverage venv python version same as mgr (`pr#33407 <https://github.com/ceph/ceph/pull/33407>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Create bucket with x-amz-bucket-object-lock-enabled (`pr#33821 <https://github.com/ceph/ceph/pull/33821>`_, Volker Theile) -* mgr/dashboard: Crush rule modal (`pr#33620 <https://github.com/ceph/ceph/pull/33620>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: decouple backend unit tests from build (`pr#32565 <https://github.com/ceph/ceph/pull/32565>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: destroyed view in CRUSH map viewer (`pr#33405 <https://github.com/ceph/ceph/pull/33405>`_, Avan Thakkar) -* mgr/dashboard: Disable event propagation in the helper icon (`issue#40715 <http://tracker.ceph.com/issues/40715>`_, `pr#29105 <https://github.com/ceph/ceph/pull/29105>`_, Tiago Melo) -* mgr/dashboard: Display correct dialog title (`pr#28168 <https://github.com/ceph/ceph/pull/28168>`_, Volker Theile) -* mgr/dashboard: Display iSCSI logged in info (`pr#28265 <https://github.com/ceph/ceph/pull/28265>`_, Ricardo Marques) -* mgr/dashboard: Display legend for CephFS standbys (`pr#29927 <https://github.com/ceph/ceph/pull/29927>`_, Volker Theile) -* mgr/dashboard: display OSD IDs on inventory page (`pr#31189 <https://github.com/ceph/ceph/pull/31189>`_, Kiefer Chang) -* mgr/dashboard: Display the number of iSCSI active sessions (`pr#27248 <https://github.com/ceph/ceph/pull/27248>`_, Ricardo Marques) -* mgr/dashboard: Display WWN and LUN number in iSCSI target details (`pr#30288 <https://github.com/ceph/ceph/pull/30288>`_, Ricardo Marques) -* mgr/dashboard: do not log tokens (`pr#30445 <https://github.com/ceph/ceph/pull/30445>`_, Kefu Chai) -* mgr/dashboard: do not show RGW API keys if only read-only privileges (`pr#33178 <https://github.com/ceph/ceph/pull/33178>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Editing RGW bucket fails because of name is already in use (`pr#29767 <https://github.com/ceph/ceph/pull/29767>`_, Volker Theile) -* mgr/dashboard: Enable compiler options used by Angular --strict flag (`pr#32553 <https://github.com/ceph/ceph/pull/32553>`_, Tiago Melo) -* mgr/dashboard: Enable read only users to read again (`pr#27348 <https://github.com/ceph/ceph/pull/27348>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: enable/disable versioning on RGW bucket (`pr#29460 <https://github.com/ceph/ceph/pull/29460>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Enforce password change upon first login (`pr#32680 <https://github.com/ceph/ceph/pull/32680>`_, Volker Theile, Tatjana Dehler) -* mgr/dashboard: Enhance user create CLI command to force password change (`pr#33552 <https://github.com/ceph/ceph/pull/33552>`_, Volker Theile) -* mgr/dashboard: Evict a CephFS client (`pr#28898 <https://github.com/ceph/ceph/pull/28898>`_, Ricardo Marques) -* mgr/dashboard: Explicitly set/change the device class of an OSD (`pr#32150 <https://github.com/ceph/ceph/pull/32150>`_, Ricardo Marques) -* mgr/dashboard: Extend E2E test section (`pr#28858 <https://github.com/ceph/ceph/pull/28858>`_, Laura Paduano) -* mgr/dashboard: extend types of `smart` response (`pr#30595 <https://github.com/ceph/ceph/pull/30595>`_, Patrick Seidensal) -* mgr/dashboard: fix adding/removing host errors (`pr#34023 <https://github.com/ceph/ceph/pull/34023>`_, Kiefer Chang) -* mgr/dashboard: fix backend error when updating RBD interlocked features (`issue#39933 <http://tracker.ceph.com/issues/39933>`_, `pr#28147 <https://github.com/ceph/ceph/pull/28147>`_, Kiefer Chang) -* mgr/dashboard: fix cdEncode decorator is not working on class (`pr#30064 <https://github.com/ceph/ceph/pull/30064>`_, Kiefer Chang) -* mgr/dashboard: Fix CephFS chart (`pr#29557 <https://github.com/ceph/ceph/pull/29557>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Fix dashboard health test failure (`pr#29172 <https://github.com/ceph/ceph/pull/29172>`_, Ricardo Marques) -* mgr/dashboard: Fix deletion of NFS protocol properties (`issue#38997 <http://tracker.ceph.com/issues/38997>`_, `pr#27244 <https://github.com/ceph/ceph/pull/27244>`_, Tiago Melo) -* mgr/dashboard: Fix deletion of NFS transports properties (`issue#39090 <http://tracker.ceph.com/issues/39090>`_, `pr#27350 <https://github.com/ceph/ceph/pull/27350>`_, Tiago Melo) -* mgr/dashboard: Fix e2e chromedriver problem (`pr#32224 <https://github.com/ceph/ceph/pull/32224>`_, Tiago Melo) -* mgr/dashboard: Fix env vars of `run-tox.sh` (`issue#38798 <http://tracker.ceph.com/issues/38798>`_, `pr#26977 <https://github.com/ceph/ceph/pull/26977>`_, Patrick Nawracay) -* mgr/dashboard: Fix error in unit test caused by timezone (`pr#31632 <https://github.com/ceph/ceph/pull/31632>`_, Tiago Melo) -* mgr/dashboard: fix failing user test (`pr#32461 <https://github.com/ceph/ceph/pull/32461>`_, Tatjana Dehler) -* mgr/dashboard: fix improper URL checking (`pr#32652 <https://github.com/ceph/ceph/pull/32652>`_, Ernesto Puerta) -* mgr/dashboard: Fix iSCSI + Rook issues (`issue#39586 <http://tracker.ceph.com/issues/39586>`_, `pr#26341 <https://github.com/ceph/ceph/pull/26341>`_, Sebastian Wagner) -* mgr/dashboard: Fix iSCSI Discovery user permissions (`issue#39328 <http://tracker.ceph.com/issues/39328>`_, `pr#27678 <https://github.com/ceph/ceph/pull/27678>`_, Tiago Melo) -* mgr/dashboard: Fix iSCSI disk diff calculation (`pr#27378 <https://github.com/ceph/ceph/pull/27378>`_, Ricardo Marques) -* mgr/dashboard: Fix iSCSI form when using IPv6 (`pr#27946 <https://github.com/ceph/ceph/pull/27946>`_, Ricardo Marques) -* mgr/dashboard: Fix iSCSI target form warning (`issue#39324 <http://tracker.ceph.com/issues/39324>`_, `pr#27609 <https://github.com/ceph/ceph/pull/27609>`_, Tiago Melo) -* mgr/dashboard: Fix iSCSI target submission (`pr#27380 <https://github.com/ceph/ceph/pull/27380>`_, Ricardo Marques) -* mgr/dashboard: Fix issues in user form (`pr#28863 <https://github.com/ceph/ceph/pull/28863>`_, Volker Theile) -* mgr/dashboard: fix LazyUUID4 not serializable (`pr#31266 <https://github.com/ceph/ceph/pull/31266>`_, Ernesto Puerta) -* mgr/dashboard: fix MDS counter chart is not displayed (`pr#29371 <https://github.com/ceph/ceph/pull/29371>`_, Kiefer Chang) -* mgr/dashboard: fix mgr module API tests (`pr#29634 <https://github.com/ceph/ceph/pull/29634>`_, alfonsomthd, Kefu Chai) -* mgr/dashboard: fix missing constraints file in backend API tests (`pr#30720 <https://github.com/ceph/ceph/pull/30720>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Fix missing i18n (`pr#32650 <https://github.com/ceph/ceph/pull/32650>`_, Volker Theile) -* mgr/dashboard: Fix mypy issues and enable it by default (`pr#33454 <https://github.com/ceph/ceph/pull/33454>`_, Volker Theile) -* mgr/dashboard: Fix NFS pseudo validation (`issue#39063 <http://tracker.ceph.com/issues/39063>`_, `pr#27293 <https://github.com/ceph/ceph/pull/27293>`_, Tiago Melo) -* mgr/dashboard: Fix NFS squash default value (`issue#39064 <http://tracker.ceph.com/issues/39064>`_, `pr#27294 <https://github.com/ceph/ceph/pull/27294>`_, Tiago Melo) -* mgr/dashboard: Fix npm vulnerabilities (`pr#32699 <https://github.com/ceph/ceph/pull/32699>`_, Tiago Melo) -* mgr/dashboard: Fix OSD IDs are not displayed when using cephadm backend (`pr#32207 <https://github.com/ceph/ceph/pull/32207>`_, Kiefer Chang) -* mgr/dashboard: Fix pool deletion e2e (`pr#29993 <https://github.com/ceph/ceph/pull/29993>`_, Volker Theile) -* mgr/dashboard: Fix pool renaming functionality (`pr#31617 <https://github.com/ceph/ceph/pull/31617>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: fix python2 failure in home controller (`pr#30937 <https://github.com/ceph/ceph/pull/30937>`_, Ricardo Dias) -* mgr/dashboard: fix RGW subuser auto-generate key (`pr#32186 <https://github.com/ceph/ceph/pull/32186>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Fix RGW user/bucket quota issues (`pr#28174 <https://github.com/ceph/ceph/pull/28174>`_, Volker Theile) -* mgr/dashboard: fix SAML input argument handling (`pr#29848 <https://github.com/ceph/ceph/pull/29848>`_, Ernesto Puerta) -* mgr/dashboard: fix small typos in description message (`pr#30647 <https://github.com/ceph/ceph/pull/30647>`_, Tatjana Dehler) -* mgr/dashboard: fix some performance data are not displayed (`issue#39971 <http://tracker.ceph.com/issues/39971>`_, `pr#28169 <https://github.com/ceph/ceph/pull/28169>`_, Kiefer Chang) -* mgr/dashboard: fix sparkline component (`pr#26985 <https://github.com/ceph/ceph/pull/26985>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: fix tasks.mgr.dashboard.test_rgw suite (`pr#33718 <https://github.com/ceph/ceph/pull/33718>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Fix the table mouseenter event handling test (`pr#28879 <https://github.com/ceph/ceph/pull/28879>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: fix tox test failure (`pr#29125 <https://github.com/ceph/ceph/pull/29125>`_, Kiefer Chang) -* mgr/dashboard: Fix translation of variables (`pr#30671 <https://github.com/ceph/ceph/pull/30671>`_, Tiago Melo) -* mgr/dashboard: Fix typo in NFS form (`issue#39067 <http://tracker.ceph.com/issues/39067>`_, `pr#27245 <https://github.com/ceph/ceph/pull/27245>`_, Tiago Melo) -* mgr/dashboard: fix visibility of pwdExpirationDate field (`pr#32703 <https://github.com/ceph/ceph/pull/32703>`_, Tatjana Dehler) -* mgr/dashboard: Fix zsh support in run-backend-api-tests.sh (`pr#31070 <https://github.com/ceph/ceph/pull/31070>`_, Sebastian Wagner) -* mgr/dashboard: Fix `npm run fixmod` command (`pr#28176 <https://github.com/ceph/ceph/pull/28176>`_, Patrick Nawracay) -* mgr/dashboard: Fixes defaultBuilder is not a function (`pr#29420 <https://github.com/ceph/ceph/pull/29420>`_, Ricardo Marques) -* mgr/dashboard: Fixes random cephfs tab test failure (`pr#30814 <https://github.com/ceph/ceph/pull/30814>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Fixes rbd image purge trash button & modal text (`pr#33321 <https://github.com/ceph/ceph/pull/33321>`_, anurag) -* mgr/dashboard: Fixes tooltip behavior (`pr#27153 <https://github.com/ceph/ceph/pull/27153>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: FixtureHelper (`pr#27157 <https://github.com/ceph/ceph/pull/27157>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Form fields do not show error messages/hints (`pr#29043 <https://github.com/ceph/ceph/pull/29043>`_, Volker Theile) -* mgr/dashboard: ganesha: Specify the name of the filesystem (create_path) (`pr#29182 <https://github.com/ceph/ceph/pull/29182>`_, David Casier) -* mgr/dashboard: hide daemon table when orchestrator is disabled (`pr#33941 <https://github.com/ceph/ceph/pull/33941>`_, Kiefer Chang) -* mgr/dashboard: hide in-use devices when creating OSDs (`pr#31927 <https://github.com/ceph/ceph/pull/31927>`_, Kiefer Chang) -* mgr/dashboard: improve device selection modal for creating OSDs (`pr#33081 <https://github.com/ceph/ceph/pull/33081>`_, Kiefer Chang) -* mgr/dashboard: Improve hints shown when message.xlf is invalid (`issue#40064 <http://tracker.ceph.com/issues/40064>`_, `pr#28377 <https://github.com/ceph/ceph/pull/28377>`_, Patrick Nawracay) -* mgr/dashboard: Improve NFS Pseudo pattern message (`issue#39327 <http://tracker.ceph.com/issues/39327>`_, `pr#27653 <https://github.com/ceph/ceph/pull/27653>`_, Tiago Melo) -* mgr/dashboard: Improve Notification sidebar (`pr#32895 <https://github.com/ceph/ceph/pull/32895>`_, Tiago Melo) -* mgr/dashboard: Improve RestClient error logging (`pr#29794 <https://github.com/ceph/ceph/pull/29794>`_, Volker Theile) -* mgr/dashboard: Increase column size on mgr module form (`pr#29107 <https://github.com/ceph/ceph/pull/29107>`_, Ricardo Marques) -* mgr/dashboard: install teuthology using pip (`pr#31815 <https://github.com/ceph/ceph/pull/31815>`_, Kefu Chai) -* mgr/dashboard: internationalization support with AOT enabled (`pr#30694 <https://github.com/ceph/ceph/pull/30694>`_, Tiago Melo, Ricardo Dias) -* mgr/dashboard: Invalid SSO configuration when certificate path does not exist (`pr#31920 <https://github.com/ceph/ceph/pull/31920>`_, Ricardo Marques) -* mgr/dashboard: iSCSI GET requests should not be logged (`pr#27813 <https://github.com/ceph/ceph/pull/27813>`_, Ricardo Marques) -* mgr/dashboard: iSCSI targets not available if any gateway is down (`pr#31819 <https://github.com/ceph/ceph/pull/31819>`_, Ricardo Marques) -* mgr/dashboard: Isolate each RBD component (`pr#33520 <https://github.com/ceph/ceph/pull/33520>`_, Tiago Melo) -* mgr/dashboard: KeyError on dashboard reload (`pr#31469 <https://github.com/ceph/ceph/pull/31469>`_, Patrick Seidensal) -* mgr/dashboard: KV-table transforms dates through pipe (`pr#27612 <https://github.com/ceph/ceph/pull/27612>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Left align badge datatable columns (`pr#32053 <https://github.com/ceph/ceph/pull/32053>`_, Volker Theile) -* mgr/dashboard: list services and daemons (`pr#33531 <https://github.com/ceph/ceph/pull/33531>`_, Sage Weil, Kiefer Chang) -* mgr/dashboard: Localization for date picker module (`pr#27275 <https://github.com/ceph/ceph/pull/27275>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Make all columns sortable (`pr#27784 <https://github.com/ceph/ceph/pull/27784>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: make check mypy failure (`pr#33573 <https://github.com/ceph/ceph/pull/33573>`_, Volker Theile) -* mgr/dashboard: Make password policy check configurable (`pr#32546 <https://github.com/ceph/ceph/pull/32546>`_, Volker Theile) -* mgr/dashboard: Make preventDefault work with 400 errors (`pr#26561 <https://github.com/ceph/ceph/pull/26561>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: monitoring: improve generic Could not reach external API message (`pr#32648 <https://github.com/ceph/ceph/pull/32648>`_, Patrick Seidensal) -* mgr/dashboard: Not able to restrict bucket creation for new user (`pr#33612 <https://github.com/ceph/ceph/pull/33612>`_, Volker Theile) -* mgr/dashboard: Optimize portal IPs calculation (`pr#28084 <https://github.com/ceph/ceph/pull/28084>`_, Ricardo Marques) -* mgr/dashboard: orchestrator integration initial works (`pr#29127 <https://github.com/ceph/ceph/pull/29127>`_, Kiefer Chang) -* mgr/dashboard: OSD custom action button removal (`pr#28095 <https://github.com/ceph/ceph/pull/28095>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: OSD improvements (`pr#30493 <https://github.com/ceph/ceph/pull/30493>`_, Patrick Seidensal) -* mgr/dashboard: pass a list of drive_group to create_osds (`pr#33014 <https://github.com/ceph/ceph/pull/33014>`_, Kefu Chai) -* mgr/dashboard: Pool form uses different loading spinner (`pr#28649 <https://github.com/ceph/ceph/pull/28649>`_, Volker Theile) -* mgr/dashboard: Prevent deletion of iSCSI IQNs with open sessions (`pr#29133 <https://github.com/ceph/ceph/pull/29133>`_, Ricardo Marques) -* mgr/dashboard: Prevent KeyError when requesting always_on_modules (`pr#30426 <https://github.com/ceph/ceph/pull/30426>`_, Volker Theile) -* mgr/dashboard: Process password complexity checks immediately (`pr#32032 <https://github.com/ceph/ceph/pull/32032>`_, Volker Theile, Tatjana Dehler) -* mgr/dashboard: Provide the name of the object being deleted (`pr#30658 <https://github.com/ceph/ceph/pull/30658>`_, Ricardo Marques) -* mgr/dashboard: Provide user enable/disable capability (`issue#25229 <http://tracker.ceph.com/issues/25229>`_, `pr#29046 <https://github.com/ceph/ceph/pull/29046>`_, Ricardo Dias, Patrick Nawracay) -* mgr/dashboard: Push Grafana dashboards on startup (`pr#26415 <https://github.com/ceph/ceph/pull/26415>`_, Zack Cerza) -* mgr/dashboard: qa: fix RBD test when matching error strings (`pr#29264 <https://github.com/ceph/ceph/pull/29264>`_, Ricardo Dias) -* mgr/dashboard: qa: whitelist client eviction warning (`pr#29114 <https://github.com/ceph/ceph/pull/29114>`_, Ricardo Dias) -* mgr/dashboard: RBD snapshot name suggestion with local time suffix (`pr#27613 <https://github.com/ceph/ceph/pull/27613>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Reduce the number of renders on the tables (`issue#39944 <http://tracker.ceph.com/issues/39944>`_, `pr#28118 <https://github.com/ceph/ceph/pull/28118>`_, Tiago Melo) -* mgr/dashboard: Refactor and cleanup tasks.mgr.dashboard.test_user (`pr#33743 <https://github.com/ceph/ceph/pull/33743>`_, Volker Theile) -* mgr/dashboard: Refactor Python unittests and controller (`pr#31165 <https://github.com/ceph/ceph/pull/31165>`_, Volker Theile) -* mgr/dashboard: Reload all CephFS directories (`pr#32552 <https://github.com/ceph/ceph/pull/32552>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: remove config-opt: read perm. from system roles (`pr#33690 <https://github.com/ceph/ceph/pull/33690>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Remove ngx-store (`pr#33756 <https://github.com/ceph/ceph/pull/33756>`_, Tiago Melo) -* mgr/dashboard: remove traceback/version assertions (`pr#31720 <https://github.com/ceph/ceph/pull/31720>`_, Ernesto Puerta) -* mgr/dashboard: Remove unused RBD configuration endpoint (`pr#30815 <https://github.com/ceph/ceph/pull/30815>`_, Ricardo Marques) -* mgr/dashboard: Remove unused variable (`pr#31785 <https://github.com/ceph/ceph/pull/31785>`_, Volker Theile) -* mgr/dashboard: Removes distracting search behavior (`pr#27438 <https://github.com/ceph/ceph/pull/27438>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Rename pipe list -> join (`pr#31843 <https://github.com/ceph/ceph/pull/31843>`_, Volker Theile) -* mgr/dashboard: Replace IP address validation with Python standard library functions (`pr#26184 <https://github.com/ceph/ceph/pull/26184>`_, Ashish Singh) -* mgr/dashboard: Replace ng2-tree with angular-tree-component (`pr#33758 <https://github.com/ceph/ceph/pull/33758>`_, Tiago Melo) -* mgr/dashboard: RGW bucket creation when no placement target received (`pr#29280 <https://github.com/ceph/ceph/pull/29280>`_, alfonsomthd) -* mgr/dashboard: RGW port autodetection does not support Beast RGW frontend (`pr#33060 <https://github.com/ceph/ceph/pull/33060>`_, Volker Theile) -* mgr/dashboard: RGW User quota validation is not working correctly (`pr#29132 <https://github.com/ceph/ceph/pull/29132>`_, Volker Theile) -* mgr/dashboard: run e2e tests against prod build (jenkins job) (`pr#29198 <https://github.com/ceph/ceph/pull/29198>`_, alfonsomthd) -* mgr/dashboard: run-frontend-e2e-tests.sh: allow user defined BASE_URL\xe2\x80\xa6 (`pr#32211 <https://github.com/ceph/ceph/pull/32211>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: select placement target on RGW bucket creation (`pr#28764 <https://github.com/ceph/ceph/pull/28764>`_, alfonsomthd) -* mgr/dashboard: Set RO as the default access_type for RGW NFS exports (`pr#30111 <https://github.com/ceph/ceph/pull/30111>`_, Tiago Melo) -* mgr/dashboard: show checkboxes for booleans (`pr#32836 <https://github.com/ceph/ceph/pull/32836>`_, Tatjana Dehler) -* mgr/dashboard: show correct RGW user system info (`pr#33206 <https://github.com/ceph/ceph/pull/33206>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: Show iSCSI gateways status in the health page (`pr#29112 <https://github.com/ceph/ceph/pull/29112>`_, Ricardo Marques) -* mgr/dashboard: smart: smart data read out on down osd causes error popup (`pr#32953 <https://github.com/ceph/ceph/pull/32953>`_, Volker Theile) -* mgr/dashboard: Standby Dashboards dont handle all requests properly (`pr#30478 <https://github.com/ceph/ceph/pull/30478>`_, Volker Theile) -* mgr/dashboard: Support ceph-iscsi config v9 (`pr#27448 <https://github.com/ceph/ceph/pull/27448>`_, Ricardo Marques) -* mgr/dashboard: support multiple DriveGroups when creating OSDs (`pr#32678 <https://github.com/ceph/ceph/pull/32678>`_, Kiefer Chang) -* mgr/dashboard: support removing OSDs in OSDs page (`pr#31997 <https://github.com/ceph/ceph/pull/31997>`_, Kiefer Chang) -* mgr/dashboard: support setting password hashes (`pr#29138 <https://github.com/ceph/ceph/pull/29138>`_, Fabian Bonk) -* mgr/dashboard: tasks: only unblock controller thread after TaskManager thread (`pr#30747 <https://github.com/ceph/ceph/pull/30747>`_, Ricardo Dias) -* mgr/dashboard: Throw a more meaningful exception (`pr#32234 <https://github.com/ceph/ceph/pull/32234>`_, Volker Theile) -* mgr/dashboard: tox.ini fixes (`pr#30779 <https://github.com/ceph/ceph/pull/30779>`_, Alfonso Mart\xc3\xadnez) -* mgr/dashboard: UI fixes (`pr#33171 <https://github.com/ceph/ceph/pull/33171>`_, Avan Thakkar) -* mgr/dashboard: Unable to set boolean values to false when default is true (`pr#31738 <https://github.com/ceph/ceph/pull/31738>`_, Ricardo Marques) -* mgr/dashboard: unify button/URL actions naming (`issue#37337 <http://tracker.ceph.com/issues/37337>`_, `pr#26572 <https://github.com/ceph/ceph/pull/26572>`_, Ernesto Puerta) -* mgr/dashboard: Unify the look of dashboard charts (`issue#39384 <http://tracker.ceph.com/issues/39384>`_, `pr#27681 <https://github.com/ceph/ceph/pull/27681>`_, Tiago Melo) -* mgr/dashboard: update dashboard CODEOWNERShip (`pr#31193 <https://github.com/ceph/ceph/pull/31193>`_, Ernesto Puerta) -* mgr/dashboard: Update tar to v4.4.8 (`pr#28092 <https://github.com/ceph/ceph/pull/28092>`_, Kefu Chai) -* mgr/dashboard: update vstart to use new ssl port (`issue#26914 <http://tracker.ceph.com/issues/26914>`_, `pr#27269 <https://github.com/ceph/ceph/pull/27269>`_, Ernesto Puerta) -* mgr/dashboard: Updated octopus image on 404 page (`pr#33920 <https://github.com/ceph/ceph/pull/33920>`_, Lenz Grimmer) -* mgr/dashboard: Use booleanText pipe (`pr#26733 <https://github.com/ceph/ceph/pull/26733>`_, Volker Theile) -* mgr/dashboard: Use default language when running npm run build (`pr#31563 <https://github.com/ceph/ceph/pull/31563>`_, Tiago Melo) -* mgr/dashboard: Use ModalComponent in all modals (`pr#33858 <https://github.com/ceph/ceph/pull/33858>`_, Tiago Melo) -* mgr/dashboard: Use Observable in auth.service (`pr#32084 <https://github.com/ceph/ceph/pull/32084>`_, Volker Theile) -* mgr/dashboard: Use onCancel on any modal event (`pr#29402 <https://github.com/ceph/ceph/pull/29402>`_, Stephan M\xc3\xbcller) -* mgr/dashboard: Validate iSCSI controls min/max value (`pr#28942 <https://github.com/ceph/ceph/pull/28942>`_, Ricardo Marques) -* mgr/dashboard: Validate iSCSI images features (`pr#27135 <https://github.com/ceph/ceph/pull/27135>`_, Ricardo Marques) -* mgr/dashboard: Validate `ceph-iscsi` config version (`pr#26835 <https://github.com/ceph/ceph/pull/26835>`_, Ricardo Marques) -* mgr/dashboard: Various UI issues related to CephFS (`pr#29272 <https://github.com/ceph/ceph/pull/29272>`_, Volker Theile) -* mgr/dashboard: Vertically align the Refresh label (`pr#29737 <https://github.com/ceph/ceph/pull/29737>`_, Tiago Melo) -* mgr/dashboard: vstart: Fix /dev/tty No such device or address (`pr#31195 <https://github.com/ceph/ceph/pull/31195>`_, Volker Theile) -* mgr/dashboard: wait for PG unknown state to be cleared (`pr#33013 <https://github.com/ceph/ceph/pull/33013>`_, Tatjana Dehler) -* mgr/dashboard: Watch for pool pgs increase and decrease (`pr#28006 <https://github.com/ceph/ceph/pull/28006>`_, Ricardo Dias, Stephan M\xc3\xbcller) -* mgr/modules: outsource SSL certificate creation (`pr#33550 <https://github.com/ceph/ceph/pull/33550>`_, Patrick Seidensal) -* mgr/orch,cephadm: add timestamps to daemons and services (`pr#33728 <https://github.com/ceph/ceph/pull/33728>`_, Sage Weil) -* mgr/orch: add --all-available-devices to orch apply osd (`pr#33990 <https://github.com/ceph/ceph/pull/33990>`_, Sage Weil) -* mgr/orch: add missing CLI commands for grafana, alertmanager (`pr#33695 <https://github.com/ceph/ceph/pull/33695>`_, Sage Weil) -* mgr/orch: associate addresses with hosts (`pr#33098 <https://github.com/ceph/ceph/pull/33098>`_, Sage Weil) -* mgr/orch: ceph orchestrator ... -> ceph orch ... (`pr#33131 <https://github.com/ceph/ceph/pull/33131>`_, Sage Weil) -* mgr/orch: ceph upgrade ... -> ceph orch upgrade ... (`pr#34046 <https://github.com/ceph/ceph/pull/34046>`_, Sage Weil) -* mgr/orch: collapse SPEC and PLACEMENT columns in orch ls (`pr#33795 <https://github.com/ceph/ceph/pull/33795>`_, Sage Weil) -* mgr/orch: dump service spec by name (`pr#33951 <https://github.com/ceph/ceph/pull/33951>`_, Michael Fritch) -* mgr/orch: first phase of new cli (`pr#33212 <https://github.com/ceph/ceph/pull/33212>`_, Sage Weil) -* mgr/orch: fix host ls (`pr#33486 <https://github.com/ceph/ceph/pull/33486>`_, Sage Weil) -* mgr/orch: fix orch ls table spacing (`pr#33586 <https://github.com/ceph/ceph/pull/33586>`_, Sage Weil) -* mgr/orch: fix ServiceSpec deserialization error (`pr#33779 <https://github.com/ceph/ceph/pull/33779>`_, Kiefer Chang) -* mgr/orch: improve commandline parsing for update\\_\\* (`pr#31672 <https://github.com/ceph/ceph/pull/31672>`_, Joshua Schmid) -* mgr/orch: include spec ref in ServiceDescription (`pr#33667 <https://github.com/ceph/ceph/pull/33667>`_, Sage Weil) -* mgr/orch: make arg hostname, not host (`pr#33474 <https://github.com/ceph/ceph/pull/33474>`_, Sage Weil) -* mgr/orch: new cli, phase 2 (`pr#33244 <https://github.com/ceph/ceph/pull/33244>`_, Sage Weil) -* mgr/orch: pass unicode string to ipaddress.ip_network() (`pr#31755 <https://github.com/ceph/ceph/pull/31755>`_, Kefu Chai) -* mgr/orch: PlacementSpec: add all_hosts property (`pr#33465 <https://github.com/ceph/ceph/pull/33465>`_, Sage Weil) -* mgr/orch: Properly handle NotImplementedError (`pr#33914 <https://github.com/ceph/ceph/pull/33914>`_, Sebastian Wagner) -* mgr/orch: remove ansible and deepsea (`pr#33126 <https://github.com/ceph/ceph/pull/33126>`_, Sage Weil) -* mgr/orch: resurrect ServiceDescription, orch ls (`pr#33359 <https://github.com/ceph/ceph/pull/33359>`_, Sage Weil) -* mgr/orch: take a single placement argument (`pr#33706 <https://github.com/ceph/ceph/pull/33706>`_, Sage Weil) -* mgr/orchestrator,mgr/ssh: add host labels (`pr#31854 <https://github.com/ceph/ceph/pull/31854>`_, Sage Weil) -* mgr/orchestrator: Add doc about how to use OrchestratorClientMixin (`pr#32893 <https://github.com/ceph/ceph/pull/32893>`_, Sebastian Wagner) -* mgr/orchestrator: Add mypy static type checking (`pr#32010 <https://github.com/ceph/ceph/pull/32010>`_, Sebastian Wagner) -* mgr/orchestrator: add optional format param for orchestrator host ls (`pr#31930 <https://github.com/ceph/ceph/pull/31930>`_, Kefu Chai) -* mgr/orchestrator: add progress events to all orchestrators (`pr#26654 <https://github.com/ceph/ceph/pull/26654>`_, Sebastian Wagner) -* mgr/orchestrator: Add simple scheduler (`pr#32003 <https://github.com/ceph/ceph/pull/32003>`_, Joshua Schmid) -* mgr/orchestrator: addr is optional for constructing InventoryNode (`pr#33347 <https://github.com/ceph/ceph/pull/33347>`_, Kefu Chai) -* mgr/orchestrator: device lights (`pr#26768 <https://github.com/ceph/ceph/pull/26768>`_, Sebastian Wagner, Sage Weil) -* mgr/orchestrator: do not try to iterate through None (`pr#31705 <https://github.com/ceph/ceph/pull/31705>`_, Kefu Chai) -* mgr/orchestrator: Document OSD replacement (`pr#29792 <https://github.com/ceph/ceph/pull/29792>`_, Sebastian Wagner) -* mgr/orchestrator: fix orch host label rm help text (`pr#33585 <https://github.com/ceph/ceph/pull/33585>`_, Sage Weil) -* mgr/orchestrator: Fix raise_if_exception for Python 3 (`pr#31015 <https://github.com/ceph/ceph/pull/31015>`_, Sebastian Wagner) -* mgr/orchestrator: fix refs property of progresses (`pr#30197 <https://github.com/ceph/ceph/pull/30197>`_, Kiefer Chang) -* mgr/orchestrator: fix `ceph orch apply -i` + yaml cleanup + Completion cleanup (`pr#34001 <https://github.com/ceph/ceph/pull/34001>`_, Sebastian Wagner) -* mgr/orchestrator: functools.partial doesnt work for methods (`pr#33432 <https://github.com/ceph/ceph/pull/33432>`_, Sebastian Wagner) -* mgr/orchestrator: get_hosts return `HostSpec` instead of `InventoryDevice` (`pr#33258 <https://github.com/ceph/ceph/pull/33258>`_, Sebastian Wagner) -* mgr/orchestrator: Make Completions composable (`pr#30262 <https://github.com/ceph/ceph/pull/30262>`_, Sebastian Wagner, Tim Serong) -* mgr/orchestrator: make hosts and label args consistent (`pr#32253 <https://github.com/ceph/ceph/pull/32253>`_, Sage Weil) -* mgr/orchestrator: Raise more expressive Error, if completion already \xe2\x80\xa6 (`pr#32270 <https://github.com/ceph/ceph/pull/32270>`_, Sebastian Wagner) -* mgr/orchestrator: raise_if_exception: Add exception type to message (`pr#32574 <https://github.com/ceph/ceph/pull/32574>`_, Sebastian Wagner) -* mgr/orchestrator: Remove `(add|test|remove)_stateful_service_rule` (`pr#26772 <https://github.com/ceph/ceph/pull/26772>`_, Sebastian Wagner) -* mgr/orchestrator: set node labels to empty list if none specified (`pr#31914 <https://github.com/ceph/ceph/pull/31914>`_, Tim Serong) -* mgr/orchestrator: Split \\*_stateless_service and add get_feature_set (`pr#29063 <https://github.com/ceph/ceph/pull/29063>`_, Sebastian Wagner) -* mgr/orchestrator: Substitute `hostname` for `nodename`, globally (`pr#33467 <https://github.com/ceph/ceph/pull/33467>`_, Sebastian Wagner) -* mgr/orchestrator: unify StatelessServiceSpec and StatefulServiceSpec (`pr#33175 <https://github.com/ceph/ceph/pull/33175>`_, Sebastian Wagner) -* mgr/orchestrator: use deepcopy for copying exceptions (`pr#32881 <https://github.com/ceph/ceph/pull/32881>`_, Kefu Chai) -* mgr/orchestrator: Use `pickle` to pass exceptions across sub-interpreters (`pr#33179 <https://github.com/ceph/ceph/pull/33179>`_, Sebastian Wagner) -* mgr/orchestrator_cli: clean up device ls table (`pr#32279 <https://github.com/ceph/ceph/pull/32279>`_, Sage Weil) -* mgr/orchestrator_cli: Fix NFS (`pr#32272 <https://github.com/ceph/ceph/pull/32272>`_, Sebastian Wagner) -* mgr/orchestrator_cli: improve service ls output, sorting (`pr#31539 <https://github.com/ceph/ceph/pull/31539>`_, Sage Weil) -* mgr/orchestrator_cli: set type for orchestrator option (`pr#32189 <https://github.com/ceph/ceph/pull/32189>`_, Sage Weil) -* mgr/orchestrator_cli: sort host list (`pr#33370 <https://github.com/ceph/ceph/pull/33370>`_, Sage Weil) -* mgr/orchestrator_cli: _update_mons require host spec only (`pr#32499 <https://github.com/ceph/ceph/pull/32499>`_, Sebastian Wagner) -* mgr/progress/module.py: s/events/_events/ (`pr#29625 <https://github.com/ceph/ceph/pull/29625>`_, Kamoltat (Junior) Sirivadhna) -* mgr/rook: Add caching for the Dashboard (`pr#29131 <https://github.com/ceph/ceph/pull/29131>`_, Sebastian Wagner, Paul Cuzner) -* mgr/rook: Added missing `rgw` daemons in `service ls` (`issue#39171 <http://tracker.ceph.com/issues/39171>`_, `pr#27491 <https://github.com/ceph/ceph/pull/27491>`_, Sebastian Wagner) -* mgr/rook: Added Mypy static type checking (`pr#32127 <https://github.com/ceph/ceph/pull/32127>`_, Sebastian Wagner) -* mgr/rook: Fix creation of bluestore OSDs (`issue#39062 <http://tracker.ceph.com/issues/39062>`_, `pr#27289 <https://github.com/ceph/ceph/pull/27289>`_, Sebastian Wagner) -* mgr/rook: Fix error creating OSDs (`pr#33176 <https://github.com/ceph/ceph/pull/33176>`_, Juan Miguel Olmo Mart\xc3\xadnez) -* mgr/rook: Fix Python 2 regression (`issue#39250 <http://tracker.ceph.com/issues/39250>`_, `pr#27516 <https://github.com/ceph/ceph/pull/27516>`_, Sebastian Wagner) -* mgr/rook: Fix RGW creation (`issue#39158 <http://tracker.ceph.com/issues/39158>`_, `pr#27462 <https://github.com/ceph/ceph/pull/27462>`_, Sebastian Wagner) -* mgr/rook: misc fixes for orch ps (`pr#33868 <https://github.com/ceph/ceph/pull/33868>`_, Sage Weil) -* mgr/rook: provide full path for devices names in inventory (`pr#32654 <https://github.com/ceph/ceph/pull/32654>`_, Sage Weil) -* mgr/rook: Remove support for Rook older than v0.9 (`issue#39278 <http://tracker.ceph.com/issues/39278>`_, `pr#27556 <https://github.com/ceph/ceph/pull/27556>`_, Sebastian Wagner) -* mgr/rook: Support other system namespaces (`issue#38799 <http://tracker.ceph.com/issues/38799>`_, `pr#27290 <https://github.com/ceph/ceph/pull/27290>`_, Sebastian Wagner) -* mgr/ssh/tests: fix RGWSpec test (`pr#31983 <https://github.com/ceph/ceph/pull/31983>`_, Sage Weil) -* mgr/ssh: add per-service operations: start, stop, restart, redeploy (`pr#31292 <https://github.com/ceph/ceph/pull/31292>`_, Sage Weil) -* mgr/ssh: add TemporaryDirectory impl for py2 compat (`pr#31835 <https://github.com/ceph/ceph/pull/31835>`_, Sage Weil) -* mgr/ssh: allow passing LV to orchestrator osd create (`pr#31512 <https://github.com/ceph/ceph/pull/31512>`_, Sage Weil) -* mgr/ssh: annotate object representation (`pr#31602 <https://github.com/ceph/ceph/pull/31602>`_, Joshua Schmid) -* mgr/ssh: cache service inventory (`pr#31385 <https://github.com/ceph/ceph/pull/31385>`_, Sage Weil) -* mgr/ssh: deploy and remove rgw daemons (`pr#31303 <https://github.com/ceph/ceph/pull/31303>`_, Sage Weil) -* mgr/ssh: deploy rbd-mirror daemons (`pr#31493 <https://github.com/ceph/ceph/pull/31493>`_, Sage Weil) -* mgr/ssh: fix redeploy (`pr#31613 <https://github.com/ceph/ceph/pull/31613>`_, Sage Weil) -* mgr/ssh: fix service_action, remove_osds (`pr#31952 <https://github.com/ceph/ceph/pull/31952>`_, Sage Weil) -* mgr/ssh: Fix various Python issues (`pr#31524 <https://github.com/ceph/ceph/pull/31524>`_, Volker Theile) -* mgr/ssh: Ignore ssh-config file (`pr#31710 <https://github.com/ceph/ceph/pull/31710>`_, Volker Theile) -* mgr/ssh: implement blink_device_light (`pr#31438 <https://github.com/ceph/ceph/pull/31438>`_, Sage Weil) -* mgr/ssh: implement service ls (`pr#31169 <https://github.com/ceph/ceph/pull/31169>`_, Sage Weil) -* mgr/ssh: improve service ls (`pr#31828 <https://github.com/ceph/ceph/pull/31828>`_, Sage Weil) -* mgr/ssh: Install SSH public key in Vagrantfile box fails (`pr#31519 <https://github.com/ceph/ceph/pull/31519>`_, Volker Theile) -* mgr/ssh: optionally specify service names (`pr#31537 <https://github.com/ceph/ceph/pull/31537>`_, Sage Weil) -* mgr/ssh: packaged-ceph-daemon mode; ssh key mgmt (`pr#31698 <https://github.com/ceph/ceph/pull/31698>`_, Sage Weil) -* mgr/ssh: Port raising exceptions from completion handlers to Py2 (`pr#31940 <https://github.com/ceph/ceph/pull/31940>`_, Sebastian Wagner) -* mgr/ssh: raise RuntimeError when ceph-daemon invocation fails (`pr#31420 <https://github.com/ceph/ceph/pull/31420>`_, Sage Weil) -* mgr/ssh: remove superfluous parameters (`pr#31462 <https://github.com/ceph/ceph/pull/31462>`_, Joshua Schmid) -* mgr/ssh: set up dummy known_hosts file (`pr#31721 <https://github.com/ceph/ceph/pull/31721>`_, Sage Weil) -* mgr/ssh: take IP, CIDR, or addrvec for new mon(s) (`pr#31505 <https://github.com/ceph/ceph/pull/31505>`_, Sage Weil) -* mgr/ssh: upgrade check command (`pr#31827 <https://github.com/ceph/ceph/pull/31827>`_, Sage Weil) -* mgr/ssh: `test_mon_update` needs to set a mon name (`pr#31933 <https://github.com/ceph/ceph/pull/31933>`_, Sebastian Wagner) -* mgr/telemetry: anonymizing smartctl report itself (`pr#33029 <https://github.com/ceph/ceph/pull/33029>`_, Yaarit Hatuka) -* mgr/telemetry: dict.pop() errs on nonexistent key (`pr#30854 <https://github.com/ceph/ceph/pull/30854>`_, Dan Mick) -* mgr/telemetry: fix log typo (`pr#31984 <https://github.com/ceph/ceph/pull/31984>`_, Sage Weil) -* mgr/test_orchestrator: Allow initializing dummy data (`pr#29595 <https://github.com/ceph/ceph/pull/29595>`_, Kiefer Chang) -* mgr/test_orchestrator: fix tests (`pr#33541 <https://github.com/ceph/ceph/pull/33541>`_, Sage Weil) -* mgr/test_orchestrator: Fix TestWriteCompletion object has no attribute id (`pr#27607 <https://github.com/ceph/ceph/pull/27607>`_, Sebastian Wagner) -* mgr/test_orchestrator: fix update_mgrs assert (`pr#32417 <https://github.com/ceph/ceph/pull/32417>`_, Sage Weil) -* mgr/volumes: add arg to fs volume create for mds daemons placement (`pr#33441 <https://github.com/ceph/ceph/pull/33441>`_, Daniel-Pivonka) -* mgr: Add get_rates_from_data to mgr_util.py (`pr#28603 <https://github.com/ceph/ceph/pull/28603>`_, Stephan M\xc3\xbcller) -* mgr: add rbd profiles to support rbd_support module commands (`pr#30912 <https://github.com/ceph/ceph/pull/30912>`_, Jason Dillaman) -* mgr: better error handling when reading option (`pr#32730 <https://github.com/ceph/ceph/pull/32730>`_, Kefu Chai) -* mgr: ceph fs status support json format (`pr#30985 <https://github.com/ceph/ceph/pull/30985>`_, Erqi Chen) -* mgr: change perf-counter precision to float (`pr#30400 <https://github.com/ceph/ceph/pull/30400>`_, Ernesto Puerta) -* mgr: check for unicode passed to set_health_checks() (`pr#29117 <https://github.com/ceph/ceph/pull/29117>`_, Kefu Chai) -* mgr: cleanup idle debug log at level 4 (`pr#29164 <https://github.com/ceph/ceph/pull/29164>`_, Sebastian Wagner) -* mgr: close restful socket after exec (`pr#32396 <https://github.com/ceph/ceph/pull/32396>`_, liushi) -* mgr: Configure Py root logger for Mgr modules (`pr#27069 <https://github.com/ceph/ceph/pull/27069>`_, Volker Theile) -* mgr: do not reset reported if a new metric is not collected (`pr#30285 <https://github.com/ceph/ceph/pull/30285>`_, Ilsoo Byun) -* mgr: drop session with Ceph daemon when not ready (`pr#31899 <https://github.com/ceph/ceph/pull/31899>`_, Patrick Donnelly) -* mgr: fix a few bugs with teh pgp_num adjustments (`pr#27875 <https://github.com/ceph/ceph/pull/27875>`_, Sage Weil) -* mgr: fix ceph native option value types (`pr#29855 <https://github.com/ceph/ceph/pull/29855>`_, Sage Weil) -* mgr: fix debug typo (`pr#31900 <https://github.com/ceph/ceph/pull/31900>`_, Patrick Donnelly) -* mgr: fix errors on using a reference in a Lambda function (`pr#31786 <https://github.com/ceph/ceph/pull/31786>`_, Willem Jan Withagen) -* mgr: fix reporting of per-module logging options to mon (`pr#33897 <https://github.com/ceph/ceph/pull/33897>`_, Sage Weil) -* mgr: fix weird health-alert daemon key (`pr#30617 <https://github.com/ceph/ceph/pull/30617>`_, xie xingguo) -* mgr: handle race with finisher after shutdown (`pr#31620 <https://github.com/ceph/ceph/pull/31620>`_, Patrick Donnelly) -* mgr: Improve internal python to c++ interface (`pr#32554 <https://github.com/ceph/ceph/pull/32554>`_, David Zafman) -* mgr: install tox deps from wheelhouse (`pr#30034 <https://github.com/ceph/ceph/pull/30034>`_, Kefu Chai) -* mgr: mgr, osd: osd df by pool (`pr#28629 <https://github.com/ceph/ceph/pull/28629>`_, xie xingguo) -* mgr: mgr/ActivePyModules: behave if a module queries a devid that does not exist (`pr#31291 <https://github.com/ceph/ceph/pull/31291>`_, Sage Weil) -* mgr: mgr/ActivePyModules: drop GIL while we wait for mon reply in set_store, set_config (`issue#39335 <http://tracker.ceph.com/issues/39335>`_, `pr#27619 <https://github.com/ceph/ceph/pull/27619>`_, Sage Weil) -* mgr: mgr/ActivePyModules: handle_command - fix broken lock (`issue#39235 <http://tracker.ceph.com/issues/39235>`_, `pr#27485 <https://github.com/ceph/ceph/pull/27485>`_, xie xingguo) -* mgr: mgr/balancer: avoid pulling pg_dump twice (`pr#32266 <https://github.com/ceph/ceph/pull/32266>`_, xie xingguo) -* mgr: mgr/balancer: eliminate usage of MS infrastructure for upmap mode (`pr#32289 <https://github.com/ceph/ceph/pull/32289>`_, xie xingguo) -* mgr: mgr/balancer: enable pg_upmap cli for future use (`pr#30560 <https://github.com/ceph/ceph/pull/30560>`_, xie xingguo) -* mgr: mgr/balancer: fix fudge (`pr#27994 <https://github.com/ceph/ceph/pull/27994>`_, xie xingguo) -* mgr: mgr/balancer: fix initial weight-set value for newly created osds (`pr#28251 <https://github.com/ceph/ceph/pull/28251>`_, xie xingguo) -* mgr: mgr/balancer: Python 3 compatibility fix (`issue#38831 <http://tracker.ceph.com/issues/38831>`_, `pr#27076 <https://github.com/ceph/ceph/pull/27076>`_, Marius Schiffer) -* mgr: mgr/balancer: python3 compatibility issue (`pr#30987 <https://github.com/ceph/ceph/pull/30987>`_, Mykola Golub) -* mgr: mgr/balancer: upmap_max_iterations -> upmap_max_optimizations; behave as it is per pool (`pr#30591 <https://github.com/ceph/ceph/pull/30591>`_, xie xingguo) -* mgr: mgr/BaseMgrModule: tolerate Int or Long for health count (`pr#29806 <https://github.com/ceph/ceph/pull/29806>`_, Sage Weil) -* mgr: mgr/BaseMgrModule: use PyInt_Check() to compatible with py2 (`pr#29831 <https://github.com/ceph/ceph/pull/29831>`_, Kefu Chai) -* mgr: mgr/BaseMgrStandbyModule: drop GIL in ceph_get_module_option() (`pr#30625 <https://github.com/ceph/ceph/pull/30625>`_, Kefu Chai) -* mgr: mgr/cephadm: custom certificates for Grafana deployment (`pr#33614 <https://github.com/ceph/ceph/pull/33614>`_, Patrick Seidensal) -* mgr: mgr/cephadm: support (point release) upgrades (`pr#32006 <https://github.com/ceph/ceph/pull/32006>`_, Sage Weil) -* mgr: mgr/crash: Calculate and add stack_sig to metadata (`pr#31394 <https://github.com/ceph/ceph/pull/31394>`_, Dan Mick) -* mgr: mgr/crash: fix crash ls[-new] sorting (`pr#31973 <https://github.com/ceph/ceph/pull/31973>`_, Sage Weil) -* mgr: mgr/DaemonServer: handle caps more carefully (`pr#26903 <https://github.com/ceph/ceph/pull/26903>`_, xie xingguo) -* mgr: mgr/DaemonServer: handle_conf_change - fix broken locking (`issue#38899 <http://tracker.ceph.com/issues/38899>`_, `pr#27184 <https://github.com/ceph/ceph/pull/27184>`_, xie xingguo) -* mgr: mgr/DaemonServer: refactor pgp_num changes throttling (`pr#27891 <https://github.com/ceph/ceph/pull/27891>`_, Kefu Chai) -* mgr: mgr/DaemonServer: safe-to-destroy - do not consider irrelevant pgs (`pr#27962 <https://github.com/ceph/ceph/pull/27962>`_, xie xingguo) -* mgr: mgr/DaemonServer: skip adjusting pgp_num when merging is in-progress (`pr#30139 <https://github.com/ceph/ceph/pull/30139>`_, xie xingguo) -* mgr: mgr/dashboard: Do not default to admin as Admin Resource (`issue#39338 <http://tracker.ceph.com/issues/39338>`_, `pr#27626 <https://github.com/ceph/ceph/pull/27626>`_, Wido den Hollander) -* mgr: mgr/dashboard: Handle always-on Ceph Manager modules correctly (`pr#30142 <https://github.com/ceph/ceph/pull/30142>`_, Volker Theile) -* mgr: mgr/dashboard: integrate progress mgr module events into dashboard tasks list (`pr#29048 <https://github.com/ceph/ceph/pull/29048>`_, Ricardo Dias) -* mgr: mgr/dashboard: Manager should complain about wrong dashboard certificate (`pr#27036 <https://github.com/ceph/ceph/pull/27036>`_, Volker Theile) -* mgr: mgr/deepsea: return ganesha and iscsi endpoint URLs (`pr#27336 <https://github.com/ceph/ceph/pull/27336>`_, Tim Serong) -* mgr: mgr/deepsea: use ceph_volume output in get_inventory() (`pr#26966 <https://github.com/ceph/ceph/pull/26966>`_, Tim Serong) -* mgr: mgr/devicehealth: ensure we dont store empty objects (`pr#31474 <https://github.com/ceph/ceph/pull/31474>`_, Sage Weil) -* mgr: mgr/devicehealth: Fix python 3 incompatiblity (`issue#38939 <http://tracker.ceph.com/issues/38939>`_, `pr#27172 <https://github.com/ceph/ceph/pull/27172>`_, Marius Schiffer) -* mgr: mgr/devicehealth: set default monitoring to on (`pr#33091 <https://github.com/ceph/ceph/pull/33091>`_, Sage Weil, Yaarit Hatuka) -* mgr: mgr/diskprediction: Add diskprediction local plugin dependencies (`pr#25530 <https://github.com/ceph/ceph/pull/25530>`_, Rick Chen) -* mgr: mgr/diskprediction_cloud: Correct base64 encode translate table (`issue#38848 <http://tracker.ceph.com/issues/38848>`_, `pr#27113 <https://github.com/ceph/ceph/pull/27113>`_, Rick Chen) -* mgr: mgr/diskprediction_cloud: refactor timeout() decorator (`pr#31176 <https://github.com/ceph/ceph/pull/31176>`_, Kefu Chai) -* mgr: mgr/hello: some clean up and modernization (`pr#29514 <https://github.com/ceph/ceph/pull/29514>`_, Sage Weil) -* mgr: mgr/influx: try to call close() (`issue#40174 <http://tracker.ceph.com/issues/40174>`_, `pr#28427 <https://github.com/ceph/ceph/pull/28427>`_, Kefu Chai) -* mgr: mgr/insights: fix prune-health-history (`pr#32973 <https://github.com/ceph/ceph/pull/32973>`_, Sage Weil) -* mgr: mgr/k8sevents: Add mgr module for kubernetes event integration (`pr#29520 <https://github.com/ceph/ceph/pull/29520>`_, Paul Cuzner) -* mgr: mgr/k8sevents: Add support for remote kubernetes (`pr#30482 <https://github.com/ceph/ceph/pull/30482>`_, Paul Cuzner) -* mgr: mgr/Mgr: kill redundant sub_unwant call (`pr#26950 <https://github.com/ceph/ceph/pull/26950>`_, xie xingguo) -* mgr: mgr/MgrMonitor: print pending.always_on_modules before updating it (`pr#29917 <https://github.com/ceph/ceph/pull/29917>`_, Kefu Chai) -* mgr: mgr/orch: logging - handle lists output (`pr#32879 <https://github.com/ceph/ceph/pull/32879>`_, Shyukri Shyukriev) -* mgr: mgr/orchestrator: Add cache for Inventory and Services (`pr#28213 <https://github.com/ceph/ceph/pull/28213>`_, Tim Serong, Sebastian Wagner) -* mgr: mgr/orchestrator_cli: pass default value to req=False params (`pr#31314 <https://github.com/ceph/ceph/pull/31314>`_, Kefu Chai) -* mgr: mgr/osd_support: new module for osd utility (`pr#32677 <https://github.com/ceph/ceph/pull/32677>`_, Joshua Schmid) -* mgr: mgr/pg_autoscaler: calculate pool_pg_target using pool size (`pr#32592 <https://github.com/ceph/ceph/pull/32592>`_, Dan van der Ster) -* mgr: mgr/pg_autoscaler: fix pool_logical_used (`pr#29986 <https://github.com/ceph/ceph/pull/29986>`_, Ansgar Jazdzewski) -* mgr: mgr/pg_autoscaler: Fix python3 incompatibility (`issue#38626 <http://tracker.ceph.com/issues/38626>`_, `pr#27079 <https://github.com/ceph/ceph/pull/27079>`_, Marius Schiffer) -* mgr: mgr/pg_autoscaler: fix race with pool deletion (`pr#29807 <https://github.com/ceph/ceph/pull/29807>`_, Sage Weil) -* mgr: mgr/pg_autoscaler: treat target ratios as weights (`pr#33035 <https://github.com/ceph/ceph/pull/33035>`_, Josh Durgin) -* mgr: mgr/progress & mgr/pg_autoscaler: Added Pg Autoscaler Event (`pr#29035 <https://github.com/ceph/ceph/pull/29035>`_, Kamoltat (Junior) Sirivadhna) -* mgr: mgr/progress: Add integration to pybind/mgr/tox.ini (`pr#32985 <https://github.com/ceph/ceph/pull/32985>`_, Sebastian Wagner) -* mgr: mgr/progress: Add recovery event when OSD marked in (`pr#28498 <https://github.com/ceph/ceph/pull/28498>`_, Kamoltat (Junior) Sirivadhna) -* mgr: mgr/progress: added the time an event has been in progress (`pr#28907 <https://github.com/ceph/ceph/pull/28907>`_, Kamoltat (Junior) Sirivadhna) -* mgr: mgr/progress: Bug fix complete event when OSD marked in (`pr#28695 <https://github.com/ceph/ceph/pull/28695>`_, Kamoltat (Junior) Sirivadhna) -* mgr: mgr/progress: clamp pg recovery ratio to 0 (`pr#29126 <https://github.com/ceph/ceph/pull/29126>`_, xie xingguo) -* mgr: mgr/progress: estimated remaining time for events (`pr#30615 <https://github.com/ceph/ceph/pull/30615>`_, xie xingguo) -* mgr: mgr/progress: Look at PG state when PG epoch >= OSDMap epoch (`pr#28368 <https://github.com/ceph/ceph/pull/28368>`_, Kamoltat (Junior) Sirivadhna) -* mgr: mgr/progress: remove since from duration string (`pr#31007 <https://github.com/ceph/ceph/pull/31007>`_, Kefu Chai) -* mgr: mgr/prometheus: Add mgr metdata to prometheus exporter module (`pr#28372 <https://github.com/ceph/ceph/pull/28372>`_, Paul Cuzner) -* mgr: mgr/prometheus: assign a value to osd_dev_node when obj_store is not filestore or bluestore (`pr#30534 <https://github.com/ceph/ceph/pull/30534>`_, jiahuizeng) -* mgr: mgr/prometheus: Cast collect_timeout (scrape_interval) to float (`pr#29382 <https://github.com/ceph/ceph/pull/29382>`_, Ben Meekhof) -* mgr: mgr/prometheus: Fix KeyError in get_mgr_status (`pr#30421 <https://github.com/ceph/ceph/pull/30421>`_, Sebastian Wagner) -* mgr: mgr/prometheus: replace whitespaces in metrics names (`pr#27722 <https://github.com/ceph/ceph/pull/27722>`_, Alfonso Mart\xc3\xadnez) -* mgr: mgr/PyModule: correctly remove config options (`pr#31807 <https://github.com/ceph/ceph/pull/31807>`_, Tim Serong) -* mgr: mgr/PyModuleRegistry: log error if we cant find any modules to load (`pr#28055 <https://github.com/ceph/ceph/pull/28055>`_, Tim Serong) -* mgr: mgr/restful: allow shutdown before weve fully started up (`pr#32004 <https://github.com/ceph/ceph/pull/32004>`_, Sage Weil) -* mgr: mgr/restful: do not use filter() for list (`pr#27925 <https://github.com/ceph/ceph/pull/27925>`_, Kefu Chai) -* mgr: mgr/restful: jsonify lists instead of maps (`pr#32421 <https://github.com/ceph/ceph/pull/32421>`_, Kefu Chai) -* mgr: mgr/restful: requests api adds support multiple commands (`pr#31152 <https://github.com/ceph/ceph/pull/31152>`_, Duncan Chiang) -* mgr: mgr/status: fix ceph osd status ZeroDivisionError (`pr#28797 <https://github.com/ceph/ceph/pull/28797>`_, simon gao) -* mgr: mgr/telemetry: add last_upload to status (`pr#33125 <https://github.com/ceph/ceph/pull/33125>`_, Yaarit Hatuka) -* mgr: mgr/telemetry: change crash dict to a list (`pr#27631 <https://github.com/ceph/ceph/pull/27631>`_, Dan Mick) -* mgr: mgr/telemetry: channels (`pr#28847 <https://github.com/ceph/ceph/pull/28847>`_, Sage Weil) -* mgr: mgr/telemetry: check get_metadata return val (`pr#33051 <https://github.com/ceph/ceph/pull/33051>`_, Yaarit Hatuka) -* mgr: mgr/telemetry: clear the event after being awaken by it (`pr#29546 <https://github.com/ceph/ceph/pull/29546>`_, Kefu Chai) -* mgr: mgr/telemetry: exclude hostname field in crash reports (`pr#27693 <https://github.com/ceph/ceph/pull/27693>`_, Sage Weil) -* mgr: mgr/telemetry: fix and document proxy usage (`pr#33575 <https://github.com/ceph/ceph/pull/33575>`_, Lars Marowsky-Bree) -* mgr: mgr/telemetry: fix device serial number anonymization (`pr#32492 <https://github.com/ceph/ceph/pull/32492>`_, Yaarit Hatuka) -* mgr: mgr/telemetry: include any config options that are customized (`pr#29334 <https://github.com/ceph/ceph/pull/29334>`_, Sage Weil) -* mgr: mgr/telemetry: include device health telemetry (`pr#30724 <https://github.com/ceph/ceph/pull/30724>`_, Sage Weil) -* mgr: mgr/telemetry: re-opt-in when telemetry content changes; nag on major releases (`pr#29337 <https://github.com/ceph/ceph/pull/29337>`_, Sage Weil) -* mgr: mgr/telemetry: salt osd ids too (`pr#29358 <https://github.com/ceph/ceph/pull/29358>`_, Sage Weil) -* mgr: mgr/telemetry: specify license when opting in (`pr#29340 <https://github.com/ceph/ceph/pull/29340>`_, Sage Weil) -* mgr: mgr/volumes: do not import unused module (`pr#28875 <https://github.com/ceph/ceph/pull/28875>`_, Kefu Chai) -* mgr: mgr/zabbix Added pools discovery and per-pool statistics (`pr#26152 <https://github.com/ceph/ceph/pull/26152>`_, Dmitriy Rabotjagov) -* mgr: mgr/zabbix: Adds possibility to send data to multiple zabbix servers (`issue#38409 <http://tracker.ceph.com/issues/38409>`_, `pr#26547 <https://github.com/ceph/ceph/pull/26547>`_, slivik, Jakub Sliva) -* mgr: mgr/zabbix: encode string for Python 3 compatibility (`pr#28624 <https://github.com/ceph/ceph/pull/28624>`_, Nathan Cutler) -* mgr: mgr/zabbix: Fix raw_bytes_used key name (`pr#28058 <https://github.com/ceph/ceph/pull/28058>`_, Dmitriy Rabotjagov) -* mgr: mgr/zabbix: Fix typo in key name for PGs in backfill_wait state (`issue#39666 <http://tracker.ceph.com/issues/39666>`_, `pr#28057 <https://github.com/ceph/ceph/pull/28057>`_, Wido den Hollander) -* mgr: missing lock release in DaemonServer::handle_report() (`issue#42169 <http://tracker.ceph.com/issues/42169>`_, `pr#30706 <https://github.com/ceph/ceph/pull/30706>`_, Venky Shankar) -* mgr: module logging infrastructure (`pr#30961 <https://github.com/ceph/ceph/pull/30961>`_, Ricardo Dias) -* mgr: more GIL fixes (`issue#39040 <http://tracker.ceph.com/issues/39040>`_, `pr#27280 <https://github.com/ceph/ceph/pull/27280>`_, xie xingguo) -* mgr: pybind/mgr/balancer/module.py: add max/min info in stats_by_root (`pr#30432 <https://github.com/ceph/ceph/pull/30432>`_, Yang Honggang) -* mgr: pybind/mgr/pg_autoscaler: implement shutdown method (`pr#31398 <https://github.com/ceph/ceph/pull/31398>`_, Patrick Donnelly) -* mgr: pybind/mgr/restful: use dict.items() for py3 compatible (`pr#29356 <https://github.com/ceph/ceph/pull/29356>`_, Kefu Chai) -* mgr: pybind/mgr: Cancel output color control (`pr#31427 <https://github.com/ceph/ceph/pull/31427>`_, Zheng Yin) -* mgr: pybind/mgr: convert str to int using int() (`pr#27926 <https://github.com/ceph/ceph/pull/27926>`_, Kefu Chai) -* mgr: pybind/mgr: Make it easier to create a Module instance without the mgr (`pr#31969 <https://github.com/ceph/ceph/pull/31969>`_, Sebastian Wagner) -* mgr: pybind/mgr: Remove code duplication (`issue#40698 <http://tracker.ceph.com/issues/40698>`_, `pr#28986 <https://github.com/ceph/ceph/pull/28986>`_, Sebastian Wagner) -* mgr: pyind/mgr: add mgr_module.py and mgr_util.py to mypy (`pr#32597 <https://github.com/ceph/ceph/pull/32597>`_, Sebastian Wagner) -* mgr: Python cleanup and type check (`pr#31559 <https://github.com/ceph/ceph/pull/31559>`_, Volker Theile) -* mgr: qa/mgr/progress: fix timeout error when waiting for osd in event (`pr#30095 <https://github.com/ceph/ceph/pull/30095>`_, Ricardo Dias) -* mgr: re-enable mds `scrub status` info in ceph status (`issue#42835 <http://tracker.ceph.com/issues/42835>`_, `pr#32657 <https://github.com/ceph/ceph/pull/32657>`_, Venky Shankar) -* mgr: Reduce logging noise when handling commands (`pr#29305 <https://github.com/ceph/ceph/pull/29305>`_, Sebastian Wagner) -* mgr: Release GIL before calling OSDMap::calc_pg_upmaps() (`pr#31064 <https://github.com/ceph/ceph/pull/31064>`_, David Zafman) -* mgr: remove unused variable pool_name (`pr#28340 <https://github.com/ceph/ceph/pull/28340>`_, Alex Wu) -* mgr: restful: Expose perf counters (`pr#27885 <https://github.com/ceph/ceph/pull/27885>`_, Boris Ranto) -* mgr: restful: Query nodes_by_id for items (`pr#31153 <https://github.com/ceph/ceph/pull/31153>`_, Boris Ranto) -* mgr: return perf_counters data timestamps in nanosecs (`pr#28882 <https://github.com/ceph/ceph/pull/28882>`_, Ricardo Dias) -* mgr: Revert mgr/DaemonServer: safe-to-destroy - do not consider irrelevant pgs (`pr#32203 <https://github.com/ceph/ceph/pull/32203>`_, xie xingguo) -* mgr: set hostname in DeviceState::set_metadata() (`pr#30448 <https://github.com/ceph/ceph/pull/30448>`_, Kefu Chai) -* mgr: simply exit on SIGINT or SIGTERM (`pr#32051 <https://github.com/ceph/ceph/pull/32051>`_, Sage Weil) -* mgr: telemetry/server: misc fixes (`pr#29365 <https://github.com/ceph/ceph/pull/29365>`_, user.email, Sage Weil) -* mgr: telemetry: misc scripts (`pr#29781 <https://github.com/ceph/ceph/pull/29781>`_, sage@newdream.net, Sage Weil) -* mgr: templatize metrics collection interface (`pr#29214 <https://github.com/ceph/ceph/pull/29214>`_, Venky Shankar) -* mgr: update hostname when we already have the daemon state from the same entity (`pr#33752 <https://github.com/ceph/ceph/pull/33752>`_, Kefu Chai) -* mgr: use a struct for DaemonKey (`pr#30635 <https://github.com/ceph/ceph/pull/30635>`_, Kefu Chai) -* mgr: use ipv4 default when ipv6 was disabled (`pr#28246 <https://github.com/ceph/ceph/pull/28246>`_, kungf) -* mgr: use new MMgrCommand for CLI commands sent to mgr (`pr#30155 <https://github.com/ceph/ceph/pull/30155>`_, Sage Weil) -* mgr: zabbix triggers never triggered due to wrong trigger function (`pr#26146 <https://github.com/ceph/ceph/pull/26146>`_, Sebastiaan Nijhuis) -* mgr: _exit(0) from signal handler even if we are standby (`pr#31685 <https://github.com/ceph/ceph/pull/31685>`_, Sage Weil) -* mon,rbd,tests: mon,test: silence warnings from GCC and test (`pr#28250 <https://github.com/ceph/ceph/pull/28250>`_, Kefu Chai) -* mon,tests: qa/tasks: Fix ambiguous store_thrash, thrash_store (`issue#39159 <http://tracker.ceph.com/issues/39159>`_, `pr#27542 <https://github.com/ceph/ceph/pull/27542>`_, Jos Collin) -* mon,tools: monmaptool: added --addv option to usage description (`pr#29307 <https://github.com/ceph/ceph/pull/29307>`_, Ricardo Dias) -* mon/MonClient: fix mon tell to older mons (`pr#31121 <https://github.com/ceph/ceph/pull/31121>`_, Sage Weil) -* mon/OSDMonitor.cc: Allow pool set target_max\\_(objects/bytes) with SI/IEC units (`pr#31010 <https://github.com/ceph/ceph/pull/31010>`_, Prashant D) -* mon/OSDMonitor: osd add-no{up,down,in,out} - remove state checker (`pr#27605 <https://github.com/ceph/ceph/pull/27605>`_, xie xingguo) -* mon/pgmap: fix bluestore alerts output (`pr#30342 <https://github.com/ceph/ceph/pull/30342>`_, Igor Fedotov) -* mon: add ability to mute health alerts (`pr#29422 <https://github.com/ceph/ceph/pull/29422>`_, Sage Weil) -* mon: add mon, osd, mds ok-to-stop and related commands (`pr#27146 <https://github.com/ceph/ceph/pull/27146>`_, Sage Weil) -* mon: add `ceph osd info` to obtain info on osds rather than parsing `osd dump` (`pr#26724 <https://github.com/ceph/ceph/pull/26724>`_, Joao Eduardo Luis) -* mon: allow running without a config file (`pr#30498 <https://github.com/ceph/ceph/pull/30498>`_, Joao Eduardo Luis) -* mon: always enable pg_autoscaler (`pr#29072 <https://github.com/ceph/ceph/pull/29072>`_, Sage Weil) -* mon: disable min pg per osd warning (`pr#30352 <https://github.com/ceph/ceph/pull/30352>`_, Sage Weil) -* mon: Dont put session during feature change (`pr#32365 <https://github.com/ceph/ceph/pull/32365>`_, Brad Hubbard) -* mon: dump json from sessions asok/tell command (`pr#32974 <https://github.com/ceph/ceph/pull/32974>`_, Sage Weil) -* mon: elector: return after triggering a new election (`pr#32981 <https://github.com/ceph/ceph/pull/32981>`_, Greg Farnum) -* mon: ensure prepare_failure() marks no_reply on op (`pr#28177 <https://github.com/ceph/ceph/pull/28177>`_, Joao Eduardo Luis) -* mon: fix INCOMPAT_OCTOPUS feature number (`pr#27622 <https://github.com/ceph/ceph/pull/27622>`_, Sage Weil) -* mon: fix misc asok commands (`pr#30859 <https://github.com/ceph/ceph/pull/30859>`_, Sage Weil, Patrick Donnelly) -* mon: fix off-by-one rendering progress bar (`pr#28268 <https://github.com/ceph/ceph/pull/28268>`_, Sage Weil) -* mon: fix tell command description (and ceph CLI help behavior) (`pr#33135 <https://github.com/ceph/ceph/pull/33135>`_, Sage Weil) -* mon: fix tell to hybrid octopus/pre-octopus mons (`pr#31138 <https://github.com/ceph/ceph/pull/31138>`_, Sage Weil) -* mon: fix/improve mon sync over small keys (`pr#31581 <https://github.com/ceph/ceph/pull/31581>`_, Sage Weil) -* mon: Get session_map_lock before remove_session (`pr#33682 <https://github.com/ceph/ceph/pull/33682>`_, Xiaofei Cui) -* mon: Improve health status for backfill_toofull and recovery_toofull (`pr#28204 <https://github.com/ceph/ceph/pull/28204>`_, David Zafman) -* mon: Improvements to slow heartbeat health messages (`pr#32342 <https://github.com/ceph/ceph/pull/32342>`_, David Zafman) -* mon: make ceph -s much more concise (`pr#29493 <https://github.com/ceph/ceph/pull/29493>`_, Sage Weil) -* mon: make compact tell command, and add deprecate/obsolete check for tell commands (`pr#31722 <https://github.com/ceph/ceph/pull/31722>`_, Kefu Chai) -* mon: make mon_osd_down_out_subtree_limit update at runtime (`pr#27517 <https://github.com/ceph/ceph/pull/27517>`_, Sage Weil) -* mon: mon/ConfigMonitor: make config reset idempotent (`pr#27155 <https://github.com/ceph/ceph/pull/27155>`_, xie xingguo) -* mon: mon/ConfigMonitor: make num of config reset optional; allow target version 0 (`pr#27090 <https://github.com/ceph/ceph/pull/27090>`_, xie xingguo) -* mon: mon/HealthMonitor: remove unused label (`pr#29749 <https://github.com/ceph/ceph/pull/29749>`_, Kefu Chai) -* mon: mon/MonClient: weight-based mon selection (`pr#26940 <https://github.com/ceph/ceph/pull/26940>`_, xie xingguo) -* mon: mon/Monitor: no need to create a local variable for capturing it (`pr#28744 <https://github.com/ceph/ceph/pull/28744>`_, Kefu Chai) -* mon: mon/MonMap: always set mon priority; add it to dump (`pr#26975 <https://github.com/ceph/ceph/pull/26975>`_, xie xingguo) -* mon: mon/OSDMonitor: crush node flags - two fixes; add tests (`pr#27719 <https://github.com/ceph/ceph/pull/27719>`_, xie xingguo) -* mon: mon/OSDMonitor: fix off-by-one when updating new_last_in_change (`pr#28568 <https://github.com/ceph/ceph/pull/28568>`_, xie xingguo) -* mon: mon/OSDMonitor: report pg[pgp]_num_target instead of pg[pgp]_num (`issue#40193 <http://tracker.ceph.com/issues/40193>`_, `pr#28490 <https://github.com/ceph/ceph/pull/28490>`_, xie xingguo) -* mon: mon/OSDMonitor: trim not-longer-exist failure reporters (`pr#30200 <https://github.com/ceph/ceph/pull/30200>`_, NancySu05) -* mon: mon/OSDMonitor: use initializer_list<> for {si,iec}_options (`pr#31175 <https://github.com/ceph/ceph/pull/31175>`_, Kefu Chai) -* mon: mon/PGMap: fix incorrect pg_pool_sum when delete pool (`pr#31560 <https://github.com/ceph/ceph/pull/31560>`_, luo rixin) -* mon: optionally bind to public_addrv (instead of public_addr or public_network) (`pr#31501 <https://github.com/ceph/ceph/pull/31501>`_, Sage Weil) -* mon: paxos: empty pending_finishers before retrying any of committing\xe2\x80\xa6 (`issue#39484 <http://tracker.ceph.com/issues/39484>`_, `pr#27877 <https://github.com/ceph/ceph/pull/27877>`_, Greg Farnum) -* mon: print FSMap regardless of file system count (`pr#32307 <https://github.com/ceph/ceph/pull/32307>`_, Patrick Donnelly) -* mon: quiet devname noise (`pr#27313 <https://github.com/ceph/ceph/pull/27313>`_, Sage Weil) -* mon: remove the restriction of address type in init_with_hosts (`pr#31691 <https://github.com/ceph/ceph/pull/31691>`_, Hao Xiong) -* mon: Revert mon/OSDMonitor: report pg[pgp]_num_target instead of pg[pgp]_\xe2\x80\xa6 (`pr#28567 <https://github.com/ceph/ceph/pull/28567>`_, xie xingguo) -* mon: set recovery_priority, pg_num_min, pg_autoscale_bias via fs new command (`pr#29180 <https://github.com/ceph/ceph/pull/29180>`_, Sage Weil) -* mon: should not take non-tell commands as tell ones (`pr#32517 <https://github.com/ceph/ceph/pull/32517>`_, Kefu Chai) -* mon: show no[deep-]scrub flags per pool in the status (`issue#38029 <http://tracker.ceph.com/issues/38029>`_, `pr#26488 <https://github.com/ceph/ceph/pull/26488>`_, Mohamad Gebai) -* mon: show pool id in pool ls command (`issue#40287 <http://tracker.ceph.com/issues/40287>`_, `pr#28488 <https://github.com/ceph/ceph/pull/28488>`_, Chang Liu) -* mon: Split Elector into message-passing and logic/state components (`pr#28727 <https://github.com/ceph/ceph/pull/28727>`_, Greg Farnum) -* mon: stash newer map on bootstrap when addr doesnt match (`pr#33418 <https://github.com/ceph/ceph/pull/33418>`_, Sage Weil) -* mon: take the mon lock in handle_conf_change (`issue#39625 <http://tracker.ceph.com/issues/39625>`_, `pr#28018 <https://github.com/ceph/ceph/pull/28018>`_, huangjun) -* mon: use non-obsolete mon scrub cmd (`pr#32510 <https://github.com/ceph/ceph/pull/32510>`_, Patrick Donnelly) -* mon:C_AckMarkedDown has not handled the Callback Arguments (`pr#29624 <https://github.com/ceph/ceph/pull/29624>`_, NancySu05) -* monitoring: fix prometheus alert for full pools (`pr#32325 <https://github.com/ceph/ceph/pull/32325>`_, Thomas Kriechbaumer) -* monitoring: fix RGW grafana chart Average GET/PUT Latencies (`pr#33839 <https://github.com/ceph/ceph/pull/33839>`_, Alfonso Mart\xc3\xadnez) -* monitoring: restore lost fix for `pool full` alert (`pr#33655 <https://github.com/ceph/ceph/pull/33655>`_, Patrick Seidensal) -* monitoring: SNMP OID per every Prometheus alert rule (`pr#27978 <https://github.com/ceph/ceph/pull/27978>`_, Volker Theile) -* monitoring: wait before firing osd full alert (`pr#31711 <https://github.com/ceph/ceph/pull/31711>`_, Patrick Seidensal) -* msg/async, v2: make the reset_recv_state() unconditional (`issue#40115 <http://tracker.ceph.com/issues/40115>`_, `pr#28453 <https://github.com/ceph/ceph/pull/28453>`_, Sage Weil, Radoslaw Zarzynski) -* msg/async/AsyncConnection: optimize check loopback connection (`pr#26923 <https://github.com/ceph/ceph/pull/26923>`_, Jianpeng Ma) -* msg/async/dpdk: destroy fd in do_request (`pr#32690 <https://github.com/ceph/ceph/pull/32690>`_, Chunsong Feng, luo rixin) -* msg/async/dpdk: Fix build when DPDK enabled (`pr#33203 <https://github.com/ceph/ceph/pull/33203>`_, Jun Su) -* msg/async/dpdk: fix compilation errors when WITH_DPDK=on (`pr#31840 <https://github.com/ceph/ceph/pull/31840>`_, Chunsong Feng) -* msg/async/dpdk: fix complie errors from fix FTBFS (`pr#30086 <https://github.com/ceph/ceph/pull/30086>`_, yehu) -* msg/async/dpdk: fix FTBFS (`pr#28763 <https://github.com/ceph/ceph/pull/28763>`_, Kefu Chai) -* msg/async/dpdk: Fix infinite loop when sending packets (`pr#32691 <https://github.com/ceph/ceph/pull/32691>`_, Chunsong Feng, luo rixin) -* msg/async/dpdk: fix SEGV caused by zero length packet (`pr#31876 <https://github.com/ceph/ceph/pull/31876>`_, Chunsong Feng) -* msg/async/dpdk: Fix the overflow while parsing dpdk coremask (`pr#32173 <https://github.com/ceph/ceph/pull/32173>`_, Hu Ye, Chunsong Feng, luo rixin) -* msg/async/DPDK: refactor set_rss_table to support DPDK 19.05 (`pr#32170 <https://github.com/ceph/ceph/pull/32170>`_, Chunsong Feng, luo rixin) -* msg/async/EventEpoll: set EPOLLET flag on del_event() (`pr#26926 <https://github.com/ceph/ceph/pull/26926>`_, Roman Penyaev) -* msg/async/ProtocolV1: avoid unnecessary bufferlist::swap (`pr#30125 <https://github.com/ceph/ceph/pull/30125>`_, Jianpeng Ma) -* msg/async/ProtocolV2: make v2 work on rdma (`pr#27022 <https://github.com/ceph/ceph/pull/27022>`_, Jianpeng Ma) -* msg/async/ProtocolV2: optimize check state by replace (`pr#26812 <https://github.com/ceph/ceph/pull/26812>`_, Jianpeng Ma) -* msg/async/rdma: add an option for choosing different RoCE protocol (`pr#31517 <https://github.com/ceph/ceph/pull/31517>`_, Changcheng Liu) -* msg/async/rdma: do not init mutex before lockdeps is ready (`pr#31532 <https://github.com/ceph/ceph/pull/31532>`_, Kefu Chai) -* msg/async/rdma: fix memory leak (`pr#27574 <https://github.com/ceph/ceph/pull/27574>`_, Changcheng Liu) -* msg/async/rdma: set/get silence warning (`pr#26581 <https://github.com/ceph/ceph/pull/26581>`_, Kefu Chai) -* msg/async/rdma: unblock event center if the peer is down when connecting (`pr#31109 <https://github.com/ceph/ceph/pull/31109>`_, Peng Liu) -* msg/async: add comments for commit 294c41f18adada6a (`pr#28667 <https://github.com/ceph/ceph/pull/28667>`_, Jianpeng Ma) -* msg/async: add timeout for connections which are not ready (`issue#38493 <http://tracker.ceph.com/issues/38493>`_, `issue#37499 <http://tracker.ceph.com/issues/37499>`_, `pr#27337 <https://github.com/ceph/ceph/pull/27337>`_, xie xingguo) -* msg/async: avoid creating unnecessary AsyncConnectionRef (`pr#27323 <https://github.com/ceph/ceph/pull/27323>`_, Patrick Donnelly) -* msg/async: Dont dec(msgr_active_connections) if conn still in accept\xe2\x80\xa6 (`pr#29836 <https://github.com/ceph/ceph/pull/29836>`_, Jianpeng Ma) -* msg/async: Don\t miss record l_msgr_running_recv_time if pendingRead\xe2\x80\xa6 (`pr#27734 <https://github.com/ceph/ceph/pull/27734>`_, Jianpeng Ma) -* msg/async: drop zero_copy_read() & co from ConnectedSocket (`pr#28921 <https://github.com/ceph/ceph/pull/28921>`_, Radoslaw Zarzynski) -* msg/async: fix typo in Errormessage (`pr#31825 <https://github.com/ceph/ceph/pull/31825>`_, Willem Jan Withagen) -* msg/async: mark down local_connection before draining the stack (`pr#32732 <https://github.com/ceph/ceph/pull/32732>`_, Radoslaw Zarzynski) -* msg/async: move submit_message() into send_to() (`pr#30883 <https://github.com/ceph/ceph/pull/30883>`_, Jianpeng Ma) -* msg/async: narrow scope of AsyncMessenger::lock in fun connect_to (`pr#30840 <https://github.com/ceph/ceph/pull/30840>`_, Jianpeng Ma) -* msg/async: No need lock for func _filter_addrs (`pr#31995 <https://github.com/ceph/ceph/pull/31995>`_, Jianpeng Ma) -* msg/async: no-need set connection for Message (`pr#27766 <https://github.com/ceph/ceph/pull/27766>`_, Jianpeng Ma) -* msg/async: open() should be called with connection locked (`pr#33015 <https://github.com/ceph/ceph/pull/33015>`_, Roman Penyaev) -* msg/async: perform recv reset immediately if called inside EC (`pr#33742 <https://github.com/ceph/ceph/pull/33742>`_, Radoslaw Zarzynski) -* msg/async: remove unsued code (`pr#30833 <https://github.com/ceph/ceph/pull/30833>`_, Jianpeng Ma) -* msg/async: rename outcoming_bl -> outgoing_bl in AsyncConnection (`pr#30709 <https://github.com/ceph/ceph/pull/30709>`_, Radoslaw Zarzynski) -* msg/async: reset the V1s session_security in proper EventCenter (`pr#32352 <https://github.com/ceph/ceph/pull/32352>`_, Radoslaw Zarzynski) -* msg/async: resolve gcc warning (`pr#27414 <https://github.com/ceph/ceph/pull/27414>`_, Patrick Donnelly) -* msg/async: skip repeat calc crc header in Message::encode (`pr#26534 <https://github.com/ceph/ceph/pull/26534>`_, Jianpeng Ma) -* msg/async: update refcount and perf counter properly (`pr#31929 <https://github.com/ceph/ceph/pull/31929>`_, Jianpeng Ma) -* msg/async: use faster clear method to delete containers (`pr#27324 <https://github.com/ceph/ceph/pull/27324>`_, Patrick Donnelly) -* msg/Message: Remove used code about XioMessenger (`pr#28719 <https://github.com/ceph/ceph/pull/28719>`_, Jianpeng Ma) -* msg: add func is_blackhole to reduce duplicated code (`pr#30356 <https://github.com/ceph/ceph/pull/30356>`_, Jianpeng Ma) -* msg: add some anonymous connection infrastructure (`pr#30223 <https://github.com/ceph/ceph/pull/30223>`_, Sage Weil) -* msg: default to debug_ms=0 (`pr#26936 <https://github.com/ceph/ceph/pull/26936>`_, Sage Weil) -* msg: fix addr2 encoding for sockaddrs (`issue#40114 <http://tracker.ceph.com/issues/40114>`_, `pr#28379 <https://github.com/ceph/ceph/pull/28379>`_, Jeff Layton) -* msg: fix comments in Messenger.h after the set -> std::set switch (`pr#30693 <https://github.com/ceph/ceph/pull/30693>`_, Radoslaw Zarzynski) -* msg: output peer address when detecting bad CRCs (`issue#39367 <http://tracker.ceph.com/issues/39367>`_, `pr#27658 <https://github.com/ceph/ceph/pull/27658>`_, Greg Farnum) -* msg: remove unused header file in Messenger.h (`pr#27086 <https://github.com/ceph/ceph/pull/27086>`_, Jianpeng Ma) -* msg: remove xiomessenger (`pr#27021 <https://github.com/ceph/ceph/pull/27021>`_, Sage Weil) -* msg: set_require_authorizer on messenger, not dispatcher (`pr#27832 <https://github.com/ceph/ceph/pull/27832>`_, Sage Weil) -* orchestrator: usability fixes (`pr#33118 <https://github.com/ceph/ceph/pull/33118>`_, Yehuda Sadeh) -* os/bluestore,comon,erasure-code: chmod -x source files (`pr#31179 <https://github.com/ceph/ceph/pull/31179>`_, Sage Weil) -* os/bluestore: default bluestore_block_size 1T -> 100G (`pr#32043 <https://github.com/ceph/ceph/pull/32043>`_, Sage Weil) -* os/kstore: do not cache in-fight stripes on read ops to avoid leaks (`issue#39665 <http://tracker.ceph.com/issues/39665>`_, `pr#32538 <https://github.com/ceph/ceph/pull/32538>`_, Chang Liu) -* os/memstore, crimson/os: introduce memstore_debug_omit_block_device_write (`pr#28601 <https://github.com/ceph/ceph/pull/28601>`_, Radoslaw Zarzynski) -* osd: a few fixes for the removed_snaps changes (`pr#28865 <https://github.com/ceph/ceph/pull/28865>`_, Sage Weil) -* osd: accident of rollforward may need to mark pglog dirty (`issue#40403 <http://tracker.ceph.com/issues/40403>`_, `pr#28621 <https://github.com/ceph/ceph/pull/28621>`_, Zengran Zhang) -* osd: add a copy-from2 operation that includes truncate\\_{seq,size} parameters (`pr#31728 <https://github.com/ceph/ceph/pull/31728>`_, Luis Henriques) -* osd: add ceph osd stop <osd.nnn> command (`pr#27595 <https://github.com/ceph/ceph/pull/27595>`_, xie xingguo) -* osd: add cls_cxx_map_remove_range() (`issue#19975 <http://tracker.ceph.com/issues/19975>`_, `pr#15183 <https://github.com/ceph/ceph/pull/15183>`_, Casey Bodley) -* osd: add common smartctl output to JSON output (`pr#30408 <https://github.com/ceph/ceph/pull/30408>`_, Patrick Seidensal) -* osd: add device_id to list_devices to help get smart info easily (`pr#29548 <https://github.com/ceph/ceph/pull/29548>`_, Song Shun) -* osd: add duration field to dump_historic_ops method (`pr#28801 <https://github.com/ceph/ceph/pull/28801>`_, Deepika Upadhyay) -* osd: add flag to prevent truncate_seq copy in copy-from operation (`pr#25374 <https://github.com/ceph/ceph/pull/25374>`_, Luis Henriques) -* osd: add hdd and ssd variants for osd_recovery_max_active (`pr#28677 <https://github.com/ceph/ceph/pull/28677>`_, Sage Weil) -* osd: add log information to record the cause of do_osd_ops failure (`issue#41210 <http://tracker.ceph.com/issues/41210>`_, `pr#29787 <https://github.com/ceph/ceph/pull/29787>`_, NancySu05) -* osd: add osd_fast_shutdown option (default true) (`pr#31677 <https://github.com/ceph/ceph/pull/31677>`_, Sage Weil) -* osd: Again remove deprecated full/nearfull from osdmap (`pr#32506 <https://github.com/ceph/ceph/pull/32506>`_, David Zafman) -* osd: Allow 64-char hostname to be added as the host in CRUSH (`pr#32947 <https://github.com/ceph/ceph/pull/32947>`_, Michal Skalski) -* osd: allow EC PGs to do recovery below min_size (`issue#18749 <http://tracker.ceph.com/issues/18749>`_, `pr#17619 <https://github.com/ceph/ceph/pull/17619>`_, Chang Liu, Greg Farnum) -* osd: allow rados write ops to return data and error codes (`pr#30581 <https://github.com/ceph/ceph/pull/30581>`_, Sage Weil) -* osd: always initialize local variable (`pr#29757 <https://github.com/ceph/ceph/pull/29757>`_, Kefu Chai) -* osd: assert that write ops have result==0 and no payload (`pr#30191 <https://github.com/ceph/ceph/pull/30191>`_, Sage Weil) -* osd: automatically repair replicated replica on pulling error (`issue#39101 <http://tracker.ceph.com/issues/39101>`_, `pr#26806 <https://github.com/ceph/ceph/pull/26806>`_, xie xingguo, David Zafman) -* osd: avoid prep_object_replica_pushes() on clone object when head missing (`issue#39286 <http://tracker.ceph.com/issues/39286>`_, `pr#27575 <https://github.com/ceph/ceph/pull/27575>`_, Zengran Zhang) -* osd: Better error message when OSD count is less than osd_pool_default_size (`issue#38617 <http://tracker.ceph.com/issues/38617>`_, `pr#27806 <https://github.com/ceph/ceph/pull/27806>`_, Sage Weil, zjh) -* osd: Change osd op queue cut off default to high (`pr#30441 <https://github.com/ceph/ceph/pull/30441>`_, Anthony DAtri) -* osd: clean up osdmap sharing (`pr#27932 <https://github.com/ceph/ceph/pull/27932>`_, Sage Weil) -* osd: clear osd op reply output only when writes success (`issue#38492 <http://tracker.ceph.com/issues/38492>`_, `pr#26652 <https://github.com/ceph/ceph/pull/26652>`_, huangjun) -* osd: clear PG_STATE_CLEAN when repair object (`pr#29756 <https://github.com/ceph/ceph/pull/29756>`_, Zengran Zhang) -* osd: copy (dont move) pg list when sending beacon (`issue#40377 <http://tracker.ceph.com/issues/40377>`_, `pr#28566 <https://github.com/ceph/ceph/pull/28566>`_, Sage Weil) -* osd: copy ObjectOperation::BufferUpdate::Write::fadvise_flag to ceph::os::Transaction (`pr#29944 <https://github.com/ceph/ceph/pull/29944>`_, Xuehan Xu) -* osd: copyfrom omitted to set mtime (`pr#28581 <https://github.com/ceph/ceph/pull/28581>`_, Zengran Zhang) -* osd: correct a local variable type (`pr#26672 <https://github.com/ceph/ceph/pull/26672>`_, Kefu Chai) -* osd: Diagnostic logging for upmap cleaning (`pr#32663 <https://github.com/ceph/ceph/pull/32663>`_, David Zafman) -* osd: dispatch peering messages as messages, inside the PG lock (`pr#29820 <https://github.com/ceph/ceph/pull/29820>`_, Sage Weil) -* osd: dispatch_context and queue split finish on early bail-out (`pr#32942 <https://github.com/ceph/ceph/pull/32942>`_, Sage Weil) -* osd: do not hold osd_lock while requeuing snaps to purge (`pr#28941 <https://github.com/ceph/ceph/pull/28941>`_, Sage Weil) -* osd: do not invalidate clear_regions of missing item at boot (`pr#29755 <https://github.com/ceph/ceph/pull/29755>`_, xie xingguo) -* osd: dont carry PGLSFilter between multiple ops in MOSDOp (`pr#29575 <https://github.com/ceph/ceph/pull/29575>`_, Radoslaw Zarzynski) -* osd: Dont evict after a flush if intersecting scrub range (`issue#38840 <http://tracker.ceph.com/issues/38840>`_, `pr#27209 <https://github.com/ceph/ceph/pull/27209>`_, David Zafman) -* osd: Dont include user changeable flag in snaptrim related assert (`issue#38124 <http://tracker.ceph.com/issues/38124>`_, `pr#27830 <https://github.com/ceph/ceph/pull/27830>`_, David Zafman) -* osd: Dont randomize deep scrubs when noscrub set (`issue#40198 <http://tracker.ceph.com/issues/40198>`_, `pr#28443 <https://github.com/ceph/ceph/pull/28443>`_, David Zafman) -* osd: drop unnecessary includes of messages/MOSDPGTrim.h (`pr#33660 <https://github.com/ceph/ceph/pull/33660>`_, Radoslaw Zarzynski) -* osd: Fix assert in the case that snapset is missing (`pr#29941 <https://github.com/ceph/ceph/pull/29941>`_, David Zafman) -* osd: fix possible crash on sending dynamic perf stats report (`pr#30454 <https://github.com/ceph/ceph/pull/30454>`_, Mykola Golub) -* osd: fix racy accesses to OSD::osdmap (`pr#33336 <https://github.com/ceph/ceph/pull/33336>`_, Radoslaw Zarzynski) -* osd: fix the missing default value m=2 of reed_sol_r6_op in profile (`pr#29892 <https://github.com/ceph/ceph/pull/29892>`_, Yan Jun) -* osd: Fix the way that auto repair triggers after regular scru (`issue#40073 <http://tracker.ceph.com/issues/40073>`_, `issue#40530 <http://tracker.ceph.com/issues/40530>`_, `pr#28334 <https://github.com/ceph/ceph/pull/28334>`_, David Zafman) -* osd: fix wrong arguments when dropping refcount (`pr#29348 <https://github.com/ceph/ceph/pull/29348>`_, Myoungwon Oh) -* osd: Give recovery for inactive PGs a higher priority (`issue#38195 <http://tracker.ceph.com/issues/38195>`_, `pr#27503 <https://github.com/ceph/ceph/pull/27503>`_, David Zafman) -* osd: give recovery ops initialized by client op a higher priority (`pr#28418 <https://github.com/ceph/ceph/pull/28418>`_, xie xingguo) -* osd: implement per-pg leases to avoid stale reads (`pr#29236 <https://github.com/ceph/ceph/pull/29236>`_, Sage Weil) -* osd: Improve dump_pgstate_history json output (`issue#38846 <http://tracker.ceph.com/issues/38846>`_, `pr#27665 <https://github.com/ceph/ceph/pull/27665>`_, Brad Hubbard) -* osd: Include dups in copy_after() and copy_up_to() (`issue#39304 <http://tracker.ceph.com/issues/39304>`_, `pr#27914 <https://github.com/ceph/ceph/pull/27914>`_, David Zafman) -* osd: Increase log level of messages which unnecessarily fill up logs (`pr#27686 <https://github.com/ceph/ceph/pull/27686>`_, David Zafman) -* osd: make osd recover more smoothly by avoiding failure peer info to resent (`pr#30404 <https://github.com/ceph/ceph/pull/30404>`_, \xe5\xae\x8b\xe9\xa1\xba10180185) -* osd: make PastIntervals a member of pg_notify_t (`pr#29517 <https://github.com/ceph/ceph/pull/29517>`_, Sage Weil) -* osd: merge replica log on primary need according to replica logs crt (`pr#29590 <https://github.com/ceph/ceph/pull/29590>`_, Zengran Zhang) -* osd: misc cleanups (`pr#30022 <https://github.com/ceph/ceph/pull/30022>`_, Yan Jun) -* osd: misc inc-recovery compat fixes (`pr#29754 <https://github.com/ceph/ceph/pull/29754>`_, xie xingguo) -* osd: optimize send_message to peers (`pr#30968 <https://github.com/ceph/ceph/pull/30968>`_, Jianpeng Ma) -* osd: OSDMapRef access by multiple threads is unsafe (`pr#26874 <https://github.com/ceph/ceph/pull/26874>`_, Kefu Chai, Zengran Zhang) -* osd: Output Base64 encoding of CRC header if binary data present (`pr#27961 <https://github.com/ceph/ceph/pull/27961>`_, David Zafman) -* osd: partial recovery strategy based on PGLog (`pr#21722 <https://github.com/ceph/ceph/pull/21722>`_, lishuhao, Ning Yao) -* osd: peering updates peer_last_complete_ondisk via setter (`pr#33659 <https://github.com/ceph/ceph/pull/33659>`_, Radoslaw Zarzynski) -* osd: pg as a mutex (`pr#29477 <https://github.com/ceph/ceph/pull/29477>`_, Kefu Chai) -* osd: prime splits/merges for any potential fabricated split/merge participant (`issue#38483 <http://tracker.ceph.com/issues/38483>`_, `pr#30018 <https://github.com/ceph/ceph/pull/30018>`_, xie xingguo) -* osd: process_copy_chunk remove obc ref before pg unlock (`issue#38842 <http://tracker.ceph.com/issues/38842>`_, `pr#27084 <https://github.com/ceph/ceph/pull/27084>`_, Zengran Zhang) -* osd: propagate mlcod to replicas and fix problems with read from replica (`pr#32381 <https://github.com/ceph/ceph/pull/32381>`_, Samuel Just, Sage Weil) -* osd: release backoffs during merge (`pr#31657 <https://github.com/ceph/ceph/pull/31657>`_, Sage Weil) -* osd: remove orphan include after PGLSParentFilter (`pr#29709 <https://github.com/ceph/ceph/pull/29709>`_, Radoslaw Zarzynski) -* osd: remove unused function (`pr#30644 <https://github.com/ceph/ceph/pull/30644>`_, Jianpeng Ma) -* osd: remove unused functions (`pr#32515 <https://github.com/ceph/ceph/pull/32515>`_, Jianpeng Ma) -* osd: Remove unused osdmap flags full, nearfull from output (`pr#30530 <https://github.com/ceph/ceph/pull/30530>`_, David Zafman) -* osd: remove useless ceph_assert (`pr#31915 <https://github.com/ceph/ceph/pull/31915>`_, Jianpeng Ma) -* osd: revamp {noup,nodown,noin,noout} related commands (`pr#27735 <https://github.com/ceph/ceph/pull/27735>`_, xie xingguo) -* osd: rollforward may need to mark pglog dirty (`issue#36739 <http://tracker.ceph.com/issues/36739>`_, `pr#27015 <https://github.com/ceph/ceph/pull/27015>`_, Zengran Zhang) -* osd: scrub error on big objects; make bluestore refuse to start on big objects (`pr#29579 <https://github.com/ceph/ceph/pull/29579>`_, David Zafman, Sage Weil) -* osd: send smart asok result to stdout, not stderr (`pr#31412 <https://github.com/ceph/ceph/pull/31412>`_, Sage Weil) -* osd: set affinity for \\*all\\* threads (`pr#30712 <https://github.com/ceph/ceph/pull/30712>`_, Sage Weil) -* osd: set collection pool opts on collection create, pg load (`pr#29093 <https://github.com/ceph/ceph/pull/29093>`_, Sage Weil) -* osd: share curmap in handle_osd_ping (`pr#28662 <https://github.com/ceph/ceph/pull/28662>`_, Sage Weil) -* osd: shutdown recovery_request_timer earlier (`pr#27206 <https://github.com/ceph/ceph/pull/27206>`_, Zengran Zhang) -* osd: some prelim changes (`pr#29052 <https://github.com/ceph/ceph/pull/29052>`_, Sage Weil) -* osd: support osd_repair_during_recovery (`issue#40620 <http://tracker.ceph.com/issues/40620>`_, `pr#28839 <https://github.com/ceph/ceph/pull/28839>`_, Jeegn Chen) -* osd: support osd_scrub_extended_sleep (`issue#40955 <http://tracker.ceph.com/issues/40955>`_, `pr#29342 <https://github.com/ceph/ceph/pull/29342>`_, Jeegn Chen) -* osd: take heartbeat_lock when calling heartbeat() (`issue#39439 <http://tracker.ceph.com/issues/39439>`_, `pr#27729 <https://github.com/ceph/ceph/pull/27729>`_, Sage Weil) -* osd: tiny clean-ups around the backfill (`pr#33583 <https://github.com/ceph/ceph/pull/33583>`_, Radoslaw Zarzynski) -* osd: track monotonic clock deltas between osds who ping each other (`pr#29116 <https://github.com/ceph/ceph/pull/29116>`_, Sage Weil, Samuel Just) -* osd: transpose two wait lists in comment (`pr#27017 <https://github.com/ceph/ceph/pull/27017>`_, Kefu Chai) -* osd: trim pg logs based on a per-osd budget (`pr#32683 <https://github.com/ceph/ceph/pull/32683>`_, Sage Weil, Kefu Chai) -* osd: Turn off repair pg state when leaving recovery (`pr#30852 <https://github.com/ceph/ceph/pull/30852>`_, David Zafman) -* osd: unify sources of no{up,down,in,out} flags into singleton helpers (`pr#28403 <https://github.com/ceph/ceph/pull/28403>`_, xie xingguo) -* osd: update comment as sub_op_scrub_map has been removed (`pr#28338 <https://github.com/ceph/ceph/pull/28338>`_, Jing Wenjun) -* osd: Use physical ratio for nearfull (doesnt include backfill resserve) (`pr#31954 <https://github.com/ceph/ceph/pull/31954>`_, David Zafman) -* osd: use steady clock in prepare_to_stop() (`pr#26457 <https://github.com/ceph/ceph/pull/26457>`_, Mohamad Gebai) -* osd: use unique_ptr for managing life cycles (`pr#32007 <https://github.com/ceph/ceph/pull/32007>`_, Kefu Chai) -* osdc/Striper: specialize std::min<> (`pr#28732 <https://github.com/ceph/ceph/pull/28732>`_, Kefu Chai) -* osd_types: add ec profile to plain text osd pool ls detail output (`issue#40009 <http://tracker.ceph.com/issues/40009>`_, `pr#28224 <https://github.com/ceph/ceph/pull/28224>`_, Jan Fajerski) -* pybind,rbd: Add RBD_FEATURE_MIGRATING to rbd.pyx (`issue#39609 <http://tracker.ceph.com/issues/39609>`_, `pr#28009 <https://github.com/ceph/ceph/pull/28009>`_, Ricardo Marques) -* pybind,rbd: pybind/rbd: add config_set/get/remove api in rbd.pyx (`pr#29459 <https://github.com/ceph/ceph/pull/29459>`_, Zheng Yin) -* pybind,rbd: pybind/rbd: add pool config_set/get/remove api in rbd.pyx (`pr#30865 <https://github.com/ceph/ceph/pull/30865>`_, Zheng Yin) -* pybind,rbd: pybind/rbd: parent_info should return pool namespace (`pr#30793 <https://github.com/ceph/ceph/pull/30793>`_, Ricardo Marques) -* pybind,rbd: rbd/pybind: fix unsupported format character of %lx (`pr#30314 <https://github.com/ceph/ceph/pull/30314>`_, songweibin) -* pybind,tests: pybind/rados: do not slice zip() (`pr#31044 <https://github.com/ceph/ceph/pull/31044>`_, Kefu Chai) -* pybind,tests: test/pybind/test_rados.py: test test_operate_aio_write_op() (`pr#31158 <https://github.com/ceph/ceph/pull/31158>`_, Zhang Jiao) -* pybind/mgr: Add test_orchestrator to mypy (`pr#32500 <https://github.com/ceph/ceph/pull/32500>`_, Sebastian Wagner) -* pybind/mgr: add_tox_test: Add mypy to TOX_ENVS (`pr#32236 <https://github.com/ceph/ceph/pull/32236>`_, Sebastian Wagner) -* pybind/mgr: bump six to 1.14 (`pr#33185 <https://github.com/ceph/ceph/pull/33185>`_, Kefu Chai) -* pybind/tox: pass additional command line arguments through to tox (`pr#27947 <https://github.com/ceph/ceph/pull/27947>`_, Nathan Cutler) -* pybind: .gitignore: Add .mypy_cache to .gitignore (`pr#33510 <https://github.com/ceph/ceph/pull/33510>`_, Kristoffer Gr\xc3\xb6nlund) -* pybind: add verbose error message (`pr#28054 <https://github.com/ceph/ceph/pull/28054>`_, Daniel Badea, Changcheng Liu, Ovidiu Poncea) -* pybind: add WriteOp::set_xattr() & rm_xattr() (`pr#31829 <https://github.com/ceph/ceph/pull/31829>`_, Zhang Jiao) -* pybind: add writesame API (`pr#31489 <https://github.com/ceph/ceph/pull/31489>`_, Zhang Jiao) -* pybind: check CEPH_LIBDIR not MAKEFLAGS (`pr#29080 <https://github.com/ceph/ceph/pull/29080>`_, Kefu Chai) -* pybind: customize compiler before checking cflags (`pr#33177 <https://github.com/ceph/ceph/pull/33177>`_, Kefu Chai) -* pybind: fix use of WriteOpCtx and ReadOpCtx (`issue#38946 <http://tracker.ceph.com/issues/38946>`_, `pr#27213 <https://github.com/ceph/ceph/pull/27213>`_, Ramana Raja) -* pybind: pybind/rados/rados.pyx: improve Rados.create_pool() (`pr#31241 <https://github.com/ceph/ceph/pull/31241>`_, Zhang Jiao) -* pybind: pybind/rados: add application_metadata_get (`pr#30504 <https://github.com/ceph/ceph/pull/30504>`_, songweibin) -* pybind: pybind/rados: add Ioctx.get_pool_id() and Ioctx.get_pool_name() (`pr#29646 <https://github.com/ceph/ceph/pull/29646>`_, Zheng Yin) -* pybind: pybind/rados: add WriteOp::execute() (`pr#31546 <https://github.com/ceph/ceph/pull/31546>`_, Zhang Jiao) -* pybind: pybind/rados: should pass name to cstr() (`pr#27111 <https://github.com/ceph/ceph/pull/27111>`_, Kefu Chai) -* pybind: refactor monkey_with_compiler() (`pr#33061 <https://github.com/ceph/ceph/pull/33061>`_, Kefu Chai) -* pybind: set language_level for cythonize explicitly (`pr#26607 <https://github.com/ceph/ceph/pull/26607>`_, Kefu Chai) -* python-common, mgr/orchestrator, mgr/dashboard: Use common Devices (`pr#30662 <https://github.com/ceph/ceph/pull/30662>`_, Kiefer Chang, Sebastian Wagner) -* python-common: add unmanaged property to PlacementSpec (`pr#33955 <https://github.com/ceph/ceph/pull/33955>`_, Sage Weil) -* python-common: all:true -> \\* (`pr#33970 <https://github.com/ceph/ceph/pull/33970>`_, Sage Weil) -* python-common: move pytest integration from setup.py to tox.ini (`pr#31943 <https://github.com/ceph/ceph/pull/31943>`_, Sebastian Wagner) -* python-common: remove `all_hosts` from `PlacementSpec` (`pr#33948 <https://github.com/ceph/ceph/pull/33948>`_, Sebastian Wagner) -* qa/distros: rhel and centos: whitelist cephadm logrotate selinux denial (`pr#33110 <https://github.com/ceph/ceph/pull/33110>`_, Sage Weil) -* qa/standalone/test_ceph_daemon.sh: disable adoption for the moment (`pr#32178 <https://github.com/ceph/ceph/pull/32178>`_, Sage Weil) -* qa/standalone/test_ceph_daemon.sh: fix overwrites of temp files (`pr#31748 <https://github.com/ceph/ceph/pull/31748>`_, Sage Weil) -* qa/standalone/test_ceph_daemon: fix multi-version python test (`pr#31342 <https://github.com/ceph/ceph/pull/31342>`_, Sage Weil) -* qa/suites/cephadm: move orchestrator_cli test into rados/cephadm (`pr#33648 <https://github.com/ceph/ceph/pull/33648>`_, Sage Weil) -* qa/suites/rados/ceph: drop opensuse for now (`pr#33801 <https://github.com/ceph/ceph/pull/33801>`_, Sage Weil) -* qa/suites/rados/cephadm/smoke: disable rgw role for now (`pr#33360 <https://github.com/ceph/ceph/pull/33360>`_, Sage Weil) -* qa/suites/rados/cephadm/upgrade: change start version (`pr#33475 <https://github.com/ceph/ceph/pull/33475>`_, Sage Weil) -* qa/suites/rados/cephadm/upgrade: fix initial version (`pr#33396 <https://github.com/ceph/ceph/pull/33396>`_, Sage Weil) -* qa/suites/rados/cephadm: explicitly test many distros (`pr#32969 <https://github.com/ceph/ceph/pull/32969>`_, Sage Weil) -* qa/suites/rados/cephadm: fix conflicts, missing .qa link (`pr#33132 <https://github.com/ceph/ceph/pull/33132>`_, Sage Weil) -* qa/suites/rados/cephadm[-smoke]: test podman on ubuntu 18.04 (`pr#33111 <https://github.com/ceph/ceph/pull/33111>`_, Sage Weil) -* qa/tasks/cephadm: ceph.git branches are now pushed to quay.io (`pr#32375 <https://github.com/ceph/ceph/pull/32375>`_, Sage Weil) -* qa/tasks/cephadm: deploy rgw daemons too (`pr#33289 <https://github.com/ceph/ceph/pull/33289>`_, Sage Weil) -* qa/tasks/cephadm: learn to pull cephadm from githu (`pr#32787 <https://github.com/ceph/ceph/pull/32787>`_, Sage Weil) -* qa/tasks/cephadm: misc fixes (`pr#32713 <https://github.com/ceph/ceph/pull/32713>`_, Sage Weil) -* qa/tasks/ceph_manager.py: always use self.logger (`pr#29239 <https://github.com/ceph/ceph/pull/29239>`_, Kefu Chai) -* qa/tasks/ceph_manager: 5s -> 15s for osd out to be visible (`pr#29013 <https://github.com/ceph/ceph/pull/29013>`_, Sage Weil) -* qa/tasks/ceph_manager: fix movement of cot exports with cephadm (`pr#32986 <https://github.com/ceph/ceph/pull/32986>`_, Sage Weil) -* qa/tasks/ceph_manager: fix shell osd for ceph-objectstore-tool commands (`pr#32725 <https://github.com/ceph/ceph/pull/32725>`_, Sage Weil) -* qa/tasks/ceph_manager: make fix_pgp_num behave when no pool is found (`pr#32987 <https://github.com/ceph/ceph/pull/32987>`_, Sage Weil) -* qa/tasks/mgr/dashboard/test_health: update schema (`pr#30507 <https://github.com/ceph/ceph/pull/30507>`_, Kefu Chai) -* qa/tasks/mgr/dashboard/test_orchestrator: support addr attribute in inventory (`pr#33211 <https://github.com/ceph/ceph/pull/33211>`_, Kiefer Chang) -* qa/tasks/mgr/test_orchestrator_cli: fix device ls test (`pr#32384 <https://github.com/ceph/ceph/pull/32384>`_, Sage Weil) -* qa/tasks/mgr/test_orchestrator_cli: fix rgw add test (`pr#32101 <https://github.com/ceph/ceph/pull/32101>`_, Sage Weil) -* qa/tasks/mgr/test_orchestrator_cli: support multiple DriveGroups (`pr#33055 <https://github.com/ceph/ceph/pull/33055>`_, Kiefer Chang) -* qa/test: reduce over all number of runs (`pr#27979 <https://github.com/ceph/ceph/pull/27979>`_, Yuri Weinstein) -* qa/tests - cleaned up distro settings (`pr#27956 <https://github.com/ceph/ceph/pull/27956>`_, Yuri Weinstein) -* qa/tests - upped priority for upgrades on master, otherwise they neve\xe2\x80\xa6 (`pr#29666 <https://github.com/ceph/ceph/pull/29666>`_, Yuri Weinstein) -* qa/tests: added nautilus-x-singleton suite to rados as symlink (`pr#27291 <https://github.com/ceph/ceph/pull/27291>`_, Sage Weil) -* qa/tests: added rados on master, reduced fs, rbd, multimds (`pr#27535 <https://github.com/ceph/ceph/pull/27535>`_, Yuri Weinstein) -* qa/tests: added the subset clause for nautilus branch (`pr#27129 <https://github.com/ceph/ceph/pull/27129>`_, Yuri Weinstein) -* qa/tests: changed the TO email to ceph-qa@ceph.io (`pr#28721 <https://github.com/ceph/ceph/pull/28721>`_, Yuri Weinstein) -* qa/tests: moved some runs from ovh, removed ceph-disk/nautilus (`pr#27616 <https://github.com/ceph/ceph/pull/27616>`_, Yuri Weinstein) -* qa/tests: reduced runs for nautilus, added runs for octopus (`pr#33214 <https://github.com/ceph/ceph/pull/33214>`_, Yuri Weinstein) -* qa/tests: removed all runs on ovh (`pr#27960 <https://github.com/ceph/ceph/pull/27960>`_, Yuri Weinstein) -* qa/tests: removed filters for client-upgrade-\\* suites (`pr#28271 <https://github.com/ceph/ceph/pull/28271>`_, Yuri Weinstein) -* qa/tests: run luminous-x and mimic-x 2 times a week but with high priority (`pr#27527 <https://github.com/ceph/ceph/pull/27527>`_, Yuri Weinstein) -* qa/tests: trying to fix syntax error that prevented mimic-x to be add\xe2\x80\xa6 (`pr#31799 <https://github.com/ceph/ceph/pull/31799>`_, Yuri Weinstein) -* qa/valgrind.supp: abstract from ceph::buffers symbol versioning (`pr#33757 <https://github.com/ceph/ceph/pull/33757>`_, Radoslaw Zarzynski) -* qa/workunits/cephadm/test_adoption: run as root (`pr#33485 <https://github.com/ceph/ceph/pull/33485>`_, Sage Weil) -* qa/workunits/cephadm/test_cephadm.sh: consolidate wait loop logic (`pr#33544 <https://github.com/ceph/ceph/pull/33544>`_, Michael Fritch) -* qa/workunits/cephadm/test_cephadm.sh: dump logs on exit (`pr#33634 <https://github.com/ceph/ceph/pull/33634>`_, Michael Fritch) -* qa/workunits/cephadm/test_cephadm.sh: need --fsid always (`pr#32220 <https://github.com/ceph/ceph/pull/32220>`_, Sage Weil) -* qa/workunits/cephadm/test_cephadm.sh: re-enable `adopt` tests (`pr#32244 <https://github.com/ceph/ceph/pull/32244>`_, Michael Fritch) -* qa/workunits/cephadm/test_cephadm.sh: skip docker when service is disabled (`pr#33018 <https://github.com/ceph/ceph/pull/33018>`_, Michael Fritch) -* qa/workunits/cephadm/test_cephadm.sh: use avialable pythons; test on ubuntu and centos (`pr#32333 <https://github.com/ceph/ceph/pull/32333>`_, Sage Weil) -* qa/workunits/cephadm/test_cephadm: --skip-monitoring-stack (`pr#34013 <https://github.com/ceph/ceph/pull/34013>`_, Sage Weil) -* qa/workunits/cephadm/test_cephadm: fix typo (`pr#33181 <https://github.com/ceph/ceph/pull/33181>`_, Sage Weil) -* qa/workunits/cephadm/test_cephadm: workunit test cleanup (`pr#32625 <https://github.com/ceph/ceph/pull/32625>`_, Michael Fritch) -* qa/workunits/cephadm/test_repos: dont try to use the refspec (`pr#33134 <https://github.com/ceph/ceph/pull/33134>`_, Sage Weil) -* qa/workunits/cephadm: separate out test_adoption.sh; fix (`pr#33457 <https://github.com/ceph/ceph/pull/33457>`_, Sage Weil) -* qa: fixes (`pr#29361 <https://github.com/ceph/ceph/pull/29361>`_, Kefu Chai) -* qa: misc fixes for rados and py3 (`pr#32362 <https://github.com/ceph/ceph/pull/32362>`_, Sage Weil) -* qa: pin rgw/verify to 8.0 (`pr#32761 <https://github.com/ceph/ceph/pull/32761>`_, Ali Maredia) -* qa: Run flake8 on python2 and python3 (`pr#32222 <https://github.com/ceph/ceph/pull/32222>`_, Thomas Bechtold) -* qa: vstart_runner fails because of string index out of range (`pr#28990 <https://github.com/ceph/ceph/pull/28990>`_, Volker Theile) -* rbd,tests: cls/rbd: add snapshot limit UINT64_MAX test case (`pr#31350 <https://github.com/ceph/ceph/pull/31350>`_, Chen Pan) -* rbd,tests: cls/rbd: add snapshot_add raise -ESTALE test case (`pr#31149 <https://github.com/ceph/ceph/pull/31149>`_, wonderpow) -* rbd,tests: journal: always shutdown JournalRecoreder before destructing it (`pr#29501 <https://github.com/ceph/ceph/pull/29501>`_, Kefu Chai) -* rbd,tests: journal: fix flush by age and in-flight byte tracking (`pr#31392 <https://github.com/ceph/ceph/pull/31392>`_, Jason Dillaman) -* rbd,tests: mgr/dashboard: s/fsid/mirror_uuid/ (`pr#33348 <https://github.com/ceph/ceph/pull/33348>`_, Kefu Chai) -* rbd,tests: qa/rbd: add cram-based snap diff test (`issue#39447 <http://tracker.ceph.com/issues/39447>`_, `pr#28346 <https://github.com/ceph/ceph/pull/28346>`_, Shyukri Shyukriev, Nathan Cutler) -* rbd,tests: qa/suites/krbd: run unmap subsuite with msgr1 only (`pr#31265 <https://github.com/ceph/ceph/pull/31265>`_, Ilya Dryomov) -* rbd,tests: qa/suites/rbd: add random distro selection to librbd tests (`pr#27577 <https://github.com/ceph/ceph/pull/27577>`_, Jason Dillaman) -* rbd,tests: qa/suites/rbd: added writearound cache test permutations (`issue#39386 <http://tracker.ceph.com/issues/39386>`_, `pr#27694 <https://github.com/ceph/ceph/pull/27694>`_, Jason Dillaman) -* rbd,tests: qa/suites/rbd: fix errant tab in yaml which is causing parsing failures (`pr#30942 <https://github.com/ceph/ceph/pull/30942>`_, Jason Dillaman) -* rbd,tests: qa/suites/rbd: fixed download path for Ubuntu Bionic (`pr#32408 <https://github.com/ceph/ceph/pull/32408>`_, Jason Dillaman) -* rbd,tests: qa/suites/rbd: removed OpenStack tempest test cases (`pr#33900 <https://github.com/ceph/ceph/pull/33900>`_, Jason Dillaman) -* rbd,tests: qa/tests: added rbd task on ec (`pr#29541 <https://github.com/ceph/ceph/pull/29541>`_, Yuri Weinstein) -* rbd,tests: qa/workunit/rbd: fixed QoS throughput unit parsing (`pr#32280 <https://github.com/ceph/ceph/pull/32280>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: fix compare_images and compare_image_snapshots (`pr#28524 <https://github.com/ceph/ceph/pull/28524>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: fixed python interpreter for EL8 (`pr#32409 <https://github.com/ceph/ceph/pull/32409>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: fixups for the new krbd discard behavior (`pr#27192 <https://github.com/ceph/ceph/pull/27192>`_, Ilya Dryomov) -* rbd,tests: qa/workunits/rbd: override CEPH_ARGS when initializing the site name (`pr#33187 <https://github.com/ceph/ceph/pull/33187>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: remove fast-diff from dynamic features test (`issue#39946 <http://tracker.ceph.com/issues/39946>`_, `pr#28135 <https://github.com/ceph/ceph/pull/28135>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: stress test `rbd mirror pool status --verbose` (`pr#29655 <https://github.com/ceph/ceph/pull/29655>`_, Mykola Golub) -* rbd,tests: qa/workunits/rbd: use context managers to control Rados lifespan (`pr#34035 <https://github.com/ceph/ceph/pull/34035>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: use https protocol for devstack git operations (`issue#39656 <http://tracker.ceph.com/issues/39656>`_, `pr#28063 <https://github.com/ceph/ceph/pull/28063>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: use more recent qemu-iotests that support Bionic (`issue#24668 <http://tracker.ceph.com/issues/24668>`_, `pr#27683 <https://github.com/ceph/ceph/pull/27683>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: wait for nbd map to close after unmap (`pr#33898 <https://github.com/ceph/ceph/pull/33898>`_, Jason Dillaman) -* rbd,tests: qa/workunits/rbd: wait for rbd-nbd unmap to complete (`issue#39598 <http://tracker.ceph.com/issues/39598>`_, `pr#27981 <https://github.com/ceph/ceph/pull/27981>`_, Jason Dillaman) -* rbd,tests: qa: add device mapper and lvm test cases for stable pages (`pr#27271 <https://github.com/ceph/ceph/pull/27271>`_, Ilya Dryomov) -* rbd,tests: qa: add krbd_discard_granularity.t test (`pr#27042 <https://github.com/ceph/ceph/pull/27042>`_, Ilya Dryomov) -* rbd,tests: qa: add RBD QOS functional test (`pr#27137 <https://github.com/ceph/ceph/pull/27137>`_, Mykola Golub) -* rbd,tests: qa: add script to test how libceph handles huge osdmaps (`pr#30363 <https://github.com/ceph/ceph/pull/30363>`_, Ilya Dryomov) -* rbd,tests: qa: avoid hexdump skip and length options (`pr#30502 <https://github.com/ceph/ceph/pull/30502>`_, Ilya Dryomov) -* rbd,tests: qa: avoid page cache for krbd discard round off tests (`pr#30452 <https://github.com/ceph/ceph/pull/30452>`_, Ilya Dryomov) -* rbd,tests: qa: krbd_parent_overlap.t: fix read test (`pr#29966 <https://github.com/ceph/ceph/pull/29966>`_, Ilya Dryomov) -* rbd,tests: test/cli-integration/rbd: fixed missing image and snap ids (`pr#29853 <https://github.com/ceph/ceph/pull/29853>`_, Jason Dillaman) -* rbd,tests: test/cli-integration: fixed spacing issue for RBD formatted tables (`pr#33902 <https://github.com/ceph/ceph/pull/33902>`_, Jason Dillaman) -* rbd,tests: test/cls_rbd/test_cls_rbd: update TestClsRbd.sparsify (`pr#30258 <https://github.com/ceph/ceph/pull/30258>`_, Kefu Chai) -* rbd,tests: test/cls_rbd: include compat.h for ERESTART (`pr#32172 <https://github.com/ceph/ceph/pull/32172>`_, Willem Jan Withagen) -* rbd,tests: test/journal: always close object (`pr#29476 <https://github.com/ceph/ceph/pull/29476>`_, Kefu Chai) -* rbd,tests: test/librados_test_stub: ensure the log flusher thread is started (`pr#27326 <https://github.com/ceph/ceph/pull/27326>`_, Jason Dillaman) -* rbd,tests: test/librbd: allow parallel runs of run-rbd-unit-tests (`pr#30072 <https://github.com/ceph/ceph/pull/30072>`_, Willem Jan Withagen) -* rbd,tests: test/librbd: drop ceph_test_librbd_api target (`issue#39072 <http://tracker.ceph.com/issues/39072>`_, `pr#27695 <https://github.com/ceph/ceph/pull/27695>`_, Jason Dillaman) -* rbd,tests: test/librbd: fix mock warnings in TestMockIoImageRequest (`pr#31497 <https://github.com/ceph/ceph/pull/31497>`_, Mykola Golub) -* rbd,tests: test/librbd: set nbd timeout due to newer kernels defaulting it on (`pr#29858 <https://github.com/ceph/ceph/pull/29858>`_, Jason Dillaman) -* rbd,tests: test/pybind/rbd.pyx: add test_remove_snap_by_id case in test_rbd.py (`pr#30927 <https://github.com/ceph/ceph/pull/30927>`_, Zhang Jiao) -* rbd,tests: test/pybind: add create_snap rasie ImageExists test case (`pr#31140 <https://github.com/ceph/ceph/pull/31140>`_, Gangbiao Liu) -* rbd,tests: test/pybind: inconsistent use of tabs and spaces in indentation (`pr#31606 <https://github.com/ceph/ceph/pull/31606>`_, Mykola Golub) -* rbd,tests: test/rbd_mirror: fix mock warnings (`pr#31608 <https://github.com/ceph/ceph/pull/31608>`_, Mykola Golub) -* rbd,tests: test/run-rbd-tests: properly initialize newly created rbd pool (`pr#33642 <https://github.com/ceph/ceph/pull/33642>`_, Mykola Golub) -* rbd,tests: test: add test_remove_snap_ImageNotFound test case in remove snap part (`pr#31221 <https://github.com/ceph/ceph/pull/31221>`_, Yingze Wei) -* rbd,tests: test:add test_remove_snap2 interface to remove snap when its protected (`pr#31208 <https://github.com/ceph/ceph/pull/31208>`_, Yingze Wei) -* rbd,tools: tools/rbd-ggate: close log before running postfork (`pr#30010 <https://github.com/ceph/ceph/pull/30010>`_, Willem Jan Withagen) -* rbd,tools: tools/rbd_nbd: use POSIX basename() (`pr#28856 <https://github.com/ceph/ceph/pull/28856>`_, Kefu Chai) -* rbd-ggate: fix fallout from bufferlist.copy() change (`pr#33057 <https://github.com/ceph/ceph/pull/33057>`_, Willem Jan Withagen) -* rbd-mirror: add namespace support (`issue#37529 <http://tracker.ceph.com/issues/37529>`_, `pr#28939 <https://github.com/ceph/ceph/pull/28939>`_, Mykola Golub) -* rbd-mirror: add namespace support to service daemon (`pr#31642 <https://github.com/ceph/ceph/pull/31642>`_, Mykola Golub) -* rbd-mirror: add support for snapshot-based mirroring resyncs (`pr#33490 <https://github.com/ceph/ceph/pull/33490>`_, Jason Dillaman) -* rbd-mirror: apply image state during snapshot replay (`pr#33335 <https://github.com/ceph/ceph/pull/33335>`_, Jason Dillaman) -* rbd-mirror: cannot restore deferred deletion mirrored images (`pr#30351 <https://github.com/ceph/ceph/pull/30351>`_, Jason Dillaman) -* rbd-mirror: clear out bufferlist prior to listing mirror images (`issue#39407 <http://tracker.ceph.com/issues/39407>`_, `pr#27720 <https://github.com/ceph/ceph/pull/27720>`_, Jason Dillaman) -* rbd-mirror: continue to isolate journal replay logic (`pr#32399 <https://github.com/ceph/ceph/pull/32399>`_, Jason Dillaman) -* rbd-mirror: do not auto-create peers in non-default namespaces (`pr#32341 <https://github.com/ceph/ceph/pull/32341>`_, Jason Dillaman) -* rbd-mirror: dont expect image map is always initialized (`pr#33368 <https://github.com/ceph/ceph/pull/33368>`_, Mykola Golub) -* rbd-mirror: dont overwrite status error returned by replay (`pr#28179 <https://github.com/ceph/ceph/pull/28179>`_, Mykola Golub) -* rbd-mirror: ensure deterministic ordering of method calls (`pr#32274 <https://github.com/ceph/ceph/pull/32274>`_, Jason Dillaman) -* rbd-mirror: extract journal replaying logic from image replayer (`pr#32257 <https://github.com/ceph/ceph/pull/32257>`_, Jason Dillaman) -* rbd-mirror: fix pool replayer status for case when init failed (`pr#32483 <https://github.com/ceph/ceph/pull/32483>`_, Mykola Golub) -* rbd-mirror: fix race on namespace replayer initialization failure (`pr#32243 <https://github.com/ceph/ceph/pull/32243>`_, Mykola Golub) -* rbd-mirror: handle duplicates in image sync throttler queue (`issue#40519 <http://tracker.ceph.com/issues/40519>`_, `pr#28730 <https://github.com/ceph/ceph/pull/28730>`_, Mykola Golub) -* rbd-mirror: hold lock while updating local image name (`pr#33988 <https://github.com/ceph/ceph/pull/33988>`_, Jason Dillaman) -* rbd-mirror: ignore errors relating to parsing the cluster config file (`pr#29808 <https://github.com/ceph/ceph/pull/29808>`_, Jason Dillaman) -* rbd-mirror: image status should report remote status (`pr#30558 <https://github.com/ceph/ceph/pull/30558>`_, Jason Dillaman) -* rbd-mirror: improve detection of blacklisted state (`pr#33411 <https://github.com/ceph/ceph/pull/33411>`_, Mykola Golub) -* rbd-mirror: initial end-to-end test and associated bug fixes (`pr#33588 <https://github.com/ceph/ceph/pull/33588>`_, Jason Dillaman) -* rbd-mirror: initial snapshot replay state machine (`pr#33166 <https://github.com/ceph/ceph/pull/33166>`_, Jason Dillaman) -* rbd-mirror: initial snapshot-based mirroring bootstrap logic (`pr#33002 <https://github.com/ceph/ceph/pull/33002>`_, Jason Dillaman) -* rbd-mirror: link against the specified alloc library (`issue#40110 <http://tracker.ceph.com/issues/40110>`_, `pr#28434 <https://github.com/ceph/ceph/pull/28434>`_, Jason Dillaman) -* rbd-mirror: make logrotate work (`pr#32456 <https://github.com/ceph/ceph/pull/32456>`_, Mykola Golub) -* rbd-mirror: mirrored clone should be same format (`pr#31161 <https://github.com/ceph/ceph/pull/31161>`_, Mykola Golub) -* rbd-mirror: peer_ping should send the local fsid to the remote (`pr#31950 <https://github.com/ceph/ceph/pull/31950>`_, Jason Dillaman) -* rbd-mirror: periodically flush IO and commit positions (`issue#39257 <http://tracker.ceph.com/issues/39257>`_, `pr#27533 <https://github.com/ceph/ceph/pull/27533>`_, Jason Dillaman) -* rbd-mirror: periodically poll remote mirror configuration (`pr#32671 <https://github.com/ceph/ceph/pull/32671>`_, Jason Dillaman) -* rbd-mirror: potential nullptr dereference in ImageReplayer::handle_start_replay (`pr#30484 <https://github.com/ceph/ceph/pull/30484>`_, Mykola Golub) -* rbd-mirror: prevent I/O modifications against a non-primary image (`pr#33831 <https://github.com/ceph/ceph/pull/33831>`_, Jason Dillaman) -* rbd-mirror: provide initial snapshot replay status (`pr#33440 <https://github.com/ceph/ceph/pull/33440>`_, Jason Dillaman) -* rbd-mirror: remove journal-specific logic from image replay and bootstrap state machines (`pr#32578 <https://github.com/ceph/ceph/pull/32578>`_, Jason Dillaman) -* rbd-mirror: removing non-primary trash snapshot (`pr#31260 <https://github.com/ceph/ceph/pull/31260>`_, Mykola Golub) -* rbd-mirror: rename per-image replication perf counters (`pr#32184 <https://github.com/ceph/ceph/pull/32184>`_, Mykola Golub) -* rbd-mirror: simplify peer bootstrapping (`pr#30411 <https://github.com/ceph/ceph/pull/30411>`_, Jason Dillaman) -* rbd-mirror: snapshot mirror mode (`pr#30548 <https://github.com/ceph/ceph/pull/30548>`_, Mykola Golub) -* rbd-mirror: snapshot-based mirroring should use image sync throttler (`pr#34040 <https://github.com/ceph/ceph/pull/34040>`_, Jason Dillaman) -* rbd-nbd: add netlink map/unmap support (`pr#27902 <https://github.com/ceph/ceph/pull/27902>`_, Mike Christie) -* rbd-nbd: add nl resize (`pr#29036 <https://github.com/ceph/ceph/pull/29036>`_, Mike Christie) -* rbd-nbd: sscanf return 0 mean not-match (`issue#39269 <http://tracker.ceph.com/issues/39269>`_, `pr#27484 <https://github.com/ceph/ceph/pull/27484>`_, Jianpeng Ma) -* rbd: creating thick-provision image progress percent info exceeds 100% (`pr#30954 <https://github.com/ceph/ceph/pull/30954>`_, Xiangdong Mu) -* rbd: journal: add support for aligned appends (`pr#28351 <https://github.com/ceph/ceph/pull/28351>`_, Mykola Golub) -* rbd: librbd: skip stale child with non-existent pool for list descendants (`pr#29654 <https://github.com/ceph/ceph/pull/29654>`_, songweibin) -* rbd: add --merge to disk-usage (`pr#30994 <https://github.com/ceph/ceph/pull/30994>`_, Alexandre Bruyelles) -* rbd: add mirror snapshot schedule commands (`pr#32882 <https://github.com/ceph/ceph/pull/32882>`_, Mykola Golub) -* rbd: add snap_exists method API (`pr#32497 <https://github.com/ceph/ceph/pull/32497>`_, Zheng Yin) -* rbd: client,common,mgr,rbd: clang related cleanups (`pr#33657 <https://github.com/ceph/ceph/pull/33657>`_, Kefu Chai) -* rbd: cls/rbd: improve efficiency of mirror image status queries (`pr#31865 <https://github.com/ceph/ceph/pull/31865>`_, Jason Dillaman) -* rbd: cls/rbd: sanitize entity instance messenger version type (`pr#30438 <https://github.com/ceph/ceph/pull/30438>`_, Jason Dillaman) -* rbd: cls/rbd: sanitize the mirror image status peer address after reading from disk (`pr#31824 <https://github.com/ceph/ceph/pull/31824>`_, Jason Dillaman) -* rbd: cls: reduce log level for non-fatal errors (`issue#40865 <http://tracker.ceph.com/issues/40865>`_, `pr#29165 <https://github.com/ceph/ceph/pull/29165>`_, Jason Dillaman) -* rbd: delete redundant words when trash restore fails because of same name (`pr#30952 <https://github.com/ceph/ceph/pull/30952>`_, Xiangdong Mu) -* rbd: fixed additional issues with CEPH_ARGS processing (`pr#33219 <https://github.com/ceph/ceph/pull/33219>`_, Jason Dillaman) -* rbd: incorporate rbd-mirror daemon status in mirror pool status (`pr#31949 <https://github.com/ceph/ceph/pull/31949>`_, Jason Dillaman) -* rbd: journal: fix race between player shut down and cache rebalance (`pr#28748 <https://github.com/ceph/ceph/pull/28748>`_, Mykola Golub) -* rbd: journal: fix race between player shut down and cache rebalance (`pr#29796 <https://github.com/ceph/ceph/pull/29796>`_, Mykola Golub) -* rbd: journal: optimize object overflow detection (`pr#28240 <https://github.com/ceph/ceph/pull/28240>`_, Mykola Golub) -* rbd: journal: properly advance read offset after skipping invalid range (`pr#28627 <https://github.com/ceph/ceph/pull/28627>`_, Mykola Golub) -* rbd: journal: return error after first corruption detected (`pr#28820 <https://github.com/ceph/ceph/pull/28820>`_, Mykola Golub) -* rbd: journal: wait for in flight advance sets on stopping recorder (`pr#28529 <https://github.com/ceph/ceph/pull/28529>`_, Mykola Golub) -* rbd: krbd: avoid udev netlink socket overrun (`pr#30965 <https://github.com/ceph/ceph/pull/30965>`_, Ilya Dryomov) -* rbd: krbd: fix rbd map hang due to udev return subsystem unordered (`issue#39089 <http://tracker.ceph.com/issues/39089>`_, `pr#27339 <https://github.com/ceph/ceph/pull/27339>`_, Zhi Zhang) -* rbd: krbd: modprobe before calling build_map_buf() (`pr#30978 <https://github.com/ceph/ceph/pull/30978>`_, Ilya Dryomov) -* rbd: krbd: retry on transient errors from udev_enumerate_scan_devices() (`pr#31023 <https://github.com/ceph/ceph/pull/31023>`_, Ilya Dryomov) -* rbd: krbd: return -ETIMEDOUT in polling (`issue#38792 <http://tracker.ceph.com/issues/38792>`_, `pr#27025 <https://github.com/ceph/ceph/pull/27025>`_, Dongsheng Yang) -* rbd: mgr/dashboard: support RBD mirroring bootstrap create/import (`issue#42355 <http://tracker.ceph.com/issues/42355>`_, `pr#31062 <https://github.com/ceph/ceph/pull/31062>`_, Jason Dillaman) -* rbd: msg/async: avoid unnecessary costly wakeups for outbound messages (`pr#28388 <https://github.com/ceph/ceph/pull/28388>`_, Jason Dillaman) -* rbd: msg/async: reduce verbosity of connection timeout failures (`issue#39448 <http://tracker.ceph.com/issues/39448>`_, `pr#28050 <https://github.com/ceph/ceph/pull/28050>`_, Jason Dillaman) -* rbd: pybind/mgr/rbd_support: fix missing variable in error path (`pr#29773 <https://github.com/ceph/ceph/pull/29773>`_, Jason Dillaman) -* rbd: pybind/mgr/rbd_support: ignore missing support for RBD namespaces (`pr#29433 <https://github.com/ceph/ceph/pull/29433>`_, Jason Dillaman) -* rbd: pybind/mgr/rbd_support: use image ids to detect duplicate tasks (`pr#29468 <https://github.com/ceph/ceph/pull/29468>`_, Jason Dillaman) -* rbd: pybind/mgr/rbd_support: wait for latest OSD map prior to handling commands (`pr#33451 <https://github.com/ceph/ceph/pull/33451>`_, Jason Dillaman) -* rbd: pybind/rbd: fix call to unregister_osd_perf_queries (`pr#29419 <https://github.com/ceph/ceph/pull/29419>`_, Venky Shankar) -* rbd: pybind/rbd: provide snap remove flags (`pr#31627 <https://github.com/ceph/ceph/pull/31627>`_, Mykola Golub) -* rbd: qa/suites/rbd/openstack: use 18.04, not 16.04 (`pr#32284 <https://github.com/ceph/ceph/pull/32284>`_, Sage Weil) -* rbd: rbd-ggate: fix compile errors from ceph::mutex update (`pr#29474 <https://github.com/ceph/ceph/pull/29474>`_, Willem Jan Withagen) -* rbd: rbd-mirror: adjust journal fetch properties based on memory target (`pr#27670 <https://github.com/ceph/ceph/pull/27670>`_, Mykola Golub) -* rbd: rbd/action: display image id in rbd du/list output (`pr#29376 <https://github.com/ceph/ceph/pull/29376>`_, songweibin) -* rbd: rbd/action: fix error getting positional argument (`issue#40095 <http://tracker.ceph.com/issues/40095>`_, `pr#28313 <https://github.com/ceph/ceph/pull/28313>`_, songweibin) -* rbd: rbd/bench: outputs bytes/s format dynamically (`pr#31491 <https://github.com/ceph/ceph/pull/31491>`_, Zheng Yin) -* rbd: rbd/cache: Replicated Write Log core codes part 1 (`pr#31279 <https://github.com/ceph/ceph/pull/31279>`_, Peterson, Scott, Li, Xiaoyan, Lu, Yuan, Chamarthy, Mahati) -* rbd: rbd/cache: Replicated Write Log core codes part 2 (`pr#31963 <https://github.com/ceph/ceph/pull/31963>`_, Peterson, Scott, Li, Xiaoyan, Lu, Yuan, Chamarthy, Mahati) -* rbd: rbd_replay: call the member decode() explicitly (`pr#27703 <https://github.com/ceph/ceph/pull/27703>`_, Kefu Chai) -* rbd: schedule for running trash purge operations (`pr#33389 <https://github.com/ceph/ceph/pull/33389>`_, Mykola Golub) -* rbd: src: use un-deprecated version of aio_create_completion (`pr#31333 <https://github.com/ceph/ceph/pull/31333>`_, Adam C. Emerson) -* rbd: use the ordered throttle for the export action (`issue#40435 <http://tracker.ceph.com/issues/40435>`_, `pr#28657 <https://github.com/ceph/ceph/pull/28657>`_, Jason Dillaman) -* remove cephadm-adoption-corpus as submodule (`pr#33587 <https://github.com/ceph/ceph/pull/33587>`_, Sage Weil) -* Return an error, for Bluestore OSD, if WAL or DB are defined in the tags of the OSD but not present on the system (`pr#28791 <https://github.com/ceph/ceph/pull/28791>`_, David Casier) -* rgw,tests: qa/rgw/pubsub: fix tests to sync from master (`pr#33049 <https://github.com/ceph/ceph/pull/33049>`_, Yuval Lifshitz) -* rgw,tests: qa/rgw/pubsub: verify incremental sync is used in pubsu (`pr#33068 <https://github.com/ceph/ceph/pull/33068>`_, Yuval Lifshitz) -* rgw,tests: qa/rgw: add integration test for sse-kms with barbican (`pr#30218 <https://github.com/ceph/ceph/pull/30218>`_, Casey Bodley, Adam Kupczyk) -* rgw,tests: qa/rgw: add new rgw/website suite for static website tests (`pr#30193 <https://github.com/ceph/ceph/pull/30193>`_, Casey Bodley) -* rgw,tests: qa/rgw: add rgw_obj and throttle tests to rgw verify suite (`pr#32188 <https://github.com/ceph/ceph/pull/32188>`_, Casey Bodley) -* rgw,tests: qa/rgw: disable debuginfo packages (`pr#27528 <https://github.com/ceph/ceph/pull/27528>`_, Casey Bodley) -* rgw,tests: qa/rgw: dont use ceph-ansible in s3a-hadoop suite (`issue#39706 <http://tracker.ceph.com/issues/39706>`_, `pr#28068 <https://github.com/ceph/ceph/pull/28068>`_, Casey Bodley) -* rgw,tests: qa/rgw: drop some objectstore types (`pr#30997 <https://github.com/ceph/ceph/pull/30997>`_, Casey Bodley) -* rgw,tests: qa/rgw: exercise DeleteRange in test_bucket_index_log_trim (`pr#33047 <https://github.com/ceph/ceph/pull/33047>`_, Casey Bodley) -* rgw,tests: qa/rgw: extra s3tests tasks use rgw endpoint configuration (`issue#17882 <http://tracker.ceph.com/issues/17882>`_, `pr#28631 <https://github.com/ceph/ceph/pull/28631>`_, Casey Bodley) -* rgw,tests: qa/rgw: fix import error in tasks/swift.py (`issue#40304 <http://tracker.ceph.com/issues/40304>`_, `pr#28605 <https://github.com/ceph/ceph/pull/28605>`_, Casey Bodley) -* rgw,tests: qa/rgw: fix swift warning message (`pr#28697 <https://github.com/ceph/ceph/pull/28697>`_, Casey Bodley) -* rgw,tests: qa/rgw: more fixes for swift task (`issue#40304 <http://tracker.ceph.com/issues/40304>`_, `pr#28823 <https://github.com/ceph/ceph/pull/28823>`_, Casey Bodley) -* rgw,tests: qa/rgw: multisite checkpoints consider pubsub zone (`pr#32941 <https://github.com/ceph/ceph/pull/32941>`_, Casey Bodley) -* rgw,tests: qa/rgw: refactor the kms backend configuration (`pr#30940 <https://github.com/ceph/ceph/pull/30940>`_, Casey Bodley) -* rgw,tests: qa/rgw: remove failing radosgw_admin_rest from multisite suite (`pr#32550 <https://github.com/ceph/ceph/pull/32550>`_, Casey Bodley) -* rgw,tests: qa/rgw: remove whitelist for SLOW_OPS against ec pools (`pr#31363 <https://github.com/ceph/ceph/pull/31363>`_, Casey Bodley) -* rgw,tests: qa/rgw: s3a-hadoop task defaults to maven-version 3.6.3 (`pr#32620 <https://github.com/ceph/ceph/pull/32620>`_, Casey Bodley) -* rgw,tests: qa/rgw: skip swift tests on rhel 7.6+ (`issue#40304 <http://tracker.ceph.com/issues/40304>`_, `pr#28532 <https://github.com/ceph/ceph/pull/28532>`_, Casey Bodley) -* rgw,tests: qa/rgw: update run-s3tests.sh (`pr#28964 <https://github.com/ceph/ceph/pull/28964>`_, Casey Bodley) -* rgw,tests: qa/rgw: use testing kms backend for multisite tests (`pr#31374 <https://github.com/ceph/ceph/pull/31374>`_, Casey Bodley) -* rgw,tests: qa/rgw: use testing kms backend for other rgw subsuites (`pr#31414 <https://github.com/ceph/ceph/pull/31414>`_, Casey Bodley) -* rgw,tests: qa/rgw: whitelist SLOW_OPS failures against ec pools (`pr#30944 <https://github.com/ceph/ceph/pull/30944>`_, Casey Bodley) -* rgw,tests: qa/suites/rgw/website: run test on ubuntu (`pr#32791 <https://github.com/ceph/ceph/pull/32791>`_, Sage Weil) -* rgw,tests: qa/suites/rgw: reenable ragweed (now py3) (`pr#32310 <https://github.com/ceph/ceph/pull/32310>`_, Sage Weil) -* rgw,tests: qa/suites: use s3-tests with python3 support (`pr#32624 <https://github.com/ceph/ceph/pull/32624>`_, Ali Maredia) -* rgw,tests: qa/tasks/swift: remove swift tests (`pr#32357 <https://github.com/ceph/ceph/pull/32357>`_, Sage Weil) -* rgw,tests: qa/tests: added rgw into upgrade sequence to improve coverage (`pr#29234 <https://github.com/ceph/ceph/pull/29234>`_, Yuri Weinstein) -* rgw,tests: qa/tests: added rgw into upgrade sequence to improve coverage - splits (`pr#29282 <https://github.com/ceph/ceph/pull/29282>`_, Yuri Weinstein) -* rgw,tests: qa: add force-branch to suites running s3readwrite & s3roundtrip tasks (`pr#32225 <https://github.com/ceph/ceph/pull/32225>`_, Ali Maredia) -* rgw,tests: qa: bump maven repo version in s3a_hadoop.py (`pr#30531 <https://github.com/ceph/ceph/pull/30531>`_, Ali Maredia) -* rgw,tests: qa: radosgw-admin: remove dependency on bunch package (`pr#32100 <https://github.com/ceph/ceph/pull/32100>`_, Yehuda Sadeh) -* rgw,tests: qa: radosgw_admin: validate a simple user stats output (`pr#30684 <https://github.com/ceph/ceph/pull/30684>`_, Abhishek Lekshmanan) -* rgw,tests: qa: remove mon valgrind check in rgw verfiy suite (`issue#38827 <http://tracker.ceph.com/issues/38827>`_, `pr#28155 <https://github.com/ceph/ceph/pull/28155>`_, Ali Maredia) -* rgw,tests: qa: remove s3-tests from rados/basic/tasks/rgw_snaps.yml (`pr#32940 <https://github.com/ceph/ceph/pull/32940>`_, Ali Maredia) -* rgw,tests: qa: rgw: add user-policy caps for the s3tests users (`pr#31127 <https://github.com/ceph/ceph/pull/31127>`_, Abhishek Lekshmanan) -* rgw,tests: qa: use curl in wait_for_radosgw() in util/rgw.py (`pr#28521 <https://github.com/ceph/ceph/pull/28521>`_, Ali Maredia) -* rgw,tests: rgw/amqp: fix race condition in AMQP unit test (`pr#30735 <https://github.com/ceph/ceph/pull/30735>`_, Yuval Lifshitz) -* rgw,tests: rgw/amqp: remove flaky amqp test (`pr#31510 <https://github.com/ceph/ceph/pull/31510>`_, Yuval Lifshitz) -* rgw,tests: rgw/pubsub: add multisite pubsub tests to teuthology (`pr#27838 <https://github.com/ceph/ceph/pull/27838>`_, Yuval Lifshitz) -* rgw,tests: rgw/pubsub: tests enhancements and fixes (`pr#28910 <https://github.com/ceph/ceph/pull/28910>`_, Yuval Lifshitz) -* rgw,tests: rgw/pubsub: use incremental sync for pubsub module by default (`pr#28470 <https://github.com/ceph/ceph/pull/28470>`_, Yuval Lifshitz) -* rgw,tests: test/rgw: fix test-rgw-multisite.sh script for creating multisite clusters (`pr#27984 <https://github.com/ceph/ceph/pull/27984>`_, Casey Bodley) -* rgw,tests: test/rgw: fixes for test-rgw-multisite.sh (`pr#33537 <https://github.com/ceph/ceph/pull/33537>`_, Casey Bodley) -* rgw,tests: test/rgw: raise timer durations for unittest_rgw_reshard_wait (`pr#32094 <https://github.com/ceph/ceph/pull/32094>`_, Casey Bodley) -* rgw,tests: test/rgw: test_rgw_reshard_wait uses same clock for timing (`pr#27035 <https://github.com/ceph/ceph/pull/27035>`_, Casey Bodley) -* rgw,tests: vstart: move common rgw config to [client.rgw] (`pr#29449 <https://github.com/ceph/ceph/pull/29449>`_, Casey Bodley) -* rgw,tools: ceph-dencoder: add RGWPeriodLatestEpochInfo support (`pr#30613 <https://github.com/ceph/ceph/pull/30613>`_, yuliyang) -* rgw,tools: rgw/examples: adding examples for boto3 extensions to AWS S3 (`pr#30600 <https://github.com/ceph/ceph/pull/30600>`_, Yuval Lifshitz) -* rgw,tools: vstart.sh: run multiple rgws with different ids (`pr#26690 <https://github.com/ceph/ceph/pull/26690>`_, Joao Eduardo Luis) -* rgw: rgw: cls_bucket_list_unordered lists a single shard (`issue#39393 <http://tracker.ceph.com/issues/39393>`_, `pr#27697 <https://github.com/ceph/ceph/pull/27697>`_, Casey Bodley) -* rgw: rgw: make radosgw-admin user create and modify distinct (`pr#31901 <https://github.com/ceph/ceph/pull/31901>`_, Matthew Oliver) -* rgw: rgw: returns LimitExceeded when user creates too many ACLs (`issue#26835 <http://tracker.ceph.com/issues/26835>`_, `pr#25692 <https://github.com/ceph/ceph/pull/25692>`_, Chang Liu) -* rgw: A task to run S3 Java tests against RGW (`pr#22788 <https://github.com/ceph/ceph/pull/22788>`_, Antoaneta Damyanova) -* rgw: add --object-version in radosgw-admin help info (`pr#30091 <https://github.com/ceph/ceph/pull/30091>`_, yuliyang) -* rgw: add a small efficiency (`pr#29178 <https://github.com/ceph/ceph/pull/29178>`_, J. Eric Ivancich) -* rgw: add admin rest api for bucket sync (`pr#19020 <https://github.com/ceph/ceph/pull/19020>`_, zhang Shaowen, Zhang Shaowen) -* rgw: add cls_queue and cls_rgw_gc for omap offload (`pr#28421 <https://github.com/ceph/ceph/pull/28421>`_, Pritha Srivastava, Casey Bodley) -* rgw: add const correctness to some rest functions (`pr#31660 <https://github.com/ceph/ceph/pull/31660>`_, J. Eric Ivancich) -* rgw: add creation time information into bucket stats (`pr#30384 <https://github.com/ceph/ceph/pull/30384>`_, Enming Zhang) -* rgw: Add days0 to rgw lc (`pr#29937 <https://github.com/ceph/ceph/pull/29937>`_, Or Friedmann) -* rgw: add detailed error message for PutACLs (`pr#30385 <https://github.com/ceph/ceph/pull/30385>`_, Enming Zhang) -* rgw: add editor directive comments to rgw services source files (`pr#27897 <https://github.com/ceph/ceph/pull/27897>`_, J. Eric Ivancich) -* rgw: add GET /admin/realm?list api to list realms (`pr#28156 <https://github.com/ceph/ceph/pull/28156>`_, Casey Bodley) -* rgw: add missing admin property when sync user info (`pr#30127 <https://github.com/ceph/ceph/pull/30127>`_, zhang Shaowen) -* rgw: add missing bilog status to help info (`pr#30357 <https://github.com/ceph/ceph/pull/30357>`_, zhang Shaowen) -* rgw: add missing close_section in send_versioned_response (`pr#28946 <https://github.com/ceph/ceph/pull/28946>`_, Casey Bodley) -* rgw: Add more details to the LC delete and transit log (`pr#30913 <https://github.com/ceph/ceph/pull/30913>`_, Or Friedmann) -* rgw: add num_shards to radosgw-admin bucket stats (`pr#30845 <https://github.com/ceph/ceph/pull/30845>`_, Paul Emmerich) -* rgw: add option to specify shard-id for bi list admin command (`pr#29394 <https://github.com/ceph/ceph/pull/29394>`_, Mark Kogan) -* rgw: add optional_yield to http client interface (`pr#25355 <https://github.com/ceph/ceph/pull/25355>`_, Casey Bodley) -* rgw: add optional_yield to SysObj service interfaces (`pr#25353 <https://github.com/ceph/ceph/pull/25353>`_, Casey Bodley) -* rgw: add PublicAccessBlock set of APIs on buckets (`pr#30033 <https://github.com/ceph/ceph/pull/30033>`_, Abhishek Lekshmanan) -* rgw: add rgw_rados_pool_recovery_priority (default 5) (`pr#29181 <https://github.com/ceph/ceph/pull/29181>`_, Sage Weil) -* rgw: add roles_pool in RGWZoneParams dump/decode json (`issue#22162 <http://tracker.ceph.com/issues/22162>`_, `pr#17338 <https://github.com/ceph/ceph/pull/17338>`_, Tianshan Qu) -* rgw: add S3 object lock feature to support object worm (`pr#26538 <https://github.com/ceph/ceph/pull/26538>`_, zhang Shaowen) -* rgw: add some comments to rgw code to help explain functionality (`pr#27896 <https://github.com/ceph/ceph/pull/27896>`_, J. Eric Ivancich) -* rgw: add SSE-KMS with Vault using token auth (`pr#29783 <https://github.com/ceph/ceph/pull/29783>`_, Andrea Baglioni, Sergio de Carvalho) -* rgw: Add support bucket policy for subuser (`pr#33165 <https://github.com/ceph/ceph/pull/33165>`_, Seena Fallah) -* rgw: add tenant as parameter to User in multisite tests (`pr#27969 <https://github.com/ceph/ceph/pull/27969>`_, Yuval Lifshitz) -* rgw: add transaction id to ops log (`pr#30163 <https://github.com/ceph/ceph/pull/30163>`_, zhang Shaowen) -* rgw: add YieldingAioThrottle for async PutObj/GetObj (`pr#26173 <https://github.com/ceph/ceph/pull/26173>`_, Casey Bodley) -* rgw: Added caching for S3 credentials retrieved from keystone (`pr#26095 <https://github.com/ceph/ceph/pull/26095>`_, James Weaver) -* rgw: adding documentation for AssumeRoleWithWebIdentity (`pr#31994 <https://github.com/ceph/ceph/pull/31994>`_, Pritha Srivastava) -* rgw: Adding iam namespace for Role and User Policy related REST APIs (`pr#27178 <https://github.com/ceph/ceph/pull/27178>`_, Pritha Srivastava) -* rgw: adding mfa code validation when bucket versioning status is changed (`pr#31767 <https://github.com/ceph/ceph/pull/31767>`_, Pritha Srivastava) -* rgw: Adding tcp_nodelay option to Beast (`pr#27008 <https://github.com/ceph/ceph/pull/27008>`_, Or Friedmann) -* rgw: address 0-length listing results when non-vis entries dominate (`pr#32636 <https://github.com/ceph/ceph/pull/32636>`_, J. Eric Ivancich) -* rgw: adjust allowable bucket index shard counts for dynamic resharding (`pr#30795 <https://github.com/ceph/ceph/pull/30795>`_, J. Eric Ivancich) -* rgw: admin: handle delete_at attr in object stat output (`pr#27781 <https://github.com/ceph/ceph/pull/27781>`_, Abhishek Lekshmanan) -* rgw: Allow admin APIs that write metadata to be executed first on the mast\xe2\x80\xa6 (`issue#39549 <http://tracker.ceph.com/issues/39549>`_, `pr#29549 <https://github.com/ceph/ceph/pull/29549>`_, Shilpa Jagannath) -* rgw: allow radosgw-admin to list bucket w --allow-unordered (`issue#39637 <http://tracker.ceph.com/issues/39637>`_, `pr#28031 <https://github.com/ceph/ceph/pull/28031>`_, J. Eric Ivancich) -* rgw: allow reshard log entries for non-existent buckets to be cancelled (`pr#31271 <https://github.com/ceph/ceph/pull/31271>`_, J. Eric Ivancich) -* rgw: apply_olh_log ignores RGW_ATTR_OLH_VER decode error (`pr#31976 <https://github.com/ceph/ceph/pull/31976>`_, Casey Bodley) -* rgw: asio: check the remote endpoint before processing requests (`pr#29967 <https://github.com/ceph/ceph/pull/29967>`_, Abhishek Lekshmanan) -* rgw: auth/Crypto: fallback to /dev/urandom if getentropy() fails (`pr#30544 <https://github.com/ceph/ceph/pull/30544>`_, Kefu Chai) -* rgw: auto-clean reshard queue entries for non-existent buckets (`pr#31323 <https://github.com/ceph/ceph/pull/31323>`_, J. Eric Ivancich) -* rgw: az: add archive zone tests (`pr#29359 <https://github.com/ceph/ceph/pull/29359>`_, Javier M. Mellid) -* rgw: beast frontend uses 512k mprotected coroutine stacks (`pr#31580 <https://github.com/ceph/ceph/pull/31580>`_, Daniel Gryniewicz, Casey Bodley) -* rgw: beast frontend uses yield_context to read/write body (`pr#27795 <https://github.com/ceph/ceph/pull/27795>`_, Casey Bodley) -* rgw: beast port parsing (`issue#39000 <http://tracker.ceph.com/issues/39000>`_, `pr#27242 <https://github.com/ceph/ceph/pull/27242>`_, Abhishek Lekshmanan) -* rgw: beast ssl certs config through config-key (`pr#33287 <https://github.com/ceph/ceph/pull/33287>`_, Yehuda Sadeh) -* rgw: bucket granularity sync (`pr#31686 <https://github.com/ceph/ceph/pull/31686>`_, Yehuda Sadeh) -* rgw: bucket re-creation fixes (`pr#32121 <https://github.com/ceph/ceph/pull/32121>`_, Yehuda Sadeh) -* rgw: bucket stats report mtime in UTC (`pr#27617 <https://github.com/ceph/ceph/pull/27617>`_, Casey Bodley) -* rgw: bucket tagging (`pr#27993 <https://github.com/ceph/ceph/pull/27993>`_, Chang Liu) -* rgw: build async scheduler only when beast is built (`pr#26634 <https://github.com/ceph/ceph/pull/26634>`_, Abhishek Lekshmanan) -* rgw: build radosgw daemon as a shared lib + small executable (`pr#32404 <https://github.com/ceph/ceph/pull/32404>`_, Kaleb S. Keithley) -* rgw: build_linked_oids_for_bucket and build_buckets_instance_index should return negative value if it fails (`pr#31346 <https://github.com/ceph/ceph/pull/31346>`_, zhangshaowen) -* rgw: change cls rgw reshard status to enum class (`pr#30611 <https://github.com/ceph/ceph/pull/30611>`_, J. Eric Ivancich) -* rgw: change MAX_USAGE_TRIM_ENTRIES value from 128 to 1000 (`pr#30392 <https://github.com/ceph/ceph/pull/30392>`_, zhang Shaowen) -* rgw: check lc objs not empty after fetching (`pr#26167 <https://github.com/ceph/ceph/pull/26167>`_, Yao Zongyou) -* rgw: clean index and remove bucket instance info when setting resharding status fails (`pr#31103 <https://github.com/ceph/ceph/pull/31103>`_, zhangshaowen) -* rgw: clean up ordered list (`pr#31338 <https://github.com/ceph/ceph/pull/31338>`_, J. Eric Ivancich) -* rgw: clean up some logging (`pr#27411 <https://github.com/ceph/ceph/pull/27411>`_, J. Eric Ivancich) -* rgw: cleanup the magic string usage in cls_rgw_client.cc (`pr#31432 <https://github.com/ceph/ceph/pull/31432>`_, zhangshaowen) -* rgw: cleanup:remove un-used class member in RGWDeleteLC (`pr#31404 <https://github.com/ceph/ceph/pull/31404>`_, zhang Shaowen) -* rgw: cleanup:remove un-used create_new_bucket_instance in rgw_admin.cc (`pr#31345 <https://github.com/ceph/ceph/pull/31345>`_, zhangshaowen) -* rgw: clear ent_list for each loop of bucket list (`issue#44394 <http://tracker.ceph.com/issues/44394>`_, `pr#33693 <https://github.com/ceph/ceph/pull/33693>`_, Yao Zongyou) -* rgw: cls/rgw: fix bilog trim tests in ceph_test_cls_rgw (`pr#30268 <https://github.com/ceph/ceph/pull/30268>`_, Casey Bodley) -* rgw: cls/rgw: keep issuing bilog trim ops after reset (`issue#40187 <http://tracker.ceph.com/issues/40187>`_, `pr#28430 <https://github.com/ceph/ceph/pull/28430>`_, Casey Bodley) -* rgw: cls/rgw: test before accessing pkeys->rbegin() (`issue#39984 <http://tracker.ceph.com/issues/39984>`_, `pr#28391 <https://github.com/ceph/ceph/pull/28391>`_, Casey Bodley) -* rgw: cls/rgw: when object is versioned and lc transition it, the object is becoming non-current (`pr#32458 <https://github.com/ceph/ceph/pull/32458>`_, Or Friedmann) -* rgw: cls/user: cls_user_set_buckets_info overwrites creation_time (`issue#39635 <http://tracker.ceph.com/issues/39635>`_, `pr#28045 <https://github.com/ceph/ceph/pull/28045>`_, Casey Bodley) -* rgw: cls_bucket_list\\_(un)ordered should clear results collection (`pr#33702 <https://github.com/ceph/ceph/pull/33702>`_, J. Eric Ivancich) -* rgw: compression info should be same during multipart uploading (`pr#30574 <https://github.com/ceph/ceph/pull/30574>`_, zhang Shaowen) -* rgw: conditionally allow non-unique email addresses (`issue#40089 <http://tracker.ceph.com/issues/40089>`_, `pr#28327 <https://github.com/ceph/ceph/pull/28327>`_, Matt Benjamin) -* rgw: continuation token doesnt work in list object v2 request (`pr#28988 <https://github.com/ceph/ceph/pull/28988>`_, zhang Shaowen) -* rgw: continuationToken or startAfter shouldnt be returned if not specified (`pr#29298 <https://github.com/ceph/ceph/pull/29298>`_, zhang Shaowen) -* rgw: correct some error log about reshard in cls_rgw.cc (`pr#31429 <https://github.com/ceph/ceph/pull/31429>`_, zhangshaowen) -* rgw: crypt: permit RGW-AUTO/default with SSE-S3 headers (`pr#30189 <https://github.com/ceph/ceph/pull/30189>`_, Matt Benjamin) -* rgw: crypto: throw DigestException from Digest and HMAC (`issue#39456 <http://tracker.ceph.com/issues/39456>`_, `pr#27765 <https://github.com/ceph/ceph/pull/27765>`_, Matt Benjamin) -* rgw: data sync markers include timestamp from datalog entry (`pr#32309 <https://github.com/ceph/ceph/pull/32309>`_, Casey Bodley) -* rgw: data/bilogs are trimmed when no peers are reading them (`issue#39487 <http://tracker.ceph.com/issues/39487>`_, `pr#27794 <https://github.com/ceph/ceph/pull/27794>`_, Casey Bodley) -* rgw: datalog/mdlog trim commands loop until done (`pr#29448 <https://github.com/ceph/ceph/pull/29448>`_, Casey Bodley) -* rgw: data_sync_source_zones only contains exporting zones (`pr#33193 <https://github.com/ceph/ceph/pull/33193>`_, Casey Bodley) -* rgw: decrypt filter does not cross multipart boundaries (`issue#38700 <http://tracker.ceph.com/issues/38700>`_, `pr#27130 <https://github.com/ceph/ceph/pull/27130>`_, Adam Kupczyk, Casey Bodley, Abhishek Lekshmanan) -* rgw: DefaultRetention requires either Days or Years (`pr#29680 <https://github.com/ceph/ceph/pull/29680>`_, Chang Liu) -* rgw: delete_obj_index() takes mtime for bilog (`issue#24991 <http://tracker.ceph.com/issues/24991>`_, `pr#27980 <https://github.com/ceph/ceph/pull/27980>`_, Casey Bodley) -* rgw: distinguish different get_usage for usage log (`pr#17719 <https://github.com/ceph/ceph/pull/17719>`_, Jiaying Ren) -* rgw: dmclock: wait until the request is handled (`pr#30777 <https://github.com/ceph/ceph/pull/30777>`_, GaryHyg) -* rgw: do not miss the 1000th element of every iteration during lifecycle processing (`pr#30861 <https://github.com/ceph/ceph/pull/30861>`_, Ilsoo Byun) -* rgw: do not remove delete marker when fixing versioned bucket (`pr#32562 <https://github.com/ceph/ceph/pull/32562>`_, Ilsoo Byun) -* rgw: Dont crash on copy when metadata directive not supplied (`issue#40416 <http://tracker.ceph.com/issues/40416>`_, `pr#28949 <https://github.com/ceph/ceph/pull/28949>`_, Adam C. Emerson) -* rgw: dont crash on missing /etc/mime.types (`issue#38328 <http://tracker.ceph.com/issues/38328>`_, `pr#26998 <https://github.com/ceph/ceph/pull/26998>`_, Casey Bodley) -* rgw: dont print error log when list reshard result is not truncated (`pr#31142 <https://github.com/ceph/ceph/pull/31142>`_, zhangshaowen) -* rgw: dont recalculate etags for slo/dlo (`pr#27470 <https://github.com/ceph/ceph/pull/27470>`_, Casey Bodley) -* rgw: dont throw when accept errors are happening on frontend (`pr#29587 <https://github.com/ceph/ceph/pull/29587>`_, Yuval Lifshitz) -* rgw: drop cloud sync module logs attrs from the log (`pr#27820 <https://github.com/ceph/ceph/pull/27820>`_, Nathan Cutler) -* rgw: drop dead flush_read_list declaration (`pr#29458 <https://github.com/ceph/ceph/pull/29458>`_, Jiaying Ren) -* rgw: drop unused rgw_decode_pki_token() (`pr#27052 <https://github.com/ceph/ceph/pull/27052>`_, Radoslaw Zarzynski) -* rgw: dump s3_code as the Code response element in RGWDeleteMultiObj_ObjStore_S3 (`issue#18241 <http://tracker.ceph.com/issues/18241>`_, `pr#12470 <https://github.com/ceph/ceph/pull/12470>`_, Radoslaw Zarzynski) -* rgw: eliminates duplicated tags_bl var (`pr#27970 <https://github.com/ceph/ceph/pull/27970>`_, Chang Liu) -* rgw: Evaluating bucket policies also while reading permissions for an\xe2\x80\xa6 (`issue#38638 <http://tracker.ceph.com/issues/38638>`_, `pr#27309 <https://github.com/ceph/ceph/pull/27309>`_, Pritha Srivastava) -* rgw: examples: rgw: add boto3 append & get usage api extensions (`pr#33063 <https://github.com/ceph/ceph/pull/33063>`_, Abhishek Lekshmanan) -* rgw: Expiration days cant be zero and transition days can be zero (`pr#30878 <https://github.com/ceph/ceph/pull/30878>`_, zhang Shaowen) -* rgw: extend SSE-KMS with Vault using transit secrets engine (`pr#31361 <https://github.com/ceph/ceph/pull/31361>`_, Andrea Baglioni, Sergio de Carvalho) -* rgw: fetch_remote_obj() compares expected object size (`pr#28303 <https://github.com/ceph/ceph/pull/28303>`_, Xiaoxi CHEN, Casey Bodley) -* rgw: find oldest period and update RGWMetadataLogHistory() (`pr#31873 <https://github.com/ceph/ceph/pull/31873>`_, Shilpa Jagannath) -* rgw: fix a bug that bucket instance obj cant be removed after resharding completed (`pr#31483 <https://github.com/ceph/ceph/pull/31483>`_, zhang Shaowen) -* rgw: fix a bug that lifecycle expiraton generates delete marker continuously (`issue#40393 <http://tracker.ceph.com/issues/40393>`_, `pr#28587 <https://github.com/ceph/ceph/pull/28587>`_, zhang Shaowen) -* rgw: fix bucket may redundantly list keys after BI_PREFIX_CHAR (`issue#39984 <http://tracker.ceph.com/issues/39984>`_, `pr#28188 <https://github.com/ceph/ceph/pull/28188>`_, Tianshan Qu) -* rgw: Fix bucket versioning vs. swift metadata bug (`pr#29240 <https://github.com/ceph/ceph/pull/29240>`_, Marcus Watts) -* rgw: Fix bug on subuser policy identity checker (`pr#33398 <https://github.com/ceph/ceph/pull/33398>`_, Seena Fallah) -* rgw: fix bug with (un)ordered bucket listing and marker w/ namespace (`pr#33046 <https://github.com/ceph/ceph/pull/33046>`_, J. Eric Ivancich) -* rgw: fix bugs in listobjectsv1 (`pr#28873 <https://github.com/ceph/ceph/pull/28873>`_, Albin Antony) -* rgw: fix cls_bucket_list_unordered() partial results (`pr#29692 <https://github.com/ceph/ceph/pull/29692>`_, Mark Kogan) -* rgw: fix compile errors with boost 1.70 (`pr#27730 <https://github.com/ceph/ceph/pull/27730>`_, Casey Bodley) -* rgw: fix data consistency error casued by rgw sent timeout (`pr#30257 <https://github.com/ceph/ceph/pull/30257>`_, \xe6\x9d\x8e\xe7\xba\xb2\xe5\xbd\xac82225) -* rgw: fix data sync start delay if remote havent init data_log (`pr#30393 <https://github.com/ceph/ceph/pull/30393>`_, Tianshan Qu) -* rgw: fix default storage class for get_compression_type (`pr#29909 <https://github.com/ceph/ceph/pull/29909>`_, Casey Bodley) -* rgw: fix default_placement containing / when storage_class is standard (`issue#39380 <http://tracker.ceph.com/issues/39380>`_, `pr#27676 <https://github.com/ceph/ceph/pull/27676>`_, mkogan1) -* rgw: fix dns name comparison for virtual hosting (`pr#30221 <https://github.com/ceph/ceph/pull/30221>`_, Casey Bodley) -* rgw: Fix documentation for rgw_ldap_secret (`pr#29816 <https://github.com/ceph/ceph/pull/29816>`_, Robin M\xc3\xbcller) -* rgw: fix drain handles error when deleting bucket with bypass-gc option (`pr#28789 <https://github.com/ceph/ceph/pull/28789>`_, dongdong tao) -* rgw: Fix dynamic resharding not working for empty zonegroup in period (`pr#31977 <https://github.com/ceph/ceph/pull/31977>`_, Or Friedmann) -* rgw: Fix expiration header does not return the earliest rule (`pr#29399 <https://github.com/ceph/ceph/pull/29399>`_, Or Friedmann) -* rgw: fix incorrect radosgw-admin zonegroup rm info (`pr#30319 <https://github.com/ceph/ceph/pull/30319>`_, zhang Shaowen) -* rgw: fix indentation for listobjectsv2 (`pr#28830 <https://github.com/ceph/ceph/pull/28830>`_, Albin Antony) -* rgw: fix list bucket with delimiter wrongly skip some special keys (`issue#40905 <http://tracker.ceph.com/issues/40905>`_, `pr#29215 <https://github.com/ceph/ceph/pull/29215>`_, Tianshan Qu) -* rgw: fix list bucket with start maker and delimiter / will miss next object\xe2\x80\xa6 (`issue#39989 <http://tracker.ceph.com/issues/39989>`_, `pr#28192 <https://github.com/ceph/ceph/pull/28192>`_, Tianshan Qu) -* rgw: fix list versions starts with version_id=null (`pr#29897 <https://github.com/ceph/ceph/pull/29897>`_, Tianshan Qu) -* rgw: fix MalformedXML errors in PutBucketObjectLock/PutObjRetention (`pr#28783 <https://github.com/ceph/ceph/pull/28783>`_, Casey Bodley) -* rgw: fix memory growth while deleting objects with (`pr#30174 <https://github.com/ceph/ceph/pull/30174>`_, Mark Kogan) -* rgw: fix minimum of unordered bucket listing (`pr#30146 <https://github.com/ceph/ceph/pull/30146>`_, J. Eric Ivancich) -* rgw: fix minor compiler warning in keystone auth (`pr#27100 <https://github.com/ceph/ceph/pull/27100>`_, David Disseldorp) -* rgw: fix miss get ret in STSService::storeARN (`issue#40386 <http://tracker.ceph.com/issues/40386>`_, `pr#28527 <https://github.com/ceph/ceph/pull/28527>`_, Tianshan Qu) -* rgw: fix miss handle curl error return (`pr#28345 <https://github.com/ceph/ceph/pull/28345>`_, Casey Bodley, Tianshan Qu) -* rgw: fix missing tenant prefix in bucket name during bucket link (`pr#29815 <https://github.com/ceph/ceph/pull/29815>`_, Shilpa Jagannath) -* rgw: fix multipart uploads error response (`pr#32771 <https://github.com/ceph/ceph/pull/32771>`_, GaryHyg) -* rgw: Fix narrowing conversion error (`pr#28905 <https://github.com/ceph/ceph/pull/28905>`_, Adam C. Emerson) -* rgw: fix one part of the bulk delete(RGWDeleteMultiObj_ObjStore_S3) fails but no error messages (`pr#29795 <https://github.com/ceph/ceph/pull/29795>`_, Snow Si) -* rgw: fix opslog operation field as per Amazon s3 (`issue#20978 <http://tracker.ceph.com/issues/20978>`_, `pr#30539 <https://github.com/ceph/ceph/pull/30539>`_, Jiaying Ren) -* rgw: fix potential realm watch lost (`issue#40991 <http://tracker.ceph.com/issues/40991>`_, `pr#29369 <https://github.com/ceph/ceph/pull/29369>`_, Tianshan Qu) -* rgw: fix read not exists null version return wrong (`issue#38811 <http://tracker.ceph.com/issues/38811>`_, `pr#27047 <https://github.com/ceph/ceph/pull/27047>`_, Tianshan Qu) -* rgw: fix refcount tags to match and update objects idtag (`pr#30013 <https://github.com/ceph/ceph/pull/30013>`_, J. Eric Ivancich) -* rgw: fix REQUEST_URI setting in the rgw_asio_client.cc (`pr#30540 <https://github.com/ceph/ceph/pull/30540>`_, Jiaying Ren) -* rgw: fix rgw crash and set correct error code (`pr#28172 <https://github.com/ceph/ceph/pull/28172>`_, yuliyang) -* rgw: fix rgw crash when duration is invalid in sts request (`pr#32119 <https://github.com/ceph/ceph/pull/32119>`_, yuliyang) -* rgw: fix rgw crash when token is not base64 encode (`pr#31830 <https://github.com/ceph/ceph/pull/31830>`_, yuliyang) -* rgw: fix rgw decompression log-print (`pr#29633 <https://github.com/ceph/ceph/pull/29633>`_, Han Fengzhe) -* rgw: fix rgw lc does not delete objects that do not have exactly the same tags as the rule (`pr#30151 <https://github.com/ceph/ceph/pull/30151>`_, Or Friedmann) -* rgw: fix RGWDeleteMultiObj::verify_permission() (`pr#26947 <https://github.com/ceph/ceph/pull/26947>`_, Irek Fasikhov) -* rgw: fix RGWUserInfo decode current version (`pr#31591 <https://github.com/ceph/ceph/pull/31591>`_, Chang Liu) -* rgw: fix S3 compatibility bug when CORS is not found (`issue#37945 <http://tracker.ceph.com/issues/37945>`_, `pr#25999 <https://github.com/ceph/ceph/pull/25999>`_, Nick Janus) -* rgw: fix sharded bucket listing with prefix/delimiter (`pr#33628 <https://github.com/ceph/ceph/pull/33628>`_, Casey Bodley) -* rgw: fix SignatureDoesNotMatch when use ipv6 address in s3 client (`pr#30778 <https://github.com/ceph/ceph/pull/30778>`_, yuliyang) -* rgw: fix signed char truncation in delimiter check (`pr#27001 <https://github.com/ceph/ceph/pull/27001>`_, Matt Benjamin) -* rgw: fix string_view formatting in RGWFormatter_Plain (`pr#33754 <https://github.com/ceph/ceph/pull/33754>`_, Casey Bodley) -* rgw: fix the bug of rgw not doing necessary checking to website configuration (`issue#40678 <http://tracker.ceph.com/issues/40678>`_, `pr#28904 <https://github.com/ceph/ceph/pull/28904>`_, Enming Zhang) -* rgw: fix unlock of shared lock in RGWCache (`pr#29558 <https://github.com/ceph/ceph/pull/29558>`_, Abhishek Lekshmanan) -* rgw: fix unlock of shared lock in RGWDataChangesLog (`pr#29538 <https://github.com/ceph/ceph/pull/29538>`_, Casey Bodley) -* rgw: Fix upload part copy range able to get almost any string (`pr#32487 <https://github.com/ceph/ceph/pull/32487>`_, Or Friedmann) -* rgw: fix version tracking across bucket link steps (`pr#29851 <https://github.com/ceph/ceph/pull/29851>`_, Matt Benjamin) -* rgw: fixed unrecognized arg error when using radosgw-admin zone rm (`pr#30060 <https://github.com/ceph/ceph/pull/30060>`_, Hongang Chen) -* rgw: Fixes related to omap offload and gc (`pr#33372 <https://github.com/ceph/ceph/pull/33372>`_, Pritha Srivastava) -* rgw: followup for user rename (`pr#29540 <https://github.com/ceph/ceph/pull/29540>`_, Casey Bodley) -* rgw: forwarded some requests to master zone (`pr#28276 <https://github.com/ceph/ceph/pull/28276>`_, Chang Liu) -* rgw: gc remove tag after all sub io finish (`issue#40903 <http://tracker.ceph.com/issues/40903>`_, `pr#29199 <https://github.com/ceph/ceph/pull/29199>`_, Tianshan Qu) -* rgw: get barbican secret key request maybe return error code (`pr#29639 <https://github.com/ceph/ceph/pull/29639>`_, Richard Bai(\xe7\x99\xbd\xe5\xad\xa6\xe4\xbd\x99)) -* rgw: get elastic search info in start_sync, avoid creating new coroutines manager (`pr#32269 <https://github.com/ceph/ceph/pull/32269>`_, Chang Liu) -* rgw: housekeeping of reset stats operation in radosgw-admin and cls back-end (`pr#29515 <https://github.com/ceph/ceph/pull/29515>`_, J. Eric Ivancich) -* rgw: http client drops lock before suspending coroutine (`pr#29553 <https://github.com/ceph/ceph/pull/29553>`_, Casey Bodley) -* rgw: iam: add all http args to req_info (`pr#31124 <https://github.com/ceph/ceph/pull/31124>`_, Abhishek Lekshmanan) -* rgw: iam: use a function to calculate the Action Bit string (`pr#30152 <https://github.com/ceph/ceph/pull/30152>`_, Abhishek Lekshmanan) -* rgw: ignore If-Unmodified-Since if If-Match exists, and ignore If-Modified-Since if If-None-Match exists (`pr#28625 <https://github.com/ceph/ceph/pull/28625>`_, zhang Shaowen) -* rgw: improve beast (`pr#33017 <https://github.com/ceph/ceph/pull/33017>`_, Or Friedmann, Matt Benjamin) -* rgw: improve data sync restart after failure (`pr#30175 <https://github.com/ceph/ceph/pull/30175>`_, Tianshan Qu) -* rgw: improve debugs on the path of RGWRados::cls_bucket_head (`pr#12709 <https://github.com/ceph/ceph/pull/12709>`_, Radoslaw Zarzynski) -* rgw: improvements to SSE-KMS with Vault (`pr#31025 <https://github.com/ceph/ceph/pull/31025>`_, Andrea Baglioni, Sergio de Carvalho) -* rgw: Improving doc for Cross Project(Tenant) access with Openstack Ke\xe2\x80\xa6 (`pr#27507 <https://github.com/ceph/ceph/pull/27507>`_, Pritha Srivastava) -* rgw: incorrect return value when processing CORS headers (`pr#28622 <https://github.com/ceph/ceph/pull/28622>`_, Ilsoo Byun) -* rgw: Incorrectly calling ceph::buffer::list::decode_base64 in bucket policy (`pr#31356 <https://github.com/ceph/ceph/pull/31356>`_, GaryHyg) -* rgw: increase beast parse buffer size to 64k (`pr#29776 <https://github.com/ceph/ceph/pull/29776>`_, Casey Bodley) -* rgw: increase log level for same or older period pull msg (`pr#33527 <https://github.com/ceph/ceph/pull/33527>`_, Ali Maredia) -* rgw: Increase the default number of RGW bucket shards (`pr#32660 <https://github.com/ceph/ceph/pull/32660>`_, Casey Bodley, Mark Nelson) -* rgw: init-radosgw: use ceph-conf to get cluster configuration value (`pr#27538 <https://github.com/ceph/ceph/pull/27538>`_, Daniel Badea) -* rgw: Initialize member variables in rgw_sync.h, rgw_rados.h (`pr#16929 <https://github.com/ceph/ceph/pull/16929>`_, amitkuma) -* rgw: initialize member variables of rgw_log_entry (`pr#32430 <https://github.com/ceph/ceph/pull/32430>`_, Kefu Chai) -* rgw: kill compile warnning in rgw_object_lock.h (`pr#30489 <https://github.com/ceph/ceph/pull/30489>`_, Chang Liu) -* rgw: LC expiration header should present midnight expiration date (`pr#31887 <https://github.com/ceph/ceph/pull/31887>`_, Or Friedmann) -* rgw: lc: check for valid placement target before processing transitions (`pr#28256 <https://github.com/ceph/ceph/pull/28256>`_, Abhishek Lekshmanan) -* rgw: LC: handle resharded buckets (`pr#26564 <https://github.com/ceph/ceph/pull/26564>`_, Abhishek Lekshmanan) -* rgw: ldap auth: S3 auth failure should return InvalidAccessKeyId (`pr#30332 <https://github.com/ceph/ceph/pull/30332>`_, Matt Benjamin) -* rgw: ldap: fix LDAPAuthEngine::init() when uri !empty() (`pr#26911 <https://github.com/ceph/ceph/pull/26911>`_, Matt Benjamin) -* rgw: lifecycle days may be 0 (`pr#26524 <https://github.com/ceph/ceph/pull/26524>`_, Matt Benjamin) -* rgw: lifecycle: alternate solution to prefix_map conflict (`issue#37879 <http://tracker.ceph.com/issues/37879>`_, `pr#26518 <https://github.com/ceph/ceph/pull/26518>`_, Matt Benjamin) -* rgw: limit entries in remove_olh_pending_entries() (`issue#39118 <http://tracker.ceph.com/issues/39118>`_, `pr#27400 <https://github.com/ceph/ceph/pull/27400>`_, Casey Bodley) -* rgw: list buckets: dont return buckets if limit=0 (`pr#32109 <https://github.com/ceph/ceph/pull/32109>`_, Yehuda Sadeh) -* rgw: list_bucket versions return NextVersionIdMarker = null if next_marker.instance is empty (`pr#17591 <https://github.com/ceph/ceph/pull/17591>`_, Shasha Lu) -* rgw: log refactoring for putobj_processor (`pr#26107 <https://github.com/ceph/ceph/pull/26107>`_, Ali Maredia) -* rgw: log refactoring for rgw_rest_s3/swift ops (`pr#27037 <https://github.com/ceph/ceph/pull/27037>`_, Ali Maredia) -* rgw: make dns hostnames matching case insensitive (`issue#40995 <http://tracker.ceph.com/issues/40995>`_, `pr#29380 <https://github.com/ceph/ceph/pull/29380>`_, Abhishek Lekshmanan) -* rgw: make max_connections configurable in beast (`pr#33053 <https://github.com/ceph/ceph/pull/33053>`_, Tiago Pasqualini) -* rgw: Make rgw admin ops api get user info consistent with the command line (`pr#26183 <https://github.com/ceph/ceph/pull/26183>`_, Li Shuhao) -* rgw: make sure modelines are correct for all files (`pr#29742 <https://github.com/ceph/ceph/pull/29742>`_, Daniel Gryniewicz) -* rgw: maybe coredump when reload operator happened (`pr#29733 <https://github.com/ceph/ceph/pull/29733>`_, Richard Bai(\xe7\x99\xbd\xe5\xad\xa6\xe4\xbd\x99)) -* rgw: metadata refactoring (`pr#29118 <https://github.com/ceph/ceph/pull/29118>`_, Casey Bodley, Yehuda Sadeh) -* rgw: mgr/ansible: Change default realm and zonegroup (`pr#29793 <https://github.com/ceph/ceph/pull/29793>`_, Sebastian Wagner) -* rgw: mgr/dashboard: enable/disable MFA Delete on RGW bucket (`pr#31922 <https://github.com/ceph/ceph/pull/31922>`_, Alfonso Mart\xc3\xadnez) -* rgw: mgr/orchestrator: name rgw by client.rgw.$realm.$zone[.$id] (`pr#31890 <https://github.com/ceph/ceph/pull/31890>`_, Sage Weil) -* rgw: mitigate bucket list with max-entries excessively high (`pr#29179 <https://github.com/ceph/ceph/pull/29179>`_, J. Eric Ivancich) -* rgw: move bucket reshard checks out of write path (`pr#29852 <https://github.com/ceph/ceph/pull/29852>`_, Casey Bodley) -* rgw: move delimiter-based bucket listing/filtering logic to cls (`pr#30272 <https://github.com/ceph/ceph/pull/30272>`_, J. Eric Ivancich) -* rgw: move forward marker even in case of many rgw.none indexes (`pr#32513 <https://github.com/ceph/ceph/pull/32513>`_, Ilsoo Byun) -* rgw: Move upload_info declaration out of conditional (`pr#29559 <https://github.com/ceph/ceph/pull/29559>`_, Adam C. Emerson) -* rgw: multipart upload abort is best-effort (`issue#40526 <http://tracker.ceph.com/issues/40526>`_, `pr#28724 <https://github.com/ceph/ceph/pull/28724>`_, J. Eric Ivancich) -* rgw: MultipartObjectProcessor supports stripe size > chunk size (`pr#32996 <https://github.com/ceph/ceph/pull/32996>`_, Casey Bodley) -* rgw: multisite log trimming only checks peers that sync from us (`issue#39283 <http://tracker.ceph.com/issues/39283>`_, `pr#27567 <https://github.com/ceph/ceph/pull/27567>`_, Casey Bodley) -* rgw: nfs: skip empty (non-POSIX) path segments (`issue#38744 <http://tracker.ceph.com/issues/38744>`_, `pr#26954 <https://github.com/ceph/ceph/pull/26954>`_, Matt Benjamin) -* rgw: nfs: svc-enable RGWLi (`pr#26981 <https://github.com/ceph/ceph/pull/26981>`_, Matt Benjamin) -* rgw: normalize v6 endpoint behaviour for the beast frontend (`issue#39038 <http://tracker.ceph.com/issues/39038>`_, `pr#27270 <https://github.com/ceph/ceph/pull/27270>`_, Abhishek Lekshmanan) -* rgw: object expirer fixes (`pr#27870 <https://github.com/ceph/ceph/pull/27870>`_, Abhishek Lekshmanan) -* rgw: Object tags shouldnt work with deletemarker or multipart expiration (`issue#40405 <http://tracker.ceph.com/issues/40405>`_, `pr#28617 <https://github.com/ceph/ceph/pull/28617>`_, zhang Shaowen) -* rgw: one log shard fails shouldnt block other shards process when reshard buckets (`pr#31155 <https://github.com/ceph/ceph/pull/31155>`_, zhangshaowen) -* rgw: One Rados Handle to Rule Them All (`pr#27102 <https://github.com/ceph/ceph/pull/27102>`_, Adam C. Emerson) -* rgw: orphan fixes (`pr#26412 <https://github.com/ceph/ceph/pull/26412>`_, Abhishek Lekshmanan) -* rgw: parse_copy_location defers url-decode (`issue#27217 <http://tracker.ceph.com/issues/27217>`_, `pr#25498 <https://github.com/ceph/ceph/pull/25498>`_, Casey Bodley) -* rgw: perfcounters: add gc retire counter (`pr#26351 <https://github.com/ceph/ceph/pull/26351>`_, Matt Benjamin) -* rgw: permit rgw-admin to populate user info by access-key (`pr#28331 <https://github.com/ceph/ceph/pull/28331>`_, Matt Benjamin) -* rgw: Policy should be url_decode when assume_role (`pr#28704 <https://github.com/ceph/ceph/pull/28704>`_, yuliyang) -* rgw: prefix-delimiter listing: support >1 character delimiter (`pr#26863 <https://github.com/ceph/ceph/pull/26863>`_, Matt Benjamin) -* rgw: prevent bucket reshard scheduling if bucket is resharding (`pr#30610 <https://github.com/ceph/ceph/pull/30610>`_, J. Eric Ivancich) -* rgw: prevent LC from reading stale head when transitioning object (`pr#31214 <https://github.com/ceph/ceph/pull/31214>`_, Ilsoo Byun) -* rgw: project and return lc expiration from GET/HEAD and PUT ops (`pr#26160 <https://github.com/ceph/ceph/pull/26160>`_, Matt Benjamin) -* rgw: Project Zipper - Bucket (`pr#31436 <https://github.com/ceph/ceph/pull/31436>`_, Daniel Gryniewicz) -* rgw: Project Zipper - Bucketlist (`pr#30619 <https://github.com/ceph/ceph/pull/30619>`_, Daniel Gryniewicz) -* rgw: Project Zipper part 1 (`pr#28824 <https://github.com/ceph/ceph/pull/28824>`_, Daniel Gryniewicz) -* rgw: qa/suite/rgw/verify: valgrind on centos again! (`pr#32727 <https://github.com/ceph/ceph/pull/32727>`_, Sage Weil) -* rgw: qa/tasks/s3tests_java: move to gradle 6.0.1 (`pr#32335 <https://github.com/ceph/ceph/pull/32335>`_, Sage Weil) -* rgw: qa/tests: update s3a hadoop versions used for test (`pr#26100 <https://github.com/ceph/ceph/pull/26100>`_, Vasu Kulkarni) -* rgw: qa: remove force-branch from overrides of s3-tests (`pr#32462 <https://github.com/ceph/ceph/pull/32462>`_, Ali Maredia) -* rgw: qa: update s3-test download code for s3-test tasks (`pr#31839 <https://github.com/ceph/ceph/pull/31839>`_, Ali Maredia) -* rgw: queue like an Egyptian(`pr#26461 <https://github.com/ceph/ceph/pull/26461>`_, Adam C. Emerson) -* rgw: race condition between resharding and ops waiting on resharding (`issue#38990 <http://tracker.ceph.com/issues/38990>`_, `pr#27223 <https://github.com/ceph/ceph/pull/27223>`_, J. Eric Ivancich) -* rgw: radosgw-admin flush user stats output (`pr#30669 <https://github.com/ceph/ceph/pull/30669>`_, Abhishek Lekshmanan) -* rgw: radosgw-admin zone placement rm and radosgw-admin zonegroup placement rm support --storage-class (`pr#31239 <https://github.com/ceph/ceph/pull/31239>`_, yuliyang) -* rgw: radosgw-admin: add --uid check in bucket list command (`pr#30194 <https://github.com/ceph/ceph/pull/30194>`_, Vikhyat Umrao) -* rgw: radosgw-admin: bucket sync status not caught up during full sync (`issue#40806 <http://tracker.ceph.com/issues/40806>`_, `pr#29094 <https://github.com/ceph/ceph/pull/29094>`_, Casey Bodley) -* rgw: radosgw-admin: fix syncs_from in bucket sync status (`issue#40022 <http://tracker.ceph.com/issues/40022>`_, `pr#28243 <https://github.com/ceph/ceph/pull/28243>`_, Casey Bodley) -* rgw: radosgw-admin: sync status displays id of shard furthest behind (`pr#32311 <https://github.com/ceph/ceph/pull/32311>`_, Casey Bodley) -* rgw: radosgw-admin: update help for max-concurrent-ios (`pr#30742 <https://github.com/ceph/ceph/pull/30742>`_, Paul Emmerich) -* rgw: reduce per-shard entry count during ordered bucket listing (`pr#30853 <https://github.com/ceph/ceph/pull/30853>`_, J. Eric Ivancich) -* rgw: reject bucket tagging requests and document unsupported (`pr#26952 <https://github.com/ceph/ceph/pull/26952>`_, Casey Bodley) -* rgw: relax es zone validity check (`pr#32290 <https://github.com/ceph/ceph/pull/32290>`_, jiahuizeng) -* rgw: release unused callback argument (`pr#32669 <https://github.com/ceph/ceph/pull/32669>`_, Ilsoo Byun) -* rgw: remove re-defined is_tagging_op in RGWHandler_REST_Bucket_S3 (`pr#29004 <https://github.com/ceph/ceph/pull/29004>`_, zhang Shaowen) -* rgw: remove unused bucket parameter in check_bucket_shards (`pr#31186 <https://github.com/ceph/ceph/pull/31186>`_, zhang Shaowen) -* rgw: remove unused last_run in reshard thread entry (`pr#31150 <https://github.com/ceph/ceph/pull/31150>`_, zhangshaowen) -* rgw: Replace COMPLETE_MULTIPART_MAX_LEN with rgw_max_put_param_size (`issue#38002 <http://tracker.ceph.com/issues/38002>`_, `pr#26070 <https://github.com/ceph/ceph/pull/26070>`_, Lei Liu) -* rgw: replace direct calls to ioctx.operate() (`pr#28569 <https://github.com/ceph/ceph/pull/28569>`_, Ali Maredia) -* rgw: ReplaceKeyPrefixWith and ReplaceKeyWith can not set at the same \xe2\x80\xa6 (`pr#32609 <https://github.com/ceph/ceph/pull/32609>`_, yuliyang) -* rgw: reshard list may return more than specified max_entries (`pr#31355 <https://github.com/ceph/ceph/pull/31355>`_, zhangshaowen) -* rgw: rest client fixes for cloud sync XML outputs (`pr#27680 <https://github.com/ceph/ceph/pull/27680>`_, Abhishek Lekshmanan) -* rgw: return error if lock log shard fails (`pr#31344 <https://github.com/ceph/ceph/pull/31344>`_, zhangshaowen) -* rgw: return ERR_NO_SUCH_BUCKET early while evaluating bucket policy (`issue#38420 <http://tracker.ceph.com/issues/38420>`_, `pr#26569 <https://github.com/ceph/ceph/pull/26569>`_, Abhishek Lekshmanan) -* rgw: rgw : Bucket mv, bucket chown and user rename utilities (`issue#35885 <http://tracker.ceph.com/issues/35885>`_, `issue#24348 <http://tracker.ceph.com/issues/24348>`_, `pr#28813 <https://github.com/ceph/ceph/pull/28813>`_, Shilpa Jagannath, Marcus Watts) -* rgw: rgw admin: add tenant argument to reshard cancel (`pr#26887 <https://github.com/ceph/ceph/pull/26887>`_, Abhishek Lekshmanan) -* rgw: rgw admin: disable stale instance delete in a multiste env (`pr#26852 <https://github.com/ceph/ceph/pull/26852>`_, Abhishek Lekshmanan) -* rgw: rgw multisite: add perf counters to data sync (`issue#38549 <http://tracker.ceph.com/issues/38549>`_, `pr#26722 <https://github.com/ceph/ceph/pull/26722>`_, Casey Bodley) -* rgw: rgw multisite: avoid writing bilog entries on PREPARE and CANCEL (`pr#26755 <https://github.com/ceph/ceph/pull/26755>`_, Casey Bodley) -* rgw: rgw multisite: data sync checks empty next_marker for datalog (`issue#39033 <http://tracker.ceph.com/issues/39033>`_, `pr#27276 <https://github.com/ceph/ceph/pull/27276>`_, Casey Bodley) -* rgw: rgw multisite: enforce spawn window for incremental data sync (`pr#32534 <https://github.com/ceph/ceph/pull/32534>`_, Casey Bodley) -* rgw: rgw multisite: fixes for concurrent version creation (`pr#31325 <https://github.com/ceph/ceph/pull/31325>`_, Casey Bodley) -* rgw: rgw/kafka: add ssl+sasl security to kafka (`pr#31834 <https://github.com/ceph/ceph/pull/31834>`_, Yuval Lifshitz) -* rgw: rgw/multisite: Dont allow certain radosgw-admin commands to run on non-master zone (`issue#39548 <http://tracker.ceph.com/issues/39548>`_, `pr#28861 <https://github.com/ceph/ceph/pull/28861>`_, Shilpa Jagannath) -* rgw: rgw/multisite: warn if bucket chown command is run on non-master zone (`pr#32932 <https://github.com/ceph/ceph/pull/32932>`_, Shilpa Jagannath) -* rgw: rgw/multisite:RGWListBucketIndexesCR for data full sync pagination (`issue#39551 <http://tracker.ceph.com/issues/39551>`_, `pr#28146 <https://github.com/ceph/ceph/pull/28146>`_, Shilpa Jagannath) -* rgw: rgw/notification: add opaque data (`pr#32723 <https://github.com/ceph/ceph/pull/32723>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: add kafka notification endpoint (`pr#30960 <https://github.com/ceph/ceph/pull/30960>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: fix doc on updates. fix multi-notifications (`pr#27931 <https://github.com/ceph/ceph/pull/27931>`_, Yuval Lifshitz, Casey Bodley) -* rgw: rgw/pubsub: fix records/event json format to match documentation (`pr#31926 <https://github.com/ceph/ceph/pull/31926>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: handle subscription conf errors better (`pr#27530 <https://github.com/ceph/ceph/pull/27530>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: notification filtering by object tags (`pr#31878 <https://github.com/ceph/ceph/pull/31878>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: prevent kafka thread from spinning when there are no messages (`pr#31998 <https://github.com/ceph/ceph/pull/31998>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: send notifications from multi-delete op (`pr#32155 <https://github.com/ceph/ceph/pull/32155>`_, Yuval Lifshitz) -* rgw: rgw/pubsub: service reordering issue (`pr#29877 <https://github.com/ceph/ceph/pull/29877>`_, Yuval Lifshitz) -* rgw: rgw/rgw_client_io_filters.h: print size_t the portable way (`pr#28838 <https://github.com/ceph/ceph/pull/28838>`_, Kefu Chai) -* rgw: rgw/rgw_crypt.cc: silence -Wsign-compare GCC warning (`pr#29151 <https://github.com/ceph/ceph/pull/29151>`_, Kefu Chai) -* rgw: rgw/rgw_main: auto set radosgws cpu affinity according to numa_node configuration (`pr#31001 <https://github.com/ceph/ceph/pull/31001>`_, luo rixin) -* rgw: rgw/rgw_op: Remove get_val from hotpath via legacy options (`pr#29943 <https://github.com/ceph/ceph/pull/29943>`_, Mark Nelson) -* rgw: rgw/rgw_rados: set pg_autoscale_bias=4 for omap pools (`pr#27375 <https://github.com/ceph/ceph/pull/27375>`_, Sage Weil, Casey Bodley) -* rgw: rgw/rgw_reshard: Dont dump RGWBucketReshard JSON in process_single_logshard (`pr#29894 <https://github.com/ceph/ceph/pull/29894>`_, Mark Nelson) -* rgw: rgw/rgw_user: add [[maybe_unused]] for silencing -Wunused-variable wa\xe2\x80\xa6 (`pr#30035 <https://github.com/ceph/ceph/pull/30035>`_, Kefu Chai) -* rgw: rgw/services: silence -Wunused-variable warning (`pr#30063 <https://github.com/ceph/ceph/pull/30063>`_, Lan Liu) -* rgw: RGW: add bucket permission verify when copy obj (`pr#29628 <https://github.com/ceph/ceph/pull/29628>`_, NancySu05) -* rgw: RGW: fix an endless loop error when to show usage (`pr#30470 <https://github.com/ceph/ceph/pull/30470>`_, lvshuhua) -* rgw: RGW: Set appropriate bucket quota value (when quota value is less than 0) (`pr#30920 <https://github.com/ceph/ceph/pull/30920>`_, GaryHyg) -* rgw: RGW:Listobjectsv2 (`pr#28102 <https://github.com/ceph/ceph/pull/28102>`_, Albin Antony) -* rgw: RGWCoroutine::call(nullptr) sets retcode=0 (`pr#29856 <https://github.com/ceph/ceph/pull/29856>`_, Casey Bodley) -* rgw: rgwfile reqid: absorbs rgw_file: allocate new id for continued request #25664 (`issue#37734 <http://tracker.ceph.com/issues/37734>`_, `pr#28108 <https://github.com/ceph/ceph/pull/28108>`_, Matt Benjamin, Tao Chen) -* rgw: RGWPeriodPusher uses zone system key for inter-zonegroup messages (`issue#39287 <http://tracker.ceph.com/issues/39287>`_, `pr#27576 <https://github.com/ceph/ceph/pull/27576>`_, Casey Bodley) -* rgw: RGWSI_User_Module filters .buckets objects out of user listing (`pr#29695 <https://github.com/ceph/ceph/pull/29695>`_, Casey Bodley) -* rgw: rgw_file: advance_mtime() should consider namespace expiration (`issue#40415 <http://tracker.ceph.com/issues/40415>`_, `pr#28632 <https://github.com/ceph/ceph/pull/28632>`_, Matt Benjamin) -* rgw: rgw_file: all directories are virtual with respect to contents (`issue#40204 <http://tracker.ceph.com/issues/40204>`_, `pr#28451 <https://github.com/ceph/ceph/pull/28451>`_, Matt Benjamin) -* rgw: rgw_file: avoid string::front() on empty path (`pr#32596 <https://github.com/ceph/ceph/pull/32596>`_, Matt Benjamin) -* rgw: rgw_file: dont deadlock in advance_mtime() (`pr#29560 <https://github.com/ceph/ceph/pull/29560>`_, Matt Benjamin) -* rgw: rgw_file: fix readdir eof() calc--caller stop implies !eof (`issue#40375 <http://tracker.ceph.com/issues/40375>`_, `pr#28565 <https://github.com/ceph/ceph/pull/28565>`_, Matt Benjamin) -* rgw: rgw_file: include tenant when hashing bucket names (`issue#40118 <http://tracker.ceph.com/issues/40118>`_, `pr#28370 <https://github.com/ceph/ceph/pull/28370>`_, Matt Benjamin) -* rgw: rgw_file: introduce fast S3 Unix stats (immutable) (`issue#40456 <http://tracker.ceph.com/issues/40456>`_, `pr#28664 <https://github.com/ceph/ceph/pull/28664>`_, Matt Benjamin) -* rgw: rgw_file: permit lookup_handle to lookup root_fh (`pr#28440 <https://github.com/ceph/ceph/pull/28440>`_, Matt Benjamin) -* rgw: rgw_file: readdir: do not construct markers w/leading / (`pr#29670 <https://github.com/ceph/ceph/pull/29670>`_, Matt Benjamin) -* rgw: rgw_file: save etag and acl info in setattr (`pr#26439 <https://github.com/ceph/ceph/pull/26439>`_, Tao Chen) -* rgw: rgw_lc: use a new bl while encoding RGW_ATTR_LC (`pr#28049 <https://github.com/ceph/ceph/pull/28049>`_, Abhishek Lekshmanan) -* rgw: rgw_sync: drop ENOENT error logs from mdlog (`pr#26908 <https://github.com/ceph/ceph/pull/26908>`_, Abhishek Lekshmanan) -* rgw: s/std::map/boost::container::flat_map/ cls_bucket_list_ordered (`pr#28637 <https://github.com/ceph/ceph/pull/28637>`_, Matt Benjamin) -* rgw: S3 compatible pubsub API (`pr#27091 <https://github.com/ceph/ceph/pull/27091>`_, Yuval Lifshitz) -* rgw: s3: dont require a body in S3 put-object-acl (`pr#31987 <https://github.com/ceph/ceph/pull/31987>`_, Matt Benjamin) -* rgw: save an unnecessary copy of RGWEnv (`pr#28426 <https://github.com/ceph/ceph/pull/28426>`_, Mark Kogan) -* rgw: Select the std::bitset to resolv ambiguity (`pr#31126 <https://github.com/ceph/ceph/pull/31126>`_, Willem Jan Withagen) -* rgw: set bucket attr twice when delete lifecycle config (`pr#30862 <https://github.com/ceph/ceph/pull/30862>`_, zhang Shaowen) -* rgw: set correct storage class for append (`pr#31088 <https://github.com/ceph/ceph/pull/31088>`_, yuliyang) -* rgw: set correct storage class for post object upload (`pr#30956 <https://github.com/ceph/ceph/pull/30956>`_, yuliyang) -* rgw: set null version object acl issues (`issue#36763 <http://tracker.ceph.com/issues/36763>`_, `pr#25044 <https://github.com/ceph/ceph/pull/25044>`_, Tianshan Qu) -* rgw: shard number must be non-negative when resharding the bucket (`pr#29037 <https://github.com/ceph/ceph/pull/29037>`_, zhang Shaowen) -* rgw: silence a -Wunused-function warning in pubsu (`pr#27578 <https://github.com/ceph/ceph/pull/27578>`_, Casey Bodley) -* rgw: Silence warning: control reaches end of non-void function (`issue#40747 <http://tracker.ceph.com/issues/40747>`_, `pr#28809 <https://github.com/ceph/ceph/pull/28809>`_, Jos Collin) -* rgw: split mdlog/datalog trimming into separate files (`pr#27579 <https://github.com/ceph/ceph/pull/27579>`_, Casey Bodley) -* rgw: sts: add all http args to req_info (`pr#31661 <https://github.com/ceph/ceph/pull/31661>`_, yuliyang) -* rgw: support encoding-type param for list bucket multiparts (`pr#30993 <https://github.com/ceph/ceph/pull/30993>`_, Abhishek Lekshmanan) -* rgw: support radosgw-admin zone/zonegroup placement get command (`pr#30880 <https://github.com/ceph/ceph/pull/30880>`_, jiahuizeng) -* rgw: support specify user default placement and placement_tags when create or modify user (`pr#31185 <https://github.com/ceph/ceph/pull/31185>`_, yuliyang) -* rgw: svc.bucket: assign to optional<> using = (`pr#32433 <https://github.com/ceph/ceph/pull/32433>`_, Kefu Chai) -* rgw: swift: bugfix: https://tracker.ceph.com/issues/37765 (`pr#25962 <https://github.com/ceph/ceph/pull/25962>`_, Andrey Groshev) -* rgw: sync counters: drop spaces from counter names (`pr#27725 <https://github.com/ceph/ceph/pull/27725>`_, Abhishek Lekshmanan) -* rgw: sync with elastic search v7 (`pr#29637 <https://github.com/ceph/ceph/pull/29637>`_, Chang Liu) -* rgw: TempURL should not allow PUTs with the X-Object-Manifest (`issue#20797 <http://tracker.ceph.com/issues/20797>`_, `pr#16659 <https://github.com/ceph/ceph/pull/16659>`_, Radoslaw Zarzynski) -* rgw: test/rgw: fix test_rgw_reshard_wait with -DHAVE_BOOST_CONTEXT=OFF (`pr#32811 <https://github.com/ceph/ceph/pull/32811>`_, Yaakov Selkowitz) -* rgw: test: modify iam tests to use a function to set bits (`pr#32808 <https://github.com/ceph/ceph/pull/32808>`_, Abhishek Lekshmanan) -* rgw: tests: Fix building with -DWITH_BOOST_CONTEXT=OFF (`pr#29430 <https://github.com/ceph/ceph/pull/29430>`_, Ulrich Weigand) -* rgw: the http response code of delete bucket should not be 204-no-content (`pr#30471 <https://github.com/ceph/ceph/pull/30471>`_, Chang Liu) -* rgw: Thread optional yield context through get_bucket_info call path (`pr#27898 <https://github.com/ceph/ceph/pull/27898>`_, Ali Maredia) -* rgw: thread option_yield through bucket index transaction prepare (`pr#28152 <https://github.com/ceph/ceph/pull/28152>`_, Ali Maredia) -* rgw: unexpected crash when creating bucket in librgw (`pr#26089 <https://github.com/ceph/ceph/pull/26089>`_, Tao CHEN) -* rgw: update op_mask of user via admin rest api (`issue#39084 <http://tracker.ceph.com/issues/39084>`_, `pr#21154 <https://github.com/ceph/ceph/pull/21154>`_, Ning Yao) -* rgw: update the hash source for multipart entries during resharding (`pr#32617 <https://github.com/ceph/ceph/pull/32617>`_, dongdong tao) -* rgw: update the radosgw-admin reshard status (`issue#37615 <http://tracker.ceph.com/issues/37615>`_, `pr#25496 <https://github.com/ceph/ceph/pull/25496>`_, Mark Kogan) -* rgw: updates to resharding documentation (`issue#39007 <http://tracker.ceph.com/issues/39007>`_, `pr#27250 <https://github.com/ceph/ceph/pull/27250>`_, J. Eric Ivancich) -* rgw: url decode PutUserPolicy params (`pr#29578 <https://github.com/ceph/ceph/pull/29578>`_, Abhishek Lekshmanan) -* rgw: url encode common prefixes for List Objects response (`pr#30970 <https://github.com/ceph/ceph/pull/30970>`_, Abhishek Lekshmanan) -* rgw: usage dump_unsigned instead dump_int (`pr#28308 <https://github.com/ceph/ceph/pull/28308>`_, yuliyang) -* rgw: usage dump_unsigned instead dump_int in dump_usage_categories_info (`pr#25808 <https://github.com/ceph/ceph/pull/25808>`_, yuliyang) -* rgw: use bucket creation time from bucket instance info (`pr#32180 <https://github.com/ceph/ceph/pull/32180>`_, Yehuda Sadeh) -* rgw: use explicit to_string() overload for boost::string_ref (`issue#39611 <http://tracker.ceph.com/issues/39611>`_, `pr#28013 <https://github.com/ceph/ceph/pull/28013>`_, Casey Bodley) -* rgw: use new Stopped state for special handling of bucket sync disable (`pr#33054 <https://github.com/ceph/ceph/pull/33054>`_, Casey Bodley) -* rgw: use STSEngine::authenticate when post upload with x_amz_security_token (`pr#31879 <https://github.com/ceph/ceph/pull/31879>`_, yuliyang) -* rgw: use the compatibilty function for pthread_setname (`pr#27456 <https://github.com/ceph/ceph/pull/27456>`_, Willem Jan Withagen) -* rgw: user policy: forward write requests to master zone (`pr#32476 <https://github.com/ceph/ceph/pull/32476>`_, Abhishek Lekshmanan) -* rgw: vstart: move [client.rgw] config into [client] (`pr#29778 <https://github.com/ceph/ceph/pull/29778>`_, Casey Bodley) -* rgw: vstart: only add --debug-ms=1 in RGWDEBUG (`pr#27409 <https://github.com/ceph/ceph/pull/27409>`_, Casey Bodley) -* rgw: warn on potential insecure mon connection (`pr#33777 <https://github.com/ceph/ceph/pull/33777>`_, Yehuda Sadeh) -* rgw: when resharding store progress json (`pr#30575 <https://github.com/ceph/ceph/pull/30575>`_, Mark Kogan) -* rgw: when you abort a multipart upload request, the quota may be not updated (`pr#29703 <https://github.com/ceph/ceph/pull/29703>`_, Richard Bai(\xe7\x99\xbd\xe5\xad\xa6\xe4\xbd\x99)) -* rgw: Zipper - RGWUser (`pr#32298 <https://github.com/ceph/ceph/pull/32298>`_, Daniel Gryniewicz) -* rgw: [RFC] rgw: raise default rgw_bucket_index_max_aio to 128 (`pr#28558 <https://github.com/ceph/ceph/pull/28558>`_, Casey Bodley) -* rgw: [rgw]:Validate bucket names as per revised s3 spec (`pr#26787 <https://github.com/ceph/ceph/pull/26787>`_, Soumya Koduri) -* seastar,crimson: pickup change to pin socket to fixed core (`pr#32797 <https://github.com/ceph/ceph/pull/32797>`_, Kefu Chai) -* seastar: pick up changes for better performance (`pr#28008 <https://github.com/ceph/ceph/pull/28008>`_, Kefu Chai) -* seastar: pick up latest changes and cleanups (`pr#29942 <https://github.com/ceph/ceph/pull/29942>`_, Kefu Chai) -* seastar: pick up the latest seastar (`pr#28709 <https://github.com/ceph/ceph/pull/28709>`_, Kefu Chai) -* seastar: pickup change to fix cgroups V2 support (`pr#32978 <https://github.com/ceph/ceph/pull/32978>`_, Kefu Chai) -* seastar: pickup the recent future optimizations (`pr#32296 <https://github.com/ceph/ceph/pull/32296>`_, Radoslaw Zarzynski) -* seastar: pickup unix domain socket support (`pr#30578 <https://github.com/ceph/ceph/pull/30578>`_, Kefu Chai) -* src/: silence GCC warnings (`pr#28684 <https://github.com/ceph/ceph/pull/28684>`_, Adam C. Emerson, Kefu Chai) -* src/msg/async/net_handler.cc: Fix compilation (`pr#31637 <https://github.com/ceph/ceph/pull/31637>`_, Carlos Valiente) -* src/script/kubejacker: Fix and simplify (`issue#39065 <http://tracker.ceph.com/issues/39065>`_, `pr#27292 <https://github.com/ceph/ceph/pull/27292>`_, Sebastian Wagner) -* src/script: extract mypy config to mypy.ini (`pr#28264 <https://github.com/ceph/ceph/pull/28264>`_, Alfonso Mart\xc3\xadnez) -* src/telemetry: remove, now lives in ceph-telemetry.git (`pr#31170 <https://github.com/ceph/ceph/pull/31170>`_, Dan Mick) -* src: polish the wording (`pr#33224 <https://github.com/ceph/ceph/pull/33224>`_, Jun Su) -* stop.sh: add --crimson option (`pr#28676 <https://github.com/ceph/ceph/pull/28676>`_, Kefu Chai) -* stop.sh: do not try to contact mon unless cluster is up (`pr#32295 <https://github.com/ceph/ceph/pull/32295>`_, Kefu Chai) -* support RDMA NIC without SRQ in msg/async/rdma (`pr#29947 <https://github.com/ceph/ceph/pull/29947>`_, Changcheng Liu, Roman Penyaev) -* tasks/ceph_deploy: get rid of iteritems for python3 (`pr#30791 <https://github.com/ceph/ceph/pull/30791>`_, Kyr Shatskyy) -* telemetry: make server compensate for older mgr modules, elasticsearch (`pr#27802 <https://github.com/ceph/ceph/pull/27802>`_, Dan Mick) -* test/crimson: fix interpretability with perf_async_msgr (`pr#28913 <https://github.com/ceph/ceph/pull/28913>`_, Yingxin Cheng) -* tests,tools: ceph-objectstore-tool: call collection_bits() crashes on the meta col\xe2\x80\xa6 (`pr#31133 <https://github.com/ceph/ceph/pull/31133>`_, David Zafman) -* tests,tools: ceph-objectstore-tool: set log date format (`pr#29297 <https://github.com/ceph/ceph/pull/29297>`_, Robert Church) -* tests,tools: tools/ceph-dencoder: split types.h into smaller pieces (`issue#39595 <http://tracker.ceph.com/issues/39595>`_, `pr#28359 <https://github.com/ceph/ceph/pull/28359>`_, Kefu Chai) -* tests,tools: tools/setup-virtualenv.sh: do not default to python2.7 (`pr#30379 <https://github.com/ceph/ceph/pull/30379>`_, Nathan Cutler) -* tests: add missing header cmath to test/mon/test_mon_memory_target.cc (`pr#30284 <https://github.com/ceph/ceph/pull/30284>`_, Su Yue) -* tests: ceph-object-corpus: pick up 15.0.0-539-g191ab33faf (`pr#27867 <https://github.com/ceph/ceph/pull/27867>`_, Kefu Chai) -* tests: cls/queue: add unit tests (`pr#33218 <https://github.com/ceph/ceph/pull/33218>`_, Yuval Lifshitz) -* tests: corrected issues with RBD tests under EL8 distros (`pr#32684 <https://github.com/ceph/ceph/pull/32684>`_, Jason Dillaman) -* tests: crimson/net: configure seastar to accept on a fixed core (`pr#32632 <https://github.com/ceph/ceph/pull/32632>`_, Yingxin Cheng) -* tests: crimson/test: add CBT based perf tests (`pr#29612 <https://github.com/ceph/ceph/pull/29612>`_, Kefu Chai) -* tests: crimson/test: v2 failover tests with crimson FailoverTestPeer (`pr#30162 <https://github.com/ceph/ceph/pull/30162>`_, Yingxin Cheng) -* tests: crush, test: update editor variables (`pr#30537 <https://github.com/ceph/ceph/pull/30537>`_, Kefu Chai) -* tests: fio_ceph_messenger: catch up v2 proto changes by using dummy auth (`pr#27264 <https://github.com/ceph/ceph/pull/27264>`_, Roman Penyaev) -* tests: import-generated.sh: use PATH to get ceph-dencoder (`pr#27573 <https://github.com/ceph/ceph/pull/27573>`_, Changcheng Liu) -* tests: introduce compiletest_cxx11_client for C++11 conformity (`pr#25395 <https://github.com/ceph/ceph/pull/25395>`_, Radoslaw Zarzynski) -* tests: lvm/deactivate: add unit tests, remove --all (`pr#32277 <https://github.com/ceph/ceph/pull/32277>`_, Jan Fajerski) -* tests: mgr/dashboard: ability to provide custom credentials for E2E tests (`pr#33549 <https://github.com/ceph/ceph/pull/33549>`_, Alfonso Mart\xc3\xadnez) -* tests: mgr/dashboard: Add linter for unclosed HTML tags (`issue#40686 <http://tracker.ceph.com/issues/40686>`_, `pr#28916 <https://github.com/ceph/ceph/pull/28916>`_, Patrick Nawracay) -* tests: mgr/dashboard: add python-common to $PYTHONPATH (`pr#29525 <https://github.com/ceph/ceph/pull/29525>`_, Kefu Chai) -* tests: mgr/dashboard: Added breadcrumb tests to Manager modules and Alerts menu (`pr#26853 <https://github.com/ceph/ceph/pull/26853>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added breadcrumb tests to NFS menu (`pr#26850 <https://github.com/ceph/ceph/pull/26850>`_, Nathan Weinberg) -* tests: mgr/dashboard: Added breadcrumb tests to Object Gateway menu items (`pr#25451 <https://github.com/ceph/ceph/pull/25451>`_, Nathan Weinberg, Tiago Melo) -* tests: mgr/dashboard: comment failing QA suites out (`pr#30864 <https://github.com/ceph/ceph/pull/30864>`_, Tatjana Dehler) -* tests: mgr/dashboard: disable pylints --py3k flag (`pr#30078 <https://github.com/ceph/ceph/pull/30078>`_, Ernesto Puerta) -* tests: mgr/dashboard: E2E test to verify Configuration editing functionality (`pr#29216 <https://github.com/ceph/ceph/pull/29216>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: Explicitly type page variables (`pr#29324 <https://github.com/ceph/ceph/pull/29324>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: Fix e2e host test (`pr#30377 <https://github.com/ceph/ceph/pull/30377>`_, Tiago Melo) -* tests: mgr/dashboard: fix existing issues in user integration tests (`pr#30789 <https://github.com/ceph/ceph/pull/30789>`_, Tatjana Dehler) -* tests: mgr/dashboard: fix stray requests/error in Grafana unit test (`pr#33572 <https://github.com/ceph/ceph/pull/33572>`_, Patrick Seidensal) -* tests: mgr/dashboard: fix tasks.mgr.dashboard.test_rgw suite (`pr#33426 <https://github.com/ceph/ceph/pull/33426>`_, Alfonso Mart\xc3\xadnez) -* tests: mgr/dashboard: fix tests in order to match pg num conventions (`pr#31906 <https://github.com/ceph/ceph/pull/31906>`_, Tatjana Dehler) -* tests: mgr/dashboard: Improve e2e script (`pr#29101 <https://github.com/ceph/ceph/pull/29101>`_, Valentin Bajrami) -* tests: mgr/dashboard: RBD Image Purge Trash, Move to Trash and Restore (`pr#29673 <https://github.com/ceph/ceph/pull/29673>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: reactivate dashboard test suites (`pr#32005 <https://github.com/ceph/ceph/pull/32005>`_, Tatjana Dehler) -* tests: mgr/dashboard: Reduce code duplication through TableActionComponent UnitTests (`issue#40399 <http://tracker.ceph.com/issues/40399>`_, `pr#28633 <https://github.com/ceph/ceph/pull/28633>`_, Patrick Nawracay) -* tests: mgr/dashboard: restore working directory after creating venv (`pr#32371 <https://github.com/ceph/ceph/pull/32371>`_, Kefu Chai) -* tests: mgr/dashboard: RGW bucket E2E Tests (`pr#28999 <https://github.com/ceph/ceph/pull/28999>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: RGW user E2E Tests (`pr#29237 <https://github.com/ceph/ceph/pull/29237>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: take portal_ip_addresses as a list (`pr#28495 <https://github.com/ceph/ceph/pull/28495>`_, Kefu Chai) -* tests: mgr/dashboard: Update formatting of e2e test files (`pr#29070 <https://github.com/ceph/ceph/pull/29070>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: Updated existing E2E tests to match new format (`pr#27408 <https://github.com/ceph/ceph/pull/27408>`_, Nathan Weinberg) -* tests: mgr/dashboard: Verify fields on Configuration page (`pr#29583 <https://github.com/ceph/ceph/pull/29583>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: Verify fields on OSDs page (`pr#29447 <https://github.com/ceph/ceph/pull/29447>`_, Adam King, Rafael Quintero) -* tests: mgr/dashboard: Wait for iSCSI target put and delete (`pr#30588 <https://github.com/ceph/ceph/pull/30588>`_, Ricardo Marques) -* tests: mgr/dashboard: Write E2E tests for pool creation, deletion and verification (`issue#40693 <http://tracker.ceph.com/issues/40693>`_, `issue#38093 <http://tracker.ceph.com/issues/38093>`_, `pr#28928 <https://github.com/ceph/ceph/pull/28928>`_, Patrick Nawracay) -* tests: mgr/orch: try harder when pickle fails to marshal an exception (`pr#33701 <https://github.com/ceph/ceph/pull/33701>`_, Kefu Chai) -* tests: mgr/ssh: add make check integration (`pr#31523 <https://github.com/ceph/ceph/pull/31523>`_, Sebastian Wagner) -* tests: mgr/tox: make run-tox.sh scripts more robust (`issue#39323 <http://tracker.ceph.com/issues/39323>`_, `pr#27614 <https://github.com/ceph/ceph/pull/27614>`_, Nathan Cutler) -* tests: osd-backfill-space.sh test failed in TEST_backfill_multi_partial() (`issue#39333 <http://tracker.ceph.com/issues/39333>`_, `pr#27769 <https://github.com/ceph/ceph/pull/27769>`_, David Zafman) -* tests: pybind/mgr: apply_drivegroups should return Sequence[Completion] (`pr#33977 <https://github.com/ceph/ceph/pull/33977>`_, Kefu Chai) -* tests: python: pin mypy requirement to mypy==0.770 (`pr#33926 <https://github.com/ceph/ceph/pull/33926>`_, Sebastian Wagner) -* tests: qa.tests: added smoke suite to the schedule on mimic,nautilus (`pr#28479 <https://github.com/ceph/ceph/pull/28479>`_, Yuri Weinstein) -* tests: qa/ceph-ansible: Disable dashboard (`pr#29916 <https://github.com/ceph/ceph/pull/29916>`_, Brad Hubbard) -* tests: qa/ceph-ansible: Move to ansible 2.8 (`issue#40602 <http://tracker.ceph.com/issues/40602>`_, `pr#28803 <https://github.com/ceph/ceph/pull/28803>`_, Brad Hubbard) -* tests: qa/ceph-ansible: Move to Nautilus (`pr#27013 <https://github.com/ceph/ceph/pull/27013>`_, Brad Hubbard) -* tests: qa/ceph-ansible: Replace pgs with pg_num (`issue#40605 <http://tracker.ceph.com/issues/40605>`_, `pr#28807 <https://github.com/ceph/ceph/pull/28807>`_, Brad Hubbard) -* tests: qa/ceph-ansible: Upgrade ansible version (`pr#33379 <https://github.com/ceph/ceph/pull/33379>`_, Brad Hubbard) -* tests: qa/cephadm/smoke: run on opensuse_15.1 (`pr#33338 <https://github.com/ceph/ceph/pull/33338>`_, Nathan Cutler) -* tests: qa/crontab/teuthology-cronjobs: fix suite-branch (`pr#27140 <https://github.com/ceph/ceph/pull/27140>`_, Neha Ojha) -* tests: qa/distros/all: add openSUSE 15.1, drop openSUSE 12.2 (`pr#30597 <https://github.com/ceph/ceph/pull/30597>`_, Nathan Cutler) -* tests: qa/distros: add SLE-12-SP3 and SLE-15-SP1 (`pr#31112 <https://github.com/ceph/ceph/pull/31112>`_, Nathan Cutler) -* tests: qa/orchestrator: do not test mon update 3 host1 (`pr#32023 <https://github.com/ceph/ceph/pull/32023>`_, Sage Weil, Kefu Chai) -* tests: qa/standalone/ceph-helpers: resurrect all OSD before waiting for health (`pr#28328 <https://github.com/ceph/ceph/pull/28328>`_, Kefu Chai) -* tests: qa/standalone/test_ceph_daemon: Fix ceph daemon standalone test (`pr#31440 <https://github.com/ceph/ceph/pull/31440>`_, Thomas Bechtold) -* tests: qa/suites/krbd: fsx with object-map and fast-diff (`pr#32376 <https://github.com/ceph/ceph/pull/32376>`_, Ilya Dryomov) -* tests: qa/suites/rados/cephadm/upgrade: add simple upgrade test (`pr#33343 <https://github.com/ceph/ceph/pull/33343>`_, Sage Weil) -* tests: qa/suites/rados/cephadm: deploy all monitoring components (`pr#33785 <https://github.com/ceph/ceph/pull/33785>`_, Sage Weil) -* tests: qa/suites/rados/perf/objectstore: do not symlink to qa/objectstore (`pr#30309 <https://github.com/ceph/ceph/pull/30309>`_, Neha Ojha) -* tests: qa/suites/rados/perf: test min recommended osd_memory_target (`pr#30347 <https://github.com/ceph/ceph/pull/30347>`_, Neha Ojha) -* tests: qa/suites/rados: whitelist POOL_APP_NOT_ENABLED warning (`pr#29763 <https://github.com/ceph/ceph/pull/29763>`_, Kefu Chai) -* tests: qa/suites/upgrade/nautilus-x/parallel: restart mgr.x before mons (`pr#33705 <https://github.com/ceph/ceph/pull/33705>`_, Neha Ojha) -* tests: qa/suites/upgrade: use correct branch names (`pr#27764 <https://github.com/ceph/ceph/pull/27764>`_, Neha Ojha) -* tests: qa/suites: do not test luminous-x upgrade path (`pr#27112 <https://github.com/ceph/ceph/pull/27112>`_, Kefu Chai) -* tests: qa/tasks/cbt.py: add support for client_endpoints (`pr#28522 <https://github.com/ceph/ceph/pull/28522>`_, Neha Ojha) -* tests: qa/tasks/cbt.py: change port to work with client_endpoints (`pr#28442 <https://github.com/ceph/ceph/pull/28442>`_, Neha Ojha) -* tests: qa/tasks/cbt.py: use git --depth 1 for faster clone (`pr#29597 <https://github.com/ceph/ceph/pull/29597>`_, Kefu Chai) -* tests: qa/tasks/ceph.py: quote <kind> in command line (`pr#33775 <https://github.com/ceph/ceph/pull/33775>`_, Kefu Chai) -* tests: qa/tasks/ceph.py: remove unused variables (`pr#31005 <https://github.com/ceph/ceph/pull/31005>`_, Kefu Chai) -* tests: qa/tasks/ceph2: add support for shell, packaged ceph-daemon (`pr#31891 <https://github.com/ceph/ceph/pull/31891>`_, Sage Weil) -* tests: qa/tasks/cephfs_test_runner: setattr to class not instance (`pr#32571 <https://github.com/ceph/ceph/pull/32571>`_, Kefu Chai) -* tests: qa/tasks/ceph_deploy: assume systemd and simplify shutdown wonkiness (`pr#29030 <https://github.com/ceph/ceph/pull/29030>`_, Sage Weil) -* tests: qa/tasks/ceph_deploy: install python3.6 instead of python3.4 for py3 tests (`pr#27504 <https://github.com/ceph/ceph/pull/27504>`_, Kefu Chai) -* tests: qa/tasks/ceph_manager.py: ignore errors in test_pool_min_size (`issue#40533 <http://tracker.ceph.com/issues/40533>`_, `pr#28731 <https://github.com/ceph/ceph/pull/28731>`_, Kefu Chai) -* tests: qa/tasks/ceph_manager: capture stderr for COT (`pr#33805 <https://github.com/ceph/ceph/pull/33805>`_, Kefu Chai) -* tests: qa/tasks/ceph_manager: do not panic if pg_num_target is missing (`pr#30973 <https://github.com/ceph/ceph/pull/30973>`_, Kefu Chai) -* tests: qa/tasks/ceph_manager: do not pick a pool is there is no pools (`pr#32519 <https://github.com/ceph/ceph/pull/32519>`_, Kefu Chai) -* tests: qa/tasks/mgr/dashboard/test_health: add allow_unknown in mgr_map (`pr#30517 <https://github.com/ceph/ceph/pull/30517>`_, Kefu Chai) -* tests: qa/tasks/mgr/dashboard/test_health: add missing field for test_full_health (`pr#29615 <https://github.com/ceph/ceph/pull/29615>`_, Kefu Chai) -* tests: qa/tasks/mgr/dashboard/test_health: update schema (`pr#32122 <https://github.com/ceph/ceph/pull/32122>`_, Tatjana Dehler) -* tests: qa/tasks/mgr/dashboard/test_mgr_module: sync w/ telemetry (`pr#29461 <https://github.com/ceph/ceph/pull/29461>`_, Kefu Chai) -* tests: qa/tasks/mgr/dashboard: set pg_num to 16 (`pr#32575 <https://github.com/ceph/ceph/pull/32575>`_, Kefu Chai) -* tests: qa/tasks/mgr/test_orchestrator_cli: fix mon update test (`pr#32428 <https://github.com/ceph/ceph/pull/32428>`_, Kefu Chai) -* tests: qa/tasks/mgr/test_orchestrator_cli: fix service action tests (`pr#32518 <https://github.com/ceph/ceph/pull/32518>`_, Kefu Chai) -* tests: qa/tasks/mgr/test_orchestrator_cli: fix test_host_ls (`pr#33477 <https://github.com/ceph/ceph/pull/33477>`_, Sage Weil) -* tests: qa/tasks/mgr/test_progress.py: fix bug in 9b4dbf0 (`pr#29385 <https://github.com/ceph/ceph/pull/29385>`_, Kamoltat (Junior) Sirivadhna) -* tests: qa/tasks/mgr/test_progress.py: s/ev/new_event/ (`issue#40618 <http://tracker.ceph.com/issues/40618>`_, `pr#29368 <https://github.com/ceph/ceph/pull/29368>`_, Kefu Chai) -* tests: qa/tasks/mgr: set mgr module option with --force (`pr#32588 <https://github.com/ceph/ceph/pull/32588>`_, Kefu Chai) -* tests: qa/tasks/vstart_runner: write string to StringIO (`pr#32438 <https://github.com/ceph/ceph/pull/32438>`_, Kefu Chai) -* tests: qa/tasks: call super classs setUp() (`pr#33325 <https://github.com/ceph/ceph/pull/33325>`_, Kefu Chai) -* tests: qa/tasks: py3 compat (tasks exercised by rados suites) (`pr#33709 <https://github.com/ceph/ceph/pull/33709>`_, Kyr Shatskyy, Kefu Chai) -* tests: qa/tasks: use items() for py3 compatibility (`pr#30813 <https://github.com/ceph/ceph/pull/30813>`_, Kyr Shatskyy) -* tests: qa/tests: filtered in only trusty (`issue#40195 <http://tracker.ceph.com/issues/40195>`_, `pr#28439 <https://github.com/ceph/ceph/pull/28439>`_, Yuri Weinstein) -* tests: qa/tests: added mimic-x on master run (`pr#29428 <https://github.com/ceph/ceph/pull/29428>`_, Yuri Weinstein) -* tests: qa/tests: added nautilus-p2p to cron (`pr#27218 <https://github.com/ceph/ceph/pull/27218>`_, Yuri Weinstein) -* tests: qa/tests: added nautilus-x run (`pr#27252 <https://github.com/ceph/ceph/pull/27252>`_, Yuri Weinstein) -* tests: qa/tests: added new client-upgrade-\\*-nautilus suites for jewel, luminous, mimic (`pr#28067 <https://github.com/ceph/ceph/pull/28067>`_, Yuri Weinstein) -* tests: qa/tests: added ragweed coverage to stress-split\\* upgrade suites (`issue#40467 <http://tracker.ceph.com/issues/40467>`_, `issue#40452 <http://tracker.ceph.com/issues/40452>`_, `pr#28931 <https://github.com/ceph/ceph/pull/28931>`_, Yuri Weinstein) -* tests: qa/tests: added ragweed coverage to stress-split\\* upgrade suites (`issue#40467 <http://tracker.ceph.com/issues/40467>`_, `issue#40452 <http://tracker.ceph.com/issues/40452>`_, `pr#28932 <https://github.com/ceph/ceph/pull/28932>`_, Yuri Weinstein) -* tests: qa/tests: added rgw into upgrade sequence to improve coverage (`pr#29406 <https://github.com/ceph/ceph/pull/29406>`_, Yuri Weinstein) -* tests: qa/tests: reduced distro to run to be random (`pr#28435 <https://github.com/ceph/ceph/pull/28435>`_, Yuri Weinstein) -* tests: qa/tests: reduced frequency for luminous and mimic runs (`pr#27057 <https://github.com/ceph/ceph/pull/27057>`_, Yuri Weinstein) -* tests: qa/tests: removed all runs for luminous - EOL (`pr#33186 <https://github.com/ceph/ceph/pull/33186>`_, Yuri Weinstein) -* tests: qa/tests: removed upgrade/client-upgrade-hammer becasue ubuntu 14.04 \xe2\x80\xa6 (`pr#28518 <https://github.com/ceph/ceph/pull/28518>`_, Yuri Weinstein) -* tests: qa/tests: removed `1node` and `systemd` tests as ceph-deploy is not actively developed (`issue#40207 <http://tracker.ceph.com/issues/40207>`_, `issue#40208 <http://tracker.ceph.com/issues/40208>`_, `pr#28455 <https://github.com/ceph/ceph/pull/28455>`_, Yuri Weinstein) -* tests: qa/valgrind.supp: generalize the whiterule for aes-128-gcm to help rgw suite (`issue#38827 <http://tracker.ceph.com/issues/38827>`_, `pr#28305 <https://github.com/ceph/ceph/pull/28305>`_, Radoslaw Zarzynski) -* tests: qa/workunits/cephadm/test_cephadm: drop stray exit 0 (`pr#32622 <https://github.com/ceph/ceph/pull/32622>`_, Sage Weil) -* tests: qa/workunits/cephtool/test.sh: a handful fixes (`pr#31689 <https://github.com/ceph/ceph/pull/31689>`_, Kefu Chai) -* tests: qa/workunits/mon/config.sh: s|bin/ceph|ceph| (`pr#27147 <https://github.com/ceph/ceph/pull/27147>`_, Kefu Chai) -* tests: qa/workunits/rados/test_crash.sh: do not rm coredump (`pr#32883 <https://github.com/ceph/ceph/pull/32883>`_, Kefu Chai) -* tests: qa/workunits/rados/test_envlibrados_for_rocksdb: accomodate rocksdb c\xe2\x80\xa6 (`pr#32143 <https://github.com/ceph/ceph/pull/32143>`_, Kefu Chai) -* tests: qa/workunits/rados/test_envlibrados_for_rocksdb: install newer cmake (`pr#29584 <https://github.com/ceph/ceph/pull/29584>`_, Kefu Chai) -* tests: qa/workunits/rados/test_librados_build.sh: download from current branch (`pr#31693 <https://github.com/ceph/ceph/pull/31693>`_, Kefu Chai) -* tests: qa/workunits/rados/test_librados_build.sh: install build deps (`pr#28484 <https://github.com/ceph/ceph/pull/28484>`_, Kefu Chai) -* tests: qa/workunits/rest: Better detection of rest url (`pr#26604 <https://github.com/ceph/ceph/pull/26604>`_, Brad Hubbard) -* tests: qa: add .qa link (`pr#32363 <https://github.com/ceph/ceph/pull/32363>`_, Patrick Donnelly) -* tests: qa: Add basic mypy support for the qa directory (`pr#32495 <https://github.com/ceph/ceph/pull/32495>`_, Thomas Bechtold) -* tests: qa: add path to device output schema (`pr#32427 <https://github.com/ceph/ceph/pull/32427>`_, Kefu Chai) -* tests: qa: add RHEL 7.7 and use as RHEL7 default (`pr#29908 <https://github.com/ceph/ceph/pull/29908>`_, Patrick Donnelly) -* tests: qa: correct zap disk with ceph-deploy tool (`pr#31312 <https://github.com/ceph/ceph/pull/31312>`_, Changcheng Liu, Alfredo Deza) -* tests: qa: distro helper symlinks (`pr#28371 <https://github.com/ceph/ceph/pull/28371>`_, Patrick Donnelly) -* tests: qa: enable CRB repo for RHEL8 (`pr#32426 <https://github.com/ceph/ceph/pull/32426>`_, Kefu Chai) -* tests: qa: enable dashboard tests to be run with --suite rados/dashboard (`pr#30434 <https://github.com/ceph/ceph/pull/30434>`_, Nathan Cutler) -* tests: qa: Enable flake8 tox and fix failures (`pr#32129 <https://github.com/ceph/ceph/pull/32129>`_, Thomas Bechtold) -* tests: qa: fix all the fsx.sh-invoking yaml files to install dependencies (`pr#33959 <https://github.com/ceph/ceph/pull/33959>`_, Greg Farnum) -* tests: qa: fix lingering ceph-mgr-ssh -> ceph-mgr-cephadm refs (`pr#32250 <https://github.com/ceph/ceph/pull/32250>`_, Sage Weil) -* tests: qa: get rid of iterkeys for py3 compatibility (`pr#30873 <https://github.com/ceph/ceph/pull/30873>`_, Kyr Shatskyy) -* tests: qa: kernel.sh: update for read-only changes (`pr#31773 <https://github.com/ceph/ceph/pull/31773>`_, Ilya Dryomov) -* tests: qa: krbd_exclusive_option.sh: fixup for json.tool ordering change (`pr#32358 <https://github.com/ceph/ceph/pull/32358>`_, Ilya Dryomov) -* tests: qa: krbd_exclusive_option.sh: update for recent kernel changes (`pr#32088 <https://github.com/ceph/ceph/pull/32088>`_, Ilya Dryomov) -* tests: qa: rbd_workunit_suites_fsx: install build dependencies (`pr#33412 <https://github.com/ceph/ceph/pull/33412>`_, Ilya Dryomov) -* tests: qa: run cephadm/smoke on opensuse 15.2 instead of 15.1 (`pr#33535 <https://github.com/ceph/ceph/pull/33535>`_, Nathan Cutler) -* tests: qa: update krbd tests for python3 (`pr#31968 <https://github.com/ceph/ceph/pull/31968>`_, Ilya Dryomov) -* tests: qa: update krbd_blkroset.t and add krbd_get_features.t (`pr#31771 <https://github.com/ceph/ceph/pull/31771>`_, Ilya Dryomov) -* tests: qa: whitelist FS_DEGRADED (`pr#32549 <https://github.com/ceph/ceph/pull/32549>`_, Kefu Chai) -* tests: remove spurious whitespace (`pr#33848 <https://github.com/ceph/ceph/pull/33848>`_, Milind Changire) -* tests: Revert qa/tasks/cbt: include py2 deps on ubuntu for now (`pr#32512 <https://github.com/ceph/ceph/pull/32512>`_, Kefu Chai) -* tests: script/run-cbt.sh: add support for ceph-osd testing (`pr#30811 <https://github.com/ceph/ceph/pull/30811>`_, Radoslaw Zarzynski) -* tests: script/run-cbt.sh: always use python3 (`pr#30321 <https://github.com/ceph/ceph/pull/30321>`_, Kefu Chai) -* tests: script/run-cbt.sh: check option correctly (`pr#30287 <https://github.com/ceph/ceph/pull/30287>`_, Kefu Chai) -* tests: script/run-cbt.sh: set fs.aio-max-nr for seastar (`pr#31667 <https://github.com/ceph/ceph/pull/31667>`_, Kefu Chai) -* tests: script/run_mypy: Support mypy 0.740 (`pr#31192 <https://github.com/ceph/ceph/pull/31192>`_, Sebastian Wagner) -* tests: script/run_tox.sh: do not use python2 if we have python3 (`pr#31751 <https://github.com/ceph/ceph/pull/31751>`_, Kefu Chai) -* tests: selinux: Update the policy for RHEL8 (`pr#28290 <https://github.com/ceph/ceph/pull/28290>`_, Boris Ranto) -* tests: src/test, qa/suites/rados/thrash: add dedup test (`pr#28983 <https://github.com/ceph/ceph/pull/28983>`_, Myoungwon Oh) -* tests: src/test/compressor: Add missing gtest (`pr#33731 <https://github.com/ceph/ceph/pull/33731>`_, Willem Jan Withagen) -* tests: src/test: fix creating two different objects for testing chunked object (`issue#39282 <http://tracker.ceph.com/issues/39282>`_, `pr#27667 <https://github.com/ceph/ceph/pull/27667>`_, Myoungwon Oh) -* tests: src/valgrind.supp: replace with the teuthologys file. Whitelist OpenSSL (`pr#27265 <https://github.com/ceph/ceph/pull/27265>`_, Radoslaw Zarzynski) -* tests: tasks/ceph: drop testdir replacement in skeleton_config (`pr#30829 <https://github.com/ceph/ceph/pull/30829>`_, Kyr Shatskyy) -* tests: tasks/ceph: get rid of iteritems for python3 (`pr#30792 <https://github.com/ceph/ceph/pull/30792>`_, Kyr Shatskyy) -* tests: test/bench_log: add usage function (`pr#31723 <https://github.com/ceph/ceph/pull/31723>`_, Xuqiang Chen) -* tests: test/bufferlist.cc: encode/decode int64_t instead of long (`pr#29881 <https://github.com/ceph/ceph/pull/29881>`_, Alexandre Oliva) -* tests: test/cli/ceph-conf: fix test (`pr#28818 <https://github.com/ceph/ceph/pull/28818>`_, Kefu Chai) -* tests: test/cli: Make the ceph-conf test more liberal (`pr#29405 <https://github.com/ceph/ceph/pull/29405>`_, Willem Jan Withagen) -* tests: test/common/test_util: skip it if /etc/os-release does not exist (`pr#27927 <https://github.com/ceph/ceph/pull/27927>`_, Kefu Chai) -* tests: test/crimson/: use 256M mem and 1 cpu core for each test (`pr#29152 <https://github.com/ceph/ceph/pull/29152>`_, Kefu Chai) -* tests: test/crimson/perf_async_msgr: remove unsued header file (`pr#28707 <https://github.com/ceph/ceph/pull/28707>`_, Jianpeng Ma) -* tests: test/crimson: add acceptable section to tests (`pr#30315 <https://github.com/ceph/ceph/pull/30315>`_, Kefu Chai) -* tests: test/crimson: add unit-test for ceph::net::Socket (`pr#28623 <https://github.com/ceph/ceph/pull/28623>`_, Yingxin Cheng) -* tests: test/crimson: cbt test does rand-reads instead of seq-reads (`pr#30794 <https://github.com/ceph/ceph/pull/30794>`_, Radoslaw Zarzynski) -* tests: test/crimson: fix a compiler error (`pr#27883 <https://github.com/ceph/ceph/pull/27883>`_, Jianpeng Ma) -* tests: test/crimson: fix build of unittest_seastar_monc (`pr#27515 <https://github.com/ceph/ceph/pull/27515>`_, Kefu Chai, Yingxin Cheng) -* tests: test/crimson: fix FTBFS (`pr#28902 <https://github.com/ceph/ceph/pull/28902>`_, Kefu Chai) -* tests: test/crimson: fix msgr test of ref counter racing (`issue#36405 <http://tracker.ceph.com/issues/36405>`_, `pr#28362 <https://github.com/ceph/ceph/pull/28362>`_, Yingxin Cheng) -* tests: test/crimson: implement a remote async TestPeer for crimson msgr tests (`pr#31156 <https://github.com/ceph/ceph/pull/31156>`_, Yingxin Cheng) -* tests: test/crimson: improved perf_crimson_msgr with timer and sampled lat (`pr#28542 <https://github.com/ceph/ceph/pull/28542>`_, Yingxin Cheng) -* tests: test/crimson: include writes in perf_crimson/async_server (`pr#27429 <https://github.com/ceph/ceph/pull/27429>`_, Yingxin Cheng) -* tests: test/crimson: lower the bar for cbt test (`pr#30458 <https://github.com/ceph/ceph/pull/30458>`_, Kefu Chai) -* tests: test/crimson: remove unittest_seastar_socket temporarily (`pr#32720 <https://github.com/ceph/ceph/pull/32720>`_, Kefu Chai) -* tests: test/crimson: update to accomodate Dispatcher changes (`pr#27093 <https://github.com/ceph/ceph/pull/27093>`_, Kefu Chai) -* tests: test/crimson: v2 failover tests with ack/keepalive (`pr#30803 <https://github.com/ceph/ceph/pull/30803>`_, Yingxin Cheng) -* tests: test/crimson: verify msgr v2 behavior with different policies (`pr#30925 <https://github.com/ceph/ceph/pull/30925>`_, Yingxin Cheng) -* tests: test/erasure-code: add exception handling to k & m (`pr#30087 <https://github.com/ceph/ceph/pull/30087>`_, Hang Li) -* tests: test/fio/fio_ceph_messenger: make exec multi client on the same host (`pr#28464 <https://github.com/ceph/ceph/pull/28464>`_, Jianpeng Ma) -* tests: test/fio: fix a compiler error (`pr#27880 <https://github.com/ceph/ceph/pull/27880>`_, Jianpeng Ma) -* tests: test/fio: introduce fio ioengine: fio_ceph_messenger (`pr#24678 <https://github.com/ceph/ceph/pull/24678>`_, Roman Penyaev) -* tests: test/kv_store_bench: Fix double free error (`pr#32439 <https://github.com/ceph/ceph/pull/32439>`_, Xuqiang Chen, luo rixin) -* tests: test/librados: avoid residual crush rule after test case execution (`issue#40970 <http://tracker.ceph.com/issues/40970>`_, `pr#29341 <https://github.com/ceph/ceph/pull/29341>`_, Bingyi Zhang) -* tests: test/librados: free AioCompletion using AioCompletion::release() (`pr#30204 <https://github.com/ceph/ceph/pull/30204>`_, Kefu Chai) -* tests: test/librados: use GTEST_SKIP() to skip test (`pr#32770 <https://github.com/ceph/ceph/pull/32770>`_, Kefu Chai) -* tests: test/msgr: fix ComplexTest fail when using DPDK protocal stack (`pr#31910 <https://github.com/ceph/ceph/pull/31910>`_, Chunsong Feng) -* tests: test/msgr: make ceph_perf_msgr_client/server work (`pr#28842 <https://github.com/ceph/ceph/pull/28842>`_, Jianpeng Ma) -* tests: test/objectstore: silence -Wsign-compare warning (`pr#27750 <https://github.com/ceph/ceph/pull/27750>`_, Kefu Chai) -* tests: test/old: remove stale tests (`pr#29124 <https://github.com/ceph/ceph/pull/29124>`_, Kefu Chai) -* tests: test/pybind/test_ceph_argparse.py: pg_num of pool creation now optional (`pr#30535 <https://github.com/ceph/ceph/pull/30535>`_, xie xingguo) -* tests: test/python: remove stale tests (`pr#29413 <https://github.com/ceph/ceph/pull/29413>`_, Kefu Chai) -* tests: test/TestOSDScrub: fix mktime() error (`pr#33430 <https://github.com/ceph/ceph/pull/33430>`_, luo rixin) -* tests: test/test_socket: fix dispatch_sockets() unexpected exception (`pr#33482 <https://github.com/ceph/ceph/pull/33482>`_, luo rixin) -* tests: test/test_weighted_shuffle: enlarge epsilon (`pr#27181 <https://github.com/ceph/ceph/pull/27181>`_, Kefu Chai) -* tests: test/unittest_bluefs: always remove temp bdev file (`pr#29676 <https://github.com/ceph/ceph/pull/29676>`_, Kefu Chai) -* tests: test/venv: do not hardwire to py2.7 for tox tests (`pr#29761 <https://github.com/ceph/ceph/pull/29761>`_, Willem Jan Withagen) -* tests: test: Add flush_pg_stats to avoid race with getting num_shards_repaired (`pr#33776 <https://github.com/ceph/ceph/pull/33776>`_, David Zafman) -* tests: test: Add `#include <array>` (`pr#27455 <https://github.com/ceph/ceph/pull/27455>`_, Willem Jan Withagen) -* tests: test: Allow fractional milliseconds to make test possible (`pr#30220 <https://github.com/ceph/ceph/pull/30220>`_, David Zafman) -* tests: test: do not include unnecessary includes (`pr#30065 <https://github.com/ceph/ceph/pull/30065>`_, Kefu Chai) -* tests: test: Do not test unicode if boost::spirit >= 1.72 (`pr#32388 <https://github.com/ceph/ceph/pull/32388>`_, Willem Jan Withagen) -* tests: test: Expect being off by up to 2 and make sure all PGs are active+clean (`pr#33566 <https://github.com/ceph/ceph/pull/33566>`_, David Zafman) -* tests: test: Fix failing ceph_objectstore_tool.py test (`pr#33593 <https://github.com/ceph/ceph/pull/33593>`_, David Zafman) -* tests: test: Fix race with osd restart and doing a scru (`pr#32039 <https://github.com/ceph/ceph/pull/32039>`_, David Zafman) -* tests: test: fix unused asserts variable in ceph_test_osd_stale_read.cc (`pr#32789 <https://github.com/ceph/ceph/pull/32789>`_, Radoslaw Zarzynski) -* tests: test: Fix wait_for_state() to wait for a PG to get into a state (`pr#32628 <https://github.com/ceph/ceph/pull/32628>`_, David Zafman) -* tests: test: Ignore OSD_SLOW_PING_TIME\\* if injecting socket failures (`pr#30714 <https://github.com/ceph/ceph/pull/30714>`_, David Zafman) -* tests: test: move bluestore dependent code under WITH_BLUESTORE (`pr#31335 <https://github.com/ceph/ceph/pull/31335>`_, Willem Jan Withagen) -* tests: test: remove Dockerfile for centos7 and add Dockerfile for centos8 (`pr#33452 <https://github.com/ceph/ceph/pull/33452>`_, Kefu Chai) -* tests: test: remove useless ASSERT_XXX macros for rgw test (`pr#30062 <https://github.com/ceph/ceph/pull/30062>`_, Zhi Zhang) -* tests: test: silence warning unused variable nvme (`pr#33650 <https://github.com/ceph/ceph/pull/33650>`_, Jos Collin) -* tests: test: Update pg log test for new trimming behavior (`pr#32945 <https://github.com/ceph/ceph/pull/32945>`_, David Zafman) -* tests: use python3 compatible print (`pr#30758 <https://github.com/ceph/ceph/pull/30758>`_, Kyr Shatskyy) -* tests: vstart.sh: Make sure mkdir succeeds (`pr#30005 <https://github.com/ceph/ceph/pull/30005>`_, Willem Jan Withagen) -* test_alien_echo: update to use crimson:: namespace (`pr#31135 <https://github.com/ceph/ceph/pull/31135>`_, Samuel Just) -* test_cephadm.sh: pass --fsid to shell command (`pr#32389 <https://github.com/ceph/ceph/pull/32389>`_, Sage Weil) -* test_cephadm: use container shell for ceph cmds (`pr#32627 <https://github.com/ceph/ceph/pull/32627>`_, Michael Fritch) -* tools: add maxread in rados listomapkeys (`pr#30637 <https://github.com/ceph/ceph/pull/30637>`_, lvshuhua) -* tools: adding ceph level immutable obj cache daemon (`pr#25545 <https://github.com/ceph/ceph/pull/25545>`_, Yuan Zhou, Dehao Shang) -* tools: backport-create-issue: flush line before overprinting (`pr#31688 <https://github.com/ceph/ceph/pull/31688>`_, Nathan Cutler) -* tools: backport-create-issue: read redmine key from file (`pr#31533 <https://github.com/ceph/ceph/pull/31533>`_, Tiago Melo) -* tools: backport-create-issue: resolve parent if all backports resolved/rejected (`pr#30752 <https://github.com/ceph/ceph/pull/30752>`_, Nathan Cutler) -* tools: backport-create-issue: resolve parent only if parent has backport issues (`pr#31753 <https://github.com/ceph/ceph/pull/31753>`_, Nathan Cutler) -* tools: backport-resolve-issue: narrow regular expression and read key/token from files (`pr#31594 <https://github.com/ceph/ceph/pull/31594>`_, Nathan Cutler) -* tools: backport-resolve-issue: populate tracker_description method (`pr#33105 <https://github.com/ceph/ceph/pull/33105>`_, Nathan Cutler) -* tools: backport-resolve-issue: recognize that Target version is populated and prune duplicate URLs (`pr#31247 <https://github.com/ceph/ceph/pull/31247>`_, Nathan Cutler) -* tools: backport-resolve-issue: resolve multiple backport issues (`pr#30988 <https://github.com/ceph/ceph/pull/30988>`_, Nathan Cutler) -* tools: backport-resolve-issue: use Basic Authentication instead of access_token (`pr#33173 <https://github.com/ceph/ceph/pull/33173>`_, Nathan Cutler) -* tools: build-integration-branch: dont fail on existing branch (`pr#33093 <https://github.com/ceph/ceph/pull/33093>`_, Sage Weil) -* tools: build-integration-branch: take PRs in chronological order (`pr#31132 <https://github.com/ceph/ceph/pull/31132>`_, Nathan Cutler) -* tools: ceph-backport.sh: allow user to specify --fork explicitly (`pr#31734 <https://github.com/ceph/ceph/pull/31734>`_, Nathan Cutler) -* tools: ceph-backport.sh: automate setting of milestone and component label, implement --version option (`pr#30725 <https://github.com/ceph/ceph/pull/30725>`_, Nathan Cutler) -* tools: ceph-backport.sh: cherry-pick individual commits (`pr#30097 <https://github.com/ceph/ceph/pull/30097>`_, Jan Fajerski) -* tools: ceph-backport.sh: fix setup routine (`pr#33456 <https://github.com/ceph/ceph/pull/33456>`_, Nathan Cutler) -* tools: ceph-backport.sh: guess component with --existing-pr (`pr#31419 <https://github.com/ceph/ceph/pull/31419>`_, Nathan Cutler) -* tools: ceph-backport.sh: implement --milestones feature and more-careful vetting (`pr#30879 <https://github.com/ceph/ceph/pull/30879>`_, Nathan Cutler) -* tools: ceph-backport.sh: implement interactive setup routine and new options (`pr#31366 <https://github.com/ceph/ceph/pull/31366>`_, Nathan Cutler) -* tools: ceph-backport.sh: use Basic Authentication instead of access_token (`pr#33182 <https://github.com/ceph/ceph/pull/33182>`_, Nathan Cutler) -* tools: ceph-conf: added --show-config-value to usage (`pr#29981 <https://github.com/ceph/ceph/pull/29981>`_, James McClune) -* tools: ceph-crash: use open(..,r) to read bytes for Python3 (`issue#40781 <http://tracker.ceph.com/issues/40781>`_, `pr#29053 <https://github.com/ceph/ceph/pull/29053>`_, Dan Mick) -* tools: ceph-daemon: ExecStart=/bin/bash script (`pr#31319 <https://github.com/ceph/ceph/pull/31319>`_, Sage Weil) -* tools: ceph-daemon: fix typo in the output_pub_ssh_key argument (`pr#31337 <https://github.com/ceph/ceph/pull/31337>`_, John McGowan) -* tools: ceph-daemon: Fix `ls` cmd for legacy confs (`pr#31329 <https://github.com/ceph/ceph/pull/31329>`_, Michael Fritch) -* tools: ceph-monstore-tool: print out caps when rebuilding monstore (`pr#27340 <https://github.com/ceph/ceph/pull/27340>`_, Kefu Chai) -* tools: ceph-objectstore-tool: return 0 if incmap is sane (`pr#29704 <https://github.com/ceph/ceph/pull/29704>`_, Kefu Chai) -* tools: ceph-objectstore-tool: update-mon-db: do not fail if incmap is missing (`pr#29571 <https://github.com/ceph/ceph/pull/29571>`_, Kefu Chai) -* tools: ceph.in: fix verbose print (`pr#29486 <https://github.com/ceph/ceph/pull/29486>`_, luo.runbing) -* tools: cls: add timeindex types to ceph-dencoder (`pr#27780 <https://github.com/ceph/ceph/pull/27780>`_, Abhishek Lekshmanan) -* tools: github/codeowners: add ceph-volume (`pr#31883 <https://github.com/ceph/ceph/pull/31883>`_, Jan Fajerski) -* tools: github: Add CODEOWNERs for designated code-owner reviews (`pr#29451 <https://github.com/ceph/ceph/pull/29451>`_, Ernesto Puerta) -* tools: no-mon-config switch for ceph-objectstore-tool (`pr#26717 <https://github.com/ceph/ceph/pull/26717>`_, Igor Fedotov) -* tools: pin the version of breathe that works with Python2 (`pr#27721 <https://github.com/ceph/ceph/pull/27721>`_, Alfredo Deza) -* tools: script/backport-create-issue: add --resolve-parent feature (`pr#29904 <https://github.com/ceph/ceph/pull/29904>`_, Nathan Cutler) -* tools: script/backport-create-issue: handle long Redmine issue names (`pr#27887 <https://github.com/ceph/ceph/pull/27887>`_, Nathan Cutler) -* tools: script/backport-resolve-issue: better error message (`pr#30187 <https://github.com/ceph/ceph/pull/30187>`_, Nathan Cutler) -* tools: script/backport-resolve-issue: handle tracker URLs better (`pr#29950 <https://github.com/ceph/ceph/pull/29950>`_, Nathan Cutler) -* tools: script/ceph-backport-sh: add access_token parameter to all ghub api c\xe2\x80\xa6 (`pr#29261 <https://github.com/ceph/ceph/pull/29261>`_, Jan Fajerski) -* tools: script/ceph-backport.sh: Add prepare function (`pr#28446 <https://github.com/ceph/ceph/pull/28446>`_, Tiago Melo) -* tools: script/ceph-backport.sh: Allow to set component label (`pr#29318 <https://github.com/ceph/ceph/pull/29318>`_, Tiago Melo) -* tools: script/ceph-backport.sh: allow user to specify remote repo (`pr#27233 <https://github.com/ceph/ceph/pull/27233>`_, Kefu Chai) -* tools: script/ceph-backport.sh: carry https through to logical conclusion (`pr#29743 <https://github.com/ceph/ceph/pull/29743>`_, Nathan Cutler) -* tools: script/ceph-backport.sh: Fix verification of git repository (`pr#30398 <https://github.com/ceph/ceph/pull/30398>`_, Tiago Melo) -* tools: script/ceph-backport.sh: make the script idempotent (`pr#30106 <https://github.com/ceph/ceph/pull/30106>`_, Nathan Cutler) -* tools: script/ceph-backport.sh: Use secure access for tracker.ceph.com (`pr#29438 <https://github.com/ceph/ceph/pull/29438>`_, Willem Jan Withagen) -* tools: script/ceph-backport.sh: wholesale refactor (`pr#29957 <https://github.com/ceph/ceph/pull/29957>`_, Nathan Cutler) -* tools: script/ceph-release-notes: alternate merge commit format (`pr#27281 <https://github.com/ceph/ceph/pull/27281>`_, Nathan Cutler) -* tools: script/ptl-tool: update for python3 (`pr#29095 <https://github.com/ceph/ceph/pull/29095>`_, Patrick Donnelly) -* tools: script/run_mypy: Sort groups (`pr#28225 <https://github.com/ceph/ceph/pull/28225>`_, Sebastian Wagner) -* tools: script/run_tox.sh: remove unused code (`pr#30386 <https://github.com/ceph/ceph/pull/30386>`_, Kefu Chai) -* tools: script/sepia_bt.sh: remove stale script (`pr#29129 <https://github.com/ceph/ceph/pull/29129>`_, Kefu Chai) -* tools: script: add backport-resolve-issue (`pr#29797 <https://github.com/ceph/ceph/pull/29797>`_, Nathan Cutler) -* tools: script: enable nautilus in backport scripts (`pr#26973 <https://github.com/ceph/ceph/pull/26973>`_, Nathan Cutler) -* tools: script: Obtain milestones via github API (`pr#27221 <https://github.com/ceph/ceph/pull/27221>`_, Lenz Grimmer) -* tools: script: raw_input was renamed to input in py3 (`pr#30346 <https://github.com/ceph/ceph/pull/30346>`_, Patrick Donnelly) -* tools: scripts/kubejacker: Fix mgr_plugins target for centos (`pr#28078 <https://github.com/ceph/ceph/pull/28078>`_, Sebastian Wagner) -* tools: scripts/run_mypy: add .gitignore (`pr#27118 <https://github.com/ceph/ceph/pull/27118>`_, Sebastian Wagner) -* tools: scripts: use https url for redmine (`pr#29536 <https://github.com/ceph/ceph/pull/29536>`_, Patrick Donnelly) -* tools: src/script/backport-create-issue: implement --force option (`pr#30571 <https://github.com/ceph/ceph/pull/30571>`_, Nathan Cutler) -* tools: src/script/check_commands.sh: fix grep regex class range (`pr#29161 <https://github.com/ceph/ceph/pull/29161>`_, Valentin Bajrami) -* tools: src/script/unhexdump-C: script to reverse a hexdump -C style hexdump (`pr#29098 <https://github.com/ceph/ceph/pull/29098>`_, Sage Weil) -* tools: stop.sh: use bash shell to solve syntax error (`pr#32263 <https://github.com/ceph/ceph/pull/32263>`_, luo rixin) -* tools: tool/ceph-conf: s/global_pre_init()/global_init()/ (`issue#7849 <http://tracker.ceph.com/issues/7849>`_, `pr#29058 <https://github.com/ceph/ceph/pull/29058>`_, Kefu Chai) -* tools: tool: ceph_monstore_tool: --readable=0 => --readable (`pr#32265 <https://github.com/ceph/ceph/pull/32265>`_, simon gao) -* tools: tools/ceph-kvstore-tool: print db stats (`pr#27162 <https://github.com/ceph/ceph/pull/27162>`_, Igor Fedotov) -* tools: tools/osdmaptool.cc: do not use deprecated std::random_shuffle() (`pr#31990 <https://github.com/ceph/ceph/pull/31990>`_, Kefu Chai) -* tools: tools/rados: update advisory lock break usage with --lock-cookie required (`pr#31348 <https://github.com/ceph/ceph/pull/31348>`_, Zhi Zhang) -* tools: vstart.sh: fix CEPH_PORT check and cleanups (`pr#26782 <https://github.com/ceph/ceph/pull/26782>`_, Changcheng Liu, Kefu Chai) -* tools: vstart: add --inc-osd option (`pr#30512 <https://github.com/ceph/ceph/pull/30512>`_, xie xingguo) -* tools: vstart: add new option to pass list of block devices to bluestore (`pr#27518 <https://github.com/ceph/ceph/pull/27518>`_, Jeff Layton) -* tools: vstart: fix error when getting CMake variables with the same prefix (`pr#31962 <https://github.com/ceph/ceph/pull/31962>`_, Kiefer Chang) -* tools: vstart: fix run() invocation for rgw (`pr#28386 <https://github.com/ceph/ceph/pull/28386>`_, Casey Bodley) -* Update grafana dashboards (`issue#39652 <http://tracker.ceph.com/issues/39652>`_, `pr#28043 <https://github.com/ceph/ceph/pull/28043>`_, Jan Fajerski) -* vstart.sh: add an option to use crimson-osd (`pr#27108 <https://github.com/ceph/ceph/pull/27108>`_, chunmei Liu, Kefu Chai) -* vstart.sh: correct ceph-run path (`pr#27968 <https://github.com/ceph/ceph/pull/27968>`_, Changcheng Liu) -* vstart.sh: fix install of cephadm ssh keys from ~/.ssh (`pr#33647 <https://github.com/ceph/ceph/pull/33647>`_, Sage Weil) -* vstart.sh: Fix problem that all extra_conf got merged into single line (`pr#28586 <https://github.com/ceph/ceph/pull/28586>`_, Adam Kupczyk) -* vstart.sh: move extra_seastar_args up in vstart.sh (`pr#32366 <https://github.com/ceph/ceph/pull/32366>`_, Chunmei Liu) -* vstart.sh: unify the indent (`pr#27995 <https://github.com/ceph/ceph/pull/27995>`_, Kefu Chai, Richael Zhuang) -* vstart_runner: split unicode arguments into lists (`pr#28561 <https://github.com/ceph/ceph/pull/28561>`_, Rishabh Dave) - -.. _announcement: https://lists.fedoraproject.org/archives/list/epel-announce@lists.fedoraproject.org/message/EGUMKAIMPK2UD5VSHXM53BH2MBDGDWMO/ -.. _Bucket Notifications: ../../radosgw/notifications -.. _HashiCorp Vault Integration: ../../radosgw/vault -.. _Multisite Sync Policy: ../../radosgw/multisite-sync-policy diff --git a/doc/releases/pacific.rst b/doc/releases/pacific.rst deleted file mode 100644 index c360ef87d..000000000 --- a/doc/releases/pacific.rst +++ /dev/null @@ -1,2381 +0,0 @@ -======= -Pacific -======= - -v16.2.11 Pacific -================ - -This is the eleventh backport release in the Pacific series. - -Notable Changes ---------------- - -* Cephfs: The 'AT_NO_ATTR_SYNC' macro is deprecated, please use the standard - 'AT_STATX_DONT_SYNC' macro. The 'AT_NO_ATTR_SYNC' macro will be removed in - the future. - -* Trimming of PGLog dups is now controlled by the size instead of the version. - This fixes the PGLog inflation issue that was happening when the on-line - (in OSD) trimming got jammed after a PG split operation. Also, a new off-line - mechanism has been added: `ceph-objectstore-tool` got `trim-pg-log-dups` op - that targets situations where OSD is unable to boot due to those inflated dups. - If that is the case, in OSD logs the "You can be hit by THE DUPS BUG" warning - will be visible. - Relevant tracker: https://tracker.ceph.com/issues/53729 - -* RBD: `rbd device unmap` command gained `--namespace` option. Support for - namespaces was added to RBD in Nautilus 14.2.0 and it has been possible to - map and unmap images in namespaces using the `image-spec` syntax since then - but the corresponding option available in most other commands was missing. - -Changelog ---------- - -* .github/CODEOWNERS: tag core devs on core PRs (`pr#46520 <https://github.com/ceph/ceph/pull/46520>`_, Neha Ojha) -* .github: continue on error and reorder milestone step (`pr#46448 <https://github.com/ceph/ceph/pull/46448>`_, Ernesto Puerta) -* .readthedocs.yml: Always build latest doc/releases pages (`pr#47443 <https://github.com/ceph/ceph/pull/47443>`_, David Galloway) -* mgr/alerts: Add Message-Id and Date header to sent emails (`pr#46312 <https://github.com/ceph/ceph/pull/46312>`_, Lorenz Bausch) -* Add mapping for ernno:13 and adding path in error msg in opendir()/cephfs.pyx (`pr#46646 <https://github.com/ceph/ceph/pull/46646>`_, Sarthak0702) -* backport of cephadm: fix osd adoption with custom cluster name (`pr#46552 <https://github.com/ceph/ceph/pull/46552>`_, Adam King) -* bluestore: Improve deferred write decision (`pr#49170 <https://github.com/ceph/ceph/pull/49170>`_, Adam Kupczyk, Igor Fedotov) -* Catch exception if thrown by __generate_command_map() (`pr#45893 <https://github.com/ceph/ceph/pull/45893>`_, Nikhil Kshirsagar) -* ceph-fuse: add dedicated snap stag map for each directory (`pr#46949 <https://github.com/ceph/ceph/pull/46949>`_, Xiubo Li) -* ceph-mixin: backport of recent cleanups (`pr#46549 <https://github.com/ceph/ceph/pull/46549>`_, Arthur Outhenin-Chalandre) -* ceph mixin: backports (`pr#47868 <https://github.com/ceph/ceph/pull/47868>`_, Aswin Toni, Kefu Chai, Anthony D'Atri) -* ceph-volume/tests: fix lvm centos8-filestore-create job (`pr#48123 <https://github.com/ceph/ceph/pull/48123>`_, Guillaume Abrioux) -* ceph-volume: add a retry in util.disk.remove_partition (`pr#47990 <https://github.com/ceph/ceph/pull/47990>`_, Guillaume Abrioux) -* ceph-volume: allow listing devices by OSD ID (`pr#47018 <https://github.com/ceph/ceph/pull/47018>`_, Rishabh Dave) -* ceph-volume: avoid unnecessary subprocess calls (`pr#46969 <https://github.com/ceph/ceph/pull/46969>`_, Guillaume Abrioux) -* ceph-volume: decrease number of `pvs` calls in `lvm list` (`pr#46967 <https://github.com/ceph/ceph/pull/46967>`_, Guillaume Abrioux) -* ceph-volume: do not log sensitive details (`pr#46729 <https://github.com/ceph/ceph/pull/46729>`_, Guillaume Abrioux) -* ceph-volume: fix activate (`pr#46511 <https://github.com/ceph/ceph/pull/46511>`_, Guillaume Abrioux, Sage Weil) -* ceph-volume: fix inventory with device arg (`pr#48126 <https://github.com/ceph/ceph/pull/48126>`_, Guillaume Abrioux) -* ceph-volume: make is_valid() optional (`pr#46731 <https://github.com/ceph/ceph/pull/46731>`_, Guillaume Abrioux) -* ceph-volume: only warn when config file isn't found (`pr#46069 <https://github.com/ceph/ceph/pull/46069>`_, Guillaume Abrioux) -* ceph-volume: Pacific backports (`pr#47413 <https://github.com/ceph/ceph/pull/47413>`_, Guillaume Abrioux, Zack Cerza, Arthur Outhenin-Chalandre) -* ceph-volume: system.get_mounts() refactor (`pr#47535 <https://github.com/ceph/ceph/pull/47535>`_, Guillaume Abrioux) -* ceph-volume: zap osds in rollback_osd() (`pr#44769 <https://github.com/ceph/ceph/pull/44769>`_, Guillaume Abrioux) -* ceph.spec.in: disable annobin plugin if compile with gcc-toolset (`pr#46368 <https://github.com/ceph/ceph/pull/46368>`_, Kefu Chai) -* ceph.spec.in: remove build directory at end of %install (`pr#45698 <https://github.com/ceph/ceph/pull/45698>`_, Tim Serong) -* ceph_test_librados_service: wait longer for servicemap to update (`pr#46677 <https://github.com/ceph/ceph/pull/46677>`_, Sage Weil) -* cephadm batch backport May (`pr#46327 <https://github.com/ceph/ceph/pull/46327>`_, Adam King, Redouane Kachach, Moritz Röhrich) -* cephadm/ceph-volume: fix rm-cluster --zap (`pr#47627 <https://github.com/ceph/ceph/pull/47627>`_, Guillaume Abrioux) -* cephadm: add "su root root" to cephadm.log logrotate config (`pr#47319 <https://github.com/ceph/ceph/pull/47319>`_, Adam King) -* cephadm: add 'is_paused' field in orch status output (`pr#46570 <https://github.com/ceph/ceph/pull/46570>`_, Guillaume Abrioux) -* cephadm: add `ip_nonlocal_bind` to haproxy deployment (`pr#48212 <https://github.com/ceph/ceph/pull/48212>`_, Michael Fritch) -* Cephadm: Allow multiple virtual IP addresses for keepalived and haproxy (`pr#47611 <https://github.com/ceph/ceph/pull/47611>`_, Luis Domingues) -* cephadm: consider stdout to get container version (`pr#48210 <https://github.com/ceph/ceph/pull/48210>`_, Tatjana Dehler) -* cephadm: Fix disk size calculation (`pr#48098 <https://github.com/ceph/ceph/pull/48098>`_, Paul Cuzner) -* cephadm: Fix repo_gpgkey should return 2 vars (`pr#47376 <https://github.com/ceph/ceph/pull/47376>`_, Laurent Barbe) -* cephadm: improve network handling during bootstrap (`pr#46309 <https://github.com/ceph/ceph/pull/46309>`_, Redouane Kachach) -* cephadm: pin flake8 to 5.0.4 (`pr#49058 <https://github.com/ceph/ceph/pull/49058>`_, Kefu Chai) -* cephadm: preserve cephadm user during RPM upgrade (`pr#46553 <https://github.com/ceph/ceph/pull/46553>`_, Scott Shambarger) -* cephadm: prometheus: The generatorURL in alerts is only using hostname (`pr#46352 <https://github.com/ceph/ceph/pull/46352>`_, Volker Theile) -* cephadm: return nonzero exit code when applying spec fails in bootstrap (`pr#48102 <https://github.com/ceph/ceph/pull/48102>`_, Adam King) -* cephadm: run tests as root (`pr#48470 <https://github.com/ceph/ceph/pull/48470>`_, Kefu Chai) -* cephadm: support for Oracle Linux 8 (`pr#47661 <https://github.com/ceph/ceph/pull/47661>`_, Adam King) -* cephadm: support quotes around public/cluster network in config passed to bootstrap (`pr#47664 <https://github.com/ceph/ceph/pull/47664>`_, Adam King) -* cephfs-data-scan: make scan_links more verbose (`pr#48443 <https://github.com/ceph/ceph/pull/48443>`_, Mykola Golub) -* cephfs-shell: fix put and get cmd (`pr#46297 <https://github.com/ceph/ceph/pull/46297>`_, Dhairya Parmar, dparmar18) -* cephfs-shell: move source to separate subdirectory (`pr#47401 <https://github.com/ceph/ceph/pull/47401>`_, Tim Serong) -* cephfs-top: adding filesystem menu option (`pr#47998 <https://github.com/ceph/ceph/pull/47998>`_, Neeraj Pratap Singh) -* cephfs-top: display average read/write/metadata latency (`issue#48619 <http://tracker.ceph.com/issues/48619>`_, `pr#47978 <https://github.com/ceph/ceph/pull/47978>`_, Venky Shankar) -* cephfs-top: fix the rsp/wsp display (`pr#47647 <https://github.com/ceph/ceph/pull/47647>`_, Jos Collin) -* cephfs-top: make cephfs-top display scrollable (`pr#48734 <https://github.com/ceph/ceph/pull/48734>`_, Jos Collin) -* cephfs-top: Multiple filesystem support (`pr#46146 <https://github.com/ceph/ceph/pull/46146>`_, Neeraj Pratap Singh) -* client: always return ESTALE directly in handle_reply (`pr#46557 <https://github.com/ceph/ceph/pull/46557>`_, Xiubo Li) -* client: stop forwarding the request when exceeding 256 times (`pr#46179 <https://github.com/ceph/ceph/pull/46179>`_, Xiubo Li) -* client: switch AT_NO_ATTR_SYNC to AT_STATX_DONT_SYNC (`pr#46679 <https://github.com/ceph/ceph/pull/46679>`_, Xiubo Li) -* client/fuse: Fix directory DACs overriding for root (`pr#46596 <https://github.com/ceph/ceph/pull/46596>`_, Kotresh HR) -* client: abort the client if we couldn't invalidate dentry caches (`pr#48109 <https://github.com/ceph/ceph/pull/48109>`_, Xiubo Li) -* client: add option to disable collecting and sending metrics (`pr#46798 <https://github.com/ceph/ceph/pull/46798>`_, Xiubo Li) -* client: allow overwrites to file with size greater than the max_file_size (`pr#47972 <https://github.com/ceph/ceph/pull/47972>`_, Tamar Shacked) -* client: buffer the truncate if we have the Fx caps (`pr#45792 <https://github.com/ceph/ceph/pull/45792>`_, Xiubo Li) -* client: choose auth MDS for getxattr with the Xs caps (`pr#46799 <https://github.com/ceph/ceph/pull/46799>`_, Xiubo Li) -* client: do not uninline data for read (`pr#48133 <https://github.com/ceph/ceph/pull/48133>`_, Xiubo Li) -* client: fix incorrectly showing the .snap size for stat (`pr#48413 <https://github.com/ceph/ceph/pull/48413>`_, Xiubo Li) -* client: Inode::hold_caps_until is time from monotonic clock now (`pr#46626 <https://github.com/ceph/ceph/pull/46626>`_, Laura Flores, Neeraj Pratap Singh) -* client: stop the remount_finisher thread in the Client::unmount() (`pr#48108 <https://github.com/ceph/ceph/pull/48108>`_, Xiubo Li) -* client: use parent directory POSIX ACLs for snapshot dir (`issue#57084 <http://tracker.ceph.com/issues/57084>`_, `pr#48553 <https://github.com/ceph/ceph/pull/48553>`_, Venky Shankar) -* cls/rbd: update last_read in group::snap_list (`pr#49195 <https://github.com/ceph/ceph/pull/49195>`_, Ilya Dryomov, Prasanna Kumar Kalever) -* cls/rgw: rgw_dir_suggest_changes detects race with completion (`pr#45900 <https://github.com/ceph/ceph/pull/45900>`_, Casey Bodley) -* cmake: check for python(\d)\.(\d+) when building boost (`pr#46365 <https://github.com/ceph/ceph/pull/46365>`_, Kefu Chai) -* cmake: remove spaces in macro used for compiling cython code (`pr#47484 <https://github.com/ceph/ceph/pull/47484>`_, Kefu Chai) -* CODEOWNERS: add RBD team (`pr#46541 <https://github.com/ceph/ceph/pull/46541>`_, Ilya Dryomov) -* common: use boost::shared_mutex on Windows (`pr#47492 <https://github.com/ceph/ceph/pull/47492>`_, Lucian Petrut) -* crash: pthread_mutex_lock() (`pr#47684 <https://github.com/ceph/ceph/pull/47684>`_, Patrick Donnelly) -* doc/cephadm: add prompts to host-management.rst (`pr#48590 <https://github.com/ceph/ceph/pull/48590>`_, Zac Dover) -* doc/rados: add prompts to placement-groups.rst (`pr#49272 <https://github.com/ceph/ceph/pull/49272>`_, Zac Dover) -* doc: Wip pr 46109 backport to pacific (`pr#46117 <https://github.com/ceph/ceph/pull/46117>`_, Ville Ojamo) -* doc: Wip min hardware typo pacific backport 2022 05 19 (`pr#46347 <https://github.com/ceph/ceph/pull/46347>`_, Zac Dover) -* doc/_static: add scroll-margin-top to custom.css (`pr#49645 <https://github.com/ceph/ceph/pull/49645>`_, Zac Dover) -* doc/architecture: correct PDF link (`pr#48796 <https://github.com/ceph/ceph/pull/48796>`_, Zac Dover) -* doc/ceph-volume: add A. D'Atri's suggestions (`pr#48646 <https://github.com/ceph/ceph/pull/48646>`_, Zac Dover) -* doc/ceph-volume: improve prepare.rst (`pr#48669 <https://github.com/ceph/ceph/pull/48669>`_, Zac Dover) -* doc/ceph-volume: refine "bluestore" section (`pr#48635 <https://github.com/ceph/ceph/pull/48635>`_, Zac Dover) -* doc/ceph-volume: refine "filestore" section (`pr#48637 <https://github.com/ceph/ceph/pull/48637>`_, Zac Dover) -* doc/ceph-volume: refine "prepare" top matter (`pr#48652 <https://github.com/ceph/ceph/pull/48652>`_, Zac Dover) -* doc/ceph-volume: refine Filestore docs (`pr#48671 <https://github.com/ceph/ceph/pull/48671>`_, Zac Dover) -* doc/cephadm/services: fix example for specifying rgw placement (`pr#47948 <https://github.com/ceph/ceph/pull/47948>`_, Redouane Kachach) -* doc/cephadm/services: the config section of service specs (`pr#47321 <https://github.com/ceph/ceph/pull/47321>`_, Redouane Kachach) -* doc/cephadm: add airgapped install procedure (`pr#49146 <https://github.com/ceph/ceph/pull/49146>`_, Zac Dover) -* doc/cephadm: add note about OSDs being recreated to OSD removal section (`pr#47103 <https://github.com/ceph/ceph/pull/47103>`_, Adam King) -* doc/cephadm: Add post-upgrade section (`pr#46977 <https://github.com/ceph/ceph/pull/46977>`_, Redouane Kachach) -* doc/cephadm: alphabetize external tools list (`pr#48726 <https://github.com/ceph/ceph/pull/48726>`_, Zac Dover) -* doc/cephadm: arrange "listing hosts" section (`pr#48724 <https://github.com/ceph/ceph/pull/48724>`_, Zac Dover) -* doc/cephadm: clean colons in host-management.rst (`pr#48604 <https://github.com/ceph/ceph/pull/48604>`_, Zac Dover) -* doc/cephadm: correct version staggered upgrade got in pacific (`pr#48056 <https://github.com/ceph/ceph/pull/48056>`_, Adam King) -* doc/cephadm: document recommended syntax for mounting files with ECA (`pr#48069 <https://github.com/ceph/ceph/pull/48069>`_, Adam King) -* doc/cephadm: enhancing daemon operations documentation (`pr#46976 <https://github.com/ceph/ceph/pull/46976>`_, Redouane Kachach) -* doc/cephadm: fix example for specifying networks for rgw (`pr#47807 <https://github.com/ceph/ceph/pull/47807>`_, Adam King) -* doc/cephadm: fix grammar in compatibility.rst (`pr#48715 <https://github.com/ceph/ceph/pull/48715>`_, Zac Dover) -* doc/cephadm: format airgap install procedure (`pr#49149 <https://github.com/ceph/ceph/pull/49149>`_, Zac Dover) -* doc/cephadm: improve airgapping procedure grammar (`pr#49158 <https://github.com/ceph/ceph/pull/49158>`_, Zac Dover) -* doc/cephadm: improve front matter (`pr#48607 <https://github.com/ceph/ceph/pull/48607>`_, Zac Dover) -* doc/cephadm: improve grammar in "listing hosts" (`pr#49165 <https://github.com/ceph/ceph/pull/49165>`_, Zac Dover) -* doc/cephadm: improve lone sentence (`pr#48738 <https://github.com/ceph/ceph/pull/48738>`_, Zac Dover) -* doc/cephadm: refine "Removing Hosts" (`pr#49707 <https://github.com/ceph/ceph/pull/49707>`_, Zac Dover) -* doc/cephadm: s/osd/OSD/ where appropriate (`pr#49718 <https://github.com/ceph/ceph/pull/49718>`_, Zac Dover) -* doc/cephadm: s/ssh/SSH/ in doc/cephadm (complete) (`pr#48612 <https://github.com/ceph/ceph/pull/48612>`_, Zac Dover) -* doc/cephadm: s/ssh/SSH/ in troubleshooting.rst (`pr#48602 <https://github.com/ceph/ceph/pull/48602>`_, Zac Dover) -* doc/cephadm: update install.rst (`pr#48595 <https://github.com/ceph/ceph/pull/48595>`_, Zac Dover) -* doc/cephfs - s/yet to here/yet to hear/ posix.rst (`pr#49449 <https://github.com/ceph/ceph/pull/49449>`_, Zac Dover) -* doc/cephfs/add-remove-mds: added cephadm note, refined "Adding an MDS" (`pr#45878 <https://github.com/ceph/ceph/pull/45878>`_, Dhairya Parmar) -* doc/cephfs: fix "e.g." in posix.rst (`pr#49451 <https://github.com/ceph/ceph/pull/49451>`_, Zac Dover) -* doc/cephfs: s/all of there are/all of these are/ (`pr#49447 <https://github.com/ceph/ceph/pull/49447>`_, Zac Dover) -* doc/conf.py: run ditaa with java (`pr#48906 <https://github.com/ceph/ceph/pull/48906>`_, Kefu Chai) -* doc/css: add "span" padding to custom.css (`pr#49694 <https://github.com/ceph/ceph/pull/49694>`_, Zac Dover) -* doc/css: add scroll-margin-top to dt elements (`pr#49640 <https://github.com/ceph/ceph/pull/49640>`_, Zac Dover) -* doc/css: Add scroll-margin-top to h2 html element (`pr#49662 <https://github.com/ceph/ceph/pull/49662>`_, Zac Dover) -* doc/css: add top-bar padding for h3 html element (`pr#49702 <https://github.com/ceph/ceph/pull/49702>`_, Zac Dover) -* doc/dev/cephadm: fix host maintenance enter/exit syntax (`pr#49647 <https://github.com/ceph/ceph/pull/49647>`_, Ranjini Mandyam Narasiodeyar) -* doc/dev/developer_guide/tests-unit-tests: Add unit test caveat (`pr#49013 <https://github.com/ceph/ceph/pull/49013>`_, Matan Breizman) -* doc/dev: add context note to dev guide config (`pr#46817 <https://github.com/ceph/ceph/pull/46817>`_, Zac Dover) -* doc/dev: add Dependabot section to essentials.rst (`pr#47043 <https://github.com/ceph/ceph/pull/47043>`_, Zac Dover) -* doc/dev: add explanation of how to use deduplication (`pr#48568 <https://github.com/ceph/ceph/pull/48568>`_, Myoungwon Oh) -* doc/dev: add IRC registration instructions (`pr#46939 <https://github.com/ceph/ceph/pull/46939>`_, Zac Dover) -* doc/dev: add submodule-update link to dev guide (`pr#48480 <https://github.com/ceph/ceph/pull/48480>`_, Zac Dover) -* doc/dev: alphabetize EC glossary (`pr#48686 <https://github.com/ceph/ceph/pull/48686>`_, Zac Dover) -* doc/dev: edit delayed-delete.rst (`pr#47050 <https://github.com/ceph/ceph/pull/47050>`_, Zac Dover) -* doc/dev: Elaborate on boost .deb creation (`pr#47416 <https://github.com/ceph/ceph/pull/47416>`_, David Galloway) -* doc/dev: fix graphviz diagram (`pr#48923 <https://github.com/ceph/ceph/pull/48923>`_, Zac Dover) -* doc/dev: improve Basic Workflow wording (`pr#49078 <https://github.com/ceph/ceph/pull/49078>`_, Zac Dover) -* doc/dev: improve EC glossary (`pr#48676 <https://github.com/ceph/ceph/pull/48676>`_, Zac Dover) -* doc/dev: improve lone sentence (`pr#48741 <https://github.com/ceph/ceph/pull/48741>`_, Zac Dover) -* doc/dev: improve presentation of note (git remote) (`pr#48236 <https://github.com/ceph/ceph/pull/48236>`_, Zac Dover) -* doc/dev: link to Dot User's Manual (`pr#48926 <https://github.com/ceph/ceph/pull/48926>`_, Zac Dover) -* doc/dev: refine erasure_coding.rst (`pr#48701 <https://github.com/ceph/ceph/pull/48701>`_, Zac Dover) -* doc/dev: remove deduplication.rst from pacific (`pr#48571 <https://github.com/ceph/ceph/pull/48571>`_, Zac Dover) -* doc/dev: s/github/GitHub/ in essentials.rst (`pr#47049 <https://github.com/ceph/ceph/pull/47049>`_, Zac Dover) -* doc/dev: s/master/main/ essentials.rst dev guide (`pr#46662 <https://github.com/ceph/ceph/pull/46662>`_, Zac Dover) -* doc/dev: s/master/main/ in basic workflow (`pr#46704 <https://github.com/ceph/ceph/pull/46704>`_, Zac Dover) -* doc/dev: s/master/main/ in title (`pr#46722 <https://github.com/ceph/ceph/pull/46722>`_, Zac Dover) -* doc/dev: s/the the/the/ in basic-workflow.rst (`pr#46934 <https://github.com/ceph/ceph/pull/46934>`_, Zac Dover) -* doc/dev: update basic-workflow.rst (`pr#46288 <https://github.com/ceph/ceph/pull/46288>`_, Zac Dover) -* doc/dev_guide: s/master/main in merging.rst (`pr#46710 <https://github.com/ceph/ceph/pull/46710>`_, Zac Dover) -* doc/glosary.rst: add "Ceph Block Device" term (`pr#48745 <https://github.com/ceph/ceph/pull/48745>`_, Zac Dover) -* doc/glossary - add "secrets" (`pr#49398 <https://github.com/ceph/ceph/pull/49398>`_, Zac Dover) -* doc/glossary.rst: add "Ceph Dashboard" term (`pr#48749 <https://github.com/ceph/ceph/pull/48749>`_, Zac Dover) -* doc/glossary.rst: alphabetize glossary terms (`pr#48339 <https://github.com/ceph/ceph/pull/48339>`_, Zac Dover) -* doc/glossary.rst: define "Ceph Manager" (`pr#48765 <https://github.com/ceph/ceph/pull/48765>`_, Zac Dover) -* doc/glossary.rst: remove duplicates (`pr#48358 <https://github.com/ceph/ceph/pull/48358>`_, Zac Dover) -* doc/glossary.rst: remove old front matter (`pr#48755 <https://github.com/ceph/ceph/pull/48755>`_, Zac Dover) -* doc/glossary: add "BlueStore" (`pr#48778 <https://github.com/ceph/ceph/pull/48778>`_, Zac Dover) -* doc/glossary: add "ceph monitor" entry (`pr#48448 <https://github.com/ceph/ceph/pull/48448>`_, Zac Dover) -* doc/glossary: add "Ceph Object Store" (`pr#49031 <https://github.com/ceph/ceph/pull/49031>`_, Zac Dover) -* doc/glossary: add "Dashboard Module" (`pr#49138 <https://github.com/ceph/ceph/pull/49138>`_, Zac Dover) -* doc/glossary: add "FQDN" entry (`pr#49425 <https://github.com/ceph/ceph/pull/49425>`_, Zac Dover) -* doc/glossary: add "mds" term (`pr#48872 <https://github.com/ceph/ceph/pull/48872>`_, Zac Dover) -* doc/glossary: add "RADOS Cluster" (`pr#49135 <https://github.com/ceph/ceph/pull/49135>`_, Zac Dover) -* doc/glossary: add "RADOS" definition (`pr#48951 <https://github.com/ceph/ceph/pull/48951>`_, Zac Dover) -* doc/glossary: Add "SDS" (`pr#48977 <https://github.com/ceph/ceph/pull/48977>`_, Zac Dover) -* doc/glossary: add DAS (`pr#49255 <https://github.com/ceph/ceph/pull/49255>`_, Zac Dover) -* doc/glossary: add matter to "RBD" (`pr#49266 <https://github.com/ceph/ceph/pull/49266>`_, Zac Dover) -* doc/glossary: add oxford comma to "Cluster Map" (`pr#48993 <https://github.com/ceph/ceph/pull/48993>`_, Zac Dover) -* doc/glossary: beef up "Ceph Block Storage" (`pr#48965 <https://github.com/ceph/ceph/pull/48965>`_, Zac Dover) -* doc/glossary: capitalize "DAS" correctly (`pr#49604 <https://github.com/ceph/ceph/pull/49604>`_, Zac Dover) -* doc/glossary: clean OSD id-related entries (`pr#49590 <https://github.com/ceph/ceph/pull/49590>`_, Zac Dover) -* doc/glossary: Clean up "Ceph Object Storage" (`pr#49668 <https://github.com/ceph/ceph/pull/49668>`_, Zac Dover) -* doc/glossary: collate "releases" entries (`pr#49601 <https://github.com/ceph/ceph/pull/49601>`_, Zac Dover) -* doc/glossary: Define "Ceph Node" (`pr#48995 <https://github.com/ceph/ceph/pull/48995>`_, Zac Dover) -* doc/glossary: define "Ceph Object Gateway" (`pr#48902 <https://github.com/ceph/ceph/pull/48902>`_, Zac Dover) -* doc/glossary: define "Ceph OSD" (`pr#48771 <https://github.com/ceph/ceph/pull/48771>`_, Zac Dover) -* doc/glossary: define "Ceph Storage Cluster" (`pr#49003 <https://github.com/ceph/ceph/pull/49003>`_, Zac Dover) -* doc/glossary: define "OSD" (`pr#48760 <https://github.com/ceph/ceph/pull/48760>`_, Zac Dover) -* doc/glossary: define "RGW" (`pr#48961 <https://github.com/ceph/ceph/pull/48961>`_, Zac Dover) -* doc/glossary: disambiguate "OSD" (`pr#48791 <https://github.com/ceph/ceph/pull/48791>`_, Zac Dover) -* doc/glossary: disambiguate clauses (`pr#49575 <https://github.com/ceph/ceph/pull/49575>`_, Zac Dover) -* doc/glossary: fix "Ceph Client" (`pr#49033 <https://github.com/ceph/ceph/pull/49033>`_, Zac Dover) -* doc/glossary: improve "Ceph Manager Dashboard" (`pr#48825 <https://github.com/ceph/ceph/pull/48825>`_, Zac Dover) -* doc/glossary: improve "Ceph Manager" term (`pr#48812 <https://github.com/ceph/ceph/pull/48812>`_, Zac Dover) -* doc/glossary: improve "Ceph Point Release" entry (`pr#48891 <https://github.com/ceph/ceph/pull/48891>`_, Zac Dover) -* doc/glossary: improve "ceph" term (`pr#48821 <https://github.com/ceph/ceph/pull/48821>`_, Zac Dover) -* doc/glossary: improve wording (`pr#48752 <https://github.com/ceph/ceph/pull/48752>`_, Zac Dover) -* doc/glossary: link to "Ceph Manager" (`pr#49064 <https://github.com/ceph/ceph/pull/49064>`_, Zac Dover) -* doc/glossary: link to OSD material (`pr#48785 <https://github.com/ceph/ceph/pull/48785>`_, Zac Dover) -* doc/glossary: redirect entries to "Ceph OSD" (`pr#48834 <https://github.com/ceph/ceph/pull/48834>`_, Zac Dover) -* doc/glossary: remove "Ceph System" (`pr#49073 <https://github.com/ceph/ceph/pull/49073>`_, Zac Dover) -* doc/glossary: remove "Ceph Test Framework" (`pr#48842 <https://github.com/ceph/ceph/pull/48842>`_, Zac Dover) -* doc/glossary: rewrite "Ceph File System" (`pr#48918 <https://github.com/ceph/ceph/pull/48918>`_, Zac Dover) -* doc/glossary: s/an/each/ where it's needed (`pr#49596 <https://github.com/ceph/ceph/pull/49596>`_, Zac Dover) -* doc/glossary: s/Ceph System/Ceph Cluster/ (`pr#49081 <https://github.com/ceph/ceph/pull/49081>`_, Zac Dover) -* doc/glossary: s/comprising/consisting of/ (`pr#49019 <https://github.com/ceph/ceph/pull/49019>`_, Zac Dover) -* doc/glossary: update "Cluster Map" (`pr#48798 <https://github.com/ceph/ceph/pull/48798>`_, Zac Dover) -* doc/glossary: update "pool/pools" (`pr#48858 <https://github.com/ceph/ceph/pull/48858>`_, Zac Dover) -* doc/index.rst: add link to Dev Guide basic workfl (`pr#46903 <https://github.com/ceph/ceph/pull/46903>`_, Zac Dover) -* doc/install: clone-source.rst s/master/main (`pr#48381 <https://github.com/ceph/ceph/pull/48381>`_, Zac Dover) -* doc/install: improve updating submodules procedure (`pr#48465 <https://github.com/ceph/ceph/pull/48465>`_, Zac Dover) -* doc/install: update "Official Releases" sources (`pr#49039 <https://github.com/ceph/ceph/pull/49039>`_, Zac Dover) -* doc/install: update clone-source.rst (`pr#49378 <https://github.com/ceph/ceph/pull/49378>`_, Zac Dover) -* doc/man/ceph-rbdnamer: remove obsolete udev rule (`pr#49696 <https://github.com/ceph/ceph/pull/49696>`_, Ilya Dryomov) -* doc/man/rbd: Mention changed `bluestore_min_alloc_size` (`pr#47578 <https://github.com/ceph/ceph/pull/47578>`_, Niklas Hambüchen) -* doc/man: define --num-rep, --min-rep and --max-rep (`pr#49660 <https://github.com/ceph/ceph/pull/49660>`_, Zac Dover) -* doc/mgr: add prompt directives to dashboard.rst (`pr#47823 <https://github.com/ceph/ceph/pull/47823>`_, Zac Dover) -* doc/mgr: edit orchestrator.rst (`pr#47781 <https://github.com/ceph/ceph/pull/47781>`_, Zac Dover) -* doc/mgr: name data source in "Man Install & Config" (`pr#48371 <https://github.com/ceph/ceph/pull/48371>`_, Zac Dover) -* doc/mgr: update prompts in dboard.rst includes (`pr#47870 <https://github.com/ceph/ceph/pull/47870>`_, Zac Dover) -* doc/monitoring: add min vers of apps in mon stack (`pr#48062 <https://github.com/ceph/ceph/pull/48062>`_, Zac Dover, Himadri Maheshwari) -* doc/osd: Fixes the introduction for writeback mode of cache tier (`pr#48883 <https://github.com/ceph/ceph/pull/48883>`_, Mingyuan Liang) -* doc/rados/operations: add prompts to operating.rst (`pr#47587 <https://github.com/ceph/ceph/pull/47587>`_, Zac Dover) -* doc/rados: add prompts to monitoring-osd-pg.rst (`pr#49240 <https://github.com/ceph/ceph/pull/49240>`_, Zac Dover) -* doc/rados: add prompts to add-or-remove-osds (`pr#49071 <https://github.com/ceph/ceph/pull/49071>`_, Zac Dover) -* doc/rados: add prompts to add-or-rm-prompts.rst (`pr#48986 <https://github.com/ceph/ceph/pull/48986>`_, Zac Dover) -* doc/rados: add prompts to add-or-rm-prompts.rst (`pr#48980 <https://github.com/ceph/ceph/pull/48980>`_, Zac Dover) -* doc/rados: add prompts to auth-config-ref.rst (`pr#49516 <https://github.com/ceph/ceph/pull/49516>`_, Zac Dover) -* doc/rados: add prompts to balancer.rst (`pr#49112 <https://github.com/ceph/ceph/pull/49112>`_, Zac Dover) -* doc/rados: add prompts to bluestore-config-ref.rst (`pr#49536 <https://github.com/ceph/ceph/pull/49536>`_, Zac Dover) -* doc/rados: add prompts to bluestore-migration.rst (`pr#49123 <https://github.com/ceph/ceph/pull/49123>`_, Zac Dover) -* doc/rados: add prompts to cache-tiering.rst (`pr#49125 <https://github.com/ceph/ceph/pull/49125>`_, Zac Dover) -* doc/rados: add prompts to ceph-conf.rst (`pr#49493 <https://github.com/ceph/ceph/pull/49493>`_, Zac Dover) -* doc/rados: add prompts to change-mon-elections.rst (`pr#49130 <https://github.com/ceph/ceph/pull/49130>`_, Zac Dover) -* doc/rados: add prompts to control.rst (`pr#49128 <https://github.com/ceph/ceph/pull/49128>`_, Zac Dover) -* doc/rados: add prompts to crush-map.rst (`pr#49184 <https://github.com/ceph/ceph/pull/49184>`_, Zac Dover) -* doc/rados: add prompts to devices.rst (`pr#49188 <https://github.com/ceph/ceph/pull/49188>`_, Zac Dover) -* doc/rados: add prompts to erasure-code-clay.rst (`pr#49206 <https://github.com/ceph/ceph/pull/49206>`_, Zac Dover) -* doc/rados: add prompts to erasure-code-isa (`pr#49208 <https://github.com/ceph/ceph/pull/49208>`_, Zac Dover) -* doc/rados: add prompts to erasure-code-jerasure.rst (`pr#49210 <https://github.com/ceph/ceph/pull/49210>`_, Zac Dover) -* doc/rados: add prompts to erasure-code-lrc.rst (`pr#49219 <https://github.com/ceph/ceph/pull/49219>`_, Zac Dover) -* doc/rados: add prompts to erasure-code-shec.rst (`pr#49221 <https://github.com/ceph/ceph/pull/49221>`_, Zac Dover) -* doc/rados: add prompts to health-checks (1 of 5) (`pr#49223 <https://github.com/ceph/ceph/pull/49223>`_, Zac Dover) -* doc/rados: add prompts to health-checks (2 of 5) (`pr#49225 <https://github.com/ceph/ceph/pull/49225>`_, Zac Dover) -* doc/rados: add prompts to health-checks (3 of 5) (`pr#49227 <https://github.com/ceph/ceph/pull/49227>`_, Zac Dover) -* doc/rados: add prompts to health-checks (4 of 5) (`pr#49229 <https://github.com/ceph/ceph/pull/49229>`_, Zac Dover) -* doc/rados: add prompts to health-checks (5 of 5) (`pr#49231 <https://github.com/ceph/ceph/pull/49231>`_, Zac Dover) -* doc/rados: add prompts to librados-intro.rst (`pr#49552 <https://github.com/ceph/ceph/pull/49552>`_, Zac Dover) -* doc/rados: add prompts to monitoring.rst (`pr#49245 <https://github.com/ceph/ceph/pull/49245>`_, Zac Dover) -* doc/rados: add prompts to msgr2.rst (`pr#49512 <https://github.com/ceph/ceph/pull/49512>`_, Zac Dover) -* doc/rados: add prompts to pg-repair.rst (`pr#49247 <https://github.com/ceph/ceph/pull/49247>`_, Zac Dover) -* doc/rados: add prompts to placement-groups.rst (`pr#49274 <https://github.com/ceph/ceph/pull/49274>`_, Zac Dover) -* doc/rados: add prompts to placement-groups.rst (3) (`pr#49276 <https://github.com/ceph/ceph/pull/49276>`_, Zac Dover) -* doc/rados: add prompts to pools.rst (`pr#48060 <https://github.com/ceph/ceph/pull/48060>`_, Zac Dover) -* doc/rados: add prompts to stretch-mode.rst (`pr#49370 <https://github.com/ceph/ceph/pull/49370>`_, Zac Dover) -* doc/rados: add prompts to upmap.rst (`pr#49372 <https://github.com/ceph/ceph/pull/49372>`_, Zac Dover) -* doc/rados: add prompts to user-management.rst (`pr#49385 <https://github.com/ceph/ceph/pull/49385>`_, Zac Dover) -* doc/rados: clarify default EC pool from simplest (`pr#49469 <https://github.com/ceph/ceph/pull/49469>`_, Zac Dover) -* doc/rados: cleanup "erasure code profiles" (`pr#49051 <https://github.com/ceph/ceph/pull/49051>`_, Zac Dover) -* doc/rados: correct typo in python.rst (`pr#49560 <https://github.com/ceph/ceph/pull/49560>`_, Zac Dover) -* doc/rados: fix grammar in configuration/index.rst (`pr#48885 <https://github.com/ceph/ceph/pull/48885>`_, Zac Dover) -* doc/rados: fix prompts in erasure-code.rst (`pr#48335 <https://github.com/ceph/ceph/pull/48335>`_, Zac Dover) -* doc/rados: improve pools.rst (`pr#48868 <https://github.com/ceph/ceph/pull/48868>`_, Zac Dover) -* doc/rados: link to cephadm replacing osd section (`pr#49681 <https://github.com/ceph/ceph/pull/49681>`_, Zac Dover) -* doc/rados: move colon (`pr#49705 <https://github.com/ceph/ceph/pull/49705>`_, Zac Dover) -* doc/rados: refine English in crush-map-edits.rst (`pr#48366 <https://github.com/ceph/ceph/pull/48366>`_, Zac Dover) -* doc/rados: remove prompt from php.ini line (`pr#49562 <https://github.com/ceph/ceph/pull/49562>`_, Zac Dover) -* doc/rados: reword part of cache-tiering.rst (`pr#48888 <https://github.com/ceph/ceph/pull/48888>`_, Zac Dover) -* doc/rados: rewrite EC intro (`pr#48324 <https://github.com/ceph/ceph/pull/48324>`_, Zac Dover) -* doc/rados: s/backend/back end/ (`pr#48782 <https://github.com/ceph/ceph/pull/48782>`_, Zac Dover) -* doc/rados: update "Pools" material (`pr#48856 <https://github.com/ceph/ceph/pull/48856>`_, Zac Dover) -* doc/rados: update bluestore-config-ref.rst (`pr#46485 <https://github.com/ceph/ceph/pull/46485>`_, Zac Dover) -* doc/rados: update prompts in crush-map-edits.rst (`pr#48364 <https://github.com/ceph/ceph/pull/48364>`_, Zac Dover) -* doc/rados: update prompts in network-config-ref (`pr#48158 <https://github.com/ceph/ceph/pull/48158>`_, Zac Dover) -* doc/radosgw: add prompts to multisite.rst (`pr#48660 <https://github.com/ceph/ceph/pull/48660>`_, Zac Dover) -* doc/radosgw: add push_endpoint for rabbitmq (`pr#48488 <https://github.com/ceph/ceph/pull/48488>`_, Zac Dover) -* doc/radosgw: improve "Ceph Object Gateway" text (`pr#48864 <https://github.com/ceph/ceph/pull/48864>`_, Zac Dover) -* doc/radosgw: improve grammar - notifications.rst (`pr#48495 <https://github.com/ceph/ceph/pull/48495>`_, Zac Dover) -* doc/radosgw: refine "bucket notifications" (`pr#48562 <https://github.com/ceph/ceph/pull/48562>`_, Zac Dover) -* doc/radosgw: refine "notification reliability" (`pr#48530 <https://github.com/ceph/ceph/pull/48530>`_, Zac Dover) -* doc/radosgw: refine "notifications" and "events" (`pr#48580 <https://github.com/ceph/ceph/pull/48580>`_, Zac Dover) -* doc/radosgw: refine notifications.rst - top part (`pr#48503 <https://github.com/ceph/ceph/pull/48503>`_, Zac Dover) -* doc/radosgw: update notifications.rst - grammar (`pr#48500 <https://github.com/ceph/ceph/pull/48500>`_, Zac Dover) -* doc/radosgw: Uppercase s3 (`pr#47360 <https://github.com/ceph/ceph/pull/47360>`_, Anthony D'Atri) -* doc/radosw: improve radosgw text (`pr#48967 <https://github.com/ceph/ceph/pull/48967>`_, Zac Dover) -* doc/radowsgw: add prompts to notifications.rst (`pr#48536 <https://github.com/ceph/ceph/pull/48536>`_, Zac Dover) -* doc/rbd: improve grammar in "immutable object..." (`pr#48970 <https://github.com/ceph/ceph/pull/48970>`_, Zac Dover) -* doc/rbd: refine "Create a Block Device Pool" (`pr#49308 <https://github.com/ceph/ceph/pull/49308>`_, Zac Dover) -* doc/rbd: refine "Create a Block Device User" (`pr#49319 <https://github.com/ceph/ceph/pull/49319>`_, Zac Dover) -* doc/rbd: refine "Create a Block Device User" (`pr#49301 <https://github.com/ceph/ceph/pull/49301>`_, Zac Dover) -* doc/rbd: refine "Creating a Block Device Image" (`pr#49347 <https://github.com/ceph/ceph/pull/49347>`_, Zac Dover) -* doc/rbd: refine "Listing Block Device Images" (`pr#49349 <https://github.com/ceph/ceph/pull/49349>`_, Zac Dover) -* doc/rbd: refine "Removing a Block Device Image" (`pr#49357 <https://github.com/ceph/ceph/pull/49357>`_, Zac Dover) -* doc/rbd: refine "Resizing a Block Device Image" (`pr#49353 <https://github.com/ceph/ceph/pull/49353>`_, Zac Dover) -* doc/rbd: refine "Restoring a Block Device Image" (`pr#49355 <https://github.com/ceph/ceph/pull/49355>`_, Zac Dover) -* doc/rbd: refine "Retrieving Image Information" (`pr#49351 <https://github.com/ceph/ceph/pull/49351>`_, Zac Dover) -* doc/rbd: refine rbd-exclusive-locks.rst (`pr#49598 <https://github.com/ceph/ceph/pull/49598>`_, Zac Dover) -* doc/rbd: refine rbd-snapshot.rst (`pr#49485 <https://github.com/ceph/ceph/pull/49485>`_, Zac Dover) -* doc/rbd: remove typo and ill-formed command (`pr#49366 <https://github.com/ceph/ceph/pull/49366>`_, Zac Dover) -* doc/rbd: s/wuold/would/ in rados-rbd-cmds.rst (`pr#49592 <https://github.com/ceph/ceph/pull/49592>`_, Zac Dover) -* doc/rbd: update iSCSI gateway info (`pr#49069 <https://github.com/ceph/ceph/pull/49069>`_, Zac Dover) -* doc/releases: improve grammar in pacific.rst (`pr#48426 <https://github.com/ceph/ceph/pull/48426>`_, Zac Dover) -* doc/releases: update pacific release notes (`pr#48404 <https://github.com/ceph/ceph/pull/48404>`_, Zac Dover) -* doc/security: improve grammar in CVE-2022-0670.rst (`pr#48431 <https://github.com/ceph/ceph/pull/48431>`_, Zac Dover) -* doc/start: add Anthony D'Atri's suggestions (`pr#49616 <https://github.com/ceph/ceph/pull/49616>`_, Zac Dover) -* doc/start: add link-related metadocumentation (`pr#49607 <https://github.com/ceph/ceph/pull/49607>`_, Zac Dover) -* doc/start: alphabetize hardware-recs links (`pr#46340 <https://github.com/ceph/ceph/pull/46340>`_, Zac Dover) -* doc/start: improve documenting-ceph.rst (`pr#49566 <https://github.com/ceph/ceph/pull/49566>`_, Zac Dover) -* doc/start: make OSD and MDS structures parallel (`pr#46656 <https://github.com/ceph/ceph/pull/46656>`_, Zac Dover) -* doc/start: Polish network section of hardware-recommendations.rst (`pr#46663 <https://github.com/ceph/ceph/pull/46663>`_, Anthony D'Atri) -* doc/start: refine "Quirks of RST" (`pr#49611 <https://github.com/ceph/ceph/pull/49611>`_, Zac Dover) -* doc/start: rewrite CRUSH para (`pr#46657 <https://github.com/ceph/ceph/pull/46657>`_, Zac Dover) -* doc/start: rewrite hardware-recs networks section (`pr#46653 <https://github.com/ceph/ceph/pull/46653>`_, Zac Dover) -* doc/start: s/3/three/ in intro.rst (`pr#46326 <https://github.com/ceph/ceph/pull/46326>`_, Zac Dover) -* doc/start: update documenting-ceph branch names (`pr#47956 <https://github.com/ceph/ceph/pull/47956>`_, Zac Dover) -* doc/start: update documenting-ceph.rst (`pr#49571 <https://github.com/ceph/ceph/pull/49571>`_, Zac Dover) -* doc/start: update hardware recs (`pr#47122 <https://github.com/ceph/ceph/pull/47122>`_, Zac Dover) -* doc/various: update link to CRUSH pdf (`pr#48403 <https://github.com/ceph/ceph/pull/48403>`_, Zac Dover) -* doc: add disk benchmarking and cache recommendations (`pr#46348 <https://github.com/ceph/ceph/pull/46348>`_, Dan van der Ster) -* doc: backport pacific release notes into pacific branch (`pr#46484 <https://github.com/ceph/ceph/pull/46484>`_, Zac Dover, David Galloway) -* doc: Change 'ReST' to 'REST' in doc/radosgw/layout.rst (`pr#48654 <https://github.com/ceph/ceph/pull/48654>`_, wangyingbin) -* doc: fix a couple grammatical things (`pr#49622 <https://github.com/ceph/ceph/pull/49622>`_, Brad Fitzpatrick) -* doc: fix a typo (`pr#49684 <https://github.com/ceph/ceph/pull/49684>`_, Brad Fitzpatrick) -* doc: Install graphviz (`pr#48905 <https://github.com/ceph/ceph/pull/48905>`_, David Galloway) -* doc: point to main branch for release info (`pr#48958 <https://github.com/ceph/ceph/pull/48958>`_, Patrick Donnelly) -* doc: Update release process doc to accurately reflect current process (`pr#47838 <https://github.com/ceph/ceph/pull/47838>`_, David Galloway) -* docs/start: fixes typo and empty headline in hardware recommendation … (`pr#48392 <https://github.com/ceph/ceph/pull/48392>`_, Sebastian Schmid) -* docs: correct add system user to the master zone command (`pr#48656 <https://github.com/ceph/ceph/pull/48656>`_, Salar Nosrati-Ershad) -* docs: fix doc link pointing to master in dashboard.rst (`pr#47791 <https://github.com/ceph/ceph/pull/47791>`_, Nizamudeen A) -* Fix data corruption in bluefs truncate() (`pr#45171 <https://github.com/ceph/ceph/pull/45171>`_, Adam Kupczyk) -* fsmap: switch to using iterator based loop (`pr#48269 <https://github.com/ceph/ceph/pull/48269>`_, Aliaksei Makarau) -* Implement CIDR blocklisting (`pr#46470 <https://github.com/ceph/ceph/pull/46470>`_, Jos Collin, Greg Farnum) -* include/buffer: include <memory> (`pr#47295 <https://github.com/ceph/ceph/pull/47295>`_, Kefu Chai, Duncan Bellamy) -* include: fix IS_ERR on Windows (`pr#47923 <https://github.com/ceph/ceph/pull/47923>`_, Lucian Petrut) -* libcephfs: define AT_NO_ATTR_SYNC back for backward compatibility (`pr#47862 <https://github.com/ceph/ceph/pull/47862>`_, Xiubo Li) -* libcephsqlite: ceph-mgr crashes when compiled with gcc12 (`pr#47271 <https://github.com/ceph/ceph/pull/47271>`_, Ganesh Maharaj Mahalingam) -* librados/watch_notify: reconnect after socket injection (`pr#46499 <https://github.com/ceph/ceph/pull/46499>`_, Nitzan Mordechai) -* librados: rados_ioctx_destroy check for initialized ioctx (`pr#47451 <https://github.com/ceph/ceph/pull/47451>`_, Nitzan Mordechai) -* librbd/cache/pwl: fix clean vs bytes_dirty cache state inconsistency (`pr#49054 <https://github.com/ceph/ceph/pull/49054>`_, Yin Congmin) -* librbd/cache/pwl: fix endianness issue (`pr#46815 <https://github.com/ceph/ceph/pull/46815>`_, Yin Congmin) -* librbd/cache/pwl: narrow the scope of m_lock in write_image_cache_state() (`pr#47939 <https://github.com/ceph/ceph/pull/47939>`_, Ilya Dryomov, Yin Congmin) -* librbd: bail from schedule_request_lock() if already lock owner (`pr#47161 <https://github.com/ceph/ceph/pull/47161>`_, Christopher Hoffman) -* librbd: retry ENOENT in V2_REFRESH_PARENT as well (`pr#47995 <https://github.com/ceph/ceph/pull/47995>`_, Ilya Dryomov) -* librbd: tweak misleading "image is still primary" error message (`pr#47247 <https://github.com/ceph/ceph/pull/47247>`_, Ilya Dryomov) -* librbd: unlink newest mirror snapshot when at capacity, bump capacity (`pr#46593 <https://github.com/ceph/ceph/pull/46593>`_, Ilya Dryomov) -* librbd: update progress for non-existent objects on deep-copy (`pr#46909 <https://github.com/ceph/ceph/pull/46909>`_, Ilya Dryomov) -* librbd: use actual monitor addresses when creating a peer bootstrap token (`pr#47911 <https://github.com/ceph/ceph/pull/47911>`_, Ilya Dryomov) -* make-dist: patch boost source to support python 3.10 … (`pr#47027 <https://github.com/ceph/ceph/pull/47027>`_, Tim Serong, Kefu Chai) -* mds: increment directory inode's change attr by one (`pr#48521 <https://github.com/ceph/ceph/pull/48521>`_, Ramana Raja) -* mds: clear MDCache::rejoin\_\*_q queues before recovering file inodes (`pr#46682 <https://github.com/ceph/ceph/pull/46682>`_, Xiubo Li) -* mds: flush mdlog if locked and still has wanted caps not satisfied (`pr#46423 <https://github.com/ceph/ceph/pull/46423>`_, Xiubo Li) -* mds: reset heartbeat when fetching or committing entries (`pr#46180 <https://github.com/ceph/ceph/pull/46180>`_, Xiubo Li) -* mds: trigger to flush the mdlog in handle_find_ino() (`pr#46424 <https://github.com/ceph/ceph/pull/46424>`_, Xiubo Li) -* mds/client: fail the request if the peer MDS doesn't support getvxattr op (`pr#47891 <https://github.com/ceph/ceph/pull/47891>`_, Xiubo Li, Zack Cerza) -* mds/Server: Do not abort MDS on unknown messages (`pr#48253 <https://github.com/ceph/ceph/pull/48253>`_, Dhairya Parmar, Dhairy Parmar) -* mds: add a perf counter to record slow replies (`pr#46138 <https://github.com/ceph/ceph/pull/46138>`_, haoyixing) -* mds: damage table only stores one dentry per dirfrag (`pr#48262 <https://github.com/ceph/ceph/pull/48262>`_, Patrick Donnelly) -* mds: do not assert early on when issuing client leases (`issue#54701 <http://tracker.ceph.com/issues/54701>`_, `pr#46567 <https://github.com/ceph/ceph/pull/46567>`_, Venky Shankar) -* mds: Don't blocklist clients in any replay state (`pr#47111 <https://github.com/ceph/ceph/pull/47111>`_, Kotresh HR) -* mds: fix crash when exporting unlinked dir (`pr#47180 <https://github.com/ceph/ceph/pull/47180>`_, 胡玮文) -* mds: include encoded stray inode when sending dentry unlink message to replicas (`issue#54046 <http://tracker.ceph.com/issues/54046>`_, `pr#46183 <https://github.com/ceph/ceph/pull/46183>`_, Venky Shankar) -* mds: notify the xattr_version to replica MDSes (`pr#47056 <https://github.com/ceph/ceph/pull/47056>`_, Xiubo Li) -* mds: skip fetching the dirfrags if not a directory (`pr#47433 <https://github.com/ceph/ceph/pull/47433>`_, Xiubo Li) -* mds: standby-replay daemon always removed in MDSMonitor::prepare_beacon (`pr#47282 <https://github.com/ceph/ceph/pull/47282>`_, Patrick Donnelly) -* mds: switch to use projected inode instead (`pr#47059 <https://github.com/ceph/ceph/pull/47059>`_, Xiubo Li) -* mds: wait unlink to finish to avoid conflict when creating same entries (`pr#48453 <https://github.com/ceph/ceph/pull/48453>`_, Xiubo Li) -* mgr, mgr/prometheus: Fix regression with prometheus metrics (`pr#47693 <https://github.com/ceph/ceph/pull/47693>`_, Prashant D) -* mgr, mgr/prometheus: Fix regression with prometheus metrics (`pr#46429 <https://github.com/ceph/ceph/pull/46429>`_, Prashant D) -* mgr, mon: Keep upto date metadata with mgr for MONs (`pr#47692 <https://github.com/ceph/ceph/pull/47692>`_, Laura Flores, Prashant D) -* mgr, mon: Keep upto date metadata with mgr for MONs (`pr#46427 <https://github.com/ceph/ceph/pull/46427>`_, Prashant D) -* mgr/ActivePyModules.cc: fix cases where GIL is held while attempting to lock mutex (`pr#46302 <https://github.com/ceph/ceph/pull/46302>`_, Cory Snyder) -* mgr/cephadm: Add disk rescan feature to the orchestrator (`pr#47372 <https://github.com/ceph/ceph/pull/47372>`_, Adam King, Paul Cuzner) -* mgr/cephadm: adding logic to close ports when removing a daemon (`pr#46780 <https://github.com/ceph/ceph/pull/46780>`_, Redouane Kachach) -* mgr/cephadm: Adding logic to store grafana cert/key per node (`pr#48103 <https://github.com/ceph/ceph/pull/48103>`_, Redouane Kachach) -* mgr/cephadm: allow setting prometheus retention time (`pr#48100 <https://github.com/ceph/ceph/pull/48100>`_, Adam King) -* mgr/cephadm: capture exception when not able to list upgrade tags (`pr#46776 <https://github.com/ceph/ceph/pull/46776>`_, Redouane Kachach) -* mgr/cephadm: check if a service exists before trying to restart it (`pr#46779 <https://github.com/ceph/ceph/pull/46779>`_, Redouane Kachach) -* mgr/cephadm: clear error message when resuming upgrade (`pr#47375 <https://github.com/ceph/ceph/pull/47375>`_, Adam King) -* mgr/cephadm: don't redeploy osds seen in raw list if cephadm knows them (`pr#46545 <https://github.com/ceph/ceph/pull/46545>`_, Adam King) -* mgr/cephadm: fixing scheduler consistent hashing (`pr#46975 <https://github.com/ceph/ceph/pull/46975>`_, Redouane Kachach) -* mgr/cephadm: Raw OSD Support (`pr#45964 <https://github.com/ceph/ceph/pull/45964>`_, Guillaume Abrioux, Adam King, Sage Weil) -* mgr/cephadm: reconfig iscsi daemons if trusted_ip_list changes (`pr#48096 <https://github.com/ceph/ceph/pull/48096>`_, Adam King) -* mgr/cephadm: recreate osd config when redeploy/reconfiguring (`pr#47663 <https://github.com/ceph/ceph/pull/47663>`_, Adam King) -* mgr/cephadm: set dashboard grafana-api-password when user provides one (`pr#47662 <https://github.com/ceph/ceph/pull/47662>`_, Adam King) -* mgr/cephadm: staggered upgrade (`pr#46359 <https://github.com/ceph/ceph/pull/46359>`_, Adam King) -* mgr/cephadm: try to get FQDN for active instance (`pr#46775 <https://github.com/ceph/ceph/pull/46775>`_, Tatjana Dehler) -* mgr/cephadm: use host shortname for osd memory autotuning (`pr#46556 <https://github.com/ceph/ceph/pull/46556>`_, Adam King) -* mgr/dashboard: don't log 3xx as errors (`pr#46461 <https://github.com/ceph/ceph/pull/46461>`_, Ernesto Puerta) -* mgr/dashboard: WDC multipath bug fixes (`pr#46456 <https://github.com/ceph/ceph/pull/46456>`_, Nizamudeen A) -* mgr/dashboard: Add details to the modal which displays the `safe-to-d… (`pr#48176 <https://github.com/ceph/ceph/pull/48176>`_, Francesco Torchia) -* mgr/dashboard: add option to resolve ip addr (`pr#48220 <https://github.com/ceph/ceph/pull/48220>`_, Tatjana Dehler) -* mgr/dashboard: add required validation for frontend and monitor port (`pr#47357 <https://github.com/ceph/ceph/pull/47357>`_, Avan Thakkar) -* mgr/dashboard: Add text to empty life expectancy column (`pr#48276 <https://github.com/ceph/ceph/pull/48276>`_, Francesco Torchia) -* mgr/dashboard: allow cross origin when the url is set (`pr#49151 <https://github.com/ceph/ceph/pull/49151>`_, Nizamudeen A) -* mgr/dashboard: allow Origin url for CORS if present in config (`pr#49429 <https://github.com/ceph/ceph/pull/49429>`_, Avan Thakkar) -* mgr/dashboard: batch rbd-mirror backports (`pr#46531 <https://github.com/ceph/ceph/pull/46531>`_, Pere Diaz Bou, Pedro Gonzalez Gomez, Nizamudeen A, Melissa Li, Sarthak0702, Avan Thakkar, Aashish Sharma) -* mgr/dashboard: BDD approach for the dashboard cephadm e2e (`pr#46529 <https://github.com/ceph/ceph/pull/46529>`_, Nizamudeen A) -* mgr/dashboard: bug fixes for rbd mirroring edit and promotion/demotion (`pr#48806 <https://github.com/ceph/ceph/pull/48806>`_, Pedro Gonzalez Gomez) -* mgr/dashboard: bump moment from 2.29.1 to 2.29.3 in /src/pybind/mgr/dashboard/frontend (`pr#46717 <https://github.com/ceph/ceph/pull/46717>`_, dependabot[bot]) -* mgr/dashboard: bump up teuthology (`pr#47497 <https://github.com/ceph/ceph/pull/47497>`_, Kefu Chai) -* mgr/dashboard: Creating and editing Prometheus AlertManager silences is buggy (`pr#46277 <https://github.com/ceph/ceph/pull/46277>`_, Volker Theile) -* mgr/dashboard: customizable log-in page text/banner (`pr#46343 <https://github.com/ceph/ceph/pull/46343>`_, Sarthak0702) -* mgr/dashboard: dashboard help command showing wrong syntax for login-banner (`pr#46810 <https://github.com/ceph/ceph/pull/46810>`_, Sarthak0702) -* mgr/dashboard: display helpfull message when the iframe-embedded Grafana dashboard failed to load (`pr#47008 <https://github.com/ceph/ceph/pull/47008>`_, Ngwa Sedrick Meh) -* mgr/dashboard: do not recommend throughput for ssd's only cluster (`pr#47155 <https://github.com/ceph/ceph/pull/47155>`_, Nizamudeen A) -* mgr/dashboard: don't log tracebacks on 404s (`pr#47093 <https://github.com/ceph/ceph/pull/47093>`_, Ernesto Puerta) -* mgr/dashboard: enable addition of custom Prometheus alerts (`pr#48099 <https://github.com/ceph/ceph/pull/48099>`_, Patrick Seidensal) -* mgr/dashboard: ensure limit 0 returns 0 images (`pr#47888 <https://github.com/ceph/ceph/pull/47888>`_, Pere Diaz Bou) -* mgr/dashboard: Feature 54330 osd creation workflow (`pr#46690 <https://github.com/ceph/ceph/pull/46690>`_, Pere Diaz Bou, Nizamudeen A, Sarthak0702) -* mgr/dashboard: fix _rbd_image_refs caching (`pr#47636 <https://github.com/ceph/ceph/pull/47636>`_, Pere Diaz Bou) -* mgr/dashboard: fix Expected to find element: `cd-modal .badge but never found it (`pr#48142 <https://github.com/ceph/ceph/pull/48142>`_, Nizamudeen A) -* mgr/dashboard: fix nfs exports form issues with squash field (`pr#47960 <https://github.com/ceph/ceph/pull/47960>`_, Nizamudeen A) -* mgr/dashboard: fix openapi-check (`pr#48045 <https://github.com/ceph/ceph/pull/48045>`_, Pere Diaz Bou) -* mgr/dashboard: fix rgw connect when using ssl (`issue#56970 <http://tracker.ceph.com/issues/56970>`_, `pr#48189 <https://github.com/ceph/ceph/pull/48189>`_, Henry Hirsch) -* mgr/dashboard: fix snapshot creation with duplicate name (`pr#48048 <https://github.com/ceph/ceph/pull/48048>`_, Aashish Sharma) -* mgr/dashboard: fix ssl cert validation for ingress service creation (`pr#46204 <https://github.com/ceph/ceph/pull/46204>`_, Avan Thakkar) -* mgr/dashboard: fix unmanaged service creation (`pr#48026 <https://github.com/ceph/ceph/pull/48026>`_, Nizamudeen A) -* mgr/dashboard: fix wrong pg status processing (`pr#46228 <https://github.com/ceph/ceph/pull/46228>`_, Ernesto Puerta) -* mgr/dashboard: form field validation icons overlap with other icons (`pr#46379 <https://github.com/ceph/ceph/pull/46379>`_, Sarthak0702) -* mgr/dashboard: grafana frontend e2e testing and update cypress (`pr#47721 <https://github.com/ceph/ceph/pull/47721>`_, Nizamudeen A) -* mgr/dashboard: handle the cephfs permission issue in nfs exports (`pr#48316 <https://github.com/ceph/ceph/pull/48316>`_, Nizamudeen A) -* mgr/dashboard: host list tables doesn't show all services deployed (`pr#47454 <https://github.com/ceph/ceph/pull/47454>`_, Avan Thakkar) -* mgr/dashboard: ingress backend service should list all supported services (`pr#47084 <https://github.com/ceph/ceph/pull/47084>`_, Avan Thakkar) -* mgr/dashboard: introduce memory and cpu usage for daemons (`pr#46459 <https://github.com/ceph/ceph/pull/46459>`_, Aashish Sharma, Avan Thakkar) -* mgr/dashboard: iops optimized option enabled (`pr#46737 <https://github.com/ceph/ceph/pull/46737>`_, Pere Diaz Bou) -* mgr/dashboard: iterate through copy of items (`pr#46870 <https://github.com/ceph/ceph/pull/46870>`_, Pedro Gonzalez Gomez) -* mgr/dashboard: prevent alert redirect (`pr#47145 <https://github.com/ceph/ceph/pull/47145>`_, Tatjana Dehler) -* mgr/dashboard: Pull latest languages from Transifex (`pr#46695 <https://github.com/ceph/ceph/pull/46695>`_, Volker Theile) -* mgr/dashboard: rbd image pagination (`pr#47105 <https://github.com/ceph/ceph/pull/47105>`_, Pere Diaz Bou, Nizamudeen A) -* mgr/dashboard: rbd striping setting pre-population and pop-over (`pr#47410 <https://github.com/ceph/ceph/pull/47410>`_, Vrushal Chaudhari) -* mgr/dashboard: remove token logging (`pr#47431 <https://github.com/ceph/ceph/pull/47431>`_, Pere Diaz Bou) -* mgr/dashboard: Show error on creating service with duplicate service id (`pr#47404 <https://github.com/ceph/ceph/pull/47404>`_, Aashish Sharma) -* mgr/dashboard: stop polling when page is not visible (`pr#46675 <https://github.com/ceph/ceph/pull/46675>`_, Sarthak0702) -* mgr/dashboard: unselect rows in datatables (`pr#46322 <https://github.com/ceph/ceph/pull/46322>`_, Sarthak0702) -* mgr/DaemonServer.cc: fix typo in output gap >= max_pg_num_change (`pr#47211 <https://github.com/ceph/ceph/pull/47211>`_, Kamoltat) -* mgr/prometheus: expose num objects repaired in pool (`pr#48205 <https://github.com/ceph/ceph/pull/48205>`_, Pere Diaz Bou) -* mgr/prometheus: use vendored "packaging" instead (`pr#49695 <https://github.com/ceph/ceph/pull/49695>`_, Matan Breizman) -* mgr/rbd_support: avoid wedging the task queue if pool is removed (`pr#49056 <https://github.com/ceph/ceph/pull/49056>`_, Ilya Dryomov) -* mgr/snap_schedule: add time zone suffix to snapshot dir name (`pr#45968 <https://github.com/ceph/ceph/pull/45968>`_, Milind Changire, Venky Shankar) -* mgr/snap_schedule: persist all updates to RADOS (`pr#46797 <https://github.com/ceph/ceph/pull/46797>`_, Milind Changire) -* mgr/snap_schedule: remove subvol interface (`pr#48221 <https://github.com/ceph/ceph/pull/48221>`_, Milind Changire) -* mgr/stats: be resilient to offline MDS rank-0 (`pr#45293 <https://github.com/ceph/ceph/pull/45293>`_, Jos Collin) -* mgr/stats: change in structure of perf_stats o/p (`pr#47851 <https://github.com/ceph/ceph/pull/47851>`_, Neeraj Pratap Singh) -* mgr/stats: missing clients in perf stats command output (`pr#47866 <https://github.com/ceph/ceph/pull/47866>`_, Neeraj Pratap Singh) -* mgr/telemetry: reset health warning after re-opting-in (`pr#47307 <https://github.com/ceph/ceph/pull/47307>`_, Yaarit Hatuka) -* mgr/volumes: A few dependent mgr volumes PRs (`pr#47112 <https://github.com/ceph/ceph/pull/47112>`_, Rishabh Dave, Kotresh HR, John Mulligan, Nikhilkumar Shelke) -* mgr/volumes: Add human-readable flag to volume info command (`pr#48468 <https://github.com/ceph/ceph/pull/48468>`_, Neeraj Pratap Singh) -* mgr/volumes: add interface to check the presence of subvolumegroups/subvolumes (`pr#47460 <https://github.com/ceph/ceph/pull/47460>`_, Neeraj Pratap Singh) -* mgr/volumes: Add volume info command (`pr#47769 <https://github.com/ceph/ceph/pull/47769>`_, Neeraj Pratap Singh) -* mgr/volumes: filter internal directories in 'subvolumegroup ls' command (`pr#47512 <https://github.com/ceph/ceph/pull/47512>`_, Nikhilkumar Shelke) -* mgr/volumes: Fix idempotent subvolume rm (`pr#46139 <https://github.com/ceph/ceph/pull/46139>`_, Kotresh HR) -* mgr/volumes: Fix subvolume creation in FIPS enabled system (`pr#47369 <https://github.com/ceph/ceph/pull/47369>`_, Kotresh HR) -* mgr/volumes: remove incorrect 'size' from output of 'snapshot info' (`pr#46803 <https://github.com/ceph/ceph/pull/46803>`_, Nikhilkumar Shelke) -* mgr/volumes: set, get, list and remove metadata of snapshot (`pr#46515 <https://github.com/ceph/ceph/pull/46515>`_, Nikhilkumar Shelke) -* mgr/volumes: set, get, list and remove metadata of subvolume (`pr#45961 <https://github.com/ceph/ceph/pull/45961>`_, Nikhilkumar Shelke) -* mgr/volumes: Show clone failure reason in clone status command (`pr#45928 <https://github.com/ceph/ceph/pull/45928>`_, Kotresh HR) -* mgr/volumes: subvolume ls command crashes if groupname as '_nogroup' (`pr#46806 <https://github.com/ceph/ceph/pull/46806>`_, Nikhilkumar Shelke) -* mgr/volumes: subvolumegroup quotas (`pr#46668 <https://github.com/ceph/ceph/pull/46668>`_, Kotresh HR) -* mgr: relax "pending_service_map.epoch > service_map.epoch" assert (`pr#46688 <https://github.com/ceph/ceph/pull/46688>`_, Mykola Golub) -* mirror snapshot schedule and trash purge schedule fixes (`pr#46778 <https://github.com/ceph/ceph/pull/46778>`_, Ilya Dryomov) -* mon/ConfigMonitor: fix config get key with whitespaces (`pr#47380 <https://github.com/ceph/ceph/pull/47380>`_, Nitzan Mordechai) -* mon/Elector.cc: Compress peer >= rank_size sanity check into send_peer_ping (`pr#49444 <https://github.com/ceph/ceph/pull/49444>`_, Kamoltat) -* mon/Elector: Added sanity check when pinging a peer monitor (`pr#48320 <https://github.com/ceph/ceph/pull/48320>`_, Kamoltat) -* mon/Elector: Change how we handle removed_ranks and notify_rank_removed() (`pr#49312 <https://github.com/ceph/ceph/pull/49312>`_, Kamoltat) -* mon/Elector: notify_rank_removed erase rank from both live_pinging and dead_pinging sets for highest ranked MON (`pr#47087 <https://github.com/ceph/ceph/pull/47087>`_, Kamoltat) -* mon/MDSMonitor: fix standby-replay mds being removed from MDSMap unexpectedly (`pr#48270 <https://github.com/ceph/ceph/pull/48270>`_, 胡玮文) -* mon/OSDMonitor: Added extra check before mon.go_recovery_stretch_mode() (`pr#48803 <https://github.com/ceph/ceph/pull/48803>`_, Kamoltat) -* mon/OSDMonitor: Ensure kvmon() is writeable before handling "osd new" cmd (`pr#46691 <https://github.com/ceph/ceph/pull/46691>`_, Sridhar Seshasayee) -* mon/OSDMonitor: properly set last_force_op_resend in stretch mode (`pr#45870 <https://github.com/ceph/ceph/pull/45870>`_, Ilya Dryomov) -* mon: allow a MON_DOWN grace period after cluster mkfs (`pr#48558 <https://github.com/ceph/ceph/pull/48558>`_, Sage Weil) -* monitoring/ceph-mixin: add RGW host to label info (`pr#48035 <https://github.com/ceph/ceph/pull/48035>`_, Tatjana Dehler) -* monitoring/ceph-mixin: OSD overview typo fix (`pr#47386 <https://github.com/ceph/ceph/pull/47386>`_, Tatjana Dehler) -* mount/conf: Fix IPv6 parsing (`pr#46112 <https://github.com/ceph/ceph/pull/46112>`_, Matan Breizman) -* msg: fix deadlock when handling existing but closed v2 connection (`pr#48254 <https://github.com/ceph/ceph/pull/48254>`_, Radosław Zarzyński) -* msg: Fix Windows IPv6 support (`pr#47303 <https://github.com/ceph/ceph/pull/47303>`_, Lucian Petrut) -* msg: Log at higher level when Throttle::get_or_fail() fails (`pr#47764 <https://github.com/ceph/ceph/pull/47764>`_, Brad Hubbard) -* msg: reset ProtocolV2's frame assembler in appropriate thread (`pr#48255 <https://github.com/ceph/ceph/pull/48255>`_, Radoslaw Zarzynski) -* os/bluestore: proper locking for Allocators' dump methods (`pr#48167 <https://github.com/ceph/ceph/pull/48167>`_, Igor Fedotov) -* os/bluestore: add bluefs-import command (`pr#47875 <https://github.com/ceph/ceph/pull/47875>`_, Adam Kupczyk, zhang daolong) -* os/bluestore: Always update the cursor position in AVL near-fit search (`pr#46642 <https://github.com/ceph/ceph/pull/46642>`_, Mark Nelson) -* os/bluestore: Better readability of perf output (`pr#47259 <https://github.com/ceph/ceph/pull/47259>`_, Adam Kupczyk) -* os/bluestore: BlueFS: harmonize log read and writes modes (`pr#49431 <https://github.com/ceph/ceph/pull/49431>`_, Adam Kupczyk) -* os/bluestore: do not signal deleted dirty file to bluefs log (`pr#48168 <https://github.com/ceph/ceph/pull/48168>`_, Igor Fedotov) -* os/bluestore: fix AU accounting in bluestore_cache_other mempool (`pr#47337 <https://github.com/ceph/ceph/pull/47337>`_, Igor Fedotov) -* os/bluestore: Fix collision between BlueFS and BlueStore deferred writes (`pr#47296 <https://github.com/ceph/ceph/pull/47296>`_, Adam Kupczyk) -* os/bluestore: fix improper bluefs log size tracking in volume selector (`pr#45408 <https://github.com/ceph/ceph/pull/45408>`_, Igor Fedotov) -* os/bluestore: get rid of fake onode nref increment for pinned entry (`pr#47556 <https://github.com/ceph/ceph/pull/47556>`_, Igor Fedotov) -* os/bluestore: incremental update mode for bluefs log (`pr#48915 <https://github.com/ceph/ceph/pull/48915>`_, Adam Kupczyk) -* os/bluestore: update perf counter priorities (`pr#47095 <https://github.com/ceph/ceph/pull/47095>`_, Laura Flores) -* os/bluestore: use direct write in BlueStore::_write_bdev_label (`pr#48278 <https://github.com/ceph/ceph/pull/48278>`_, luo rixin) -* osd, mds: fix the "heap" admin cmd printing always to error stream (`pr#48106 <https://github.com/ceph/ceph/pull/48106>`_, Radoslaw Zarzynski) -* osd, tools, kv: non-aggressive, on-line trimming of accumulated dups (`pr#47701 <https://github.com/ceph/ceph/pull/47701>`_, Radoslaw Zarzynski, Nitzan Mordechai) -* osd/PGLog.cc: Trim duplicates by number of entries (`pr#46252 <https://github.com/ceph/ceph/pull/46252>`_, Nitzan Mordechai) -* osd/scrub: mark PG as being scrubbed, from scrub initiation to Inacti… (`pr#46767 <https://github.com/ceph/ceph/pull/46767>`_, Ronen Friedman) -* osd/scrub: Reintroduce scrub starts message (`pr#48070 <https://github.com/ceph/ceph/pull/48070>`_, Prashant D) -* osd/scrub: use the actual active set when requesting replicas (`pr#48544 <https://github.com/ceph/ceph/pull/48544>`_, Ronen Friedman) -* osd/SnapMapper: fix legacy key conversion in snapmapper class (`pr#47134 <https://github.com/ceph/ceph/pull/47134>`_, Manuel Lausch, Matan Breizman) -* osd: add created_at meta (`pr#49144 <https://github.com/ceph/ceph/pull/49144>`_, Alex Marangone) -* osd: fix wrong input when calling recover_object() (`pr#46120 <https://github.com/ceph/ceph/pull/46120>`_, Myoungwon Oh) -* osd: log the number of 'dups' entries in a PG Log (`pr#46608 <https://github.com/ceph/ceph/pull/46608>`_, Radoslaw Zarzynski) -* osd: remove invalid put on message (`pr#47525 <https://github.com/ceph/ceph/pull/47525>`_, Nitzan Mordechai) -* osd: set per_pool_stats true when OSD has no PG (`pr#48250 <https://github.com/ceph/ceph/pull/48250>`_, jindengke, lmgdlmgd) -* osd/scrub: late-arriving reservation grants are not an error (`pr#46873 <https://github.com/ceph/ceph/pull/46873>`_, Ronen Friedman) -* osd/scrubber/pg_scrubber.cc: fix bug where scrub machine gets stuck (`pr#46845 <https://github.com/ceph/ceph/pull/46845>`_, Cory Snyder) -* PendingReleaseNotes: document online and offline trimming of PG Log's… (`pr#48020 <https://github.com/ceph/ceph/pull/48020>`_, Radoslaw Zarzynski) -* pybind/cephfs: fix grammar (`pr#48982 <https://github.com/ceph/ceph/pull/48982>`_, Zac Dover) -* pybind: fix typo in cephfs.pyx (`pr#48953 <https://github.com/ceph/ceph/pull/48953>`_, Zac Dover) -* pybind/mgr/cephadm/serve: don't remove ceph.conf which leads to qa failure (`pr#46974 <https://github.com/ceph/ceph/pull/46974>`_, Dhairya Parmar) -* pybind/mgr/dashboard: move pytest into requirements.txt (`pr#48081 <https://github.com/ceph/ceph/pull/48081>`_, Kefu Chai) -* pybind/mgr/pg_autoscaler: change overlapping roots to warning (`pr#47522 <https://github.com/ceph/ceph/pull/47522>`_, Kamoltat) -* pybind/mgr: fix flake8 (`pr#47393 <https://github.com/ceph/ceph/pull/47393>`_, Avan Thakkar) -* pybind/mgr: fixup after upgrading tox versions (`pr#49363 <https://github.com/ceph/ceph/pull/49363>`_, Adam King, Kefu Chai) -* pybind/mgr: tox and test fixes (`pr#49542 <https://github.com/ceph/ceph/pull/49542>`_, Kefu Chai) -* pybind/rados: notify callback reconnect (`pr#48112 <https://github.com/ceph/ceph/pull/48112>`_, Nitzan Mordechai) -* pybind: add wrapper for rados_write_op_omap_cmp (`pr#48376 <https://github.com/ceph/ceph/pull/48376>`_, Sandy Kaur) -* python-common: Add 'KB' to supported suffixes in SizeMatcher (`pr#48243 <https://github.com/ceph/ceph/pull/48243>`_, Tim Serong) -* python-common: allow crush device class to be set from osd service spec (`pr#46555 <https://github.com/ceph/ceph/pull/46555>`_, Cory Snyder) -* qa/cephadm: remove fsid dir before bootstrap in test_cephadm.sh (`pr#48101 <https://github.com/ceph/ceph/pull/48101>`_, Adam King) -* qa/cephfs: fallback to older way of get_op_read_count (`pr#46901 <https://github.com/ceph/ceph/pull/46901>`_, Dhairya Parmar) -* qa/import-legacy: install python3 package for nautilus ceph (`pr#47528 <https://github.com/ceph/ceph/pull/47528>`_, Xiubo Li) -* qa/suites/rados/thrash-erasure-code-big/thrashers: add `osd max backfills` setting to mapgap and pggrow (`pr#46391 <https://github.com/ceph/ceph/pull/46391>`_, Laura Flores) -* qa/suites/rbd/pwl-cache: ensure recovery is actually tested (`pr#47128 <https://github.com/ceph/ceph/pull/47128>`_, Ilya Dryomov, Yin Congmin) -* qa/suites/rbd: disable workunit timeout for dynamic_features_no_cache (`pr#47158 <https://github.com/ceph/ceph/pull/47158>`_, Ilya Dryomov) -* qa/suites/rbd: place cache file on tmpfs for xfstests (`pr#46597 <https://github.com/ceph/ceph/pull/46597>`_, Ilya Dryomov) -* qa/tasks/ceph_manager.py: increase test_pool_min_size timeout (`pr#47446 <https://github.com/ceph/ceph/pull/47446>`_, Kamoltat) -* qa/tasks/kubeadm: set up tigera resources via kubectl create (`pr#48097 <https://github.com/ceph/ceph/pull/48097>`_, John Mulligan) -* qa/tasks/rbd_fio: bump default to fio 3.32 (`pr#48385 <https://github.com/ceph/ceph/pull/48385>`_, Ilya Dryomov) -* qa/workunits/cephadm: update test_repos master -> main (`pr#47320 <https://github.com/ceph/ceph/pull/47320>`_, Adam King) -* qa/workunits/rados: specify redirect in curl command (`pr#49139 <https://github.com/ceph/ceph/pull/49139>`_, Laura Flores) -* qa: Fix test_subvolume_group_ls_filter_internal_directories (`pr#48328 <https://github.com/ceph/ceph/pull/48328>`_, Kotresh HR) -* qa: Fix test_subvolume_snapshot_info_if_orphan_clone (`pr#48647 <https://github.com/ceph/ceph/pull/48647>`_, Kotresh HR) -* qa: Fix test_subvolume_snapshot_info_if_orphan_clone (`pr#48417 <https://github.com/ceph/ceph/pull/48417>`_, Kotresh HR) -* qa: fix teuthology master branch ref (`pr#46504 <https://github.com/ceph/ceph/pull/46504>`_, Ernesto Puerta) -* qa: ignore disk quota exceeded failure in test (`pr#48165 <https://github.com/ceph/ceph/pull/48165>`_, Nikhilkumar Shelke) -* qa: remove .teuthology_branch file (`pr#46490 <https://github.com/ceph/ceph/pull/46490>`_, Jeff Layton) -* qa: run e2e test on centos only (`pr#49337 <https://github.com/ceph/ceph/pull/49337>`_, Kefu Chai) -* qa: switch back to git protocol for qemu-xfstests (`pr#49543 <https://github.com/ceph/ceph/pull/49543>`_, Ilya Dryomov) -* qa: switch to https protocol for repos' server (`pr#49470 <https://github.com/ceph/ceph/pull/49470>`_, Xiubo Li) -* qa: wait rank 0 to become up:active state before mounting fuse client (`pr#46802 <https://github.com/ceph/ceph/pull/46802>`_, Xiubo Li) -* qa: add filesystem/file sync stuck test support (`pr#46425 <https://github.com/ceph/ceph/pull/46425>`_, Xiubo Li) -* radosgw-admin: 'reshard list' doesn't log ENOENT errors (`pr#45451 <https://github.com/ceph/ceph/pull/45451>`_, Casey Bodley) -* rbd-fuse: librados will filter out -r option from command-line (`pr#46953 <https://github.com/ceph/ceph/pull/46953>`_, wanwencong) -* rbd-mirror: don't prune non-primary snapshot when restarting delta sync (`pr#46590 <https://github.com/ceph/ceph/pull/46590>`_, Ilya Dryomov) -* rbd-mirror: generally skip replay/resync if remote image is not primary (`pr#46813 <https://github.com/ceph/ceph/pull/46813>`_, Ilya Dryomov) -* rbd-mirror: remove bogus completed_non_primary_snapshots_exist check (`pr#47118 <https://github.com/ceph/ceph/pull/47118>`_, Ilya Dryomov) -* rbd-mirror: resume pending shutdown on error in snapshot replayer (`pr#47913 <https://github.com/ceph/ceph/pull/47913>`_, Ilya Dryomov) -* rbd: device map/unmap --namespace handling fixes (`pr#48459 <https://github.com/ceph/ceph/pull/48459>`_, Ilya Dryomov, Stefan Chivu) -* rbd: don't default empty pool name unless namespace is specified (`pr#47143 <https://github.com/ceph/ceph/pull/47143>`_, Ilya Dryomov) -* rbd: find_action() should sort actions first (`pr#47583 <https://github.com/ceph/ceph/pull/47583>`_, Ilya Dryomov) -* rgw: Swift retarget needs bucket set on object (`pr#47230 <https://github.com/ceph/ceph/pull/47230>`_, Daniel Gryniewicz) -* rgw/backport/pacific: Fix crashes with Sync policy APIs (`pr#47994 <https://github.com/ceph/ceph/pull/47994>`_, Soumya Koduri) -* rgw/notifications: Change in multipart upload notification behavior (`pr#47175 <https://github.com/ceph/ceph/pull/47175>`_, Kalpesh Pandya) -* rgw/rgw_string.h: add missing includes for alpine and boost 1.75 (`pr#47304 <https://github.com/ceph/ceph/pull/47304>`_, Duncan Bellamy) -* rgw/sts: adding code for aws:RequestTags as part (`pr#47746 <https://github.com/ceph/ceph/pull/47746>`_, Kalpesh Pandya, Pritha Srivastava) -* rgw: address bug where object puts could write to decommissioned shard (`pr#48663 <https://github.com/ceph/ceph/pull/48663>`_, J. Eric Ivancich) -* rgw: better tenant id from the uri on anonymous access (`pr#47341 <https://github.com/ceph/ceph/pull/47341>`_, Rafał Wądołowski, Marcus Watts) -* rgw: check bucket shard init status in RGWRadosBILogTrimCR (`pr#44907 <https://github.com/ceph/ceph/pull/44907>`_, Mykola Golub) -* rgw: check object storage_class when check_disk_state (`pr#46579 <https://github.com/ceph/ceph/pull/46579>`_, Huber-ming) -* rgw: data sync uses yield_spawn_window() (`pr#45713 <https://github.com/ceph/ceph/pull/45713>`_, Casey Bodley) -* rgw: do not permit locked object version removal (`pr#47041 <https://github.com/ceph/ceph/pull/47041>`_, Igor Fedotov) -* rgw: fix bool/int logic error when calling get_obj_head_ioctx (`pr#48230 <https://github.com/ceph/ceph/pull/48230>`_, J. Eric Ivancich) -* rgw: fix bug where variable referenced after data moved out (`pr#48229 <https://github.com/ceph/ceph/pull/48229>`_, J. Eric Ivancich) -* rgw: fix data corruption due to network jitter (`pr#48274 <https://github.com/ceph/ceph/pull/48274>`_, Shasha Lu) -* rgw: Fix data race in ChangeStatus (`pr#47196 <https://github.com/ceph/ceph/pull/47196>`_, Adam C. Emerson) -* rgw: fix ListBucketMultiparts response with common prefixes (`pr#44558 <https://github.com/ceph/ceph/pull/44558>`_, Casey Bodley) -* rgw: fix segfault in OpsLogRados::log when realm is reloaded (`pr#45410 <https://github.com/ceph/ceph/pull/45410>`_, Cory Snyder) -* rgw: fix self-comparison for RGWCopyObj optimization (`pr#43802 <https://github.com/ceph/ceph/pull/43802>`_, Casey Bodley) -* rgw: Guard against malformed bucket URLs (`pr#47194 <https://github.com/ceph/ceph/pull/47194>`_, Adam C. Emerson) -* rgw: initialize rgw_log_entry::identity_type (`pr#49142 <https://github.com/ceph/ceph/pull/49142>`_, Casey Bodley) -* rgw: log access key id in ops logs (`pr#46622 <https://github.com/ceph/ceph/pull/46622>`_, Cory Snyder) -* rgw: log deletion status of individual objects in multi object delete request (`pr#48348 <https://github.com/ceph/ceph/pull/48348>`_, Cory Snyder) -* rgw: maintain object instance within RGWRadosObject::get_obj_state method (`pr#47266 <https://github.com/ceph/ceph/pull/47266>`_, Casey Bodley, Cory Snyder) -* rgw: OpsLogFile::stop() signals under mutex (`pr#46039 <https://github.com/ceph/ceph/pull/46039>`_, Casey Bodley) -* rgw: remove rgw_rados_pool_pg_num_min and its use on pool creation use the cluster defaults for pg_num_min (`pr#46235 <https://github.com/ceph/ceph/pull/46235>`_, Casey Bodley) -* rgw: reopen ops log file on sighup (`pr#46619 <https://github.com/ceph/ceph/pull/46619>`_, Cory Snyder) -* rgw: return OK on consecutive complete-multipart reqs (`pr#45486 <https://github.com/ceph/ceph/pull/45486>`_, Mark Kogan) -* rgw: RGWCoroutine::set_sleeping() checks for null stack (`pr#46040 <https://github.com/ceph/ceph/pull/46040>`_, Or Friedmann, Casey Bodley) -* rgw: splitting gc chains into smaller parts to prevent (`pr#48240 <https://github.com/ceph/ceph/pull/48240>`_, Pritha Srivastava) -* rgw: x-amz-date change breaks certain cases of aws sig v4 (`pr#48313 <https://github.com/ceph/ceph/pull/48313>`_, Marcus Watts) -* rgw: on FIPS enabled, fix segfault performing s3 multipart PUT (`pr#46715 <https://github.com/ceph/ceph/pull/46715>`_, Mark Kogan) -* rgw_reshard: drop olh entries with empty name (`pr#45847 <https://github.com/ceph/ceph/pull/45847>`_, Dan van der Ster, Casey Bodley) -* rgw_rest_user_policy: Fix GetUserPolicy & ListUserPolicies responses (`pr#47234 <https://github.com/ceph/ceph/pull/47234>`_, Sumedh A. Kulkarni) -* rgwlc: don't incorrectly expire delete markers when !next_key_name (`pr#47231 <https://github.com/ceph/ceph/pull/47231>`_, Matt Benjamin) -* rgwlc: fix segfault resharding during lc (`pr#46744 <https://github.com/ceph/ceph/pull/46744>`_, Mark Kogan) -* rpm: use system libpmem on Centos 9 Stream (`pr#46211 <https://github.com/ceph/ceph/pull/46211>`_, Ilya Dryomov) -* run-make-check.sh: enable RBD persistent caches (`pr#45991 <https://github.com/ceph/ceph/pull/45991>`_, Ilya Dryomov) -* SimpleRADOSStriper: Avoid moving bufferlists by using deque in read() (`pr#48187 <https://github.com/ceph/ceph/pull/48187>`_, Matan Breizman) -* test/bufferlist: ensure rebuild_aligned_size_and_memory() always rebuilds (`pr#46215 <https://github.com/ceph/ceph/pull/46215>`_, Radoslaw Zarzynski) -* test/cli-integration/rbd: iSCSI REST API responses aren't pretty-printed anymore (`pr#47920 <https://github.com/ceph/ceph/pull/47920>`_, Ilya Dryomov) -* test/{librbd, rgw}: increase delay between and number of bind attempts (`pr#48024 <https://github.com/ceph/ceph/pull/48024>`_, Ilya Dryomov, Kefu Chai) -* test: bump DecayCounter.steady acceptable error (`pr#48031 <https://github.com/ceph/ceph/pull/48031>`_, Patrick Donnelly) -* test: fix TierFlushDuringFlush to wait until dedup_tier is set on bas… (`issue#53855 <http://tracker.ceph.com/issues/53855>`_, `pr#46748 <https://github.com/ceph/ceph/pull/46748>`_, Myoungwon Oh, Sungmin Lee) -* test: No direct use of nose (`pr#46255 <https://github.com/ceph/ceph/pull/46255>`_, Steve Kowalik, Kefu Chai) -* tooling: Change mrun to use bash (`pr#46077 <https://github.com/ceph/ceph/pull/46077>`_, Adam C. Emerson) -* tools: ceph-objectstore-tool is able to trim solely pg log dups' entries (`pr#46631 <https://github.com/ceph/ceph/pull/46631>`_, Radosław Zarzyński, Radoslaw Zarzynski) -* Updates to fix `make check` failures (`pr#47803 <https://github.com/ceph/ceph/pull/47803>`_, Tim Serong, Kefu Chai, Willem Jan Withagen, Nathan Cutler, Boris Ranto, Laura Flores, Pete Zaitcev) -* v16.2.10 (`pr#47220 <https://github.com/ceph/ceph/pull/47220>`_, Kotresh HR, Seena Fallah) -* v16.2.9 (`pr#46336 <https://github.com/ceph/ceph/pull/46336>`_, Cory Snyder) -* win32_deps_build.sh: master -> main for wnbd (`pr#46762 <https://github.com/ceph/ceph/pull/46762>`_, Ilya Dryomov) - -v16.2.10 Pacific -================ - -This is a hotfix release that resolves two security flaws. - -Notable Changes ---------------- - -* Users who were running OpenStack Manila to export native CephFS and who - upgraded their Ceph cluster from Nautilus (or earlier) to a later - major version were vulnerable to an attack by malicious users. The - vulnerability allowed users to obtain access to arbitrary portions of - the CephFS filesystem hierarchy instead of being properly restricted - to their own subvolumes. The vulnerability is due to a bug in the - "volumes" plugin in Ceph Manager. This plugin is responsible for - managing Ceph File System subvolumes, which are used by OpenStack - Manila services as a way to provide shares to Manila users. - - With this hotfix, the vulnerability is fixed. Administrators who are - concerned they may have been impacted should audit the CephX keys in - their cluster for proper path restrictions. - - Again, this vulnerability impacts only OpenStack Manila clusters that - provided native CephFS access to their users. - -* A regression made it possible to dereference a null pointer for - s3website requests that don't refer to a bucket resulting in an RGW - segfault. - -Changelog ---------- -* mgr/volumes: Fix subvolume discover during upgrade (:ref:`CVE-2022-0670`, Kotresh HR) -* mgr/volumes: V2 Fix for test_subvolume_retain_snapshot_invalid_recreate (:ref:`CVE-2022-0670`, Kotresh HR) -* qa: validate subvolume discover on upgrade (Kotresh HR) -* rgw: s3website check for bucket before retargeting (Seena Fallah) - -v16.2.9 Pacific -=============== - -This is a hotfix release in the Pacific series to address a bug in 16.2.8 that could cause MGRs to deadlock. See https://tracker.ceph.com/issues/55687. - -Changelog ---------- - -* mgr/ActivePyModules.cc: fix cases where GIL is held while attempting to lock mutex (`pr#46302 <https://github.com/ceph/ceph/pull/46302>`_, Cory Snyder) - -v16.2.8 Pacific -=============== - -This is the eighth backport release in the Pacific series. - -Notable Changes ---------------- - -* MON/MGR: Pools can now be created with `--bulk` flag. Any pools created with `bulk` - will use a profile of the `pg_autoscaler` that provides more performance from the start. - However, any pools created without the `--bulk` flag will remain using it's old behavior - by default. For more details, see: - - https://docs.ceph.com/en/latest/rados/operations/placement-groups/ - -* MGR: The pg_autoscaler can now be turned `on` and `off` globally - with the `noautoscale` flag. By default this flag is unset and - the default pg_autoscale mode remains the same. - For more details, see: - - https://docs.ceph.com/en/latest/rados/operations/placement-groups/ - -* A health warning will now be reported if the ``require-osd-release`` flag is not - set to the appropriate release after a cluster upgrade. - -* CephFS: Upgrading Ceph Metadata Servers when using multiple active MDSs requires - ensuring no pending stray entries which are directories are present for active - ranks except rank 0. See :ref:`upgrading_from_octopus_or_nautilus`. - -Changelog ---------- - -* [Revert] bluestore: set upper and lower bounds on rocksdb omap iterators (`pr#46092 <https://github.com/ceph/ceph/pull/46092>`_, Neha Ojha) -* admin/doc-requirements: bump sphinx to 4.4.0 (`pr#45876 <https://github.com/ceph/ceph/pull/45876>`_, Kefu Chai) -* auth,mon: don't log "unable to find a keyring" error when key is given (`pr#43313 <https://github.com/ceph/ceph/pull/43313>`_, Ilya Dryomov) -* backport nbd cookie support (`pr#45582 <https://github.com/ceph/ceph/pull/45582>`_, Prasanna Kumar Kalever) -* backport of monitoring related PRs (`pr#45980 <https://github.com/ceph/ceph/pull/45980>`_, Pere Diaz Bou, Travis Nielsen, Aashish Sharma, Nizamudeen A, Arthur Outhenin-Chalandre) -* bluestore: set upper and lower bounds on rocksdb omap iterators (`pr#45963 <https://github.com/ceph/ceph/pull/45963>`_, Cory Snyder) -* build: Add some debugging messages (`pr#45753 <https://github.com/ceph/ceph/pull/45753>`_, David Galloway) -* build: install-deps failing in docker build (`pr#45849 <https://github.com/ceph/ceph/pull/45849>`_, Nizamudeen A, Ernesto Puerta) -* ceph-fuse: perform cleanup if test_dentry_handling failed (`pr#45351 <https://github.com/ceph/ceph/pull/45351>`_, Nikhilkumar Shelke) -* ceph-volume: abort when passed devices have partitions (`pr#45146 <https://github.com/ceph/ceph/pull/45146>`_, Guillaume Abrioux) -* ceph-volume: don't use MultiLogger in find_executable_on_host() (`pr#44701 <https://github.com/ceph/ceph/pull/44701>`_, Guillaume Abrioux) -* ceph-volume: fix error 'KeyError' with inventory (`pr#44884 <https://github.com/ceph/ceph/pull/44884>`_, Guillaume Abrioux) -* ceph-volume: fix regression introcuded via #43536 (`pr#44644 <https://github.com/ceph/ceph/pull/44644>`_, Guillaume Abrioux) -* ceph-volume: fix tags dict output in `lvm list` (`pr#44767 <https://github.com/ceph/ceph/pull/44767>`_, Guillaume Abrioux) -* ceph-volume: honour osd_dmcrypt_key_size option (`pr#44973 <https://github.com/ceph/ceph/pull/44973>`_, Guillaume Abrioux) -* ceph-volume: human_readable_size() refactor (`pr#44209 <https://github.com/ceph/ceph/pull/44209>`_, Guillaume Abrioux) -* ceph-volume: improve mpath devices support (`pr#44789 <https://github.com/ceph/ceph/pull/44789>`_, Guillaume Abrioux) -* ceph-volume: make it possible to skip needs_root() (`pr#44319 <https://github.com/ceph/ceph/pull/44319>`_, Guillaume Abrioux) -* ceph-volume: show RBD devices as not available (`pr#44708 <https://github.com/ceph/ceph/pull/44708>`_, Michael Fritch) -* ceph/admin: s/master/main (`pr#45596 <https://github.com/ceph/ceph/pull/45596>`_, Zac Dover) -* Cephadm Pacific Batch Backport April (`pr#45919 <https://github.com/ceph/ceph/pull/45919>`_, Adam King, Teoman ONAY, Redouane Kachach, Lukas Mayer, Melissa Li) -* Cephadm Pacific Batch Backport March (`pr#45716 <https://github.com/ceph/ceph/pull/45716>`_, Adam King, Redouane Kachach, Matan Breizman, wangyunqing) -* cephadm/ceph-volume: do not use lvm binary in containers (`pr#43954 <https://github.com/ceph/ceph/pull/43954>`_, Guillaume Abrioux, Sage Weil) -* cephadm: _parse_ipv6_route: Fix parsing ifs w/o route (`pr#44877 <https://github.com/ceph/ceph/pull/44877>`_, Sebastian Wagner) -* cephadm: add shared_ceph_folder opt to ceph-volume subcommand (`pr#44880 <https://github.com/ceph/ceph/pull/44880>`_, Guillaume Abrioux) -* cephadm: check if cephadm is root after cli is parsed (`pr#44634 <https://github.com/ceph/ceph/pull/44634>`_, John Mulligan) -* cephadm: chown the prometheus data dir during redeploy (`pr#45046 <https://github.com/ceph/ceph/pull/45046>`_, Michael Fritch) -* cephadm: deal with ambiguity within normalize_image_digest (`pr#44632 <https://github.com/ceph/ceph/pull/44632>`_, Sebastian Wagner) -* cephadm: fix broken telemetry documentation link (`pr#45803 <https://github.com/ceph/ceph/pull/45803>`_, Laura Flores) -* cephadm: infer the default container image during pull (`pr#45569 <https://github.com/ceph/ceph/pull/45569>`_, Michael Fritch) -* cephadm: make extract_uid_gid errors more readable (`pr#44528 <https://github.com/ceph/ceph/pull/44528>`_, Sebastian Wagner) -* cephadm: November batch 2 (`pr#44446 <https://github.com/ceph/ceph/pull/44446>`_, Sage Weil, Adam King, Sebastian Wagner, Melissa Li, Michael Fritch, Guillaume Abrioux) -* cephadm: pass `CEPH_VOLUME_SKIP_RESTORECON=yes` (backport) (`pr#44248 <https://github.com/ceph/ceph/pull/44248>`_, Guillaume Abrioux) -* cephadm: preserve `authorized_keys` file during upgrade (`pr#45355 <https://github.com/ceph/ceph/pull/45355>`_, Michael Fritch) -* cephadm: Remove containers pids-limit (`pr#45580 <https://github.com/ceph/ceph/pull/45580>`_, Ilya Dryomov, Teoman ONAY) -* cephadm: revert pids limit (`pr#45936 <https://github.com/ceph/ceph/pull/45936>`_, Adam King) -* cephadm: validate that the constructed YumDnf baseurl is usable (`pr#44882 <https://github.com/ceph/ceph/pull/44882>`_, John Mulligan) -* cls/journal: skip disconnected clients when calculating min_commit_position (`pr#44690 <https://github.com/ceph/ceph/pull/44690>`_, Mykola Golub) -* cls/rbd: GroupSnapshotNamespace comparator violates ordering rules (`pr#45075 <https://github.com/ceph/ceph/pull/45075>`_, Ilya Dryomov) -* cmake/modules: always use the python3 specified in command line (`pr#45967 <https://github.com/ceph/ceph/pull/45967>`_, Kefu Chai) -* cmake: pass RTE_DEVEL_BUILD=n when building dpdk (`pr#45262 <https://github.com/ceph/ceph/pull/45262>`_, Kefu Chai) -* common/PriorityCache: low perf counters priorities for submodules (`pr#44175 <https://github.com/ceph/ceph/pull/44175>`_, Igor Fedotov) -* common: avoid pthread_mutex_unlock twice (`pr#45464 <https://github.com/ceph/ceph/pull/45464>`_, Dai Zhiwei) -* common: fix FTBFS due to dout & need_dynamic on GCC-12 (`pr#45373 <https://github.com/ceph/ceph/pull/45373>`_, Radoslaw Zarzynski) -* common: fix missing name in PriorityCache perf counters (`pr#45588 <https://github.com/ceph/ceph/pull/45588>`_, Laura Flores) -* common: replace BitVector::NoInitAllocator with wrapper struct (`pr#45179 <https://github.com/ceph/ceph/pull/45179>`_, Casey Bodley) -* crush: Fix segfault in update_from_hook (`pr#44897 <https://github.com/ceph/ceph/pull/44897>`_, Adam Kupczyk) -* doc/cephadm: Add CentOS Stream install instructions (`pr#44996 <https://github.com/ceph/ceph/pull/44996>`_, Patrick C. F. Ernzer) -* doc/cephadm: Co-location of daemons (`pr#44879 <https://github.com/ceph/ceph/pull/44879>`_, Sebastian Wagner) -* doc/cephadm: Doc backport (`pr#44525 <https://github.com/ceph/ceph/pull/44525>`_, Foad Lind, Sebastian Wagner) -* doc/cephadm: improve the development doc a bit (`pr#44636 <https://github.com/ceph/ceph/pull/44636>`_, Radoslaw Zarzynski) -* doc/cephadm: remove duplicate deployment scenario section (`pr#44660 <https://github.com/ceph/ceph/pull/44660>`_, Melissa Li) -* doc/dev: s/repostory/repository/ (really) (`pr#45789 <https://github.com/ceph/ceph/pull/45789>`_, Zac Dover) -* doc/start: add testing support information (`pr#45989 <https://github.com/ceph/ceph/pull/45989>`_, Zac Dover) -* doc/start: include A. D'Atri's hardware-recs recs (`pr#45298 <https://github.com/ceph/ceph/pull/45298>`_, Zac Dover) -* doc/start: remove journal info from hardware recs (`pr#45123 <https://github.com/ceph/ceph/pull/45123>`_, Zac Dover) -* doc/start: remove osd stub from hardware recs (`pr#45316 <https://github.com/ceph/ceph/pull/45316>`_, Zac Dover) -* doc: prerequisites fix for cephFS mount (`pr#44272 <https://github.com/ceph/ceph/pull/44272>`_, Nikhilkumar Shelke) -* doc: Use older mistune (`pr#44226 <https://github.com/ceph/ceph/pull/44226>`_, David Galloway) -* Enable autotune for osd_memory_target on bootstrap (`pr#44633 <https://github.com/ceph/ceph/pull/44633>`_, Melissa Li) -* krbd: return error when no initial monitor address found (`pr#45003 <https://github.com/ceph/ceph/pull/45003>`_, Burt Holzman) -* librados: check latest osdmap on ENOENT in pool_reverse_lookup() (`pr#45586 <https://github.com/ceph/ceph/pull/45586>`_, Ilya Dryomov) -* librbd/cache/pwl: misc backports (`pr#44199 <https://github.com/ceph/ceph/pull/44199>`_, Jianpeng Ma, Jason Dillaman) -* librbd: diff-iterate reports incorrect offsets in fast-diff mode (`pr#44547 <https://github.com/ceph/ceph/pull/44547>`_, Ilya Dryomov) -* librbd: fix use-after-free on ictx in list_descendants() (`pr#44999 <https://github.com/ceph/ceph/pull/44999>`_, Ilya Dryomov, Wang ShuaiChao) -* librbd: fix various memory leaks (`pr#44998 <https://github.com/ceph/ceph/pull/44998>`_, Or Ozeri) -* librbd: make diff-iterate in fast-diff mode sort and merge reported extents (`pr#45638 <https://github.com/ceph/ceph/pull/45638>`_, Ilya Dryomov) -* librbd: readv/writev fix iovecs length computation overflow (`pr#45561 <https://github.com/ceph/ceph/pull/45561>`_, Jonas Pfefferle) -* librbd: restore diff-iterate include_parent functionality in fast-diff mode (`pr#44594 <https://github.com/ceph/ceph/pull/44594>`_, Ilya Dryomov) -* librgw: make rgw file handle versioned (`pr#45495 <https://github.com/ceph/ceph/pull/45495>`_, Xuehan Xu) -* librgw: treat empty root path as "/" on mount (`pr#43968 <https://github.com/ceph/ceph/pull/43968>`_, Matt Benjamin) -* mds,client: add new getvxattr op (`pr#45487 <https://github.com/ceph/ceph/pull/45487>`_, Milind Changire) -* mds: add mds_dir_max_entries config option (`pr#44512 <https://github.com/ceph/ceph/pull/44512>`_, Yongseok Oh) -* mds: directly return just after responding the link request (`pr#44620 <https://github.com/ceph/ceph/pull/44620>`_, Xiubo Li) -* mds: dump tree '/' when the path is empty (`pr#44622 <https://github.com/ceph/ceph/pull/44622>`_, Xiubo Li) -* mds: ensure that we send the btime in cap messages (`pr#45163 <https://github.com/ceph/ceph/pull/45163>`_, Jeff Layton) -* mds: fails to reintegrate strays if destdn's directory is full (ENOSPC) (`pr#44513 <https://github.com/ceph/ceph/pull/44513>`_, Patrick Donnelly) -* mds: fix seg fault in expire_recursive (`pr#45099 <https://github.com/ceph/ceph/pull/45099>`_, 胡玮文) -* mds: ignore unknown client op when tracking op latency (`pr#44975 <https://github.com/ceph/ceph/pull/44975>`_, Venky Shankar) -* mds: kill session when mds do ms_handle_remote_reset (`issue#53911 <http://tracker.ceph.com/issues/53911>`_, `pr#45100 <https://github.com/ceph/ceph/pull/45100>`_, YunfeiGuan) -* mds: mds_oft_prefetch_dirfrags default to false (`pr#45016 <https://github.com/ceph/ceph/pull/45016>`_, Dan van der Ster) -* mds: opening connection to up:replay/up:creating daemon causes message drop (`pr#44296 <https://github.com/ceph/ceph/pull/44296>`_, Patrick Donnelly) -* mds: PurgeQueue.cc fix for 32bit compilation (`pr#44168 <https://github.com/ceph/ceph/pull/44168>`_, Duncan Bellamy) -* mds: recursive scrub does not trigger stray reintegration (`pr#44514 <https://github.com/ceph/ceph/pull/44514>`_, Patrick Donnelly) -* mds: remove the duplicated or incorrect respond (`pr#44623 <https://github.com/ceph/ceph/pull/44623>`_, Xiubo Li) -* mds: reset heartbeat in each MDSContext complete() (`pr#44551 <https://github.com/ceph/ceph/pull/44551>`_, Xiubo Li) -* mgr/autoscaler: Introduce noautoscale flag (`pr#44540 <https://github.com/ceph/ceph/pull/44540>`_, Kamoltat) -* mgr/cephadm/iscsi: use `mon_command` in `post_remove` instead of `check_mon_command` (`pr#44830 <https://github.com/ceph/ceph/pull/44830>`_, Melissa Li) -* mgr/cephadm: Add client.admin keyring when upgrading from older version (`pr#44625 <https://github.com/ceph/ceph/pull/44625>`_, Sebastian Wagner) -* mgr/cephadm: add keep-alive requests to ssh connections (`pr#45632 <https://github.com/ceph/ceph/pull/45632>`_, Adam King) -* mgr/cephadm: Add snmp-gateway service support (`pr#44529 <https://github.com/ceph/ceph/pull/44529>`_, Sebastian Wagner, Paul Cuzner) -* mgr/cephadm: allow miscellaneous container args at service level (`pr#44829 <https://github.com/ceph/ceph/pull/44829>`_, Adam King) -* mgr/cephadm: auto-enable mirroring module when deploying service (`pr#44661 <https://github.com/ceph/ceph/pull/44661>`_, John Mulligan) -* mgr/cephadm: avoid repeated calls to get_module_option (`pr#44535 <https://github.com/ceph/ceph/pull/44535>`_, Sage Weil) -* mgr/cephadm: block draining last _admin host (`pr#45229 <https://github.com/ceph/ceph/pull/45229>`_, Adam King) -* mgr/cephadm: block removing last instance of _admin label (`pr#45231 <https://github.com/ceph/ceph/pull/45231>`_, Adam King) -* mgr/cephadm: Delete ceph.target if last cluster (`pr#45228 <https://github.com/ceph/ceph/pull/45228>`_, Redouane Kachach) -* mgr/cephadm: extend extra_container_args to other service types (`pr#45234 <https://github.com/ceph/ceph/pull/45234>`_, Adam King) -* mgr/cephadm: fix 'cephadm osd activate' on existing osd devices (`pr#44627 <https://github.com/ceph/ceph/pull/44627>`_, Sage Weil) -* mgr/cephadm: fix 'mgr/cephadm: spec.virtual_ip param should be used by the ingress daemon (`pr#44628 <https://github.com/ceph/ceph/pull/44628>`_, Guillaume Abrioux, Francesco Pantano, Sebastian Wagner) -* mgr/cephadm: Fix count for OSDs with OSD specs (`pr#44629 <https://github.com/ceph/ceph/pull/44629>`_, Sebastian Wagner) -* mgr/cephadm: fix minor grammar nit in Dry-Runs message (`pr#44637 <https://github.com/ceph/ceph/pull/44637>`_, James McClune) -* mgr/cephadm: fix tcmu-runner cephadm_stray_daemon (`pr#44630 <https://github.com/ceph/ceph/pull/44630>`_, Melissa Li) -* mgr/cephadm: Fix test_facts (`pr#44530 <https://github.com/ceph/ceph/pull/44530>`_, Sebastian Wagner) -* mgr/cephadm: less log noise when config checks fail (`pr#44526 <https://github.com/ceph/ceph/pull/44526>`_, Sage Weil) -* mgr/cephadm: nfs migration: avoid port conflicts (`pr#44631 <https://github.com/ceph/ceph/pull/44631>`_, Sebastian Wagner) -* mgr/cephadm: Show an error when invalid format (`pr#45226 <https://github.com/ceph/ceph/pull/45226>`_, Redouane Kachach) -* mgr/cephadm: store contianer registry credentials in config-key (`pr#44658 <https://github.com/ceph/ceph/pull/44658>`_, Daniel Pivonka) -* mgr/cephadm: try to get FQDN for configuration files (`pr#45620 <https://github.com/ceph/ceph/pull/45620>`_, Tatjana Dehler) -* mgr/cephadm: update monitoring stack versions (`pr#45940 <https://github.com/ceph/ceph/pull/45940>`_, Aashish Sharma, Ernesto Puerta) -* mgr/cephadm: validating service_id for MDS (`pr#45227 <https://github.com/ceph/ceph/pull/45227>`_, Redouane Kachach) -* mgr/dashboard: "Please expand your cluster first" shouldn't be shown if cluster is already meaningfully running (`pr#45044 <https://github.com/ceph/ceph/pull/45044>`_, Volker Theile) -* mgr/dashboard: add test coverage for API docs (SwaggerUI) (`pr#44533 <https://github.com/ceph/ceph/pull/44533>`_, Alfonso Martínez) -* mgr/dashboard: avoid tooltip if disk_usage=null and fast-diff enabled (`pr#44149 <https://github.com/ceph/ceph/pull/44149>`_, Avan Thakkar) -* mgr/dashboard: cephadm e2e job improvements (`pr#44938 <https://github.com/ceph/ceph/pull/44938>`_, Nizamudeen A, Alfonso Martínez) -* mgr/dashboard: cephadm e2e job: improvements (`pr#44382 <https://github.com/ceph/ceph/pull/44382>`_, Alfonso Martínez) -* mgr/dashboard: change privacy protocol field from required to optional (`pr#45052 <https://github.com/ceph/ceph/pull/45052>`_, Avan Thakkar) -* mgr/dashboard: Cluster Expansion - Review Section: fixes and improvements (`pr#44389 <https://github.com/ceph/ceph/pull/44389>`_, Aashish Sharma) -* mgr/dashboard: Compare values of MTU alert by device (`pr#45813 <https://github.com/ceph/ceph/pull/45813>`_, Aashish Sharma, Patrick Seidensal) -* mgr/dashboard: dashboard does not show degraded objects if they are less than 0.5% under "Dashboard->Capacity->Objects block (`pr#44091 <https://github.com/ceph/ceph/pull/44091>`_, Aashish Sharma) -* mgr/dashboard: dashboard turns telemetry off when configuring report (`pr#45111 <https://github.com/ceph/ceph/pull/45111>`_, Sarthak0702, Aaryan Porwal) -* mgr/dashboard: datatable in Cluster Host page hides wrong column on selection (`pr#45861 <https://github.com/ceph/ceph/pull/45861>`_, Sarthak0702) -* mgr/dashboard: Directories Menu Can't Use on Ceph File System Dashboard (`pr#45028 <https://github.com/ceph/ceph/pull/45028>`_, Sarthak0702) -* mgr/dashboard: extend daemon actions to host details (`pr#45721 <https://github.com/ceph/ceph/pull/45721>`_, Nizamudeen A) -* mgr/dashboard: fix api test issue with pip (`pr#45880 <https://github.com/ceph/ceph/pull/45880>`_, Ernesto Puerta) -* mgr/dashboard: fix frontend deps' vulnerabilities (`pr#44297 <https://github.com/ceph/ceph/pull/44297>`_, Alfonso Martínez) -* mgr/dashboard: fix Grafana OSD/host panels (`pr#44775 <https://github.com/ceph/ceph/pull/44775>`_, Patrick Seidensal) -* mgr/dashboard: fix orchestrator/02-hosts-inventory.e2e failure (`pr#44467 <https://github.com/ceph/ceph/pull/44467>`_, Nizamudeen A) -* mgr/dashboard: fix timeout error in dashboard cephadm e2e job (`pr#44468 <https://github.com/ceph/ceph/pull/44468>`_, Nizamudeen A) -* mgr/dashboard: fix white screen on Safari (`pr#45301 <https://github.com/ceph/ceph/pull/45301>`_, 胡玮文) -* mgr/dashboard: fix: get SMART data from single-daemon device (`pr#44597 <https://github.com/ceph/ceph/pull/44597>`_, Alfonso Martínez) -* mgr/dashboard: highlight the search text in cluster logs (`pr#45678 <https://github.com/ceph/ceph/pull/45678>`_, Sarthak0702) -* mgr/dashboard: Implement drain host functionality in dashboard (`pr#44376 <https://github.com/ceph/ceph/pull/44376>`_, Nizamudeen A) -* mgr/dashboard: Improve notifications for osd nearfull, full (`pr#44876 <https://github.com/ceph/ceph/pull/44876>`_, Aashish Sharma) -* mgr/dashboard: Imrove error message of '/api/grafana/validation' API endpoint (`pr#45956 <https://github.com/ceph/ceph/pull/45956>`_, Volker Theile) -* mgr/dashboard: introduce HAProxy metrics for RGW (`pr#44273 <https://github.com/ceph/ceph/pull/44273>`_, Avan Thakkar) -* mgr/dashboard: introduce separate front-end component for API docs (`pr#44400 <https://github.com/ceph/ceph/pull/44400>`_, Aashish Sharma) -* mgr/dashboard: Language dropdown box is partly hidden on login page (`pr#45618 <https://github.com/ceph/ceph/pull/45618>`_, Volker Theile) -* mgr/dashboard: monitoring:Implement BlueStore onode hit/miss counters into the dashboard (`pr#44650 <https://github.com/ceph/ceph/pull/44650>`_, Aashish Sharma) -* mgr/dashboard: NFS non-existent files cleanup (`pr#44046 <https://github.com/ceph/ceph/pull/44046>`_, Alfonso Martínez) -* mgr/dashboard: NFS pages shows 'Page not found' (`pr#45723 <https://github.com/ceph/ceph/pull/45723>`_, Volker Theile) -* mgr/dashboard: Notification banners at the top of the UI have fixed height (`pr#44756 <https://github.com/ceph/ceph/pull/44756>`_, Nizamudeen A, Waad AlKhoury) -* mgr/dashboard: perform daemon actions (`pr#45203 <https://github.com/ceph/ceph/pull/45203>`_, Pere Diaz Bou) -* mgr/dashboard: Pull latest translations from Transifex (`pr#45418 <https://github.com/ceph/ceph/pull/45418>`_, Volker Theile) -* mgr/dashboard: Refactoring dashboard cephadm checks (`pr#44652 <https://github.com/ceph/ceph/pull/44652>`_, Nizamudeen A) -* mgr/dashboard: RGW users and buckets tables are empty if the selected gateway is down (`pr#45868 <https://github.com/ceph/ceph/pull/45868>`_, Volker Theile) -* mgr/dashboard: run-backend-api-tests.sh: Older setuptools (`pr#44377 <https://github.com/ceph/ceph/pull/44377>`_, David Galloway) -* mgr/dashboard: set appropriate baseline branch for applitools (`pr#44935 <https://github.com/ceph/ceph/pull/44935>`_, Nizamudeen A) -* mgr/dashboard: support snmp-gateway service creation from UI (`pr#44977 <https://github.com/ceph/ceph/pull/44977>`_, Avan Thakkar) -* mgr/dashboard: Table columns hiding fix (`issue#51119 <http://tracker.ceph.com/issues/51119>`_, `pr#45725 <https://github.com/ceph/ceph/pull/45725>`_, Daniel Persson) -* mgr/dashboard: Update Angular version to 12 (`pr#44534 <https://github.com/ceph/ceph/pull/44534>`_, Ernesto Puerta, Nizamudeen A) -* mgr/dashboard: upgrade Cypress to the latest stable version (`pr#44086 <https://github.com/ceph/ceph/pull/44086>`_, Sage Weil, Alfonso Martínez) -* mgr/dashboard: use -f for npm ci to skip fsevents error (`pr#44105 <https://github.com/ceph/ceph/pull/44105>`_, Duncan Bellamy) -* mgr/devicehealth: fix missing timezone from time delta calculation (`pr#44325 <https://github.com/ceph/ceph/pull/44325>`_, Yaarit Hatuka) -* mgr/devicehealth: skip null pages when extracting wear level (`pr#45151 <https://github.com/ceph/ceph/pull/45151>`_, Yaarit Hatuka) -* mgr/nfs: allow dynamic update of cephfs nfs export (`pr#45543 <https://github.com/ceph/ceph/pull/45543>`_, Ramana Raja) -* mgr/nfs: support managing exports without orchestration enabled (`pr#45508 <https://github.com/ceph/ceph/pull/45508>`_, John Mulligan) -* mgr/orchestrator: add filtering and count option for orch host ls (`pr#44531 <https://github.com/ceph/ceph/pull/44531>`_, Adam King) -* mgr/prometheus: Added `avail_raw` field for Pools DF Prometheus mgr module (`pr#45236 <https://github.com/ceph/ceph/pull/45236>`_, Konstantin Shalygin) -* mgr/prometheus: define module options for standby (`pr#44205 <https://github.com/ceph/ceph/pull/44205>`_, Sage Weil) -* mgr/prometheus: expose ceph healthchecks as metrics (`pr#44480 <https://github.com/ceph/ceph/pull/44480>`_, Paul Cuzner, Sebastian Wagner) -* mgr/prometheus: Fix metric types from gauge to counter (`pr#43187 <https://github.com/ceph/ceph/pull/43187>`_, Patrick Seidensal) -* mgr/prometheus: Fix the per method stats exported (`pr#44146 <https://github.com/ceph/ceph/pull/44146>`_, Paul Cuzner) -* mgr/prometheus: Make prometheus standby behaviour configurable (`pr#43897 <https://github.com/ceph/ceph/pull/43897>`_, Roland Sommer) -* mgr/rbd_support: cast pool_id from int to str when collecting LevelSpec (`pr#45532 <https://github.com/ceph/ceph/pull/45532>`_, Ilya Dryomov) -* mgr/rbd_support: fix schedule remove (`pr#45005 <https://github.com/ceph/ceph/pull/45005>`_, Sunny Kumar) -* mgr/snap_schedule: backports (`pr#45906 <https://github.com/ceph/ceph/pull/45906>`_, Venky Shankar, Milind Changire) -* mgr/stats: exception handling for ceph fs perf stats command (`pr#44516 <https://github.com/ceph/ceph/pull/44516>`_, Nikhilkumar Shelke) -* mgr/telemetry: fix waiting for mgr to warm up (`pr#45773 <https://github.com/ceph/ceph/pull/45773>`_, Yaarit Hatuka) -* mgr/volumes: A few mgr volumes pacific backports (`pr#45205 <https://github.com/ceph/ceph/pull/45205>`_, Kotresh HR) -* mgr/volumes: Subvolume removal and clone failure fixes (`pr#42932 <https://github.com/ceph/ceph/pull/42932>`_, Kotresh HR) -* mgr/volumes: the 'mode' should honor idempotent subvolume creation (`pr#45474 <https://github.com/ceph/ceph/pull/45474>`_, Nikhilkumar Shelke) -* mgr: Fix ceph_daemon label in ceph_rgw\_\* metrics (`pr#44885 <https://github.com/ceph/ceph/pull/44885>`_, Benoît Knecht) -* mgr: fix locking for MetadataUpdate::finish (`pr#44212 <https://github.com/ceph/ceph/pull/44212>`_, Sage Weil) -* mgr: TTL Cache in mgr module (`pr#44750 <https://github.com/ceph/ceph/pull/44750>`_, Waad AlKhoury, Pere Diaz Bou) -* mgr: various fixes for mgr scalability (`pr#44869 <https://github.com/ceph/ceph/pull/44869>`_, Neha Ojha, Sage Weil) -* mon/MDSMonitor: sanity assert when inline data turned on in MDSMap from v16.2.4 -> v16.2.[567] (`pr#44910 <https://github.com/ceph/ceph/pull/44910>`_, Patrick Donnelly) -* mon/MgrStatMonitor: do not spam subscribers (mgr) with service_map (`pr#44721 <https://github.com/ceph/ceph/pull/44721>`_, Sage Weil) -* mon/MonCommands.h: fix target_size_ratio range (`pr#45397 <https://github.com/ceph/ceph/pull/45397>`_, Kamoltat) -* mon/OSDMonitor: avoid null dereference if stats are not available (`pr#44698 <https://github.com/ceph/ceph/pull/44698>`_, Josh Durgin) -* mon: Abort device health when device not found (`pr#44959 <https://github.com/ceph/ceph/pull/44959>`_, Benoît Knecht) -* mon: do not quickly mark mds laggy when MON_DOWN (`pr#43698 <https://github.com/ceph/ceph/pull/43698>`_, Sage Weil, Patrick Donnelly) -* mon: Omit MANY_OBJECTS_PER_PG warning when autoscaler is on (`pr#45152 <https://github.com/ceph/ceph/pull/45152>`_, Christopher Hoffman) -* mon: osd pool create <pool-name> with --bulk flag (`pr#44847 <https://github.com/ceph/ceph/pull/44847>`_, Kamoltat) -* mon: prevent new sessions during shutdown (`pr#44543 <https://github.com/ceph/ceph/pull/44543>`_, Sage Weil) -* monitoring/grafana: Grafana query tester (`pr#44316 <https://github.com/ceph/ceph/pull/44316>`_, Ernesto Puerta, Pere Diaz Bou) -* monitoring: mention PyYAML only once in requirements (`pr#44944 <https://github.com/ceph/ceph/pull/44944>`_, Rishabh Dave) -* os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max\_\* options (`pr#43745 <https://github.com/ceph/ceph/pull/43745>`_, Kefu Chai, Mauricio Faria de Oliveira, Adam Kupczyk) -* os/bluestore: avoid premature onode release (`pr#44723 <https://github.com/ceph/ceph/pull/44723>`_, Igor Fedotov) -* os/bluestore: make shared blob fsck much less RAM-greedy (`pr#44613 <https://github.com/ceph/ceph/pull/44613>`_, Igor Fedotov) -* os/bluestore: use proper prefix when removing undecodable Share Blob (`pr#43882 <https://github.com/ceph/ceph/pull/43882>`_, Igor Fedotov) -* osd/OSD: Log aggregated slow ops detail to cluster logs (`pr#44771 <https://github.com/ceph/ceph/pull/44771>`_, Prashant D) -* osd/OSDMap.cc: clean up pg_temp for nonexistent pgs (`pr#44096 <https://github.com/ceph/ceph/pull/44096>`_, Cory Snyder) -* osd/OSDMap: Add health warning if 'require-osd-release' != current release (`pr#44259 <https://github.com/ceph/ceph/pull/44259>`_, Sridhar Seshasayee, Patrick Donnelly, Neha Ojha) -* osd/OSDMapMapping: fix spurious threadpool timeout errors (`pr#44545 <https://github.com/ceph/ceph/pull/44545>`_, Sage Weil) -* osd/PeeringState: separate history's pruub from pg's (`pr#44584 <https://github.com/ceph/ceph/pull/44584>`_, Sage Weil) -* osd/PrimaryLogPG.cc: CEPH_OSD_OP_OMAPRMKEYRANGE should mark omap dirty (`pr#45591 <https://github.com/ceph/ceph/pull/45591>`_, Neha Ojha) -* osd/scrub: destruct the scrubber shortly before the PG is destructed (`pr#45731 <https://github.com/ceph/ceph/pull/45731>`_, Ronen Friedman) -* osd/scrub: only telling the scrubber of awaited-for 'updates' events (`pr#45365 <https://github.com/ceph/ceph/pull/45365>`_, Ronen Friedman) -* osd/scrub: remove reliance of Scrubber objects' logging on the PG (`pr#45729 <https://github.com/ceph/ceph/pull/45729>`_, Ronen Friedman) -* osd/scrub: restart snap trimming only after scrubbing is done (`pr#45785 <https://github.com/ceph/ceph/pull/45785>`_, Ronen Friedman) -* osd/scrub: stop sending bogus digest-update events (`issue#54423 <http://tracker.ceph.com/issues/54423>`_, `pr#45194 <https://github.com/ceph/ceph/pull/45194>`_, Ronen Friedman) -* osd/scrub: tag replica scrub messages to identify stale events (`pr#45374 <https://github.com/ceph/ceph/pull/45374>`_, Ronen Friedman) -* osd: add pg_num_max value & pg_num_max reordering (`pr#45173 <https://github.com/ceph/ceph/pull/45173>`_, Kamoltat, Sage Weil) -* osd: fix 'ceph osd stop <osd.nnn>' doesn't take effect (`pr#43955 <https://github.com/ceph/ceph/pull/43955>`_, tan changzhi) -* osd: fix the truncation of an int by int division (`pr#45376 <https://github.com/ceph/ceph/pull/45376>`_, Ronen Friedman) -* osd: PeeringState: fix selection order in calc_replicated_acting_stretch (`pr#44664 <https://github.com/ceph/ceph/pull/44664>`_, Greg Farnum) -* osd: recover unreadable snapshot before reading ref. count info (`pr#44181 <https://github.com/ceph/ceph/pull/44181>`_, Myoungwon Oh) -* osd: require osd_pg_max_concurrent_snap_trims > 0 (`pr#45323 <https://github.com/ceph/ceph/pull/45323>`_, Dan van der Ster) -* osd: set r only if succeed in FillInVerifyExtent (`pr#44173 <https://github.com/ceph/ceph/pull/44173>`_, yanqiang-ux) -* osdc: add set_error in BufferHead, when split set_error to right (`pr#44725 <https://github.com/ceph/ceph/pull/44725>`_, jiawd) -* pacfic: doc/rados/operations/placement-groups: fix --bulk docs (`pr#45328 <https://github.com/ceph/ceph/pull/45328>`_, Kamoltat) -* Pacific fast shutdown backports (`pr#45654 <https://github.com/ceph/ceph/pull/45654>`_, Sridhar Seshasayee, Nitzan Mordechai, Satoru Takeuchi) -* pybind/mgr/balancer: define Plan.{dump,show}() (`pr#43964 <https://github.com/ceph/ceph/pull/43964>`_, Kefu Chai) -* pybind/mgr/progress: enforced try and except on accessing event dictionary (`pr#44672 <https://github.com/ceph/ceph/pull/44672>`_, Kamoltat) -* python-common: add int value validation for count and count_per_host (`pr#44527 <https://github.com/ceph/ceph/pull/44527>`_, John Mulligan) -* python-common: improve OSD spec error messages (`pr#44626 <https://github.com/ceph/ceph/pull/44626>`_, Sebastian Wagner) -* qa/distros/podman: remove centos_8.2 and centos_8.3 (`pr#44903 <https://github.com/ceph/ceph/pull/44903>`_, Neha Ojha) -* qa/rgw: add failing tempest test to blocklist (`pr#45436 <https://github.com/ceph/ceph/pull/45436>`_, Casey Bodley) -* qa/rgw: barbican and pykmip tasks upgrade pip before installing pytz (`pr#45444 <https://github.com/ceph/ceph/pull/45444>`_, Casey Bodley) -* qa/rgw: bump tempest version to resolve dependency issue (`pr#43966 <https://github.com/ceph/ceph/pull/43966>`_, Casey Bodley) -* qa/rgw: Fix vault token file access (`issue#51539 <http://tracker.ceph.com/issues/51539>`_, `pr#43951 <https://github.com/ceph/ceph/pull/43951>`_, Marcus Watts) -* qa/rgw: update apache-maven mirror for rgw/hadoop-s3a (`pr#45445 <https://github.com/ceph/ceph/pull/45445>`_, Casey Bodley) -* qa/rgw: use symlinks for rgw/sts suite, target supported-random-distro$ (`pr#45245 <https://github.com/ceph/ceph/pull/45245>`_, Casey Bodley) -* qa/run-tox-mgr-dashboard: Do not write to /tmp/test_sanitize_password… (`pr#44727 <https://github.com/ceph/ceph/pull/44727>`_, Kevin Zhao) -* qa/run_xfstests_qemu.sh: stop reporting success without actually running any tests (`pr#44596 <https://github.com/ceph/ceph/pull/44596>`_, Ilya Dryomov) -* qa/suites/fs: add prefetch_dirfrags false to thrasher suite (`pr#44504 <https://github.com/ceph/ceph/pull/44504>`_, Arthur Outhenin-Chalandre) -* qa/suites/orch/cephadm: Also run the rbd/iscsi suite (`pr#44635 <https://github.com/ceph/ceph/pull/44635>`_, Sebastian Wagner) -* qa/tasks/qemu: make sure block-rbd.so is installed (`pr#45072 <https://github.com/ceph/ceph/pull/45072>`_, Ilya Dryomov) -* qa/tasks: improve backfill_toofull test (`pr#44387 <https://github.com/ceph/ceph/pull/44387>`_, Mykola Golub) -* qa/tests: added upgrade-clients/client-upgrade-pacific-quincy test (`pr#45326 <https://github.com/ceph/ceph/pull/45326>`_, Yuri Weinstein) -* qa/tests: replaced 16.2.6 with 16.2.7 version (`pr#44369 <https://github.com/ceph/ceph/pull/44369>`_, Yuri Weinstein) -* qa: adjust for MDSs to get deployed before verifying their availability (`issue#53857 <http://tracker.ceph.com/issues/53857>`_, `pr#44639 <https://github.com/ceph/ceph/pull/44639>`_, Venky Shankar) -* qa: Default to CentOS 8 Stream (`pr#44889 <https://github.com/ceph/ceph/pull/44889>`_, David Galloway) -* qa: do not use any time related suffix for \*_op_timeouts (`pr#44621 <https://github.com/ceph/ceph/pull/44621>`_, Xiubo Li) -* qa: fsync dir for asynchronous creat on stray tests (`pr#45565 <https://github.com/ceph/ceph/pull/45565>`_, Patrick Donnelly, Ramana Raja) -* qa: ignore expected metadata cluster log error (`pr#45564 <https://github.com/ceph/ceph/pull/45564>`_, Patrick Donnelly) -* qa: increase the timeout value to wait a litte longer (`pr#43979 <https://github.com/ceph/ceph/pull/43979>`_, Xiubo Li) -* qa: move certificates for kmip task into /etc/ceph (`pr#45413 <https://github.com/ceph/ceph/pull/45413>`_, Ali Maredia) -* qa: remove centos8 from supported distros (`pr#44865 <https://github.com/ceph/ceph/pull/44865>`_, Casey Bodley, Sage Weil) -* qa: skip sanity check during upgrade (`pr#44840 <https://github.com/ceph/ceph/pull/44840>`_, Milind Changire) -* qa: split distro for rados/cephadm/smoke tests (`pr#44681 <https://github.com/ceph/ceph/pull/44681>`_, Guillaume Abrioux) -* qa: wait for purge queue operations to finish (`issue#52487 <http://tracker.ceph.com/issues/52487>`_, `pr#44642 <https://github.com/ceph/ceph/pull/44642>`_, Venky Shankar) -* radosgw-admin: 'sync status' is not behind if there are no mdlog entries (`pr#45442 <https://github.com/ceph/ceph/pull/45442>`_, Casey Bodley) -* rbd persistent cache UX improvements (status report, metrics, flush command) (`pr#45895 <https://github.com/ceph/ceph/pull/45895>`_, Ilya Dryomov, Yin Congmin) -* rbd-mirror: fix races in snapshot-based mirroring deletion propagation (`pr#44754 <https://github.com/ceph/ceph/pull/44754>`_, Ilya Dryomov) -* rbd-mirror: make mirror properly detect pool replayer needs restart (`pr#45170 <https://github.com/ceph/ceph/pull/45170>`_, Mykola Golub) -* rbd-mirror: make RemoveImmediateUpdate test synchronous (`pr#44094 <https://github.com/ceph/ceph/pull/44094>`_, Arthur Outhenin-Chalandre) -* rbd-mirror: synchronize with in-flight stop in ImageReplayer::stop() (`pr#45184 <https://github.com/ceph/ceph/pull/45184>`_, Ilya Dryomov) -* rbd: add missing switch arguments for recognition by get_command_spec() (`pr#44742 <https://github.com/ceph/ceph/pull/44742>`_, Ilya Dryomov) -* rbd: mark optional positional arguments as such in help output (`pr#45008 <https://github.com/ceph/ceph/pull/45008>`_, Ilya Dryomov) -* rbd: recognize rxbounce map option (`pr#45002 <https://github.com/ceph/ceph/pull/45002>`_, Ilya Dryomov) -* Revert "mds: kill session when mds do ms_handle_remote_reset" (`pr#45557 <https://github.com/ceph/ceph/pull/45557>`_, Venky Shankar) -* revert bootstrap network handling changes (`pr#46085 <https://github.com/ceph/ceph/pull/46085>`_, Adam King) -* revival and backport of fix for RocksDB optimized iterators (`pr#46096 <https://github.com/ceph/ceph/pull/46096>`_, Adam Kupczyk, Cory Snyder) -* RGW - Zipper - Make default args match in get_obj_state (`pr#45438 <https://github.com/ceph/ceph/pull/45438>`_, Daniel Gryniewicz) -* RGW - Zipper - Make sure PostObj has bucket set (`pr#45060 <https://github.com/ceph/ceph/pull/45060>`_, Daniel Gryniewicz) -* rgw/admin: fix radosgw-admin datalog list max-entries issue (`pr#45500 <https://github.com/ceph/ceph/pull/45500>`_, Yuval Lifshitz) -* rgw/amqp: add default case to silence compiler warning (`pr#45478 <https://github.com/ceph/ceph/pull/45478>`_, Casey Bodley) -* rgw/amqp: remove the explicit "disconnect()" interface (`pr#45427 <https://github.com/ceph/ceph/pull/45427>`_, Yuval Lifshitz) -* rgw/beast: optimizations for request timeout (`pr#43946 <https://github.com/ceph/ceph/pull/43946>`_, Mark Kogan, Casey Bodley) -* rgw/notification: send correct size in COPY events (`pr#45426 <https://github.com/ceph/ceph/pull/45426>`_, Yuval Lifshitz) -* rgw/sts: adding role name and role session to ops log (`pr#43956 <https://github.com/ceph/ceph/pull/43956>`_, Pritha Srivastava) -* rgw: add object null point judging when listing pubsub topics (`pr#45476 <https://github.com/ceph/ceph/pull/45476>`_, zhipeng li) -* rgw: add OPT_BUCKET_SYNC_RUN to gc_ops_list, so that (`pr#45421 <https://github.com/ceph/ceph/pull/45421>`_, Pritha Srivastava) -* rgw: add the condition of lock mode conversion to PutObjRentention (`pr#45440 <https://github.com/ceph/ceph/pull/45440>`_, wangzhong) -* rgw: bucket chown bad memory usage (`pr#45491 <https://github.com/ceph/ceph/pull/45491>`_, Mohammad Fatemipour) -* rgw: change order of xml elements in ListRoles response (`pr#45448 <https://github.com/ceph/ceph/pull/45448>`_, Casey Bodley) -* rgw: clean-up logging of function entering to make thorough and consistent (`pr#45450 <https://github.com/ceph/ceph/pull/45450>`_, J. Eric Ivancich) -* rgw: cls_bucket_list_unordered() might return one redundent entry every time is_truncated is true (`pr#45457 <https://github.com/ceph/ceph/pull/45457>`_, Peng Zhang) -* rgw: default ms_mon_client_mode = secure (`pr#45439 <https://github.com/ceph/ceph/pull/45439>`_, Sage Weil) -* rgw: document rgw_lc_debug_interval configuration option (`pr#45453 <https://github.com/ceph/ceph/pull/45453>`_, J. Eric Ivancich) -* rgw: document S3 bucket replication support (`pr#45484 <https://github.com/ceph/ceph/pull/45484>`_, Matt Benjamin) -* rgw: Dump Object Lock Retain Date as ISO 8601 (`pr#44697 <https://github.com/ceph/ceph/pull/44697>`_, Danny Abukalam) -* rgw: fix `bi put` not using right bucket index shard (`pr#44166 <https://github.com/ceph/ceph/pull/44166>`_, J. Eric Ivancich) -* rgw: fix lock scope in ObjectCache::get() (`pr#44747 <https://github.com/ceph/ceph/pull/44747>`_, Casey Bodley) -* rgw: fix md5 not match for RGWBulkUploadOp upload when enable rgw com… (`pr#45432 <https://github.com/ceph/ceph/pull/45432>`_, yuliyang_yewu) -* rgw: fix rgw.none statistics (`pr#45463 <https://github.com/ceph/ceph/pull/45463>`_, J. Eric Ivancich) -* rgw: fix segfault in UserAsyncRefreshHandler::init_fetch (`pr#45411 <https://github.com/ceph/ceph/pull/45411>`_, Cory Snyder) -* rgw: forward request in multisite for RGWDeleteBucketPolicy and RGWDeleteBucketPublicAccessBlock (`pr#45434 <https://github.com/ceph/ceph/pull/45434>`_, yuliyang_yewu) -* rgw: have "bucket check --fix" fix pool ids correctly (`pr#45455 <https://github.com/ceph/ceph/pull/45455>`_, J. Eric Ivancich) -* rgw: in bucket reshard list, clarify new num shards is tentative (`pr#45509 <https://github.com/ceph/ceph/pull/45509>`_, J. Eric Ivancich) -* rgw: init bucket index only if putting bucket instance info succeeds (`pr#45480 <https://github.com/ceph/ceph/pull/45480>`_, Huber-ming) -* rgw: RadosBucket::get_bucket_info() updates RGWBucketEnt (`pr#45483 <https://github.com/ceph/ceph/pull/45483>`_, Casey Bodley) -* rgw: remove bucket API returns NoSuchKey than NoSuchBucket (`pr#45489 <https://github.com/ceph/ceph/pull/45489>`_, Satoru Takeuchi) -* rgw: resolve empty ordered bucket listing results w/ CLS filtering \*and\* bucket index list produces incorrect result when non-ascii entries (`pr#45087 <https://github.com/ceph/ceph/pull/45087>`_, J. Eric Ivancich) -* rgw: RGWPostObj::execute() may lost data (`pr#45502 <https://github.com/ceph/ceph/pull/45502>`_, Lei Zhang) -* rgw: under fips, set flag to allow md5 in select rgw ops (`pr#44778 <https://github.com/ceph/ceph/pull/44778>`_, Mark Kogan) -* rgw: url_decode before parsing copysource in copyobject (`issue#43259 <http://tracker.ceph.com/issues/43259>`_, `pr#45430 <https://github.com/ceph/ceph/pull/45430>`_, Paul Reece) -* rgw: user stats showing 0 value for "size_utilized" and "size_kb_utilized" fields (`pr#44171 <https://github.com/ceph/ceph/pull/44171>`_, J. Eric Ivancich) -* rgw: write meta of a MP part to a correct pool (`issue#49128 <http://tracker.ceph.com/issues/49128>`_, `pr#45428 <https://github.com/ceph/ceph/pull/45428>`_, Jeegn Chen) -* rgw:When KMS encryption is used and the key does not exist, we should… (`pr#45461 <https://github.com/ceph/ceph/pull/45461>`_, wangyingbin) -* rgwlc: remove lc entry on bucket delete (`pr#44729 <https://github.com/ceph/ceph/pull/44729>`_, Matt Benjamin) -* rgwlc: warn on missing RGW_ATTR_LC (`pr#45497 <https://github.com/ceph/ceph/pull/45497>`_, Matt Benjamin) -* src/ceph-crash.in: various enhancements and fixes (`pr#45381 <https://github.com/ceph/ceph/pull/45381>`_, Sébastien Han) -* src/rgw: Fix for malformed url (`pr#45459 <https://github.com/ceph/ceph/pull/45459>`_, Kalpesh Pandya) -* test/librbd/test_notify.py: effect post object map rebuild assert (`pr#45311 <https://github.com/ceph/ceph/pull/45311>`_, Ilya Dryomov) -* test/librbd: add test to verify diff_iterate size (`pr#45555 <https://github.com/ceph/ceph/pull/45555>`_, Christopher Hoffman) -* test/librbd: harden RemoveFullTry tests (`pr#43649 <https://github.com/ceph/ceph/pull/43649>`_, Ilya Dryomov) -* test/rgw: disable cls_rgw_gc test cases with defer_gc() (`pr#45477 <https://github.com/ceph/ceph/pull/45477>`_, Casey Bodley) -* test: fix wrong alarm (HitSetWrite) (`pr#45319 <https://github.com/ceph/ceph/pull/45319>`_, Myoungwon Oh) -* test: increase retry duration when calculating manifest ref. count (`pr#44202 <https://github.com/ceph/ceph/pull/44202>`_, Myoungwon Oh) -* tools/rbd: expand where option rbd_default_map_options can be set (`pr#45181 <https://github.com/ceph/ceph/pull/45181>`_, Christopher Hoffman, Ilya Dryomov) -* Wip doc pr 46109 backport to pacific (`pr#46117 <https://github.com/ceph/ceph/pull/46117>`_, Ville Ojamo) - - -v16.2.7 Pacific -=============== - -This is the seventh backport release in the Pacific series. - -Notable Changes ---------------- - -* Critical bug in OMAP format upgrade is fixed. This could cause data corruption - (improperly formatted OMAP keys) after pre-Pacific cluster upgrade if - bluestore-quick-fix-on-mount parameter is set to true or ceph-bluestore-tool's - quick-fix/repair commands are invoked. - Relevant tracker: https://tracker.ceph.com/issues/53062 - ``bluestore-quick-fix-on-mount`` continues to be set to false, by default. - -* CephFS: If you are not using cephadm, you must disable FSMap sanity checks *before starting the upgrade*:: - - ceph config set mon mon_mds_skip_sanity true - - After the upgrade has finished and the cluster is stable, please remove that setting:: - - ceph config rm mon mon_mds_skip_sanity - - Clusters managed by and upgraded using cephadm take care of this step automatically. - -* MGR: The pg_autoscaler will use the 'scale-up' profile as the default profile. - 16.2.6 changed the default profile to 'scale-down' but we ran into issues - with the device_health_metrics pool consuming too many PGs, which is not ideal - for performance. So we will continue to use the 'scale-up' profile by default, - until we implement a limit on the number of PGs default pools should consume, - in combination with the 'scale-down' profile. - -* Cephadm & Ceph Dashboard: NFS management has been completely reworked to - ensure that NFS exports are managed consistently across the different Ceph - components. Prior to this, there were 3 incompatible implementations for - configuring the NFS exports: Ceph-Ansible/OpenStack Manila, Ceph Dashboard and - 'mgr/nfs' module. With this release the 'mgr/nfs' way becomes the official - interface, and the remaining components (Cephadm and Ceph Dashboard) adhere to - it. While this might require manually migrating from the deprecated - implementations, it will simplify the user experience for those heavily - relying on NFS exports. - -* Dashboard: "Cluster Expansion Wizard". After the 'cephadm bootstrap' step, - users that log into the Ceph Dashboard will be presented with a welcome - screen. If they choose to follow the installation wizard, they will be guided - through a set of steps to help them configure their Ceph cluster: expanding - the cluster by adding more hosts, detecting and defining their storage - devices, and finally deploying and configuring the different Ceph services. - -* OSD: When using mclock_scheduler for QoS, there is no longer a need to run any - manual benchmark. The OSD now automatically sets an appropriate value for - `osd_mclock_max_capacity_iops` by running a simple benchmark during - initialization. - -* MGR: The global recovery event in the progress module has been optimized and - a `sleep_interval` of 5 seconds has been added between stats collection, - to reduce the impact of the progress module on the MGR, especially in large - clusters. - -Changelog ---------- - -* rpm, debian: move smartmontools and nvme-cli to ceph-base (`pr#44164 <https://github.com/ceph/ceph/pull/44164>`_, Yaarit Hatuka) -* qa: miscellaneous perf suite fixes (`pr#44154 <https://github.com/ceph/ceph/pull/44154>`_, Neha Ojha) -* qa/suites/orch/cephadm: mgr-nfs-upgrade: add missing 0-distro dir (`pr#44201 <https://github.com/ceph/ceph/pull/44201>`_, Sebastian Wagner) -* \*: s/virtualenv/python -m venv/ (`pr#43002 <https://github.com/ceph/ceph/pull/43002>`_, Kefu Chai, Ken Dreyer) -* admin/doc-requirements.txt: pin Sphinx at 3.5.4 (`pr#43748 <https://github.com/ceph/ceph/pull/43748>`_, Kefu Chai) -* backport mgr/nfs bits (`pr#43811 <https://github.com/ceph/ceph/pull/43811>`_, Sage Weil, Michael Fritch) -* ceph-volume: `get_first_lv()` refactor (`pr#43960 <https://github.com/ceph/ceph/pull/43960>`_, Guillaume Abrioux) -* ceph-volume: fix a typo causing AttributeError (`pr#43949 <https://github.com/ceph/ceph/pull/43949>`_, Taha Jahangir) -* ceph-volume: fix bug with miscalculation of required db/wal slot size for VGs with multiple PVs (`pr#43948 <https://github.com/ceph/ceph/pull/43948>`_, Guillaume Abrioux, Cory Snyder) -* ceph-volume: fix lvm activate --all --no-systemd (`pr#43267 <https://github.com/ceph/ceph/pull/43267>`_, Dimitri Savineau) -* ceph-volume: util/prepare fix osd_id_available() (`pr#43708 <https://github.com/ceph/ceph/pull/43708>`_, Guillaume Abrioux) -* ceph.spec: selinux scripts respect CEPH_AUTO_RESTART_ON_UPGRADE (`pr#43235 <https://github.com/ceph/ceph/pull/43235>`_, Dan van der Ster) -* cephadm: November batch (`pr#43906 <https://github.com/ceph/ceph/pull/43906>`_, Sebastian Wagner, Sage Weil, Daniel Pivonka, Andrew Sharapov, Paul Cuzner, Adam King, Melissa Li) -* cephadm: October batch (`pr#43728 <https://github.com/ceph/ceph/pull/43728>`_, Patrick Donnelly, Sage Weil, Cory Snyder, Sebastian Wagner, Paul Cuzner, Joao Eduardo Luis, Zac Dover, Dmitry Kvashnin, Daniel Pivonka, Adam King, jianglong01, Guillaume Abrioux, Melissa Li, Roaa Sakr, Kefu Chai, Brad Hubbard, Michael Fritch, Javier Cacheiro) -* cephfs-mirror, test: add thrasher for cephfs mirror daemon, HA test yamls (`issue#50372 <http://tracker.ceph.com/issues/50372>`_, `pr#43924 <https://github.com/ceph/ceph/pull/43924>`_, Venky Shankar) -* cephfs-mirror: shutdown ClusterWatcher on termination (`pr#43198 <https://github.com/ceph/ceph/pull/43198>`_, Willem Jan Withagen, Venky Shankar) -* cmake: link Threads::Threads instead of CMAKE_THREAD_LIBS_INIT (`pr#43167 <https://github.com/ceph/ceph/pull/43167>`_, Ken Dreyer) -* cmake: s/Python_EXECUTABLE/Python3_EXECUTABLE/ (`pr#43264 <https://github.com/ceph/ceph/pull/43264>`_, Michael Fritch) -* crush: cancel upmaps with up set size != pool size (`pr#43415 <https://github.com/ceph/ceph/pull/43415>`_, huangjun) -* doc/radosgw/nfs: add note about NFSv3 deprecation (`pr#43941 <https://github.com/ceph/ceph/pull/43941>`_, Michael Fritch) -* doc: document subvolume (group) pins (`pr#43925 <https://github.com/ceph/ceph/pull/43925>`_, Patrick Donnelly) -* github: add dashboard PRs to Dashboard project (`pr#43610 <https://github.com/ceph/ceph/pull/43610>`_, Ernesto Puerta) -* librbd/cache/pwl: persistant cache backports (`pr#43772 <https://github.com/ceph/ceph/pull/43772>`_, Kefu Chai, Yingxin Cheng, Yin Congmin, Feng Hualong, Jianpeng Ma, Ilya Dryomov, Hualong Feng) -* librbd/cache/pwl: SSD caching backports (`pr#43918 <https://github.com/ceph/ceph/pull/43918>`_, Yin Congmin, Jianpeng Ma) -* librbd/object_map: rbd diff between two snapshots lists entire image content (`pr#43805 <https://github.com/ceph/ceph/pull/43805>`_, Sunny Kumar) -* librbd: fix pool validation lockup (`pr#43113 <https://github.com/ceph/ceph/pull/43113>`_, Ilya Dryomov) -* mds/FSMap: do not assert allow_standby_replay on old FSMaps (`pr#43614 <https://github.com/ceph/ceph/pull/43614>`_, Patrick Donnelly) -* mds: Add new flag to MClientSession (`pr#43251 <https://github.com/ceph/ceph/pull/43251>`_, Kotresh HR) -* mds: do not trim stray dentries during opening the root (`pr#43815 <https://github.com/ceph/ceph/pull/43815>`_, Xiubo Li) -* mds: skip journaling blocklisted clients when in `replay` state (`pr#43841 <https://github.com/ceph/ceph/pull/43841>`_, Venky Shankar) -* mds: switch mds_lock to fair mutex to fix the slow performance issue (`pr#43148 <https://github.com/ceph/ceph/pull/43148>`_, Xiubo Li, Kefu Chai) -* MDSMonitor: assertion during upgrade to v16.2.5+ (`pr#43890 <https://github.com/ceph/ceph/pull/43890>`_, Patrick Donnelly) -* MDSMonitor: handle damaged state from standby-replay (`pr#43200 <https://github.com/ceph/ceph/pull/43200>`_, Patrick Donnelly) -* MDSMonitor: no active MDS after cluster deployment (`pr#43891 <https://github.com/ceph/ceph/pull/43891>`_, Patrick Donnelly) -* mgr/dashboard,prometheus: fix handling of server_addr (`issue#52002 <http://tracker.ceph.com/issues/52002>`_, `pr#43631 <https://github.com/ceph/ceph/pull/43631>`_, Scott Shambarger) -* mgr/dashboard: all pyfakefs must be pinned on same version (`pr#43930 <https://github.com/ceph/ceph/pull/43930>`_, Rishabh Dave) -* mgr/dashboard: BATCH incl.: NFS integration, Cluster Expansion Workflow, and Angular 11 upgrade (`pr#43682 <https://github.com/ceph/ceph/pull/43682>`_, Alfonso Martínez, Avan Thakkar, Aashish Sharma, Nizamudeen A, Pere Diaz Bou, Varsha Rao, Ramana Raja, Sage Weil, Kefu Chai) -* mgr/dashboard: cephfs MDS Workload to use rate for counter type metric (`pr#43190 <https://github.com/ceph/ceph/pull/43190>`_, Jan Horacek) -* mgr/dashboard: clean-up controllers and API backward versioning compatibility (`pr#43543 <https://github.com/ceph/ceph/pull/43543>`_, Ernesto Puerta, Avan Thakkar) -* mgr/dashboard: Daemon Events listing using bootstrap class (`pr#44057 <https://github.com/ceph/ceph/pull/44057>`_, Nizamudeen A) -* mgr/dashboard: deprecated variable usage in Grafana dashboards (`pr#43188 <https://github.com/ceph/ceph/pull/43188>`_, Patrick Seidensal) -* mgr/dashboard: Device health status is not getting listed under hosts section (`pr#44053 <https://github.com/ceph/ceph/pull/44053>`_, Aashish Sharma) -* mgr/dashboard: Edit a service feature (`pr#43939 <https://github.com/ceph/ceph/pull/43939>`_, Nizamudeen A) -* mgr/dashboard: Fix failing config dashboard e2e check (`pr#43238 <https://github.com/ceph/ceph/pull/43238>`_, Nizamudeen A) -* mgr/dashboard: fix flaky inventory e2e test (`pr#44056 <https://github.com/ceph/ceph/pull/44056>`_, Nizamudeen A) -* mgr/dashboard: fix missing alert rule details (`pr#43812 <https://github.com/ceph/ceph/pull/43812>`_, Ernesto Puerta) -* mgr/dashboard: Fix orchestrator/01-hosts.e2e-spec.ts failure (`pr#43541 <https://github.com/ceph/ceph/pull/43541>`_, Nizamudeen A) -* mgr/dashboard: include mfa_ids in rgw user-details section (`pr#43893 <https://github.com/ceph/ceph/pull/43893>`_, Avan Thakkar) -* mgr/dashboard: Incorrect MTU mismatch warning (`pr#43185 <https://github.com/ceph/ceph/pull/43185>`_, Aashish Sharma) -* mgr/dashboard: monitoring: grafonnet refactoring for radosgw dashboards (`pr#43644 <https://github.com/ceph/ceph/pull/43644>`_, Aashish Sharma) -* mgr/dashboard: Move force maintenance test to the workflow test suite (`pr#43347 <https://github.com/ceph/ceph/pull/43347>`_, Nizamudeen A) -* mgr/dashboard: pin a version for autopep8 and pyfakefs (`pr#43646 <https://github.com/ceph/ceph/pull/43646>`_, Nizamudeen A) -* mgr/dashboard: Predefine labels in create host form (`pr#44077 <https://github.com/ceph/ceph/pull/44077>`_, Nizamudeen A) -* mgr/dashboard: provisioned values is misleading in RBD image table (`pr#44051 <https://github.com/ceph/ceph/pull/44051>`_, Avan Thakkar) -* mgr/dashboard: replace "Ceph-cluster" Client connections with active-standby MGRs (`pr#43523 <https://github.com/ceph/ceph/pull/43523>`_, Avan Thakkar) -* mgr/dashboard: rgw daemon list: add realm column (`pr#44047 <https://github.com/ceph/ceph/pull/44047>`_, Alfonso Martínez) -* mgr/dashboard: Spelling mistake in host-form Network address field (`pr#43973 <https://github.com/ceph/ceph/pull/43973>`_, Avan Thakkar) -* mgr/dashboard: Visual regression tests for ceph dashboard (`pr#42678 <https://github.com/ceph/ceph/pull/42678>`_, Aaryan Porwal) -* mgr/dashboard: visual tests: Add more ignore regions for dashboard component (`pr#43240 <https://github.com/ceph/ceph/pull/43240>`_, Aaryan Porwal) -* mgr/influx: use "N/A" for unknown hostname (`pr#43368 <https://github.com/ceph/ceph/pull/43368>`_, Kefu Chai) -* mgr/mirroring: remove unnecessary fs_name arg from daemon status command (`issue#51989 <http://tracker.ceph.com/issues/51989>`_, `pr#43199 <https://github.com/ceph/ceph/pull/43199>`_, Venky Shankar) -* mgr/nfs: nfs-rgw batch backport (`pr#43075 <https://github.com/ceph/ceph/pull/43075>`_, Sebastian Wagner, Sage Weil, Varsha Rao, Ramana Raja) -* mgr/progress: optimize global recovery && introduce 5 seconds interval (`pr#43353 <https://github.com/ceph/ceph/pull/43353>`_, Kamoltat, Neha Ojha) -* mgr/prometheus: offer ability to disable cache (`pr#43931 <https://github.com/ceph/ceph/pull/43931>`_, Patrick Seidensal) -* mgr/volumes: Fix permission during subvol creation with mode (`pr#43223 <https://github.com/ceph/ceph/pull/43223>`_, Kotresh HR) -* mgr: Add check to prevent mgr from crashing (`pr#43445 <https://github.com/ceph/ceph/pull/43445>`_, Aswin Toni) -* mon,auth: fix proposal (and mon db rebuild) of rotating secrets (`pr#43697 <https://github.com/ceph/ceph/pull/43697>`_, Sage Weil) -* mon/MDSMonitor: avoid crash when decoding old FSMap epochs (`pr#43615 <https://github.com/ceph/ceph/pull/43615>`_, Patrick Donnelly) -* mon: Allow specifying new tiebreaker monitors (`pr#43457 <https://github.com/ceph/ceph/pull/43457>`_, Greg Farnum) -* mon: MonMap: display disallowed_leaders whenever they're set (`pr#43972 <https://github.com/ceph/ceph/pull/43972>`_, Greg Farnum) -* mon: MonMap: do not increase mon_info_t's compatv in stretch mode, really (`pr#43971 <https://github.com/ceph/ceph/pull/43971>`_, Greg Farnum) -* monitoring: ethernet bonding filter in Network Load (`pr#43694 <https://github.com/ceph/ceph/pull/43694>`_, Pere Diaz Bou) -* msg/async/ProtocolV2: Set the recv_stamp at the beginning of receiving a message (`pr#43511 <https://github.com/ceph/ceph/pull/43511>`_, dongdong tao) -* msgr/async: fix unsafe access in unregister_conn() (`pr#43548 <https://github.com/ceph/ceph/pull/43548>`_, Sage Weil, Radoslaw Zarzynski) -* os/bluestore: _do_write_small fix head_pad (`pr#43756 <https://github.com/ceph/ceph/pull/43756>`_, dheart) -* os/bluestore: do not select absent device in volume selector (`pr#43970 <https://github.com/ceph/ceph/pull/43970>`_, Igor Fedotov) -* os/bluestore: fix invalid omap name conversion when upgrading to per-pg (`pr#43793 <https://github.com/ceph/ceph/pull/43793>`_, Igor Fedotov) -* os/bluestore: list obj which equals to pend (`pr#43512 <https://github.com/ceph/ceph/pull/43512>`_, Mykola Golub, Kefu Chai) -* os/bluestore: multiple repair fixes (`pr#43731 <https://github.com/ceph/ceph/pull/43731>`_, Igor Fedotov) -* osd/OSD: mkfs need wait for transcation completely finish (`pr#43417 <https://github.com/ceph/ceph/pull/43417>`_, Chen Fan) -* osd: fix partial recovery become whole object recovery after restart osd (`pr#43513 <https://github.com/ceph/ceph/pull/43513>`_, Jianwei Zhang) -* osd: fix to allow inc manifest leaked (`pr#43306 <https://github.com/ceph/ceph/pull/43306>`_, Myoungwon Oh) -* osd: fix to recover adjacent clone when set_chunk is called (`pr#43099 <https://github.com/ceph/ceph/pull/43099>`_, Myoungwon Oh) -* osd: handle inconsistent hash info during backfill and deep scrub gracefully (`pr#43544 <https://github.com/ceph/ceph/pull/43544>`_, Ronen Friedman, Mykola Golub) -* osd: re-cache peer_bytes on every peering state activate (`pr#43437 <https://github.com/ceph/ceph/pull/43437>`_, Mykola Golub) -* osd: Run osd bench test to override default max osd capacity for mclock (`pr#41731 <https://github.com/ceph/ceph/pull/41731>`_, Sridhar Seshasayee) -* Pacific: BlueStore: Omap upgrade to per-pg fix fix (`pr#43922 <https://github.com/ceph/ceph/pull/43922>`_, Adam Kupczyk) -* Pacific: client: do not defer releasing caps when revoking (`pr#43782 <https://github.com/ceph/ceph/pull/43782>`_, Xiubo Li) -* Pacific: mds: add read/write io size metrics support (`pr#43784 <https://github.com/ceph/ceph/pull/43784>`_, Xiubo Li) -* Pacific: test/libcephfs: put inodes after lookup (`pr#43562 <https://github.com/ceph/ceph/pull/43562>`_, Patrick Donnelly) -* pybind/mgr/cephadm: set allow_standby_replay during CephFS upgrade (`pr#43559 <https://github.com/ceph/ceph/pull/43559>`_, Patrick Donnelly) -* pybind/mgr/CMakeLists.txt: exclude files not used at runtime (`pr#43787 <https://github.com/ceph/ceph/pull/43787>`_, Duncan Bellamy) -* pybind/mgr/pg_autoscale: revert to default profile scale-up (`pr#44032 <https://github.com/ceph/ceph/pull/44032>`_, Kamoltat) -* qa/mgr/dashboard/test_pool: don't check HEALTH_OK (`pr#43440 <https://github.com/ceph/ceph/pull/43440>`_, Ernesto Puerta) -* qa/mgr/dashboard: add extra wait to test (`pr#43351 <https://github.com/ceph/ceph/pull/43351>`_, Ernesto Puerta) -* qa/rgw: pacific branch targets ceph-pacific branch of java_s3tests (`pr#43809 <https://github.com/ceph/ceph/pull/43809>`_, Casey Bodley) -* qa/tasks/kubeadm: force docker cgroup engine to systemd (`pr#43937 <https://github.com/ceph/ceph/pull/43937>`_, Sage Weil) -* qa/tasks/mgr: skip test_diskprediction_local on python>=3.8 (`pr#43421 <https://github.com/ceph/ceph/pull/43421>`_, Kefu Chai) -* qa/tests: advanced version to reflect the latest 16.2.6 release (`pr#43242 <https://github.com/ceph/ceph/pull/43242>`_, Yuri Weinstein) -* qa: disable metrics on kernel client during upgrade (`pr#44034 <https://github.com/ceph/ceph/pull/44034>`_, Patrick Donnelly) -* qa: lengthen grace for fs map showing dead MDS (`pr#43702 <https://github.com/ceph/ceph/pull/43702>`_, Patrick Donnelly) -* qa: reduce frag split confs for dir_split counter test (`pr#43828 <https://github.com/ceph/ceph/pull/43828>`_, Patrick Donnelly) -* rbd-mirror: fix mirror image removal (`pr#43662 <https://github.com/ceph/ceph/pull/43662>`_, Arthur Outhenin-Chalandre) -* rbd-mirror: unbreak one-way snapshot-based mirroring (`pr#43315 <https://github.com/ceph/ceph/pull/43315>`_, Ilya Dryomov) -* rgw/notification: make notifications agnostic of bucket reshard (`pr#42946 <https://github.com/ceph/ceph/pull/42946>`_, Yuval Lifshitz) -* rgw/notifications: cache object size to avoid accessing invalid memory (`pr#42949 <https://github.com/ceph/ceph/pull/42949>`_, Yuval Lifshitz) -* rgw/notifications: send correct size in case of delete marker creation (`pr#42643 <https://github.com/ceph/ceph/pull/42643>`_, Yuval Lifshitz) -* rgw/notifications: support v4 auth for topics and notifications (`pr#42947 <https://github.com/ceph/ceph/pull/42947>`_, Yuval Lifshitz) -* rgw/rgw_rados: make RGW request IDs non-deterministic (`pr#43695 <https://github.com/ceph/ceph/pull/43695>`_, Cory Snyder) -* rgw/sts: fix for copy object operation using sts (`pr#43703 <https://github.com/ceph/ceph/pull/43703>`_, Pritha Srivastava) -* rgw/tracing: unify SO version numbers within librgw2 package (`pr#43619 <https://github.com/ceph/ceph/pull/43619>`_, Nathan Cutler) -* rgw: add abstraction for ops log destination and add file logger (`pr#43740 <https://github.com/ceph/ceph/pull/43740>`_, Casey Bodley, Cory Snyder) -* rgw: Ensure buckets too old to decode a layout have layout logs (`pr#43823 <https://github.com/ceph/ceph/pull/43823>`_, Adam C. Emerson) -* rgw: fix bucket purge incomplete multipart uploads (`pr#43862 <https://github.com/ceph/ceph/pull/43862>`_, J. Eric Ivancich) -* rgw: fix spelling of eTag in S3 message structure (`pr#42945 <https://github.com/ceph/ceph/pull/42945>`_, Tom Schoonjans) -* rgw: fix sts memory leak (`pr#43348 <https://github.com/ceph/ceph/pull/43348>`_, yuliyang_yewu) -* rgw: remove prefix & delim params for bucket removal & mp upload abort (`pr#43975 <https://github.com/ceph/ceph/pull/43975>`_, J. Eric Ivancich) -* rgw: use existing s->bucket in s3 website retarget() (`pr#43777 <https://github.com/ceph/ceph/pull/43777>`_, Casey Bodley) -* snap-schedule: count retained snapshots per retention policy (`pr#43434 <https://github.com/ceph/ceph/pull/43434>`_, Jan Fajerski) -* test: shutdown the mounter after test finishes (`pr#43475 <https://github.com/ceph/ceph/pull/43475>`_, Xiubo Li) - -v16.2.6 Pacific -=============== - -.. DANGER:: DATE: 01 NOV 2021. - - DO NOT UPGRADE TO CEPH PACIFIC FROM AN OLDER VERSION. - - A recently-discovered bug (https://tracker.ceph.com/issues/53062) can cause - data corruption. This bug occurs during OMAP format conversion for - clusters that are updated to Pacific. New clusters are not affected by this - bug. - - The trigger for this bug is BlueStore's repair/quick-fix functionality. This - bug can be triggered in two known ways: - - (1) manually via the ceph-bluestore-tool, or - (2) automatically, by OSD if ``bluestore_fsck_quick_fix_on_mount`` is set - to true. - - The fix for this bug is expected to be available in Ceph v16.2.7. - - DO NOT set ``bluestore_quick_fix_on_mount`` to true. If it is currently - set to true in your configuration, immediately set it to false. - - DO NOT run ``ceph-bluestore-tool``'s repair/quick-fix commands. - - -This is the sixth backport release in the Pacific series. - - -Notable Changes ---------------- - -* MGR: The pg_autoscaler has a new default 'scale-down' profile which provides more - performance from the start for new pools (for newly created clusters). - Existing clusters will retain the old behavior, now called the 'scale-up' profile. - For more details, see: - https://docs.ceph.com/en/latest/rados/operations/placement-groups/ - -* CephFS: the upgrade procedure for CephFS is now simpler. It is no longer - necessary to stop all MDS before upgrading the sole active MDS. After - disabling standby-replay, reducing max_mds to 1, and waiting for the file - systems to become stable (each fs with 1 active and 0 stopping daemons), a - rolling upgrade of all MDS daemons can be performed. - -* Dashboard: now allows users to set up and display a custom message (MOTD, warning, - etc.) in a sticky banner at the top of the page. For more details, see: - https://docs.ceph.com/en/pacific/mgr/dashboard/#message-of-the-day-motd - -* Several fixes in BlueStore, including a fix for the deferred write regression, - which led to excessive RocksDB flushes and compactions. Previously, when - `bluestore_prefer_deferred_size_hdd` was equal to or more than - `bluestore_max_blob_size_hdd` (both set to 64K), all the data was deferred, - which led to increased consumption of the column family used to store - deferred writes in RocksDB. Now, the `bluestore_prefer_deferred_size` parameter - independently controls deferred writes, and only writes smaller than - this size use the deferred write path. - -* The default value of `osd_client_message_cap` has been set to 256, to provide - better flow control by limiting maximum number of in-flight client requests. - -* PGs no longer show a `active+clean+scrubbing+deep+repair` state when - `osd_scrub_auto_repair` is set to true, for regular deep-scrubs with no repair - required. - -* `ceph-mgr-modules-core` debian package does not recommend `ceph-mgr-rook` - anymore. As the latter depends on `python3-numpy` which cannot be imported in - different Python sub-interpreters multi-times if the version of - `python3-numpy` is older than 1.19. Since `apt-get` installs the `Recommends` - packages by default, `ceph-mgr-rook` was always installed along with - `ceph-mgr` debian package as an indirect dependency. If your workflow depends - on this behavior, you might want to install `ceph-mgr-rook` separately. - - * This is the first release built for Debian Bullseye. - -Changelog ---------- - -* bind on loopback address if no other addresses are available (`pr#42477 <https://github.com/ceph/ceph/pull/42477>`_, Kefu Chai) -* ceph-monstore-tool: use a large enough paxos/{first,last}_committed (`issue#38219 <http://tracker.ceph.com/issues/38219>`_, `pr#42411 <https://github.com/ceph/ceph/pull/42411>`_, Kefu Chai) -* ceph-volume/tests: retry when destroying osd (`pr#42546 <https://github.com/ceph/ceph/pull/42546>`_, Guillaume Abrioux) -* ceph-volume/tests: update ansible environment variables in tox (`pr#42490 <https://github.com/ceph/ceph/pull/42490>`_, Dimitri Savineau) -* ceph-volume: Consider /dev/root as mounted (`pr#42755 <https://github.com/ceph/ceph/pull/42755>`_, David Caro) -* ceph-volume: fix lvm activate arguments (`pr#43116 <https://github.com/ceph/ceph/pull/43116>`_, Dimitri Savineau) -* ceph-volume: fix lvm migrate without args (`pr#43110 <https://github.com/ceph/ceph/pull/43110>`_, Dimitri Savineau) -* ceph-volume: fix raw list with logical partition (`pr#43087 <https://github.com/ceph/ceph/pull/43087>`_, Guillaume Abrioux, Dimitri Savineau) -* ceph-volume: implement bluefs volume migration (`pr#42219 <https://github.com/ceph/ceph/pull/42219>`_, Kefu Chai, Igor Fedotov) -* ceph-volume: lvm batch: fast_allocations(): avoid ZeroDivisionError (`pr#42493 <https://github.com/ceph/ceph/pull/42493>`_, Jonas Zeiger) -* ceph-volume: pvs --noheadings replace pvs --no-heading (`pr#43076 <https://github.com/ceph/ceph/pull/43076>`_, FengJiankui) -* ceph-volume: remove --all ref from deactivate help (`pr#43098 <https://github.com/ceph/ceph/pull/43098>`_, Dimitri Savineau) -* ceph-volume: support no_systemd with lvm migrate (`pr#43091 <https://github.com/ceph/ceph/pull/43091>`_, Dimitri Savineau) -* ceph-volume: work around phantom atari partitions (`pr#42753 <https://github.com/ceph/ceph/pull/42753>`_, Blaine Gardner) -* ceph.spec.in: drop gdbm from build deps (`pr#43000 <https://github.com/ceph/ceph/pull/43000>`_, Kefu Chai) -* cephadm: August batch 1 (`pr#42736 <https://github.com/ceph/ceph/pull/42736>`_, Sage Weil, Dimitri Savineau, Guillaume Abrioux, Sebastian Wagner, Varsha Rao, Zac Dover, Adam King, Cory Snyder, Michael Fritch, Asbjørn Sannes, "Wang,Fei", Javier Cacheiro, 胡玮文, Daniel Pivonka) -* cephadm: September batch 1 (`issue#52038 <http://tracker.ceph.com/issues/52038>`_, `pr#43029 <https://github.com/ceph/ceph/pull/43029>`_, Sebastian Wagner, Dimitri Savineau, Paul Cuzner, Oleander Reis, Adam King, Yuxiang Zhu, Zac Dover, Alfonso Martínez, Sage Weil, Daniel Pivonka) -* cephadm: use quay, not docker (`pr#42534 <https://github.com/ceph/ceph/pull/42534>`_, Sage Weil) -* cephfs-mirror: record directory path cancel in DirRegistry (`issue#51666 <http://tracker.ceph.com/issues/51666>`_, `pr#42458 <https://github.com/ceph/ceph/pull/42458>`_, Venky Shankar) -* client: flush the mdlog in unsafe requests' relevant and auth MDSes only (`pr#42925 <https://github.com/ceph/ceph/pull/42925>`_, Xiubo Li) -* client: make sure only to update dir dist from auth mds (`pr#42937 <https://github.com/ceph/ceph/pull/42937>`_, Xue Yantao) -* cls/cmpomap: empty values are 0 in U64 comparisons (`pr#42908 <https://github.com/ceph/ceph/pull/42908>`_, Casey Bodley) -* cmake, ceph.spec.in: build with header only fmt on RHEL (`pr#42472 <https://github.com/ceph/ceph/pull/42472>`_, Kefu Chai) -* cmake: build static libs if they are internal ones (`pr#39902 <https://github.com/ceph/ceph/pull/39902>`_, Kefu Chai) -* cmake: exclude "grafonnet-lib" target from "all" (`pr#42898 <https://github.com/ceph/ceph/pull/42898>`_, Kefu Chai) -* cmake: link bundled fmt statically (`pr#42692 <https://github.com/ceph/ceph/pull/42692>`_, Kefu Chai) -* cmake: Replace boost download url (`pr#42693 <https://github.com/ceph/ceph/pull/42693>`_, Rafał Wądołowski) -* common/buffer: fix SIGABRT in rebuild_aligned_size_and_memory (`pr#42976 <https://github.com/ceph/ceph/pull/42976>`_, Yin Congmin) -* common/Formatter: include used header (`pr#42233 <https://github.com/ceph/ceph/pull/42233>`_, Kefu Chai) -* common/options: Set osd_client_message_cap to 256 (`pr#42615 <https://github.com/ceph/ceph/pull/42615>`_, Mark Nelson) -* compression/snappy: use uint32_t to be compatible with 1.1.9 (`pr#42542 <https://github.com/ceph/ceph/pull/42542>`_, Kefu Chai, Nathan Cutler) -* debian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-roo… (`pr#42300 <https://github.com/ceph/ceph/pull/42300>`_, Kefu Chai) -* debian/control: dh-systemd is part of debhelper now (`pr#43151 <https://github.com/ceph/ceph/pull/43151>`_, David Galloway) -* debian/control: remove cython from Build-Depends (`pr#43131 <https://github.com/ceph/ceph/pull/43131>`_, Kefu Chai) -* doc/ceph-volume: add lvm migrate/new-db/new-wal (`pr#43089 <https://github.com/ceph/ceph/pull/43089>`_, Dimitri Savineau) -* doc/rados/operations: s/max_misplaced/target_max_misplaced_ratio/ (`pr#42250 <https://github.com/ceph/ceph/pull/42250>`_, Paul Reece, Kefu Chai) -* doc/releases/pacific.rst: remove notes about autoscaler (`pr#42265 <https://github.com/ceph/ceph/pull/42265>`_, Neha Ojha) -* Don't persist report data (`pr#42888 <https://github.com/ceph/ceph/pull/42888>`_, Brad Hubbard) -* krbd: escape udev_enumerate_add_match_sysattr values (`pr#42969 <https://github.com/ceph/ceph/pull/42969>`_, Ilya Dryomov) -* kv/RocksDBStore: Add handling of block_cache option for resharding (`pr#42844 <https://github.com/ceph/ceph/pull/42844>`_, Adam Kupczyk) -* kv/RocksDBStore: enrich debug message (`pr#42544 <https://github.com/ceph/ceph/pull/42544>`_, Toshikuni Fukaya, Satoru Takeuchi) -* librgw/notifications: initialize kafka and amqp (`pr#42648 <https://github.com/ceph/ceph/pull/42648>`_, Yuval Lifshitz) -* mds: add debugging when rejecting mksnap with EPERM (`pr#42935 <https://github.com/ceph/ceph/pull/42935>`_, Patrick Donnelly) -* mds: create file system with specific ID (`pr#42900 <https://github.com/ceph/ceph/pull/42900>`_, Ramana Raja) -* mds: MDCache.cc:5319 FAILED ceph_assert(rejoin_ack_gather.count(mds->get_nodeid())) (`pr#42938 <https://github.com/ceph/ceph/pull/42938>`_, chencan) -* mds: META_POP_READDIR, META_POP_FETCH, META_POP_STORE, and cache_hit_rate are not updated (`pr#42939 <https://github.com/ceph/ceph/pull/42939>`_, Yongseok Oh) -* mds: to print the unknow type value (`pr#42088 <https://github.com/ceph/ceph/pull/42088>`_, Xiubo Li, Jos Collin) -* MDSMonitor: monitor crash after upgrade from ceph 15.2.13 to 16.2.4 (`pr#42536 <https://github.com/ceph/ceph/pull/42536>`_, Patrick Donnelly) -* mgr/DaemonServer: skip redundant update of pgp_num_actual (`pr#42223 <https://github.com/ceph/ceph/pull/42223>`_, Dan van der Ster) -* mgr/dashboard/api: set a UTF-8 locale when running pip (`pr#42829 <https://github.com/ceph/ceph/pull/42829>`_, Kefu Chai) -* mgr/dashboard: Add configurable MOTD or wall notification (`pr#42414 <https://github.com/ceph/ceph/pull/42414>`_, Volker Theile) -* mgr/dashboard: cephadm e2e start script: add --expanded option (`pr#42789 <https://github.com/ceph/ceph/pull/42789>`_, Alfonso Martínez) -* mgr/dashboard: cephadm-e2e job script: improvements (`pr#42585 <https://github.com/ceph/ceph/pull/42585>`_, Alfonso Martínez) -* mgr/dashboard: disable create snapshot with subvolumes (`pr#42819 <https://github.com/ceph/ceph/pull/42819>`_, Pere Diaz Bou) -* mgr/dashboard: don't notify for suppressed alerts (`pr#42974 <https://github.com/ceph/ceph/pull/42974>`_, Tatjana Dehler) -* mgr/dashboard: fix Accept-Language header parsing (`pr#42297 <https://github.com/ceph/ceph/pull/42297>`_, 胡玮文) -* mgr/dashboard: fix rename inventory to disks (`pr#42810 <https://github.com/ceph/ceph/pull/42810>`_, Navin Barnwal) -* mgr/dashboard: fix ssl cert validation for rgw service creation (`pr#42628 <https://github.com/ceph/ceph/pull/42628>`_, Avan Thakkar) -* mgr/dashboard: Fix test_error force maintenance dashboard check (`pr#42354 <https://github.com/ceph/ceph/pull/42354>`_, Nizamudeen A) -* mgr/dashboard: monitoring: replace Grafana JSON with Grafonnet based code (`pr#42812 <https://github.com/ceph/ceph/pull/42812>`_, Aashish Sharma) -* mgr/dashboard: Refresh button on the iscsi targets page (`pr#42817 <https://github.com/ceph/ceph/pull/42817>`_, Nizamudeen A) -* mgr/dashboard: remove usage of 'rgw_frontend_ssl_key' (`pr#42316 <https://github.com/ceph/ceph/pull/42316>`_, Avan Thakkar) -* mgr/dashboard: show perf. counters for rgw svc. on Cluster > Hosts (`pr#42629 <https://github.com/ceph/ceph/pull/42629>`_, Alfonso Martínez) -* mgr/dashboard: stats=false not working when listing buckets (`pr#42889 <https://github.com/ceph/ceph/pull/42889>`_, Avan Thakkar) -* mgr/dashboard: tox.ini: delete useless env. 'apidocs' (`pr#42788 <https://github.com/ceph/ceph/pull/42788>`_, Alfonso Martínez) -* mgr/dashboard: update translations for pacific (`pr#42606 <https://github.com/ceph/ceph/pull/42606>`_, Tatjana Dehler) -* mgr/mgr_util: switch using unshared cephfs connections whenever possible (`issue#51256 <http://tracker.ceph.com/issues/51256>`_, `pr#42083 <https://github.com/ceph/ceph/pull/42083>`_, Venky Shankar) -* mgr/pg_autoscaler: Introduce autoscaler scale-down feature (`pr#42428 <https://github.com/ceph/ceph/pull/42428>`_, Kamoltat, Kefu Chai) -* mgr/rook: Add timezone info (`pr#39834 <https://github.com/ceph/ceph/pull/39834>`_, Varsha Rao, Sebastian Wagner) -* mgr/telemetry: pass leaderboard flag even w/o ident (`pr#42228 <https://github.com/ceph/ceph/pull/42228>`_, Sage Weil) -* mgr/volumes: Add config to insert delay at the beginning of the clone (`pr#42086 <https://github.com/ceph/ceph/pull/42086>`_, Kotresh HR) -* mgr/volumes: use dedicated libcephfs handles for subvolume calls and … (`issue#51271 <http://tracker.ceph.com/issues/51271>`_, `pr#42914 <https://github.com/ceph/ceph/pull/42914>`_, Venky Shankar) -* mgr: set debug_mgr=2/5 (so INFO goes to mgr log by default) (`pr#42225 <https://github.com/ceph/ceph/pull/42225>`_, Sage Weil) -* mon/MDSMonitor: do not pointlessly kill standbys that are incompatible with current CompatSet (`pr#42578 <https://github.com/ceph/ceph/pull/42578>`_, Patrick Donnelly, Zhi Zhang) -* mon/OSDMonitor: resize oversized Lec::epoch_by_pg, after PG merging, preventing osdmap trimming (`pr#42224 <https://github.com/ceph/ceph/pull/42224>`_, Dan van der Ster) -* mon/PGMap: remove DIRTY field in ceph df detail when cache tiering is not in use (`pr#42860 <https://github.com/ceph/ceph/pull/42860>`_, Deepika Upadhyay) -* mon: return -EINVAL when handling unknown option in 'ceph osd pool get' (`pr#42229 <https://github.com/ceph/ceph/pull/42229>`_, Zhao Cuicui) -* mon: Sanely set the default CRUSH rule when creating pools in stretch… (`pr#42909 <https://github.com/ceph/ceph/pull/42909>`_, Greg Farnum) -* monitoring/grafana/build/Makefile: revamp for arm64 builds, pushes to docker and quay, jenkins (`pr#42211 <https://github.com/ceph/ceph/pull/42211>`_, Dan Mick) -* monitoring/grafana/cluster: use per-unit max and limit values (`pr#42679 <https://github.com/ceph/ceph/pull/42679>`_, David Caro) -* monitoring: Clean up Grafana dashboards (`pr#42299 <https://github.com/ceph/ceph/pull/42299>`_, Patrick Seidensal) -* monitoring: fix Physical Device Latency unit (`pr#42298 <https://github.com/ceph/ceph/pull/42298>`_, Seena Fallah) -* msg: active_connections regression (`pr#42936 <https://github.com/ceph/ceph/pull/42936>`_, Sage Weil) -* nfs backport June (`pr#42096 <https://github.com/ceph/ceph/pull/42096>`_, Varsha Rao) -* os/bluestore: accept undecodable multi-block bluefs transactions on log (`pr#43023 <https://github.com/ceph/ceph/pull/43023>`_, Igor Fedotov) -* os/bluestore: cap omap naming scheme upgrade transaction (`pr#42956 <https://github.com/ceph/ceph/pull/42956>`_, Igor Fedotov) -* os/bluestore: compact db after bulk omap naming upgrade (`pr#42426 <https://github.com/ceph/ceph/pull/42426>`_, Igor Fedotov) -* os/bluestore: fix bluefs migrate command (`pr#43100 <https://github.com/ceph/ceph/pull/43100>`_, Igor Fedotov) -* os/bluestore: fix erroneous SharedBlob record removal during repair (`pr#42423 <https://github.com/ceph/ceph/pull/42423>`_, Igor Fedotov) -* os/bluestore: fix using incomplete bluefs log when dumping it (`pr#43007 <https://github.com/ceph/ceph/pull/43007>`_, Igor Fedotov) -* os/bluestore: make deferred writes less aggressive for large writes (`pr#42773 <https://github.com/ceph/ceph/pull/42773>`_, Igor Fedotov, Adam Kupczyk) -* os/bluestore: Remove possibility of replay log and file inconsistency (`pr#42424 <https://github.com/ceph/ceph/pull/42424>`_, Adam Kupczyk) -* os/bluestore: respect bluestore_warn_on_spurious_read_errors setting (`pr#42897 <https://github.com/ceph/ceph/pull/42897>`_, Igor Fedotov) -* osd/scrub: separate between PG state flags and internal scrubber operation (`pr#42398 <https://github.com/ceph/ceph/pull/42398>`_, Ronen Friedman) -* osd: log snaptrim message to dout (`pr#42482 <https://github.com/ceph/ceph/pull/42482>`_, Arthur Outhenin-Chalandre) -* osd: move down peers out from peer_purged (`pr#42238 <https://github.com/ceph/ceph/pull/42238>`_, Mykola Golub) -* pybind/mgr/stats: validate cmdtag (`pr#42702 <https://github.com/ceph/ceph/pull/42702>`_, Jos Collin) -* pybind/mgr: Fix IPv6 url generation (`pr#42990 <https://github.com/ceph/ceph/pull/42990>`_, Sebastian Wagner) -* pybind/rbd: fix mirror_image_get_status (`pr#42972 <https://github.com/ceph/ceph/pull/42972>`_, Ilya Dryomov, Will Smith) -* qa/\*/test_envlibrados_for_rocksdb.sh: install libarchive-3.3.3 (`pr#42344 <https://github.com/ceph/ceph/pull/42344>`_, Neha Ojha) -* qa/cephadm: centos_8.x_container_tools_3.0.yaml (`pr#42868 <https://github.com/ceph/ceph/pull/42868>`_, Sebastian Wagner) -* qa/rgw: move ignore-pg-availability.yaml out of suites/rgw (`pr#40694 <https://github.com/ceph/ceph/pull/40694>`_, Casey Bodley) -* qa/standalone: Add missing cleanups after completion of a subset of osd and scrub tests (`pr#42258 <https://github.com/ceph/ceph/pull/42258>`_, Sridhar Seshasayee) -* qa/tests: advanced pacific version to reflect the latest 16.2.5 point (`pr#42264 <https://github.com/ceph/ceph/pull/42264>`_, Yuri Weinstein) -* qa/workunits/mon/test_mon_config_key: use subprocess.run() instead of proc.communicate() (`pr#42221 <https://github.com/ceph/ceph/pull/42221>`_, Kefu Chai) -* qa: FileNotFoundError: [Errno 2] No such file or directory: '/sys/kernel/debug/ceph/3fab6bea-f243-47a4-a956-8c03a62b61b5.client4721/mds_sessions' (`pr#42165 <https://github.com/ceph/ceph/pull/42165>`_, Patrick Donnelly) -* qa: increase the pg_num for cephfs_data/metadata pools (`pr#42923 <https://github.com/ceph/ceph/pull/42923>`_, Xiubo Li) -* qa: test_ls_H_prints_human_readable_file_size failure (`pr#42166 <https://github.com/ceph/ceph/pull/42166>`_, Patrick Donnelly) -* radosgw-admin: skip GC init on read-only admin ops (`pr#42655 <https://github.com/ceph/ceph/pull/42655>`_, Mark Kogan) -* radosgw: include realm\_{id,name} in service map (`pr#42213 <https://github.com/ceph/ceph/pull/42213>`_, Sage Weil) -* rbd-mirror: add perf counters to snapshot replayer (`pr#42987 <https://github.com/ceph/ceph/pull/42987>`_, Arthur Outhenin-Chalandre) -* rbd-mirror: fix potential async op tracker leak in start_image_replayers (`pr#42979 <https://github.com/ceph/ceph/pull/42979>`_, Mykola Golub) -* rbd: fix default pool handling for nbd map/unmap (`pr#42980 <https://github.com/ceph/ceph/pull/42980>`_, Sunny Kumar) -* Remove dependency on lsb_release (`pr#43001 <https://github.com/ceph/ceph/pull/43001>`_, Ken Dreyer) -* RGW - Bucket Remove Op: Pass in user (`pr#42135 <https://github.com/ceph/ceph/pull/42135>`_, Daniel Gryniewicz) -* RGW - Don't move attrs before setting them (`pr#42320 <https://github.com/ceph/ceph/pull/42320>`_, Daniel Gryniewicz) -* rgw : add check empty for sync url (`pr#42653 <https://github.com/ceph/ceph/pull/42653>`_, caolei) -* rgw : add check for tenant provided in RGWCreateRole (`pr#42637 <https://github.com/ceph/ceph/pull/42637>`_, caolei) -* rgw : modfiy error XML for deleterole (`pr#42639 <https://github.com/ceph/ceph/pull/42639>`_, caolei) -* rgw multisite: metadata sync treats all errors as 'transient' for retry (`pr#42656 <https://github.com/ceph/ceph/pull/42656>`_, Casey Bodley) -* RGW Zipper - Make sure bucket list progresses (`pr#42625 <https://github.com/ceph/ceph/pull/42625>`_, Daniel Gryniewicz) -* rgw/amqp/test: fix mock prototype for librabbitmq-0.11.0 (`pr#42649 <https://github.com/ceph/ceph/pull/42649>`_, Yuval Lifshitz) -* rgw/http/notifications: support content type in HTTP POST messages (`pr#42644 <https://github.com/ceph/ceph/pull/42644>`_, Yuval Lifshitz) -* rgw/multisite: return correct error code when op fails (`pr#42646 <https://github.com/ceph/ceph/pull/42646>`_, Yuval Lifshitz) -* rgw/notification: add exception handling for persistent notification thread (`pr#42647 <https://github.com/ceph/ceph/pull/42647>`_, Yuval Lifshitz) -* rgw/notification: fix persistent notification hang when ack-levl=none (`pr#40696 <https://github.com/ceph/ceph/pull/40696>`_, Yuval Lifshitz) -* rgw/notification: fixing the "persistent=false" flag (`pr#40695 <https://github.com/ceph/ceph/pull/40695>`_, Yuval Lifshitz) -* rgw/notifications: delete bucket notification object when empty (`pr#42631 <https://github.com/ceph/ceph/pull/42631>`_, Yuval Lifshitz) -* rgw/notifications: support metadata filter in CompleteMultipartUpload and Copy events (`pr#42321 <https://github.com/ceph/ceph/pull/42321>`_, Yuval Lifshitz) -* rgw/notifications: support metadata filter in CompleteMultipartUploa… (`pr#42566 <https://github.com/ceph/ceph/pull/42566>`_, Yuval Lifshitz) -* rgw/rgw_file: Fix the return value of read() and readlink() (`pr#42654 <https://github.com/ceph/ceph/pull/42654>`_, Dai zhiwei, luo rixin) -* rgw/sts: correcting the evaluation of session policies (`pr#42632 <https://github.com/ceph/ceph/pull/42632>`_, Pritha Srivastava) -* rgw/sts: read_obj_policy() consults iam_user_policies on ENOENT (`pr#42650 <https://github.com/ceph/ceph/pull/42650>`_, Casey Bodley) -* rgw: allow rgw-orphan-list to process multiple data pools (`pr#42635 <https://github.com/ceph/ceph/pull/42635>`_, J. Eric Ivancich) -* rgw: allow to set ssl options and ciphers for beast frontend (`pr#42363 <https://github.com/ceph/ceph/pull/42363>`_, Mykola Golub) -* rgw: avoid infinite loop when deleting a bucket (`issue#49206 <http://tracker.ceph.com/issues/49206>`_, `pr#42230 <https://github.com/ceph/ceph/pull/42230>`_, Jeegn Chen) -* rgw: avoid occuring radosgw daemon crash when access a conditionally … (`pr#42626 <https://github.com/ceph/ceph/pull/42626>`_, xiangrui meng, yupeng chen) -* rgw: Backport of 51674 to Pacific (`pr#42346 <https://github.com/ceph/ceph/pull/42346>`_, Adam C. Emerson) -* rgw: deprecate the civetweb frontend (`pr#41367 <https://github.com/ceph/ceph/pull/41367>`_, Casey Bodley) -* rgw: Don't segfault on datalog trim (`pr#42336 <https://github.com/ceph/ceph/pull/42336>`_, Adam C. Emerson) -* rgw: during reshard lock contention, adjust logging (`pr#42641 <https://github.com/ceph/ceph/pull/42641>`_, J. Eric Ivancich) -* rgw: extending existing ssl support for vault KMS (`pr#42093 <https://github.com/ceph/ceph/pull/42093>`_, Jiffin Tony Thottan) -* rgw: fail as expected when set/delete-bucket-website attempted on a non-exis… (`pr#42642 <https://github.com/ceph/ceph/pull/42642>`_, xiangrui meng) -* rgw: fix bucket object listing when marker matches prefix (`pr#42638 <https://github.com/ceph/ceph/pull/42638>`_, J. Eric Ivancich) -* rgw: fix for mfa resync crash when supplied with only one totp_pin (`pr#42652 <https://github.com/ceph/ceph/pull/42652>`_, Pritha Srivastava) -* rgw: fix segfault related to explicit object manifest handling (`pr#42633 <https://github.com/ceph/ceph/pull/42633>`_, Mark Kogan) -* rgw: Improve error message on email id reuse (`pr#41783 <https://github.com/ceph/ceph/pull/41783>`_, Ponnuvel Palaniyappan) -* rgw: objectlock: improve client error messages (`pr#40693 <https://github.com/ceph/ceph/pull/40693>`_, Matt Benjamin) -* rgw: parse tenant name out of rgwx-bucket-instance (`pr#42231 <https://github.com/ceph/ceph/pull/42231>`_, Casey Bodley) -* rgw: radosgw-admin errors if marker not specified on data/mdlog trim (`pr#42640 <https://github.com/ceph/ceph/pull/42640>`_, Adam C. Emerson) -* rgw: remove quota soft threshold (`pr#42634 <https://github.com/ceph/ceph/pull/42634>`_, Zulai Wang) -* rgw: require bucket name in bucket chown (`pr#42323 <https://github.com/ceph/ceph/pull/42323>`_, Zulai Wang) -* rgw: when deleted obj removed in versioned bucket, extra del-marker added (`pr#42645 <https://github.com/ceph/ceph/pull/42645>`_, J. Eric Ivancich) -* rpm/luarocks: simplify conditional and support Leap 15.3 (`pr#42561 <https://github.com/ceph/ceph/pull/42561>`_, Nathan Cutler) -* rpm: drop use of $FIRST_ARG in ceph-immutable-object-cache (`pr#42480 <https://github.com/ceph/ceph/pull/42480>`_, Nathan Cutler) -* run-make-check.sh: Increase failure output log size (`pr#42850 <https://github.com/ceph/ceph/pull/42850>`_, David Galloway) -* SimpleRADOSStriper: use debug_cephsqlite (`pr#42659 <https://github.com/ceph/ceph/pull/42659>`_, Patrick Donnelly) -* src/pybind/mgr/mirroring/fs/snapshot_mirror.py: do not assume a cephf… (`pr#42226 <https://github.com/ceph/ceph/pull/42226>`_, Sébastien Han) -* test/rgw: fix use of poll() with timers in unittest_rgw_dmclock_scheduler (`pr#42651 <https://github.com/ceph/ceph/pull/42651>`_, Casey Bodley) -* Warning Cleanup and Clang Compile Fix (`pr#40692 <https://github.com/ceph/ceph/pull/40692>`_, Adam C. Emerson) -* workunits/rgw: semicolon terminates perl statements (`pr#43168 <https://github.com/ceph/ceph/pull/43168>`_, Matt Benjamin) - -v16.2.5 Pacific -=============== - -This is the fifth backport release in the Pacific series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* `ceph-mgr-modules-core` debian package does not recommend `ceph-mgr-rook` - anymore. As the latter depends on `python3-numpy` which cannot be imported in - different Python sub-interpreters multi-times if the version of - `python3-numpy` is older than 1.19. Since `apt-get` installs the `Recommends` - packages by default, `ceph-mgr-rook` was always installed along with - `ceph-mgr` debian package as an indirect dependency. If your workflow depends - on this behavior, you might want to install `ceph-mgr-rook` separately. - -* mgr/nfs: ``nfs`` module is moved out of volumes plugin. Prior using the - ``ceph nfs`` commands, ``nfs`` mgr module must be enabled. - -* volumes/nfs: The ``cephfs`` cluster type has been removed from the - ``nfs cluster create`` subcommand. Clusters deployed by cephadm can - support an NFS export of both ``rgw`` and ``cephfs`` from a single - NFS cluster instance. - -* The ``nfs cluster update`` command has been removed. You can modify - the placement of an existing NFS service (and/or its associated - ingress service) using ``orch ls --export`` and ``orch apply -i - ...``. - -* The ``orch apply nfs`` command no longer requires a pool or - namespace argument. We strongly encourage users to use the defaults - so that the ``nfs cluster ls`` and related commands will work - properly. - -* The ``nfs cluster delete`` and ``nfs export delete`` commands are - deprecated and will be removed in a future release. Please use - ``nfs cluster rm`` and ``nfs export rm`` instead. - -* A long-standing bug that prevented 32-bit and 64-bit client/server - interoperability under msgr v2 has been fixed. In particular, mixing armv7l - (armhf) and x86_64 or aarch64 servers in the same cluster now works. - -Changelog ---------- - -* .github/labeler: add api-change label (`pr#41818 <https://github.com/ceph/ceph/pull/41818>`_, Ernesto Puerta) -* Improve mon location handling for stretch clusters (`pr#40484 <https://github.com/ceph/ceph/pull/40484>`_, Greg Farnum) -* MDS heartbeat timed out between during executing MDCache::start_files_to_recover() (`pr#42061 <https://github.com/ceph/ceph/pull/42061>`_, Yongseok Oh) -* MDS slow request lookupino #0x100 on rank 1 block forever on dispatched (`pr#40856 <https://github.com/ceph/ceph/pull/40856>`_, Xiubo Li, Patrick Donnelly) -* MDSMonitor: crash when attempting to mount cephfs (`pr#42068 <https://github.com/ceph/ceph/pull/42068>`_, Patrick Donnelly) -* Pacific stretch mon state [Merge after 40484] (`pr#41130 <https://github.com/ceph/ceph/pull/41130>`_, Greg Farnum) -* Pacific: Add DoutPrefixProvider for RGW Log Messages in Pacfic (`pr#40054 <https://github.com/ceph/ceph/pull/40054>`_, Ali Maredia, Kalpesh Pandya, Casey Bodley) -* Pacific: Direct MMonJoin messages to leader, not first rank [Merge after 41130] (`pr#41131 <https://github.com/ceph/ceph/pull/41131>`_, Greg Farnum) -* Revert "pacific: mgr/dashboard: Generate NPM dependencies manifest" (`pr#41549 <https://github.com/ceph/ceph/pull/41549>`_, Nizamudeen A) -* Update boost url, fixing windows build (`pr#41259 <https://github.com/ceph/ceph/pull/41259>`_, Lucian Petrut) -* bluestore: use string_view and strip trailing slash for dir listing (`pr#41755 <https://github.com/ceph/ceph/pull/41755>`_, Jonas Jelten, Kefu Chai) -* build(deps): bump node-notifier from 8.0.0 to 8.0.1 in /src/pybind/mgr/dashboard/frontend (`pr#40813 <https://github.com/ceph/ceph/pull/40813>`_, Ernesto Puerta, dependabot[bot]) -* ceph-volume: fix batch report and respect ceph.conf config values (`pr#41714 <https://github.com/ceph/ceph/pull/41714>`_, Andrew Schoen) -* ceph_test_rados_api_service: more retries for servicemkap (`pr#41182 <https://github.com/ceph/ceph/pull/41182>`_, Sage Weil) -* cephadm june final batch (`pr#42117 <https://github.com/ceph/ceph/pull/42117>`_, Kefu Chai, Sage Weil, Zac Dover, Sebastian Wagner, Varsha Rao, Sandro Bonazzola, Juan Miguel Olmo Martínez) -* cephadm: batch backport for May (2) (`pr#41219 <https://github.com/ceph/ceph/pull/41219>`_, Adam King, Sage Weil, Zac Dover, Dennis Körner, jianglong01, Avan Thakkar, Juan Miguel Olmo Martínez) -* cephadm: june batch 1 (`pr#41684 <https://github.com/ceph/ceph/pull/41684>`_, Sage Weil, Paul Cuzner, Juan Miguel Olmo Martínez, VasishtaShastry, Zac Dover, Sebastian Wagner, Adam King, Michael Fritch, Daniel Pivonka, sunilkumarn417) -* cephadm: june batch 2 (`pr#41815 <https://github.com/ceph/ceph/pull/41815>`_, Sebastian Wagner, Daniel Pivonka, Zac Dover, Michael Fritch) -* cephadm: june batch 3 (`pr#41913 <https://github.com/ceph/ceph/pull/41913>`_, Zac Dover, Adam King, Michael Fritch, Patrick Donnelly, Sage Weil, Juan Miguel Olmo Martínez, jianglong01) -* cephadm: may batch 1 (`pr#41151 <https://github.com/ceph/ceph/pull/41151>`_, Juan Miguel Olmo Martínez, Sage Weil, Zac Dover, Daniel Pivonka, Adam King, Stanislav Datskevych, jianglong01, Kefu Chai, Deepika Upadhyay, Joao Eduardo Luis) -* cephadm: may batch 3 (`pr#41463 <https://github.com/ceph/ceph/pull/41463>`_, Sage Weil, Michael Fritch, Adam King, Patrick Seidensal, Juan Miguel Olmo Martínez, Dimitri Savineau, Zac Dover, Sebastian Wagner) -* cephfs-mirror backports (`issue#50523 <http://tracker.ceph.com/issues/50523>`_, `issue#50035 <http://tracker.ceph.com/issues/50035>`_, `issue#50266 <http://tracker.ceph.com/issues/50266>`_, `issue#50442 <http://tracker.ceph.com/issues/50442>`_, `issue#50581 <http://tracker.ceph.com/issues/50581>`_, `issue#50229 <http://tracker.ceph.com/issues/50229>`_, `issue#49939 <http://tracker.ceph.com/issues/49939>`_, `issue#50224 <http://tracker.ceph.com/issues/50224>`_, `issue#50298 <http://tracker.ceph.com/issues/50298>`_, `pr#41475 <https://github.com/ceph/ceph/pull/41475>`_, Venky Shankar, Lucian Petrut) -* cephfs-mirror: backports (`issue#50447 <http://tracker.ceph.com/issues/50447>`_, `issue#50867 <http://tracker.ceph.com/issues/50867>`_, `issue#51204 <http://tracker.ceph.com/issues/51204>`_, `pr#41947 <https://github.com/ceph/ceph/pull/41947>`_, Venky Shankar) -* cephfs-mirror: reopen logs on SIGHUP (`issue#51413 <http://tracker.ceph.com/issues/51413>`_, `issue#51318 <http://tracker.ceph.com/issues/51318>`_, `pr#42097 <https://github.com/ceph/ceph/pull/42097>`_, Venky Shankar) -* cephfs-top: self-adapt the display according the window size (`pr#41053 <https://github.com/ceph/ceph/pull/41053>`_, Xiubo Li) -* client: Fix executeable access check for the root user (`pr#41294 <https://github.com/ceph/ceph/pull/41294>`_, Kotresh HR) -* client: fix the opened inodes counter increasing (`pr#40685 <https://github.com/ceph/ceph/pull/40685>`_, Xiubo Li) -* client: make Inode to inherit from RefCountedObject (`pr#41052 <https://github.com/ceph/ceph/pull/41052>`_, Xiubo Li) -* cls/rgw: look for plain entries in non-ascii plain namespace too (`pr#41774 <https://github.com/ceph/ceph/pull/41774>`_, Mykola Golub) -* common/buffer: adjust align before calling posix_memalign() (`pr#41249 <https://github.com/ceph/ceph/pull/41249>`_, Ilya Dryomov) -* common/mempool: only fail tests if sharding is very bad (`pr#40566 <https://github.com/ceph/ceph/pull/40566>`_, singuliere) -* common/options/global.yaml.in: increase default value of bluestore_cache_trim_max_skip_pinned (`pr#40918 <https://github.com/ceph/ceph/pull/40918>`_, Neha Ojha) -* crush/crush: ensure alignof(crush_work_bucket) is 1 (`pr#41983 <https://github.com/ceph/ceph/pull/41983>`_, Kefu Chai) -* debian,cmake,cephsqlite: hide non-public symbols (`pr#40689 <https://github.com/ceph/ceph/pull/40689>`_, Kefu Chai) -* debian/control: ceph-mgr-modules-core does not Recommend ceph-mgr-rook (`pr#41877 <https://github.com/ceph/ceph/pull/41877>`_, Kefu Chai) -* doc: pacific updates (`pr#42066 <https://github.com/ceph/ceph/pull/42066>`_, Patrick Donnelly) -* librbd/cache/pwl: fix parsing of cache_type in create_image_cache_state() (`pr#41244 <https://github.com/ceph/ceph/pull/41244>`_, Ilya Dryomov) -* librbd/mirror/snapshot: avoid UnlinkPeerRequest with a unlinked peer (`pr#41304 <https://github.com/ceph/ceph/pull/41304>`_, Arthur Outhenin-Chalandre) -* librbd: don't stop at the first unremovable image when purging (`pr#41664 <https://github.com/ceph/ceph/pull/41664>`_, Ilya Dryomov) -* make-dist: refuse to run if script path contains a colon (`pr#41086 <https://github.com/ceph/ceph/pull/41086>`_, Nathan Cutler) -* mds: "FAILED ceph_assert(r == 0 || r == -2)" (`pr#42072 <https://github.com/ceph/ceph/pull/42072>`_, Xiubo Li) -* mds: "cluster [ERR] Error recovering journal 0x203: (2) No such file or directory" in cluster log" (`pr#42059 <https://github.com/ceph/ceph/pull/42059>`_, Xiubo Li) -* mds: Add full caps to avoid osd full check (`pr#41691 <https://github.com/ceph/ceph/pull/41691>`_, Patrick Donnelly, Kotresh HR) -* mds: CephFS kclient gets stuck when getattr() on a certain file (`pr#42062 <https://github.com/ceph/ceph/pull/42062>`_, "Yan, Zheng", Xiubo Li) -* mds: Error ENOSYS: mds.a started profiler (`pr#42056 <https://github.com/ceph/ceph/pull/42056>`_, Xiubo Li) -* mds: MDSLog::journaler pointer maybe crash with use-after-free (`pr#42060 <https://github.com/ceph/ceph/pull/42060>`_, Xiubo Li) -* mds: avoid journaling overhead for setxattr("ceph.dir.subvolume") for no-op case (`pr#41995 <https://github.com/ceph/ceph/pull/41995>`_, Patrick Donnelly) -* mds: do not assert when receiving a unknow metric type (`pr#41596 <https://github.com/ceph/ceph/pull/41596>`_, Patrick Donnelly, Xiubo Li) -* mds: journal recovery thread is possibly asserting with mds_lock not locked (`pr#42058 <https://github.com/ceph/ceph/pull/42058>`_, Xiubo Li) -* mds: mkdir on ephemerally pinned directory sometimes blocked on journal flush (`pr#42071 <https://github.com/ceph/ceph/pull/42071>`_, Xiubo Li) -* mds: scrub error on inode 0x1 (`pr#41685 <https://github.com/ceph/ceph/pull/41685>`_, Milind Changire) -* mds: standby-replay only trims cache when it reaches the end of the replay log (`pr#40855 <https://github.com/ceph/ceph/pull/40855>`_, Xiubo Li, Patrick Donnelly) -* mgr/DaemonServer.cc: prevent mgr crashes caused by integer underflow that is triggered by large increases to pg_num/pgp_num (`pr#41862 <https://github.com/ceph/ceph/pull/41862>`_, Cory Snyder) -* mgr/Dashboard: Remove erroneous elements in hosts-overview Grafana dashboard (`pr#40982 <https://github.com/ceph/ceph/pull/40982>`_, Malcolm Holmes) -* mgr/dashboard: API Version changes do not apply to pre-defined methods (list, create etc.) (`pr#41675 <https://github.com/ceph/ceph/pull/41675>`_, Aashish Sharma) -* mgr/dashboard: Alertmanager fails to POST alerts (`pr#41987 <https://github.com/ceph/ceph/pull/41987>`_, Avan Thakkar) -* mgr/dashboard: Fix 500 error while exiting out of maintenance (`pr#41915 <https://github.com/ceph/ceph/pull/41915>`_, Nizamudeen A) -* mgr/dashboard: Fix bucket name input allowing space in the value (`pr#42119 <https://github.com/ceph/ceph/pull/42119>`_, Nizamudeen A) -* mgr/dashboard: Fix for query params resetting on change-password (`pr#41440 <https://github.com/ceph/ceph/pull/41440>`_, Nizamudeen A) -* mgr/dashboard: Generate NPM dependencies manifest (`pr#41204 <https://github.com/ceph/ceph/pull/41204>`_, Nizamudeen A) -* mgr/dashboard: Host Maintenance Follow ups (`pr#41056 <https://github.com/ceph/ceph/pull/41056>`_, Nizamudeen A) -* mgr/dashboard: Include Network address and labels on Host Creation form (`pr#42027 <https://github.com/ceph/ceph/pull/42027>`_, Nizamudeen A) -* mgr/dashboard: OSDs placement text is unreadable (`pr#41096 <https://github.com/ceph/ceph/pull/41096>`_, Aashish Sharma) -* mgr/dashboard: RGW buckets async validator performance enhancement and name constraints (`pr#41296 <https://github.com/ceph/ceph/pull/41296>`_, Nizamudeen A) -* mgr/dashboard: User database migration has been cut out (`pr#42140 <https://github.com/ceph/ceph/pull/42140>`_, Volker Theile) -* mgr/dashboard: avoid data processing in crush-map component (`pr#41203 <https://github.com/ceph/ceph/pull/41203>`_, Avan Thakkar) -* mgr/dashboard: bucket details: show lock retention period only in days (`pr#41948 <https://github.com/ceph/ceph/pull/41948>`_, Alfonso Martínez) -* mgr/dashboard: crushmap tree doesn't display crush type other than root (`pr#42007 <https://github.com/ceph/ceph/pull/42007>`_, Kefu Chai, Avan Thakkar) -* mgr/dashboard: disable NFSv3 support in dashboard (`pr#41200 <https://github.com/ceph/ceph/pull/41200>`_, Volker Theile) -* mgr/dashboard: drop container image name and id from services list (`pr#41505 <https://github.com/ceph/ceph/pull/41505>`_, Avan Thakkar) -* mgr/dashboard: fix API docs link (`pr#41507 <https://github.com/ceph/ceph/pull/41507>`_, Avan Thakkar) -* mgr/dashboard: fix ESOCKETTIMEDOUT E2E failure (`pr#41427 <https://github.com/ceph/ceph/pull/41427>`_, Avan Thakkar) -* mgr/dashboard: fix HAProxy (now called ingress) (`pr#41298 <https://github.com/ceph/ceph/pull/41298>`_, Avan Thakkar) -* mgr/dashboard: fix OSD out count (`pr#42153 <https://github.com/ceph/ceph/pull/42153>`_, 胡玮文) -* mgr/dashboard: fix OSDs Host details/overview grafana graphs (`issue#49769 <http://tracker.ceph.com/issues/49769>`_, `pr#41324 <https://github.com/ceph/ceph/pull/41324>`_, Alfonso Martínez, Michael Wodniok) -* mgr/dashboard: fix base-href (`pr#41634 <https://github.com/ceph/ceph/pull/41634>`_, Avan Thakkar) -* mgr/dashboard: fix base-href: revert it to previous approach (`pr#41251 <https://github.com/ceph/ceph/pull/41251>`_, Avan Thakkar) -* mgr/dashboard: fix bucket objects and size calculations (`pr#41646 <https://github.com/ceph/ceph/pull/41646>`_, Avan Thakkar) -* mgr/dashboard: fix bucket versioning when locking is enabled (`pr#41197 <https://github.com/ceph/ceph/pull/41197>`_, Avan Thakkar) -* mgr/dashboard: fix for right sidebar nav icon not clickable (`pr#42008 <https://github.com/ceph/ceph/pull/42008>`_, Aaryan Porwal) -* mgr/dashboard: fix set-ssl-certificate{,-key} commands (`pr#41170 <https://github.com/ceph/ceph/pull/41170>`_, Alfonso Martínez) -* mgr/dashboard: fix typo: Filesystems to File Systems (`pr#42016 <https://github.com/ceph/ceph/pull/42016>`_, Navin Barnwal) -* mgr/dashboard: ingress service creation follow-up (`pr#41428 <https://github.com/ceph/ceph/pull/41428>`_, Avan Thakkar) -* mgr/dashboard: pass Grafana datasource in URL (`pr#41633 <https://github.com/ceph/ceph/pull/41633>`_, Ernesto Puerta) -* mgr/dashboard: provide the service events when showing a service in the UI (`pr#41494 <https://github.com/ceph/ceph/pull/41494>`_, Aashish Sharma) -* mgr/dashboard: run cephadm-backend e2e tests with KCLI (`pr#42156 <https://github.com/ceph/ceph/pull/42156>`_, Alfonso Martínez) -* mgr/dashboard: set required env. variables in run-backend-api-tests.sh (`pr#41069 <https://github.com/ceph/ceph/pull/41069>`_, Alfonso Martínez) -* mgr/dashboard: show RGW tenant user id correctly in 'NFS create export' form (`pr#41528 <https://github.com/ceph/ceph/pull/41528>`_, Alfonso Martínez) -* mgr/dashboard: show partially deleted RBDs (`pr#41891 <https://github.com/ceph/ceph/pull/41891>`_, Tatjana Dehler) -* mgr/dashboard: simplify object locking fields in 'Bucket Creation' form (`pr#41777 <https://github.com/ceph/ceph/pull/41777>`_, Alfonso Martínez) -* mgr/dashboard: update frontend deps due to security vulnerabilities (`pr#41402 <https://github.com/ceph/ceph/pull/41402>`_, Alfonso Martínez) -* mgr/dashboard:include compression stats on pool dashboard (`pr#41577 <https://github.com/ceph/ceph/pull/41577>`_, Ernesto Puerta, Paul Cuzner) -* mgr/nfs: do not depend on cephadm.utils (`pr#41842 <https://github.com/ceph/ceph/pull/41842>`_, Sage Weil) -* mgr/progress: ensure progress stays between [0,1] (`pr#41312 <https://github.com/ceph/ceph/pull/41312>`_, Dan van der Ster) -* mgr/prometheus:Improve the pool metadata (`pr#40804 <https://github.com/ceph/ceph/pull/40804>`_, Paul Cuzner) -* mgr/pybind/snap_schedule: do not fail when no fs snapshots are available (`pr#41044 <https://github.com/ceph/ceph/pull/41044>`_, Sébastien Han) -* mgr/volumes/nfs: drop type param during cluster create (`pr#41005 <https://github.com/ceph/ceph/pull/41005>`_, Michael Fritch) -* mon,doc: deprecate min_compat_client (`pr#41468 <https://github.com/ceph/ceph/pull/41468>`_, Patrick Donnelly) -* mon/MonClient: reset authenticate_err in _reopen_session() (`pr#41019 <https://github.com/ceph/ceph/pull/41019>`_, Ilya Dryomov) -* mon/MonClient: tolerate a rotating key that is slightly out of date (`pr#41450 <https://github.com/ceph/ceph/pull/41450>`_, Ilya Dryomov) -* mon/OSDMonitor: drop stale failure_info after a grace period (`pr#41090 <https://github.com/ceph/ceph/pull/41090>`_, Kefu Chai) -* mon/OSDMonitor: drop stale failure_info even if can_mark_down() (`pr#41982 <https://github.com/ceph/ceph/pull/41982>`_, Kefu Chai) -* mon: load stashed map before mkfs monmap (`pr#41768 <https://github.com/ceph/ceph/pull/41768>`_, Dan van der Ster) -* nfs backport May (`pr#41389 <https://github.com/ceph/ceph/pull/41389>`_, Varsha Rao) -* os/FileStore: fix to handle readdir error correctly (`pr#41236 <https://github.com/ceph/ceph/pull/41236>`_, Misono Tomohiro) -* os/bluestore: fix unexpected ENOSPC in Avl/Hybrid allocators (`pr#41655 <https://github.com/ceph/ceph/pull/41655>`_, Igor Fedotov, Neha Ojha) -* os/bluestore: introduce multithreading sync for bluestore's repairer (`pr#41752 <https://github.com/ceph/ceph/pull/41752>`_, Igor Fedotov) -* os/bluestore: tolerate zero length for allocators' init\_[add/rm]_free() (`pr#41753 <https://github.com/ceph/ceph/pull/41753>`_, Igor Fedotov) -* osd/PG.cc: handle removal of pgmeta object (`pr#41680 <https://github.com/ceph/ceph/pull/41680>`_, Neha Ojha) -* osd/osd_type: use f->dump_unsigned() when appropriate (`pr#42045 <https://github.com/ceph/ceph/pull/42045>`_, Kefu Chai) -* osd/scrub: replace a ceph_assert() with a test (`pr#41944 <https://github.com/ceph/ceph/pull/41944>`_, Ronen Friedman) -* osd: Override recovery, backfill and sleep related config options during OSD and mclock scheduler initialization (`pr#41125 <https://github.com/ceph/ceph/pull/41125>`_, Sridhar Seshasayee, Zac Dover) -* osd: clear data digest when write_trunc (`pr#42019 <https://github.com/ceph/ceph/pull/42019>`_, Zengran Zhang) -* osd: compute OSD's space usage ratio via raw space utilization (`pr#41113 <https://github.com/ceph/ceph/pull/41113>`_, Igor Fedotov) -* osd: don't assert in-flight backfill is always in recovery list (`pr#41320 <https://github.com/ceph/ceph/pull/41320>`_, Mykola Golub) -* osd: fix scrub reschedule bug (`pr#41971 <https://github.com/ceph/ceph/pull/41971>`_, wencong wan) -* pacific: client: abort after MDS blocklist (`issue#50530 <http://tracker.ceph.com/issues/50530>`_, `pr#42070 <https://github.com/ceph/ceph/pull/42070>`_, Venky Shankar) -* pybind/ceph_volume_client: use cephfs mkdirs api (`pr#42159 <https://github.com/ceph/ceph/pull/42159>`_, Patrick Donnelly) -* pybind/mgr/devicehealth: scrape-health-metrics command accidentally renamed to scrape-daemon-health-metrics (`pr#41089 <https://github.com/ceph/ceph/pull/41089>`_, Patrick Donnelly) -* pybind/mgr/progress: Disregard unreported pgs (`pr#41872 <https://github.com/ceph/ceph/pull/41872>`_, Kamoltat) -* pybind/mgr/snap_schedule: Invalid command: Unexpected argument 'fs=cephfs' (`pr#42064 <https://github.com/ceph/ceph/pull/42064>`_, Patrick Donnelly) -* qa/config/rados: add dispatch delay testing params (`pr#41136 <https://github.com/ceph/ceph/pull/41136>`_, Deepika Upadhyay) -* qa/distros/podman: preserve registries.conf (`pr#40729 <https://github.com/ceph/ceph/pull/40729>`_, Sage Weil) -* qa/suites/rados/standalone: remove mon_election symlink (`pr#41212 <https://github.com/ceph/ceph/pull/41212>`_, Neha Ojha) -* qa/suites/rados: add simultaneous scrubs to the thrasher (`pr#42120 <https://github.com/ceph/ceph/pull/42120>`_, Ronen Friedman) -* qa/tasks/qemu: precise repos have been archived (`pr#41643 <https://github.com/ceph/ceph/pull/41643>`_, Ilya Dryomov) -* qa/tests: corrected point versions to reflect latest releases (`pr#41313 <https://github.com/ceph/ceph/pull/41313>`_, Yuri Weinstein) -* qa/tests: initial checkin for pacific-p2p suite (2) (`pr#41208 <https://github.com/ceph/ceph/pull/41208>`_, Yuri Weinstein) -* qa/tests: replaced ubuntu_latest.yaml with ubuntu 20.04 (`pr#41460 <https://github.com/ceph/ceph/pull/41460>`_, Patrick Donnelly, Kefu Chai) -* qa/upgrade: conditionally disable update_features tests (`pr#41629 <https://github.com/ceph/ceph/pull/41629>`_, Deepika) -* qa/workunits/rbd: use bionic version of qemu-iotests for focal (`pr#41195 <https://github.com/ceph/ceph/pull/41195>`_, Ilya Dryomov) -* qa: AttributeError: 'RemoteProcess' object has no attribute 'split' (`pr#41811 <https://github.com/ceph/ceph/pull/41811>`_, Patrick Donnelly) -* qa: add async dirops testing (`pr#41823 <https://github.com/ceph/ceph/pull/41823>`_, Patrick Donnelly) -* qa: check mounts attribute in ctx (`pr#40634 <https://github.com/ceph/ceph/pull/40634>`_, Jos Collin) -* qa: convert some legacy Filesystem.rados calls (`pr#40996 <https://github.com/ceph/ceph/pull/40996>`_, Patrick Donnelly) -* qa: drop the distro~HEAD directory from the fs suite (`pr#41169 <https://github.com/ceph/ceph/pull/41169>`_, Radoslaw Zarzynski) -* qa: fs:bugs does not specify distro (`pr#42063 <https://github.com/ceph/ceph/pull/42063>`_, Patrick Donnelly) -* qa: fs:upgrade uses teuthology default distro (`pr#42067 <https://github.com/ceph/ceph/pull/42067>`_, Patrick Donnelly) -* qa: scrub code does not join scrubopts with comma (`pr#42065 <https://github.com/ceph/ceph/pull/42065>`_, Kefu Chai, Patrick Donnelly) -* qa: test_data_scan.TestDataScan.test_pg_files AssertionError: Items in the second set but not the first (`pr#42069 <https://github.com/ceph/ceph/pull/42069>`_, Xiubo Li) -* qa: test_ephemeral_pin_distribution failure (`pr#41659 <https://github.com/ceph/ceph/pull/41659>`_, Patrick Donnelly) -* qa: update RHEL to 8.4 (`pr#41822 <https://github.com/ceph/ceph/pull/41822>`_, Patrick Donnelly) -* rbd-mirror: fix segfault in snapshot replayer shutdown (`pr#41503 <https://github.com/ceph/ceph/pull/41503>`_, Arthur Outhenin-Chalandre) -* rbd: --source-spec-file should be --source-spec-path (`pr#41122 <https://github.com/ceph/ceph/pull/41122>`_, Ilya Dryomov) -* rbd: don't attempt to interpret image cache state json (`pr#41281 <https://github.com/ceph/ceph/pull/41281>`_, Ilya Dryomov) -* rgw: Simplify log shard probing and err on the side of omap (`pr#41576 <https://github.com/ceph/ceph/pull/41576>`_, Adam C. Emerson) -* rgw: completion of multipart upload leaves delete marker (`pr#41769 <https://github.com/ceph/ceph/pull/41769>`_, J. Eric Ivancich) -* rgw: crash on multipart upload to bucket with policy (`pr#41893 <https://github.com/ceph/ceph/pull/41893>`_, Or Friedmann) -* rgw: radosgw_admin remove bucket not purging past 1,000 objects (`pr#41863 <https://github.com/ceph/ceph/pull/41863>`_, J. Eric Ivancich) -* rgw: radoslist incomplete multipart parts marker (`pr#40819 <https://github.com/ceph/ceph/pull/40819>`_, J. Eric Ivancich) -* rocksdb: pickup fix to detect PMULL instruction (`pr#41079 <https://github.com/ceph/ceph/pull/41079>`_, Kefu Chai) -* session dump includes completed_requests twice, once as an integer and once as a list (`pr#42057 <https://github.com/ceph/ceph/pull/42057>`_, Dan van der Ster) -* systemd: remove `ProtectClock=true` for `ceph-osd@.service` (`pr#41232 <https://github.com/ceph/ceph/pull/41232>`_, Wong Hoi Sing Edison) -* test/librbd: use really invalid domain (`pr#42010 <https://github.com/ceph/ceph/pull/42010>`_, Mykola Golub) -* win32\*.sh: disable libcephsqlite when targeting Windows (`pr#40557 <https://github.com/ceph/ceph/pull/40557>`_, Lucian Petrut) - - -v16.2.4 Pacific -=============== - -This is a hotfix release addressing a number of security issues and regressions. We recommend all users update to this release. - -Changelog ---------- - -* mgr/dashboard: fix base-href: revert it to previous approach (`issue#50684 <https://tracker.ceph.com/issues/50684>`_, Avan Thakkar) -* mgr/dashboard: fix cookie injection issue (:ref:`CVE-2021-3509`, Ernesto Puerta) -* mgr/dashboard: fix set-ssl-certificate{,-key} commands (`issue#50519 <https://tracker.ceph.com/issues/50519>`_, Alfonso Martínez) -* rgw: RGWSwiftWebsiteHandler::is_web_dir checks empty subdir_name (:ref:`CVE-2021-3531`, Felix Huettner) -* rgw: sanitize \r in s3 CORSConfiguration's ExposeHeader (:ref:`CVE-2021-3524`, Sergey Bobrov, Casey Bodley) -* systemd: remove ProtectClock=true for ceph-osd@.service (`issue#50347 <https://tracker.ceph.com/issues/50347>`_, Wong Hoi Sing Edison) - -v16.2.3 Pacific -=============== - -This is the third backport release in the Pacific series. We recommend all users -update to this release. - -Notable Changes ---------------- - -* This release fixes a cephadm upgrade bug that caused some systems to get stuck in a loop - restarting the first mgr daemon. - - -v16.2.2 Pacific -=============== - -This is the second backport release in the Pacific series. We recommend all -users update to this release. - -Notable Changes ---------------- - -* Cephadm now supports an *ingress* service type that provides load - balancing and HA (via haproxy and keepalived on a virtual IP) for - RGW service (see :ref:`orchestrator-haproxy-service-spec`). (The experimental - *rgw-ha* service has been removed.) - -Changelog ---------- - -* ceph-fuse: src/include/buffer.h: 1187: FAILED ceph_assert(_num <= 1024) (`pr#40628 <https://github.com/ceph/ceph/pull/40628>`_, Yanhu Cao) -* ceph-volume: fix "device" output (`pr#41054 <https://github.com/ceph/ceph/pull/41054>`_, Sébastien Han) -* ceph-volume: fix raw listing when finding OSDs from different clusters (`pr#40985 <https://github.com/ceph/ceph/pull/40985>`_, Sébastien Han) -* ceph.spec.in: Enable tcmalloc on IBM Power and Z (`pr#39488 <https://github.com/ceph/ceph/pull/39488>`_, Nathan Cutler, Yaakov Selkowitz) -* cephadm april batch 3 (`issue#49737 <http://tracker.ceph.com/issues/49737>`_, `pr#40922 <https://github.com/ceph/ceph/pull/40922>`_, Adam King, Sage Weil, Daniel Pivonka, Shreyaa Sharma, Sebastian Wagner, Juan Miguel Olmo Martínez, Zac Dover, Jeff Layton, Guillaume Abrioux, 胡玮文, Melissa Li, Nathan Cutler, Yaakov Selkowitz) -* cephadm: april batch 1 (`pr#40544 <https://github.com/ceph/ceph/pull/40544>`_, Sage Weil, Daniel Pivonka, Joao Eduardo Luis, Adam King) -* cephadm: april batch backport 2 (`pr#40746 <https://github.com/ceph/ceph/pull/40746>`_, Guillaume Abrioux, Sage Weil, Paul Cuzner) -* cephadm: specify addr on bootstrap's host add (`pr#40554 <https://github.com/ceph/ceph/pull/40554>`_, Joao Eduardo Luis) -* cephfs: minor ceph-dokan improvements (`pr#40627 <https://github.com/ceph/ceph/pull/40627>`_, Lucian Petrut) -* client: items pinned in cache preventing unmount (`pr#40629 <https://github.com/ceph/ceph/pull/40629>`_, Xiubo Li) -* client: only check pool permissions for regular files (`pr#40686 <https://github.com/ceph/ceph/pull/40686>`_, Xiubo Li) -* cmake: define BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT globally (`pr#40706 <https://github.com/ceph/ceph/pull/40706>`_, Kefu Chai) -* cmake: pass unparsed args to add_ceph_test() (`pr#40523 <https://github.com/ceph/ceph/pull/40523>`_, Kefu Chai) -* cmake: use --smp 1 --memory 256M to crimson tests (`pr#40568 <https://github.com/ceph/ceph/pull/40568>`_, Kefu Chai) -* crush/CrushLocation: do not print logging message in constructor (`pr#40679 <https://github.com/ceph/ceph/pull/40679>`_, Alex Wu) -* doc/cephfs/nfs: add user id, fs name and key to FSAL block (`pr#40687 <https://github.com/ceph/ceph/pull/40687>`_, Varsha Rao) -* include/librados: fix doxygen syntax for docs build (`pr#40805 <https://github.com/ceph/ceph/pull/40805>`_, Josh Durgin) -* mds: "cluster [WRN] Scrub error on inode 0x1000000039d (/client.0/tmp/blogbench-1.0/src/blogtest_in) see mds.a log and `damage ls` output for details" (`pr#40825 <https://github.com/ceph/ceph/pull/40825>`_, Milind Changire) -* mds: skip the buffer in UnknownPayload::decode() (`pr#40682 <https://github.com/ceph/ceph/pull/40682>`_, Xiubo Li) -* mgr/PyModule: put mgr_module_path before Py_GetPath() (`pr#40517 <https://github.com/ceph/ceph/pull/40517>`_, Kefu Chai) -* mgr/dashboard: Device health status is not getting listed under hosts section (`pr#40494 <https://github.com/ceph/ceph/pull/40494>`_, Aashish Sharma) -* mgr/dashboard: Fix for alert notification message being undefined (`pr#40588 <https://github.com/ceph/ceph/pull/40588>`_, Nizamudeen A) -* mgr/dashboard: Fix for broken User management role cloning (`pr#40398 <https://github.com/ceph/ceph/pull/40398>`_, Nizamudeen A) -* mgr/dashboard: Improve descriptions in some parts of the dashboard (`pr#40545 <https://github.com/ceph/ceph/pull/40545>`_, Nizamudeen A) -* mgr/dashboard: Remove username and password from request body (`pr#40981 <https://github.com/ceph/ceph/pull/40981>`_, Nizamudeen A) -* mgr/dashboard: Remove username, password fields from Manager Modules/dashboard,influx (`pr#40489 <https://github.com/ceph/ceph/pull/40489>`_, Aashish Sharma) -* mgr/dashboard: Revoke read-only user's access to Manager modules (`pr#40648 <https://github.com/ceph/ceph/pull/40648>`_, Nizamudeen A) -* mgr/dashboard: Unable to login to ceph dashboard until clearing cookies manually (`pr#40586 <https://github.com/ceph/ceph/pull/40586>`_, Avan Thakkar) -* mgr/dashboard: debug nodeenv hangs (`pr#40815 <https://github.com/ceph/ceph/pull/40815>`_, Ernesto Puerta) -* mgr/dashboard: filesystem pool size should use stored stat (`pr#40980 <https://github.com/ceph/ceph/pull/40980>`_, Avan Thakkar) -* mgr/dashboard: fix broken feature toggles (`pr#40474 <https://github.com/ceph/ceph/pull/40474>`_, Ernesto Puerta) -* mgr/dashboard: fix duplicated rows when creating NFS export (`pr#40990 <https://github.com/ceph/ceph/pull/40990>`_, Alfonso Martínez) -* mgr/dashboard: fix errors when creating NFS export (`pr#40822 <https://github.com/ceph/ceph/pull/40822>`_, Alfonso Martínez) -* mgr/dashboard: improve telemetry opt-in reminder notification message (`pr#40887 <https://github.com/ceph/ceph/pull/40887>`_, Waad Alkhoury) -* mgr/dashboard: test prometheus rules through promtool (`pr#40929 <https://github.com/ceph/ceph/pull/40929>`_, Aashish Sharma, Kefu Chai) -* mon: Modifying trim logic to change paxos_service_trim_max dynamically (`pr#40691 <https://github.com/ceph/ceph/pull/40691>`_, Aishwarya Mathuria) -* monmaptool: Don't call set_port on an invalid address (`pr#40690 <https://github.com/ceph/ceph/pull/40690>`_, Brad Hubbard, Kefu Chai) -* os/FileStore: don't propagate split/merge error to "create"/"remove" (`pr#40989 <https://github.com/ceph/ceph/pull/40989>`_, Mykola Golub) -* os/bluestore/BlueFS: do not _flush_range deleted files (`pr#40677 <https://github.com/ceph/ceph/pull/40677>`_, weixinwei) -* osd/PeeringState: fix acting_set_writeable min_size check (`pr#40759 <https://github.com/ceph/ceph/pull/40759>`_, Samuel Just) -* packaging: require ceph-common for immutable object cache daemon (`pr#40665 <https://github.com/ceph/ceph/pull/40665>`_, Ilya Dryomov) -* pybind/mgr/volumes: deadlock on async job hangs finisher thread (`pr#40630 <https://github.com/ceph/ceph/pull/40630>`_, Kefu Chai, Patrick Donnelly) -* qa/suites/krbd: don't require CEPHX_V2 for unmap subsuite (`pr#40826 <https://github.com/ceph/ceph/pull/40826>`_, Ilya Dryomov) -* qa/suites/rados/cephadm: stop testing on broken focal kubic podman (`pr#40512 <https://github.com/ceph/ceph/pull/40512>`_, Sage Weil) -* qa/tasks/ceph.conf: shorten cephx TTL for testing (`pr#40663 <https://github.com/ceph/ceph/pull/40663>`_, Sage Weil) -* qa/tasks/cephfs: create enough subvolumes (`pr#40688 <https://github.com/ceph/ceph/pull/40688>`_, Ramana Raja) -* qa/tasks/vstart_runner.py: start max required mgrs (`pr#40612 <https://github.com/ceph/ceph/pull/40612>`_, Alfonso Martínez) -* qa/tasks: Add wait_for_clean() check prior to initiating scrubbing (`pr#40461 <https://github.com/ceph/ceph/pull/40461>`_, Sridhar Seshasayee) -* qa: "AttributeError: 'NoneType' object has no attribute 'mon_manager'" (`pr#40645 <https://github.com/ceph/ceph/pull/40645>`_, Rishabh Dave) -* qa: "log [ERR] : error reading sessionmap 'mds2_sessionmap'" (`pr#40852 <https://github.com/ceph/ceph/pull/40852>`_, Patrick Donnelly) -* qa: fix ino_release_cb racy behavior (`pr#40683 <https://github.com/ceph/ceph/pull/40683>`_, Patrick Donnelly) -* qa: fs:cephadm mount does not wait for mds to be created (`pr#40528 <https://github.com/ceph/ceph/pull/40528>`_, Patrick Donnelly) -* qa: test standby_replay in workloads (`pr#40853 <https://github.com/ceph/ceph/pull/40853>`_, Patrick Donnelly) -* rbd-mirror: fix UB while registering perf counters (`pr#40680 <https://github.com/ceph/ceph/pull/40680>`_, Arthur Outhenin-Chalandre) -* rgw: add latency to the request summary of an op (`pr#40448 <https://github.com/ceph/ceph/pull/40448>`_, Ali Maredia) -* rgw: Backport of datalog improvements to Pacific (`pr#40559 <https://github.com/ceph/ceph/pull/40559>`_, Yuval Lifshitz, Adam C. Emerson) -* test: disable mgr/mirroring for `test_mirroring_init_failure_with_recovery` test (`issue#50020 <http://tracker.ceph.com/issues/50020>`_, `pr#40684 <https://github.com/ceph/ceph/pull/40684>`_, Venky Shankar) -* tools/cephfs_mirror/PeerReplayer.cc: add missing include (`pr#40678 <https://github.com/ceph/ceph/pull/40678>`_, Duncan Bellamy) -* vstart.sh: disable "auth_allow_insecure_global_id_reclaim" (`pr#40957 <https://github.com/ceph/ceph/pull/40957>`_, Kefu Chai) - - -v16.2.1 Pacific -=============== - -This is the first bugfix release in the Pacific stable series. It addresses a -security vulnerability in the Ceph authentication framework. - -We recommend all Pacific users upgrade. - -Security fixes --------------- - -* This release includes a security fix that ensures the global_id - value (a numeric value that should be unique for every authenticated - client or daemon in the cluster) is reclaimed after a network - disconnect or ticket renewal in a secure fashion. Two new health - alerts may appear during the upgrade indicating that there are - clients or daemons that are not yet patched with the appropriate - fix. - - To temporarily mute the health alerts around insecure clients for the duration of the - upgrade, you may want to:: - - ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM 1h - ceph health mute AUTH_INSECURE_GLOBAL_ID_RECLAIM_ALLOWED 1h - - For more information, see :ref:`CVE-2021-20288`. - - -v16.2.0 Pacific -=============== - -This is the first stable release of Ceph Pacific. - -Major Changes from Octopus --------------------------- - -General -~~~~~~~ - -* Cephadm can automatically upgrade an Octopus cluster to Pacific with a single - command to start the process. -* Cephadm has improved significantly over the past year, with improved - support for RGW (standalone and multisite), and new support for NFS - and iSCSI. Most of these changes have already been backported to - recent Octopus point releases, but with the Pacific release we will - switch to backporting bug fixes only. -* :ref:`Packages <packages>` are built for the following distributions: - - - CentOS 8 - - Ubuntu 20.04 (Focal) - - Ubuntu 18.04 (Bionic) - - Debian Buster - - :ref:`Container image <containers>` (based on CentOS 8) - - With the exception of Debian Buster, packages and containers are - built for both x86_64 and aarch64 (arm64) architectures. - - Note that cephadm clusters may work on many other distributions, - provided Python 3 and a recent version of Docker or Podman is - available to manage containers. For more information, see - :ref:`cephadm-host-requirements`. - - -Dashboard -~~~~~~~~~ - -The :ref:`mgr-dashboard` brings improvements in the following management areas: - -* Orchestrator/Cephadm: - - - Host management: maintenance mode, labels. - - Services: display placement specification. - - OSD: disk replacement, display status of ongoing deletion, and improved - health/SMART diagnostics reporting. - -* Official :ref:`mgr ceph api`: - - - OpenAPI v3 compliant. - - Stability commitment starting from Pacific release. - - Versioned via HTTP ``Accept`` header (starting with v1.0). - - Thoroughly tested (>90% coverage and per Pull Request validation). - - Fully documented. - -* RGW: - - - Multi-site synchronization monitoring. - - Management of multiple RGW daemons and their resources (buckets and users). - - Bucket and user quota usage visualization. - - Improved configuration of S3 tenanted users. - -* Security (multiple enhancements and fixes resulting from a pen testing conducted by IBM): - - - Account lock-out after a configurable number of failed log-in attempts. - - Improved cookie policies to mitigate XSS/CSRF attacks. - - Reviewed and improved security in HTTP headers. - - Sensitive information reviewed and removed from logs and error messages. - - TLS 1.0 and 1.1 support disabled. - - Debug mode when enabled triggers HEALTH_WARN. - -* Pools: - - - Improved visualization of replication and erasure coding modes. - - CLAY erasure code plugin supported. - -* Alerts and notifications: - - - Alert triggered on MTU mismatches in the cluster network. - - Favicon changes according cluster status. - -* Other: - - - Landing page: improved charts and visualization. - - Telemetry configuration wizard. - - OSDs: management of individual OSD flags. - - RBD: per-RBD image Grafana dashboards. - - CephFS: Dirs and Caps displayed. - - NFS: v4 support only (v3 backward compatibility planned). - - Front-end: Angular 10 update. - - -RADOS -~~~~~ - -* Pacific introduces :ref:`bluestore-rocksdb-sharding`, which reduces disk space requirements. - -* Ceph now provides QoS between client I/O and background operations via the - mclock scheduler. - -* The balancer is now on by default in upmap mode to improve distribution of - PGs across OSDs. - -* The output of ``ceph -s`` has been improved to show recovery progress in - one progress bar. More detailed progress bars are visible via the - ``ceph progress`` command. - - -RBD block storage -~~~~~~~~~~~~~~~~~ - -* Image live-migration feature has been extended to support external data - sources. Images can now be instantly imported from local files, remote - files served over HTTP(S) or remote S3 buckets in ``raw`` (``rbd export v1``) - or basic ``qcow`` and ``qcow2`` formats. Support for ``rbd export v2`` - format, advanced QCOW features and ``rbd export-diff`` snapshot differentials - is expected in future releases. - -* Initial support for client-side encryption has been added. This is based - on LUKS and in future releases will allow using per-image encryption keys - while maintaining snapshot and clone functionality -- so that parent image - and potentially multiple clone images can be encrypted with different keys. - -* A new persistent write-back cache is available. The cache operates in - a log-structured manner, providing full point-in-time consistency for the - backing image. It should be particularly suitable for PMEM devices. - -* A Windows client is now available in the form of ``librbd.dll`` and - ``rbd-wnbd`` (Windows Network Block Device) daemon. It allows mapping, - unmapping and manipulating images similar to ``rbd-nbd``. - -* librbd API now offers quiesce/unquiesce hooks, allowing for coordinated - snapshot creation. - - -RGW object storage -~~~~~~~~~~~~~~~~~~ - -* Initial support for S3 Select. See :ref:`s3-select-feature-table` for supported queries. - -* Bucket notification topics can be configured as ``persistent``, where events - are recorded in rados for reliable delivery. - -* Bucket notifications can be delivered to SSL-enabled AMQP endpoints. - -* Lua scripts can be run during requests and access their metadata. - -* SSE-KMS now supports KMIP as a key management service. - -* Multisite data logs can now be deployed on ``cls_fifo`` to avoid large omap - cluster warnings and make their trimming cheaper. See ``rgw_data_log_backing``. - - -CephFS distributed file system -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -* The CephFS MDS modifies on-RADOS metadata such that the new format is no - longer backwards compatible. It is not possible to downgrade a file system from - Pacific (or later) to an older release. - -* Multiple file systems in a single Ceph cluster is now stable. New Ceph - clusters enable support for multiple file systems by default. Existing clusters - must still set the "enable_multiple" flag on the FS. See also - :ref:`cephfs-multifs`. - -* A new ``mds_autoscaler`` ``ceph-mgr`` plugin is available for automatically - deploying MDS daemons in response to changes to the ``max_mds`` configuration. - Expect further enhancements in the future to simplify and automate MDS scaling. - -* ``cephfs-top`` is a new utility for looking at performance metrics from CephFS - clients. It is development preview quality and will have bugs. For more - information, see :ref:`cephfs-top`. - -* A new ``snap_schedule`` ``ceph-mgr`` plugin provides a command toolset for - scheduling snapshots on a CephFS file system. For more information, see - :ref:`snap-schedule`. - -* First class NFS gateway support in Ceph is here! It's now possible to create - scale-out ("active-active") NFS gateway clusters that export CephFS using - a few commands. The gateways are deployed via cephadm (or Rook, in the future). - For more information, see :ref:`mgr-nfs`. - -* Multiple active MDS file system scrub is now stable. It is no longer necessary - to set ``max_mds`` to 1 and wait for non-zero ranks to stop. Scrub commands - can only be sent to rank 0: ``ceph tell mds.<fs_name>:0 scrub start /path ...``. - For more information, see :ref:`mds-scrub`. - -* Ephemeral pinning -- policy based subtree pinning -- is considered stable. - ``mds_export_ephemeral_random`` and ``mds_export_ephemeral_distributed`` now - default to true. For more information, see :ref:`cephfs-ephemeral-pinning`. - -* A new ``cephfs-mirror`` daemon is available to mirror CephFS file systems to - a remote Ceph cluster. For more information, see :ref:`cephfs-mirroring`. - -* A Windows client is now available for connecting to CephFS. This is offered - through a new ``ceph-dokan`` utility which operates via the Dokan userspace - API, similar to FUSE. For more information, see :ref:`ceph-dokan`. - - -.. _upgrading_from_octopus_or_nautilus: - -Upgrading from Octopus or Nautilus ----------------------------------- - -Before starting, make sure your cluster is stable and healthy (no down or -recovering OSDs). (This is optional, but recommended.) - - -.. note:: - WARNING: Please do not set `bluestore_fsck_quick_fix_on_mount` to true or - run `ceph-bluestore-tool` repair or quick-fix commands in Pacific versions - <= 16.2.6, because this can lead to data corruption, details in - https://tracker.ceph.com/issues/53062. - -.. note:: - When using multiple active Ceph Metadata Servers, ensure that there are - no pending stray entries which are directories for active ranks except rank 0 as - starting an upgrade (which sets `max_mds` to 1) could crash the Ceph - Metadata Server. The following command should return zero (0) stray entries - for all stray directories:: - - # for idx in {0..9}; do ceph tell mds.<rank> dump tree ~mdsdir/stray$idx| jq '.[] | select (.nlink == 0 and .dir_layout.dir_hash > 0) | .stray_prior_path' | wc -l; done - - Ensure that all active ranks except rank 0 are checked for absence of stray - entries which are directories (using the above command). Details are captured - in http://tracker.ceph.com/issues/53597. - -Upgrading cephadm clusters -~~~~~~~~~~~~~~~~~~~~~~~~~~ - -If your cluster is deployed with cephadm (first introduced in Octopus), then -the upgrade process is entirely automated. To initiate the upgrade, - - .. prompt:: bash # - - ceph orch upgrade start --ceph-version 16.2.0 - -The same process is used to upgrade to future minor releases. - -Upgrade progress can be monitored with ``ceph -s`` (which provides a simple -progress bar) or more verbosely with - - .. prompt:: bash # - - ceph -W cephadm - -The upgrade can be paused or resumed with - - .. prompt:: bash # - - ceph orch upgrade pause # to pause - ceph orch upgrade resume # to resume - -or canceled with - - .. prompt:: bash # - - ceph orch upgrade stop - -Note that canceling the upgrade simply stops the process; there is no ability to -downgrade back to Octopus. - -.. note: - - If you have deployed an RGW service on Octopus using the default port (7280), you - will need to redeploy it because the default port changed (to 80 or 443, depending - on whether SSL is enabled): - - .. prompt: bash # - - ceph orch apply rgw <realm>.<zone> --port 7280 - - -Upgrading non-cephadm clusters -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. note:: - If you cluster is running Octopus (15.2.x), you might choose - to first convert it to use cephadm so that the upgrade to Pacific - is automated (see above). For more information, see - :ref:`cephadm-adoption`. - -#. Set the ``noout`` flag for the duration of the upgrade. (Optional, - but recommended.):: - - # ceph osd set noout - -#. Upgrade monitors by installing the new packages and restarting the - monitor daemons. For example, on each monitor host,:: - - # systemctl restart ceph-mon.target - - Once all monitors are up, verify that the monitor upgrade is - complete by looking for the ``octopus`` string in the mon - map. The command:: - - # ceph mon dump | grep min_mon_release - - should report:: - - min_mon_release 16 (pacific) - - If it doesn't, that implies that one or more monitors hasn't been - upgraded and restarted and/or the quorum does not include all monitors. - -#. Upgrade ``ceph-mgr`` daemons by installing the new packages and - restarting all manager daemons. For example, on each manager host,:: - - # systemctl restart ceph-mgr.target - - Verify the ``ceph-mgr`` daemons are running by checking ``ceph - -s``:: - - # ceph -s - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the - ceph-osd daemons on all OSD hosts:: - - # systemctl restart ceph-osd.target - - Note that if you are upgrading from Nautilus, the first time each - OSD starts, it will do a format conversion to improve the - accounting for "omap" data. This may take a few minutes to as much - as a few hours (for an HDD with lots of omap data). You can - disable this automatic conversion with:: - - # ceph config set osd bluestore_fsck_quick_fix_on_mount false - - You can monitor the progress of the OSD upgrades with the - ``ceph versions`` or ``ceph osd versions`` commands:: - - # ceph osd versions - { - "ceph version 14.2.5 (...) nautilus (stable)": 12, - "ceph version 16.2.0 (...) pacific (stable)": 22, - } - -#. Upgrade all CephFS MDS daemons. For each CephFS file system, - - #. Disable FSMap sanity checks:: - - # ceph config set mon mon_mds_skip_sanity true - - #. Disable standby_replay:: - - # ceph fs set <fs_name> allow_standby_replay false - - #. Reduce the number of ranks to 1. (Make note of the original - number of MDS daemons first if you plan to restore it later.):: - - # ceph status - # ceph fs set <fs_name> max_mds 1 - - #. Wait for the cluster to deactivate any non-zero ranks by - periodically checking the status:: - - # ceph status - - #. Take all standby MDS daemons offline on the appropriate hosts with:: - - # systemctl stop ceph-mds@<daemon_name> - - #. Confirm that only one MDS is online and is rank 0 for your FS:: - - # ceph status - - #. Upgrade the last remaining MDS daemon by installing the new - packages and restarting the daemon:: - - # systemctl restart ceph-mds.target - - #. Restart all standby MDS daemons that were taken offline:: - - # systemctl start ceph-mds.target - - #. Restore the original value of ``max_mds`` for the volume:: - - # ceph fs set <fs_name> max_mds <original_max_mds> - - #. Remove `mon_mds_skip_sanity` setting:: - - # ceph config rm mon mon_mds_skip_sanity - -#. Upgrade all radosgw daemons by upgrading packages and restarting - daemons on all hosts:: - - # systemctl restart ceph-radosgw.target - -#. Complete the upgrade by disallowing pre-Pacific OSDs and enabling - all new Pacific-only functionality:: - - # ceph osd require-osd-release pacific - -#. If you set ``noout`` at the beginning, be sure to clear it with:: - - # ceph osd unset noout - -#. Consider transitioning your cluster to use the cephadm deployment - and orchestration framework to simplify cluster management and - future upgrades. For more information on converting an existing - cluster to cephadm, see :ref:`cephadm-adoption`. - - -Post-upgrade -~~~~~~~~~~~~ - -#. Verify the cluster is healthy with ``ceph health``. - - If your CRUSH tunables are older than Hammer, Ceph will now issue a - health warning. If you see a health alert to that effect, you can - revert this change with:: - - ceph config set mon mon_crush_min_required_version firefly - - If Ceph does not complain, however, then we recommend you also - switch any existing CRUSH buckets to straw2, which was added back - in the Hammer release. If you have any 'straw' buckets, this will - result in a modest amount of data movement, but generally nothing - too severe.:: - - ceph osd getcrushmap -o backup-crushmap - ceph osd crush set-all-straw-buckets-to-straw2 - - If there are problems, you can easily revert with:: - - ceph osd setcrushmap -i backup-crushmap - - Moving to 'straw2' buckets will unlock a few recent features, like - the `crush-compat` :ref:`balancer <balancer>` mode added back in Luminous. - -#. If you did not already do so when upgrading from Mimic, we - recommended you enable the new :ref:`v2 network protocol <msgr2>`, - issue the following command:: - - ceph mon enable-msgr2 - - This will instruct all monitors that bind to the old default port - 6789 for the legacy v1 protocol to also bind to the new 3300 v2 - protocol port. To see if all monitors have been updated,:: - - ceph mon dump - - and verify that each monitor has both a ``v2:`` and ``v1:`` address - listed. - -#. Consider enabling the :ref:`telemetry module <telemetry>` to send - anonymized usage statistics and crash information to the Ceph - upstream developers. To see what would be reported (without actually - sending any information to anyone),:: - - ceph mgr module enable telemetry - ceph telemetry show - - If you are comfortable with the data that is reported, you can opt-in to - automatically report the high-level cluster metadata with:: - - ceph telemetry on - - The public dashboard that aggregates Ceph telemetry can be found at - `https://telemetry-public.ceph.com/ <https://telemetry-public.ceph.com/>`_. - - For more information about the telemetry module, see :ref:`the - documentation <telemetry>`. - - -Upgrade from pre-Nautilus releases (like Mimic or Luminous) ------------------------------------------------------------ - -You must first upgrade to Nautilus (14.2.z) or Octopus (15.2.z) before -upgrading to Pacific. - - -Notable Changes ---------------- - -* A new library is available, libcephsqlite. It provides a SQLite Virtual File - System (VFS) on top of RADOS. The database and journals are striped over - RADOS across multiple objects for virtually unlimited scaling and throughput - only limited by the SQLite client. Applications using SQLite may change to - the Ceph VFS with minimal changes, usually just by specifying the alternate - VFS. We expect the library to be most impactful and useful for applications - that were storing state in RADOS omap, especially without striping which - limits scalability. - -* New ``bluestore_rocksdb_options_annex`` config parameter. Complements - ``bluestore_rocksdb_options`` and allows setting rocksdb options without - repeating the existing defaults. - -* $pid expansion in config paths like ``admin_socket`` will now properly expand - to the daemon pid for commands like ``ceph-mds`` or ``ceph-osd``. Previously - only ``ceph-fuse``/``rbd-nbd`` expanded ``$pid`` with the actual daemon pid. - -* The allowable options for some ``radosgw-admin`` commands have been changed. - - * ``mdlog-list``, ``datalog-list``, ``sync-error-list`` no longer accepts - start and end dates, but does accept a single optional start marker. - * ``mdlog-trim``, ``datalog-trim``, ``sync-error-trim`` only accept a - single marker giving the end of the trimmed range. - * Similarly the date ranges and marker ranges have been removed on - the RESTful DATALog and MDLog list and trim operations. - -* ceph-volume: The ``lvm batch`` subcommand received a major rewrite. This - closed a number of bugs and improves usability in terms of size specification - and calculation, as well as idempotency behaviour and disk replacement - process. - Please refer to https://docs.ceph.com/en/latest/ceph-volume/lvm/batch/ for - more detailed information. - -* Configuration variables for permitted scrub times have changed. The legal - values for ``osd_scrub_begin_hour`` and ``osd_scrub_end_hour`` are 0 - 23. - The use of 24 is now illegal. Specifying ``0`` for both values causes every - hour to be allowed. The legal values for ``osd_scrub_begin_week_day`` and - ``osd_scrub_end_week_day`` are 0 - 6. The use of 7 is now illegal. - Specifying ``0`` for both values causes every day of the week to be allowed. - -* volume/nfs: Recently "ganesha-" prefix from cluster id and nfs-ganesha common - config object was removed, to ensure consistent namespace across different - orchestrator backends. Please delete any existing nfs-ganesha clusters prior - to upgrading and redeploy new clusters after upgrading to Pacific. - -* A new health check, DAEMON_OLD_VERSION, will warn if different versions of Ceph are running - on daemons. It will generate a health error if multiple versions are detected. - This condition must exist for over mon_warn_older_version_delay (set to 1 week by default) in order for the - health condition to be triggered. This allows most upgrades to proceed - without falsely seeing the warning. If upgrade is paused for an extended - time period, health mute can be used like this - "ceph health mute DAEMON_OLD_VERSION --sticky". In this case after - upgrade has finished use "ceph health unmute DAEMON_OLD_VERSION". - -* MGR: progress module can now be turned on/off, using the commands: - ``ceph progress on`` and ``ceph progress off``. - -* An AWS-compliant API: "GetTopicAttributes" was added to replace the existing "GetTopic" API. The new API - should be used to fetch information about topics used for bucket notifications. - -* librbd: The shared, read-only parent cache's config option ``immutable_object_cache_watermark`` now has been updated - to property reflect the upper cache utilization before space is reclaimed. The default ``immutable_object_cache_watermark`` - now is ``0.9``. If the capacity reaches 90% the daemon will delete cold cache. - -* OSD: the option ``osd_fast_shutdown_notify_mon`` has been introduced to allow - the OSD to notify the monitor it is shutting down even if ``osd_fast_shutdown`` - is enabled. This helps with the monitor logs on larger clusters, that may get - many 'osd.X reported immediately failed by osd.Y' messages, and confuse tools. - -* The mclock scheduler has been refined. A set of built-in profiles are now available that - provide QoS between the internal and external clients of Ceph. To enable the mclock - scheduler, set the config option "osd_op_queue" to "mclock_scheduler". The - "high_client_ops" profile is enabled by default, and allocates more OSD bandwidth to - external client operations than to internal client operations (such as background recovery - and scrubs). Other built-in profiles include "high_recovery_ops" and "balanced". These - built-in profiles optimize the QoS provided to clients of mclock scheduler. - -* The balancer is now on by default in upmap mode. Since upmap mode requires - ``require_min_compat_client`` luminous, new clusters will only support luminous - and newer clients by default. Existing clusters can enable upmap support by running - ``ceph osd set-require-min-compat-client luminous``. It is still possible to turn - the balancer off using the ``ceph balancer off`` command. In earlier versions, - the balancer was included in the ``always_on_modules`` list, but needed to be - turned on explicitly using the ``ceph balancer on`` command. - -* Version 2 of the cephx authentication protocol (``CEPHX_V2`` feature bit) is - now required by default. It was introduced in 2018, adding replay attack - protection for authorizers and making msgr v1 message signatures stronger - (CVE-2018-1128 and CVE-2018-1129). Support is present in Jewel 10.2.11, - Luminous 12.2.6, Mimic 13.2.1, Nautilus 14.2.0 and later; upstream kernels - 4.9.150, 4.14.86, 4.19 and later; various distribution kernels, in particular - CentOS 7.6 and later. To enable older clients, set ``cephx_require_version`` - and ``cephx_service_require_version`` config options to 1. - -* `blacklist` has been replaced with `blocklist` throughout. The following commands have changed: - - - ``ceph osd blacklist ...`` are now ``ceph osd blocklist ...`` - - ``ceph <tell|daemon> osd.<NNN> dump_blacklist`` is now ``ceph <tell|daemon> osd.<NNN> dump_blocklist`` - -* The following config options have changed: - - - ``mon osd blacklist default expire`` is now ``mon osd blocklist default expire`` - - ``mon mds blacklist interval`` is now ``mon mds blocklist interval`` - - ``mon mgr blacklist interval`` is now ''mon mgr blocklist interval`` - - ``rbd blacklist on break lock`` is now ``rbd blocklist on break lock`` - - ``rbd blacklist expire seconds`` is now ``rbd blocklist expire seconds`` - - ``mds session blacklist on timeout`` is now ``mds session blocklist on timeout`` - - ``mds session blacklist on evict`` is now ``mds session blocklist on evict`` - -* The following librados API calls have changed: - - - ``rados_blacklist_add`` is now ``rados_blocklist_add``; the former will issue a deprecation warning and be removed in a future release. - - ``rados.blacklist_add`` is now ``rados.blocklist_add`` in the C++ API. - -* The JSON output for the following commands now shows ``blocklist`` instead of ``blacklist``: - - - ``ceph osd dump`` - - ``ceph <tell|daemon> osd.<N> dump_blocklist`` - -* Monitors now have config option ``mon_allow_pool_size_one``, which is disabled - by default. However, if enabled, user now have to pass the - ``--yes-i-really-mean-it`` flag to ``osd pool set size 1``, if they are really - sure of configuring pool size 1. - -* ``ceph pg #.# list_unfound`` output has been enhanced to provide - might_have_unfound information which indicates which OSDs may - contain the unfound objects. - -* OSD: A new configuration option ``osd_compact_on_start`` has been added which triggers - an OSD compaction on start. Setting this option to ``true`` and restarting an OSD - will result in an offline compaction of the OSD prior to booting. - -* OSD: the option named ``bdev_nvme_retry_count`` has been removed. Because - in SPDK v20.07, there is no easy access to bdev_nvme options, and this - option is hardly used, so it was removed. - -* Alpine build related script, documentation and test have been removed since - the most updated APKBUILD script of Ceph is already included by Alpine Linux's - aports repository. - diff --git a/doc/releases/quincy.rst b/doc/releases/quincy.rst deleted file mode 100644 index 0322a2cf7..000000000 --- a/doc/releases/quincy.rst +++ /dev/null @@ -1,1013 +0,0 @@ -====== -Quincy -====== - -Quincy is the 17th stable release of Ceph. It is named after Squidward -Quincy Tentacles from Spongebob Squarepants. - -v17.2.5 Quincy -============== - -This is a hotfix release that addresses missing commits in the 17.2.4 release. -We recommend that all users update to this release. - -Related tracker: https://tracker.ceph.com/issues/57858 - -Notable Changes ---------------- - -* A ceph-volume regression introduced in bea9f4b that makes the - activate process take a very long time to complete has been - fixed. - - Related tracker: https://tracker.ceph.com/issues/57627 - -* An exception that occurs with some NFS commands - in Rook clusters has been fixed. - - Related tracker: https://tracker.ceph.com/issues/55605 - -* A crash in the Telemetry module that may affect some users opted - into the perf channel has been fixed. - - Related tracker: https://tracker.ceph.com/issues/57700 - -Changelog ---------- - -* ceph-volume: fix regression in activate (`pr#48201 <https://github.com/ceph/ceph/pull/48201>`_, Guillaume Abrioux) -* mgr/rook: fix error when trying to get the list of nfs services (`pr#48199 <https://github.com/ceph/ceph/pull/48199>`_, Juan Miguel Olmo) -* mgr/telemetry: handle daemons with complex ids (`pr#48283 <https://github.com/ceph/ceph/pull/48283>`_, Laura Flores) -* Revert PR 47901 (`pr#48104 <https://github.com/ceph/ceph/pull/48104>`_, Laura Flores) - -v17.2.4 Quincy -============== - -This is the fourth backport release in the Quincy series. We recommend -that all users update to this release. - -Notable Changes ---------------- - -* Cephfs: The ``AT_NO_ATTR_SYNC`` macro is deprecated, please use the standard - ``AT_STATX_DONT_SYNC`` macro. The ``AT_NO_ATTR_SYNC`` macro will be removed in - the future. - -* OSD: The issue of high CPU utilization during recovery/backfill operations - has been fixed. For more details see: https://tracker.ceph.com/issues/56530. - -* Trimming of PGLog dups is now controlled by size instead of the version. - This fixes the PGLog inflation issue that was happening when online - (in OSD) trimming jammed after a PG split operation. Also, a new offline - mechanism has been added: ``ceph-objectstore-tool`` now has a ``trim-pg-log-dups`` op - that targets situations where an OSD is unable to boot due to those inflated dups. - If that is the case, in OSD logs the "You can be hit by THE DUPS BUG" warning - will be visible. - Relevant tracker: https://tracker.ceph.com/issues/53729 - -* OSD: Octopus modified the SnapMapper key format from - ``<LEGACY_MAPPING_PREFIX><snapid>_<shardid>_<hobject_t::to_str()>`` - to - ``<MAPPING_PREFIX><pool>_<snapid>_<shardid>_<hobject_t::to_str()>``. - When this change was introduced, `94ebe0e <https://github.com/ceph/ceph/commit/94ebe0eab968068c29fdffa1bfe68c72122db633>`_ - also introduced a conversion with a crucial bug which essentially - destroyed legacy keys by mapping them to - ``<MAPPING_PREFIX><poolid>_<snapid>_`` - without the object-unique suffix. The conversion is fixed in this release. - Relevant tracker: https://tracker.ceph.com/issues/56147 - -Changelog ---------- - -* .readthedocs.yml: Always build latest doc/releases pages (`pr#47442 <https://github.com/ceph/ceph/pull/47442>`_, David Galloway) -* Add mapping for ernno:13 and adding path in error msg in opendir()/cephfs.pyx (`pr#46647 <https://github.com/ceph/ceph/pull/46647>`_, Sarthak0702) -* admin: Fix check if PR or release branch docs build (`pr#47739 <https://github.com/ceph/ceph/pull/47739>`_, David Galloway) -* bdev: fix FTBFS on FreeBSD, keep the huge paged read buffers (`pr#44641 <https://github.com/ceph/ceph/pull/44641>`_, Radoslaw Zarzynski) -* build: Silence deprecation warnings from OpenSSL 3 (`pr#47585 <https://github.com/ceph/ceph/pull/47585>`_, Kefu Chai, Adam C. Emerson) -* Catch exception if thrown by __generate_command_map() (`pr#45892 <https://github.com/ceph/ceph/pull/45892>`_, Nikhil Kshirsagar) -* ceph-fuse: add dedicated snap stag map for each directory (`pr#46948 <https://github.com/ceph/ceph/pull/46948>`_, Xiubo Li) -* ceph-mixin: backport of recent cleanups (`pr#46548 <https://github.com/ceph/ceph/pull/46548>`_, Arthur Outhenin-Chalandre) -* ceph-volume: avoid unnecessary subprocess calls (`pr#46968 <https://github.com/ceph/ceph/pull/46968>`_, Guillaume Abrioux) -* ceph-volume: decrease number of `pvs` calls in `lvm list` (`pr#46966 <https://github.com/ceph/ceph/pull/46966>`_, Guillaume Abrioux) -* ceph-volume: do not call get_device_vgs() per devices (`pr#47348 <https://github.com/ceph/ceph/pull/47348>`_, Guillaume Abrioux) -* ceph-volume: do not log sensitive details (`pr#46728 <https://github.com/ceph/ceph/pull/46728>`_, Guillaume Abrioux) -* ceph-volume: fix `simple scan` (`pr#47149 <https://github.com/ceph/ceph/pull/47149>`_, Guillaume Abrioux) -* ceph-volume: fix fast device alloc size on mulitple device (`pr#47293 <https://github.com/ceph/ceph/pull/47293>`_, Arthur Outhenin-Chalandre) -* ceph-volume: fix regression in activate (`pr#48201 <https://github.com/ceph/ceph/pull/48201>`_, Guillaume Abrioux) -* ceph-volume: make is_valid() optional (`pr#46730 <https://github.com/ceph/ceph/pull/46730>`_, Guillaume Abrioux) -* ceph-volume: only warn when config file isn't found (`pr#46070 <https://github.com/ceph/ceph/pull/46070>`_, Guillaume Abrioux) -* ceph-volume: Quincy backports (`pr#47406 <https://github.com/ceph/ceph/pull/47406>`_, Guillaume Abrioux, Zack Cerza, Michael Fritch) -* ceph-volume: system.get_mounts() refactor (`pr#47536 <https://github.com/ceph/ceph/pull/47536>`_, Guillaume Abrioux) -* ceph-volume/tests: fix test_exception_returns_default (`pr#47435 <https://github.com/ceph/ceph/pull/47435>`_, Guillaume Abrioux) -* ceph.spec.in backports (`pr#47549 <https://github.com/ceph/ceph/pull/47549>`_, David Galloway, Kefu Chai, Tim Serong, Casey Bodley, Radoslaw Zarzynski, Radosław Zarzyński) -* ceph.spec.in: disable system_pmdk on s390x (`pr#47251 <https://github.com/ceph/ceph/pull/47251>`_, Ken Dreyer) -* ceph.spec.in: openSUSE: require gcc11-c++, disable parquet (`pr#46155 <https://github.com/ceph/ceph/pull/46155>`_, Tim Serong) -* ceph.spec: fixing cephadm build deps (`pr#47069 <https://github.com/ceph/ceph/pull/47069>`_, Redouane Kachach) -* cephadm/ceph-volume: fix rm-cluster --zap (`pr#47626 <https://github.com/ceph/ceph/pull/47626>`_, Guillaume Abrioux) -* cephadm/mgr: adding logic to handle --no-overwrite for tuned profiles (`pr#47944 <https://github.com/ceph/ceph/pull/47944>`_, Redouane Kachach) -* cephadm: add "su root root" to cephadm.log logrotate config (`pr#47314 <https://github.com/ceph/ceph/pull/47314>`_, Adam King) -* cephadm: add 'is_paused' field in orch status output (`pr#46569 <https://github.com/ceph/ceph/pull/46569>`_, Guillaume Abrioux) -* Cephadm: Allow multiple virtual IP addresses for keepalived and haproxy (`pr#47610 <https://github.com/ceph/ceph/pull/47610>`_, Luis Domingues) -* cephadm: change default keepalived/haproxy container images (`pr#46714 <https://github.com/ceph/ceph/pull/46714>`_, Guillaume Abrioux) -* cephadm: fix incorrect warning (`pr#47608 <https://github.com/ceph/ceph/pull/47608>`_, Guillaume Abrioux) -* cephadm: fix osd adoption with custom cluster name (`pr#46551 <https://github.com/ceph/ceph/pull/46551>`_, Adam King) -* cephadm: Fix repo_gpgkey should return 2 vars (`pr#47374 <https://github.com/ceph/ceph/pull/47374>`_, Laurent Barbe) -* cephadm: improve message when removing osd (`pr#47071 <https://github.com/ceph/ceph/pull/47071>`_, Guillaume Abrioux) -* cephadm: preserve cephadm user during RPM upgrade (`pr#46790 <https://github.com/ceph/ceph/pull/46790>`_, Scott Shambarger) -* cephadm: reduce spam to cephadm.log (`pr#47313 <https://github.com/ceph/ceph/pull/47313>`_, Adam King) -* cephadm: Remove duplicated process args in promtail and loki (`pr#47654 <https://github.com/ceph/ceph/pull/47654>`_, jinhong.kim) -* cephadm: return nonzero exit code when applying spec fails in bootstrap (`pr#47952 <https://github.com/ceph/ceph/pull/47952>`_, Adam King) -* cephadm: support for Oracle Linux 8 (`pr#47656 <https://github.com/ceph/ceph/pull/47656>`_, Adam King) -* cephfs-shell: move source to separate subdirectory (`pr#47400 <https://github.com/ceph/ceph/pull/47400>`_, Tim Serong) -* cephfs-top: display average read/write/metadata latency (`issue#48619 <http://tracker.ceph.com/issues/48619>`_, `pr#47977 <https://github.com/ceph/ceph/pull/47977>`_, Venky Shankar) -* cephfs-top: fix the rsp/wsp display (`pr#47648 <https://github.com/ceph/ceph/pull/47648>`_, Jos Collin) -* client/fuse: Fix directory DACs overriding for root (`pr#46595 <https://github.com/ceph/ceph/pull/46595>`_, Kotresh HR) -* client: allow overwrites to file with size greater than the max_file_size (`pr#47971 <https://github.com/ceph/ceph/pull/47971>`_, Tamar Shacked) -* client: always return ESTALE directly in handle_reply (`pr#46558 <https://github.com/ceph/ceph/pull/46558>`_, Xiubo Li) -* client: choose auth MDS for getxattr with the Xs caps (`pr#46800 <https://github.com/ceph/ceph/pull/46800>`_, Xiubo Li) -* client: do not release the global snaprealm until unmounting (`pr#46495 <https://github.com/ceph/ceph/pull/46495>`_, Xiubo Li) -* client: Inode::hold_caps_until is time from monotonic clock now (`pr#46563 <https://github.com/ceph/ceph/pull/46563>`_, Laura Flores, Neeraj Pratap Singh) -* client: switch AT_NO_ATTR_SYNC to AT_STATX_DONT_SYNC (`pr#46680 <https://github.com/ceph/ceph/pull/46680>`_, Xiubo Li) -* cmake: disable LTO when building pmdk (`pr#47619 <https://github.com/ceph/ceph/pull/47619>`_, Kefu Chai) -* cmake: pass -Wno-error when building PMDK (`pr#46623 <https://github.com/ceph/ceph/pull/46623>`_, Ilya Dryomov) -* cmake: remove spaces in macro used for compiling cython code (`pr#47483 <https://github.com/ceph/ceph/pull/47483>`_, Kefu Chai) -* cmake: set $PATH for tests using jsonnet tools (`pr#47625 <https://github.com/ceph/ceph/pull/47625>`_, Kefu Chai) -* common/bl: fix FTBFS on C++11 due to C++17's if-with-initializer (`pr#46005 <https://github.com/ceph/ceph/pull/46005>`_, Radosław Zarzyński) -* common/win32,dokan: include bcrypt.h for NTSTATUS (`pr#48016 <https://github.com/ceph/ceph/pull/48016>`_, Lucian Petrut, Kefu Chai) -* common: fix FTBFS due to dout & need_dynamic on GCC-12 (`pr#46214 <https://github.com/ceph/ceph/pull/46214>`_, Radoslaw Zarzynski) -* common: use boost::shared_mutex on Windows (`pr#47493 <https://github.com/ceph/ceph/pull/47493>`_, Lucian Petrut) -* crash: pthread_mutex_lock() (`pr#47683 <https://github.com/ceph/ceph/pull/47683>`_, Patrick Donnelly) -* crimson: fixes for compiling with fmtlib v8 (`pr#47603 <https://github.com/ceph/ceph/pull/47603>`_, Adam C. Emerson, Kefu Chai) -* doc, crimson: document installing crimson with cephadm (`pr#47283 <https://github.com/ceph/ceph/pull/47283>`_, Radoslaw Zarzynski) -* doc/cephadm/services: fix example for specifying rgw placement (`pr#47947 <https://github.com/ceph/ceph/pull/47947>`_, Redouane Kachach) -* doc/cephadm/services: the config section of service specs (`pr#47068 <https://github.com/ceph/ceph/pull/47068>`_, Redouane Kachach) -* doc/cephadm: add note about OSDs being recreated to OSD removal section (`pr#47102 <https://github.com/ceph/ceph/pull/47102>`_, Adam King) -* doc/cephadm: Add post-upgrade section (`pr#47077 <https://github.com/ceph/ceph/pull/47077>`_, Redouane Kachach) -* doc/cephadm: document the new per-fsid cephadm conf location (`pr#47076 <https://github.com/ceph/ceph/pull/47076>`_, Redouane Kachach) -* doc/cephadm: enhancing daemon operations documentation (`pr#47074 <https://github.com/ceph/ceph/pull/47074>`_, Redouane Kachach) -* doc/cephadm: fix example for specifying networks for rgw (`pr#47806 <https://github.com/ceph/ceph/pull/47806>`_, Adam King) -* doc/dev: add context note to dev guide config (`pr#46818 <https://github.com/ceph/ceph/pull/46818>`_, Zac Dover) -* doc/dev: add Dependabot section to essentials.rst (`pr#47042 <https://github.com/ceph/ceph/pull/47042>`_, Zac Dover) -* doc/dev: add IRC registration instructions (`pr#46940 <https://github.com/ceph/ceph/pull/46940>`_, Zac Dover) -* doc/dev: edit delayed-delete.rst (`pr#47051 <https://github.com/ceph/ceph/pull/47051>`_, Zac Dover) -* doc/dev: Elaborate on boost .deb creation (`pr#47415 <https://github.com/ceph/ceph/pull/47415>`_, David Galloway) -* doc/dev: s/github/GitHub/ in essentials.rst (`pr#47048 <https://github.com/ceph/ceph/pull/47048>`_, Zac Dover) -* doc/dev: s/master/main/ essentials.rst dev guide (`pr#46661 <https://github.com/ceph/ceph/pull/46661>`_, Zac Dover) -* doc/dev: s/master/main/ in basic workflow (`pr#46703 <https://github.com/ceph/ceph/pull/46703>`_, Zac Dover) -* doc/dev: s/master/main/ in title (`pr#46721 <https://github.com/ceph/ceph/pull/46721>`_, Zac Dover) -* doc/dev: s/the the/the/ in basic-workflow.rst (`pr#46935 <https://github.com/ceph/ceph/pull/46935>`_, Zac Dover) -* doc/dev_guide: s/master/main in merging.rst (`pr#46709 <https://github.com/ceph/ceph/pull/46709>`_, Zac Dover) -* doc/index.rst: add link to Dev Guide basic workfl (`pr#46904 <https://github.com/ceph/ceph/pull/46904>`_, Zac Dover) -* doc/man/rbd: Mention changed `bluestore_min_alloc_size` (`pr#47579 <https://github.com/ceph/ceph/pull/47579>`_, Niklas Hambüchen) -* doc/mgr: add prompt directives to dashboard.rst (`pr#47822 <https://github.com/ceph/ceph/pull/47822>`_, Zac Dover) -* doc/mgr: edit orchestrator.rst (`pr#47780 <https://github.com/ceph/ceph/pull/47780>`_, Zac Dover) -* doc/mgr: update prompts in dboard.rst includes (`pr#47869 <https://github.com/ceph/ceph/pull/47869>`_, Zac Dover) -* doc/rados/operations: add prompts to operating.rst (`pr#47586 <https://github.com/ceph/ceph/pull/47586>`_, Zac Dover) -* doc/radosgw: Uppercase s3 (`pr#47359 <https://github.com/ceph/ceph/pull/47359>`_, Anthony D'Atri) -* doc/start: alphabetize hardware-recs links (`pr#46339 <https://github.com/ceph/ceph/pull/46339>`_, Zac Dover) -* doc/start: make OSD and MDS structures parallel (`pr#46655 <https://github.com/ceph/ceph/pull/46655>`_, Zac Dover) -* doc/start: Polish network section of hardware-recommendations.rst (`pr#46665 <https://github.com/ceph/ceph/pull/46665>`_, Anthony D'Atri) -* doc/start: rewrite CRUSH para (`pr#46658 <https://github.com/ceph/ceph/pull/46658>`_, Zac Dover) -* doc/start: rewrite hardware-recs networks section (`pr#46652 <https://github.com/ceph/ceph/pull/46652>`_, Zac Dover) -* doc/start: update documenting-ceph branch names (`pr#47955 <https://github.com/ceph/ceph/pull/47955>`_, Zac Dover) -* doc/start: update hardware recs (`pr#47123 <https://github.com/ceph/ceph/pull/47123>`_, Zac Dover) -* doc: update docs for centralized logging (`pr#46946 <https://github.com/ceph/ceph/pull/46946>`_, Aashish Sharma) -* doc: Update release process doc to accurately reflect current process (`pr#47837 <https://github.com/ceph/ceph/pull/47837>`_, David Galloway) -* docs: fix doc link pointing to master in dashboard.rst (`pr#47789 <https://github.com/ceph/ceph/pull/47789>`_, Nizamudeen A) -* exporter: per node metric exporter (`pr#47629 <https://github.com/ceph/ceph/pull/47629>`_, Pere Diaz Bou, Avan Thakkar) -* include/buffer: include <memory> (`pr#47694 <https://github.com/ceph/ceph/pull/47694>`_, Kefu Chai) -* install-deps.sh: do not install libpmem from chacra (`pr#46900 <https://github.com/ceph/ceph/pull/46900>`_, Kefu Chai) -* install-deps: script exit on /ValueError: in centos_stream8 (`pr#47892 <https://github.com/ceph/ceph/pull/47892>`_, Nizamudeen A) -* libcephfs: define AT_NO_ATTR_SYNC back for backward compatibility (`pr#47861 <https://github.com/ceph/ceph/pull/47861>`_, Xiubo Li) -* libcephsqlite: ceph-mgr crashes when compiled with gcc12 (`pr#47270 <https://github.com/ceph/ceph/pull/47270>`_, Ganesh Maharaj Mahalingam) -* librados: rados_ioctx_destroy check for initialized ioctx (`pr#47452 <https://github.com/ceph/ceph/pull/47452>`_, Nitzan Mordechai) -* librbd/cache/pwl: narrow the scope of m_lock in write_image_cache_state() (`pr#47940 <https://github.com/ceph/ceph/pull/47940>`_, Ilya Dryomov, Yin Congmin) -* librbd: bail from schedule_request_lock() if already lock owner (`pr#47162 <https://github.com/ceph/ceph/pull/47162>`_, Christopher Hoffman) -* librbd: retry ENOENT in V2_REFRESH_PARENT as well (`pr#47996 <https://github.com/ceph/ceph/pull/47996>`_, Ilya Dryomov) -* librbd: tweak misleading "image is still primary" error message (`pr#47248 <https://github.com/ceph/ceph/pull/47248>`_, Ilya Dryomov) -* librbd: unlink newest mirror snapshot when at capacity, bump capacity (`pr#46594 <https://github.com/ceph/ceph/pull/46594>`_, Ilya Dryomov) -* librbd: update progress for non-existent objects on deep-copy (`pr#46910 <https://github.com/ceph/ceph/pull/46910>`_, Ilya Dryomov) -* librbd: use actual monitor addresses when creating a peer bootstrap token (`pr#47912 <https://github.com/ceph/ceph/pull/47912>`_, Ilya Dryomov) -* mds: clear MDCache::rejoin\_\*_q queues before recovering file inodes (`pr#46681 <https://github.com/ceph/ceph/pull/46681>`_, Xiubo Li) -* mds: do not assert early on when issuing client leases (`issue#54701 <http://tracker.ceph.com/issues/54701>`_, `pr#46566 <https://github.com/ceph/ceph/pull/46566>`_, Venky Shankar) -* mds: Don't blocklist clients in any replay state (`pr#47110 <https://github.com/ceph/ceph/pull/47110>`_, Kotresh HR) -* mds: fix crash when exporting unlinked dir (`pr#47181 <https://github.com/ceph/ceph/pull/47181>`_, 胡玮文) -* mds: flush mdlog if locked and still has wanted caps not satisfied (`pr#46494 <https://github.com/ceph/ceph/pull/46494>`_, Xiubo Li) -* mds: notify the xattr_version to replica MDSes (`pr#47057 <https://github.com/ceph/ceph/pull/47057>`_, Xiubo Li) -* mds: skip fetching the dirfrags if not a directory (`pr#47432 <https://github.com/ceph/ceph/pull/47432>`_, Xiubo Li) -* mds: standby-replay daemon always removed in MDSMonitor::prepare_beacon (`pr#47281 <https://github.com/ceph/ceph/pull/47281>`_, Patrick Donnelly) -* mds: switch to use projected inode instead (`pr#47058 <https://github.com/ceph/ceph/pull/47058>`_, Xiubo Li) -* mgr, mon: Keep upto date metadata with mgr for MONs (`pr#46559 <https://github.com/ceph/ceph/pull/46559>`_, Laura Flores, Prashant D) -* mgr/cephadm: Add disk rescan feature to the orchestrator (`pr#47311 <https://github.com/ceph/ceph/pull/47311>`_, Adam King, Paul Cuzner) -* mgr/cephadm: add parsing for config on osd specs (`pr#47268 <https://github.com/ceph/ceph/pull/47268>`_, Luis Domingues) -* mgr/cephadm: Adding logic to store grafana cert/key per node (`pr#47950 <https://github.com/ceph/ceph/pull/47950>`_, Redouane Kachach) -* mgr/cephadm: allow binding to loopback for rgw daemons (`pr#47951 <https://github.com/ceph/ceph/pull/47951>`_, Redouane Kachach) -* mgr/cephadm: capture exception when not able to list upgrade tags (`pr#46783 <https://github.com/ceph/ceph/pull/46783>`_, Redouane Kachach) -* mgr/cephadm: check for events key before accessing it (`pr#47317 <https://github.com/ceph/ceph/pull/47317>`_, Redouane Kachach) -* mgr/cephadm: check if a service exists before trying to restart it (`pr#46789 <https://github.com/ceph/ceph/pull/46789>`_, Redouane Kachach) -* mgr/cephadm: clear error message when resuming upgrade (`pr#47373 <https://github.com/ceph/ceph/pull/47373>`_, Adam King) -* mgr/cephadm: don't try to write client/os tuning profiles to known offline hosts (`pr#47953 <https://github.com/ceph/ceph/pull/47953>`_, Adam King) -* mgr/cephadm: fix handling of draining hosts with explicit placement specs (`pr#47657 <https://github.com/ceph/ceph/pull/47657>`_, Adam King) -* mgr/cephadm: Fix how we check if a host belongs to public network (`pr#47946 <https://github.com/ceph/ceph/pull/47946>`_, Redouane Kachach) -* mgr/cephadm: fix the loki address in grafana, promtail configuration files (`pr#47171 <https://github.com/ceph/ceph/pull/47171>`_, jinhong.kim) -* mgr/cephadm: fixing scheduler consistent hashing (`pr#47073 <https://github.com/ceph/ceph/pull/47073>`_, Redouane Kachach) -* mgr/cephadm: limiting ingress/keepalived pass to 8 chars (`pr#47070 <https://github.com/ceph/ceph/pull/47070>`_, Redouane Kachach) -* mgr/cephadm: recreate osd config when redeploy/reconfiguring (`pr#47659 <https://github.com/ceph/ceph/pull/47659>`_, Adam King) -* mgr/cephadm: set dashboard grafana-api-password when user provides one (`pr#47658 <https://github.com/ceph/ceph/pull/47658>`_, Adam King) -* mgr/cephadm: store device info separately from rest of host cache (`pr#46791 <https://github.com/ceph/ceph/pull/46791>`_, Adam King) -* mgr/cephadm: support for miscellaneous config files for daemons (`pr#47312 <https://github.com/ceph/ceph/pull/47312>`_, Adam King) -* mgr/cephadm: support for os tuning profiles (`pr#47316 <https://github.com/ceph/ceph/pull/47316>`_, Adam King) -* mgr/cephadm: try to get FQDN for active instance (`pr#46793 <https://github.com/ceph/ceph/pull/46793>`_, Tatjana Dehler) -* mgr/cephadm: use host shortname for osd memory autotuning (`pr#47075 <https://github.com/ceph/ceph/pull/47075>`_, Adam King) -* mgr/dashboard: Add daemon logs tab to Logs component (`pr#46807 <https://github.com/ceph/ceph/pull/46807>`_, Aashish Sharma) -* mgr/dashboard: add flag to automatically deploy loki/promtail service at bootstrap (`pr#47623 <https://github.com/ceph/ceph/pull/47623>`_, Aashish Sharma) -* mgr/dashboard: add required validation for frontend and monitor port (`pr#47356 <https://github.com/ceph/ceph/pull/47356>`_, Avan Thakkar) -* mgr/dashboard: added pattern validaton for form input (`pr#47329 <https://github.com/ceph/ceph/pull/47329>`_, Pedro Gonzalez Gomez) -* mgr/dashboard: BDD approach for the dashboard cephadm e2e (`pr#46528 <https://github.com/ceph/ceph/pull/46528>`_, Nizamudeen A) -* mgr/dashboard: bump moment from 2.29.1 to 2.29.3 in /src/pybind/mgr/dashboard/frontend (`pr#46718 <https://github.com/ceph/ceph/pull/46718>`_, dependabot[bot]) -* mgr/dashboard: bump up teuthology (`pr#47498 <https://github.com/ceph/ceph/pull/47498>`_, Kefu Chai) -* mgr/dashboard: dashboard help command showing wrong syntax for login-banner (`pr#46809 <https://github.com/ceph/ceph/pull/46809>`_, Sarthak0702) -* mgr/dashboard: display helpfull message when the iframe-embedded Grafana dashboard failed to load (`pr#47007 <https://github.com/ceph/ceph/pull/47007>`_, Ngwa Sedrick Meh) -* mgr/dashboard: do not recommend throughput for ssd's only cluster (`pr#47156 <https://github.com/ceph/ceph/pull/47156>`_, Nizamudeen A) -* mgr/dashboard: don't log tracebacks on 404s (`pr#47094 <https://github.com/ceph/ceph/pull/47094>`_, Ernesto Puerta) -* mgr/dashboard: enable addition of custom Prometheus alerts (`pr#47942 <https://github.com/ceph/ceph/pull/47942>`_, Patrick Seidensal) -* mgr/dashboard: ensure limit 0 returns 0 images (`pr#47887 <https://github.com/ceph/ceph/pull/47887>`_, Pere Diaz Bou) -* mgr/dashboard: Feature 54330 osd creation workflow (`pr#46686 <https://github.com/ceph/ceph/pull/46686>`_, Pere Diaz Bou, Nizamudeen A, Sarthak0702) -* mgr/dashboard: fix _rbd_image_refs caching (`pr#47635 <https://github.com/ceph/ceph/pull/47635>`_, Pere Diaz Bou) -* mgr/dashboard: fix nfs exports form issues with squash field (`pr#47961 <https://github.com/ceph/ceph/pull/47961>`_, Nizamudeen A) -* mgr/dashboard: fix unmanaged service creation (`pr#48025 <https://github.com/ceph/ceph/pull/48025>`_, Nizamudeen A) -* mgr/dashboard: grafana frontend e2e testing and update cypress (`pr#47703 <https://github.com/ceph/ceph/pull/47703>`_, Nizamudeen A) -* mgr/dashboard: Hide maintenance option on expand cluster (`pr#47724 <https://github.com/ceph/ceph/pull/47724>`_, Nizamudeen A) -* mgr/dashboard: host list tables doesn't show all services deployed (`pr#47453 <https://github.com/ceph/ceph/pull/47453>`_, Avan Thakkar) -* mgr/dashboard: Improve monitoring tabs content (`pr#46990 <https://github.com/ceph/ceph/pull/46990>`_, Aashish Sharma) -* mgr/dashboard: ingress backend service should list all supported services (`pr#47085 <https://github.com/ceph/ceph/pull/47085>`_, Avan Thakkar) -* mgr/dashboard: iops optimized option enabled (`pr#46819 <https://github.com/ceph/ceph/pull/46819>`_, Pere Diaz Bou) -* mgr/dashboard: iterate through copy of items (`pr#46871 <https://github.com/ceph/ceph/pull/46871>`_, Pedro Gonzalez Gomez) -* mgr/dashboard: prevent alert redirect (`pr#47146 <https://github.com/ceph/ceph/pull/47146>`_, Tatjana Dehler) -* mgr/dashboard: rbd image pagination (`pr#47104 <https://github.com/ceph/ceph/pull/47104>`_, Pere Diaz Bou, Nizamudeen A) -* mgr/dashboard: rbd striping setting pre-population and pop-over (`pr#47409 <https://github.com/ceph/ceph/pull/47409>`_, Vrushal Chaudhari) -* mgr/dashboard: rbd-mirror batch backport (`pr#46532 <https://github.com/ceph/ceph/pull/46532>`_, Pedro Gonzalez Gomez, Pere Diaz Bou, Nizamudeen A, Melissa Li, Sarthak0702, Avan Thakkar, Aashish Sharma) -* mgr/dashboard: remove token logging (`pr#47430 <https://github.com/ceph/ceph/pull/47430>`_, Pere Diaz Bou) -* mgr/dashboard: Show error on creating service with duplicate service id (`pr#47403 <https://github.com/ceph/ceph/pull/47403>`_, Aashish Sharma) -* mgr/dashboard: stop polling when page is not visible (`pr#46672 <https://github.com/ceph/ceph/pull/46672>`_, Sarthak0702) -* mgr/dashboard:Get different storage class metrics in Prometheus dashboard (`pr#47201 <https://github.com/ceph/ceph/pull/47201>`_, Aashish Sharma) -* mgr/nfs: validate virtual_ip parameter (`pr#46794 <https://github.com/ceph/ceph/pull/46794>`_, Redouane Kachach) -* mgr/orchestrator/tests: don't match exact whitespace in table output (`pr#47858 <https://github.com/ceph/ceph/pull/47858>`_, Adam King) -* mgr/rook: fix error when trying to get the list of nfs services `pr#48199 <https://github.com/ceph/ceph/pull/48199>`_, Juan Miguel Olmo) -* mgr/snap_schedule: replace .snap with the client configured snap dir name (`pr#47734 <https://github.com/ceph/ceph/pull/47734>`_, Milind Changire, Venky Shankar, Neeraj Pratap Singh) -* mgr/snap_schedule: Use rados.Ioctx.remove_object() instead of remove() (`pr#48013 <https://github.com/ceph/ceph/pull/48013>`_, Andreas Teuchert) -* mgr/telemetry: add `perf_memory_metrics` collection to telemetry (`pr#47826 <https://github.com/ceph/ceph/pull/47826>`_, Laura Flores) -* mgr/telemetry: handle daemons with complex ids (`pr#48283 <https://github.com/ceph/ceph/pull/48283>`_, Laura Flores) -* mgr/telemetry: reset health warning after re-opting-in (`pr#47289 <https://github.com/ceph/ceph/pull/47289>`_, Yaarit Hatuka) -* mgr/volumes: add interface to check the presence of subvolumegroups/subvolumes (`pr#47474 <https://github.com/ceph/ceph/pull/47474>`_, Neeraj Pratap Singh) -* mgr/volumes: Add volume info command (`pr#47768 <https://github.com/ceph/ceph/pull/47768>`_, Neeraj Pratap Singh) -* mgr/volumes: Few mgr volumes backports (`pr#47894 <https://github.com/ceph/ceph/pull/47894>`_, Rishabh Dave, Kotresh HR, Nikhilkumar Shelke) -* mgr/volumes: filter internal directories in 'subvolumegroup ls' command (`pr#47511 <https://github.com/ceph/ceph/pull/47511>`_, Nikhilkumar Shelke) -* mgr/volumes: Fix subvolume creation in FIPS enabled system (`pr#47368 <https://github.com/ceph/ceph/pull/47368>`_, Kotresh HR) -* mgr/volumes: prevent intermittent ParsingError failure in "clone cancel" (`pr#47747 <https://github.com/ceph/ceph/pull/47747>`_, John Mulligan) -* mgr/volumes: remove incorrect 'size' from output of 'snapshot info' (`pr#46804 <https://github.com/ceph/ceph/pull/46804>`_, Nikhilkumar Shelke) -* mgr/volumes: subvolume ls command crashes if groupname as '_nogroup' (`pr#46805 <https://github.com/ceph/ceph/pull/46805>`_, Nikhilkumar Shelke) -* mgr/volumes: subvolumegroup quotas (`pr#46667 <https://github.com/ceph/ceph/pull/46667>`_, Kotresh HR) -* mgr: Define PY_SSIZE_T_CLEAN ahead of every Python.h (`pr#47616 <https://github.com/ceph/ceph/pull/47616>`_, Pete Zaitcev, Kefu Chai) -* mgr: relax "pending_service_map.epoch > service_map.epoch" assert (`pr#46738 <https://github.com/ceph/ceph/pull/46738>`_, Mykola Golub) -* mirror snapshot schedule and trash purge schedule fixes (`pr#46781 <https://github.com/ceph/ceph/pull/46781>`_, Ilya Dryomov) -* mon/ConfigMonitor: fix config get key with whitespace (`pr#47381 <https://github.com/ceph/ceph/pull/47381>`_, Nitzan Mordechai) -* mon/Elector: notify_rank_removed erase rank from both live_pinging and dead_pinging sets for highest ranked MON (`pr#47086 <https://github.com/ceph/ceph/pull/47086>`_, Kamoltat) -* mon/MDSMonitor: fix standby-replay mds being removed from MDSMap unexpectedly (`pr#47902 <https://github.com/ceph/ceph/pull/47902>`_, 胡玮文) -* mon/OSDMonitor: Ensure kvmon() is writeable before handling "osd new" cmd (`pr#46689 <https://github.com/ceph/ceph/pull/46689>`_, Sridhar Seshasayee) -* monitoring/ceph-mixin: OSD overview typo fix (`pr#47387 <https://github.com/ceph/ceph/pull/47387>`_, Tatjana Dehler) -* monitoring: ceph mixin backports (`pr#47867 <https://github.com/ceph/ceph/pull/47867>`_, Aswin Toni, Arthur Outhenin-Chalandre, Anthony D'Atri, Tatjana Dehler) -* msg: fix deadlock when handling existing but closed v2 connection (`pr#47930 <https://github.com/ceph/ceph/pull/47930>`_, Radosław Zarzyński) -* msg: Fix Windows IPv6 support (`pr#47302 <https://github.com/ceph/ceph/pull/47302>`_, Lucian Petrut) -* msg: Log at higher level when Throttle::get_or_fail() fails (`pr#47765 <https://github.com/ceph/ceph/pull/47765>`_, Brad Hubbard) -* msg: reset ProtocolV2's frame assembler in appropriate thread (`pr#47931 <https://github.com/ceph/ceph/pull/47931>`_, Radoslaw Zarzynski) -* os/bluestore: fix AU accounting in bluestore_cache_other mempool (`pr#47339 <https://github.com/ceph/ceph/pull/47339>`_, Igor Fedotov) -* os/bluestore: Fix collision between BlueFS and BlueStore deferred writes (`pr#47297 <https://github.com/ceph/ceph/pull/47297>`_, Adam Kupczyk) -* osd, mds: fix the "heap" admin cmd printing always to error stream (`pr#47825 <https://github.com/ceph/ceph/pull/47825>`_, Radoslaw Zarzynski) -* osd, tools, kv: non-aggressive, on-line trimming of accumulated dups (`pr#47688 <https://github.com/ceph/ceph/pull/47688>`_, Radoslaw Zarzynski, Nitzan Mordechai) -* osd/scrub: do not start scrubbing if the PG is snap-trimming (`pr#46498 <https://github.com/ceph/ceph/pull/46498>`_, Ronen Friedman) -* osd/scrub: late-arriving reservation grants are not an error (`pr#46872 <https://github.com/ceph/ceph/pull/46872>`_, Ronen Friedman) -* osd/scrub: Reintroduce scrub starts message (`pr#47621 <https://github.com/ceph/ceph/pull/47621>`_, Prashant D) -* osd/scrubber/pg_scrubber.cc: fix bug where scrub machine gets stuck (`pr#46844 <https://github.com/ceph/ceph/pull/46844>`_, Cory Snyder) -* osd/SnapMapper: fix legacy key conversion in snapmapper class (`pr#47133 <https://github.com/ceph/ceph/pull/47133>`_, Manuel Lausch, Matan Breizman) -* osd: Handle oncommits and wait for future work items from mClock queue (`pr#47490 <https://github.com/ceph/ceph/pull/47490>`_, Sridhar Seshasayee) -* osd: return ENOENT if pool information is invalid during tier-flush (`pr#47929 <https://github.com/ceph/ceph/pull/47929>`_, Myoungwon Oh) -* osd: Set initial mClock QoS params at CONF_DEFAULT level (`pr#47020 <https://github.com/ceph/ceph/pull/47020>`_, Sridhar Seshasayee) -* PendingReleaseNotes: Note the fix for high CPU utilization during recovery (`pr#48004 <https://github.com/ceph/ceph/pull/48004>`_, Sridhar Seshasayee) -* pybind/mgr/cephadm/serve: don't remove ceph.conf which leads to qa failure (`pr#47072 <https://github.com/ceph/ceph/pull/47072>`_, Dhairya Parmar) -* pybind/mgr/dashboard: do not use distutils.version.StrictVersion (`pr#47602 <https://github.com/ceph/ceph/pull/47602>`_, Kefu Chai) -* pybind/mgr/pg_autoscaler: change overlapping roots to warning (`pr#47519 <https://github.com/ceph/ceph/pull/47519>`_, Kamoltat) -* pybind/mgr: ceph osd status crash with ZeroDivisionError (`pr#46697 <https://github.com/ceph/ceph/pull/46697>`_, Nitzan Mordechai) -* pybind/mgr: fix flake8 (`pr#47391 <https://github.com/ceph/ceph/pull/47391>`_, Avan Thakkar) -* python-common: allow crush device class to be set from osd service spec (`pr#46792 <https://github.com/ceph/ceph/pull/46792>`_, Cory Snyder) -* qa/cephadm: specify using container host distros for workunits (`pr#47910 <https://github.com/ceph/ceph/pull/47910>`_, Adam King) -* qa/cephfs: fallback to older way of get_op_read_count (`pr#46899 <https://github.com/ceph/ceph/pull/46899>`_, Dhairya Parmar) -* qa/suites/rbd/pwl-cache: ensure recovery is actually tested (`pr#47129 <https://github.com/ceph/ceph/pull/47129>`_, Ilya Dryomov, Yin Congmin) -* qa/suites/rbd: disable workunit timeout for dynamic_features_no_cache (`pr#47159 <https://github.com/ceph/ceph/pull/47159>`_, Ilya Dryomov) -* qa/suites/rbd: place cache file on tmpfs for xfstests (`pr#46598 <https://github.com/ceph/ceph/pull/46598>`_, Ilya Dryomov) -* qa/tasks/ceph_manager.py: increase test_pool_min_size timeout (`pr#47445 <https://github.com/ceph/ceph/pull/47445>`_, Kamoltat) -* qa/workunits/cephadm: update test_repos master -> main (`pr#47315 <https://github.com/ceph/ceph/pull/47315>`_, Adam King) -* qa: wait rank 0 to become up:active state before mounting fuse client (`pr#46801 <https://github.com/ceph/ceph/pull/46801>`_, Xiubo Li) -* quincy -- sse s3 changes (`pr#46467 <https://github.com/ceph/ceph/pull/46467>`_, Casey Bodley, Marcus Watts, Priya Sehgal) -* rbd-fuse: librados will filter out -r option from command-line (`pr#46954 <https://github.com/ceph/ceph/pull/46954>`_, wanwencong) -* rbd-mirror: don't prune non-primary snapshot when restarting delta sync (`pr#46591 <https://github.com/ceph/ceph/pull/46591>`_, Ilya Dryomov) -* rbd-mirror: generally skip replay/resync if remote image is not primary (`pr#46814 <https://github.com/ceph/ceph/pull/46814>`_, Ilya Dryomov) -* rbd-mirror: remove bogus completed_non_primary_snapshots_exist check (`pr#47126 <https://github.com/ceph/ceph/pull/47126>`_, Ilya Dryomov) -* rbd-mirror: resume pending shutdown on error in snapshot replayer (`pr#47914 <https://github.com/ceph/ceph/pull/47914>`_, Ilya Dryomov) -* rbd: don't default empty pool name unless namespace is specified (`pr#47144 <https://github.com/ceph/ceph/pull/47144>`_, Ilya Dryomov) -* rbd: find_action() should sort actions first (`pr#47584 <https://github.com/ceph/ceph/pull/47584>`_, Ilya Dryomov) -* RGW - Swift retarget needs bucket set on object (`pr#46719 <https://github.com/ceph/ceph/pull/46719>`_, Daniel Gryniewicz) -* rgw/backport/quincy: Fix crashes with Sync policy APIs (`pr#47993 <https://github.com/ceph/ceph/pull/47993>`_, Soumya Koduri) -* rgw/dbstore: Fix build errors on centos9 (`pr#46915 <https://github.com/ceph/ceph/pull/46915>`_, Soumya Koduri) -* rgw: Avoid segfault when OPA authz is enabled (`pr#46107 <https://github.com/ceph/ceph/pull/46107>`_, Benoît Knecht) -* rgw: better tenant id from the uri on anonymous access (`pr#47342 <https://github.com/ceph/ceph/pull/47342>`_, Rafał Wądołowski, Marcus Watts) -* rgw: check object storage_class when check_disk_state (`pr#46580 <https://github.com/ceph/ceph/pull/46580>`_, Huber-ming) -* rgw: data sync uses yield_spawn_window() (`pr#45714 <https://github.com/ceph/ceph/pull/45714>`_, Casey Bodley) -* rgw: Fix data race in ChangeStatus (`pr#47195 <https://github.com/ceph/ceph/pull/47195>`_, Adam C. Emerson) -* rgw: Guard against malformed bucket URLs (`pr#47191 <https://github.com/ceph/ceph/pull/47191>`_, Adam C. Emerson) -* rgw: log access key id in ops logs (`pr#46624 <https://github.com/ceph/ceph/pull/46624>`_, Cory Snyder) -* rgw: reopen ops log file on sighup (`pr#46625 <https://github.com/ceph/ceph/pull/46625>`_, Cory Snyder) -* rgw_rest_user_policy: Fix GetUserPolicy & ListUserPolicies responses (`pr#47235 <https://github.com/ceph/ceph/pull/47235>`_, Sumedh A. Kulkarni) -* rgwlc: fix segfault resharding during lc (`pr#46742 <https://github.com/ceph/ceph/pull/46742>`_, Mark Kogan) -* script/build-integration-branch: add quincy to the list of releases (`pr#46361 <https://github.com/ceph/ceph/pull/46361>`_, Yuri Weinstein) -* SimpleRADOSStriper: Avoid moving bufferlists by using deque in read() (`pr#47909 <https://github.com/ceph/ceph/pull/47909>`_, Matan Breizman) -* src/mgr/DaemonServer.cc: fix typo in output gap >= max_pg_num_change (`pr#47210 <https://github.com/ceph/ceph/pull/47210>`_, Kamoltat) -* test/lazy-omap-stats: Various enhancements (`pr#47932 <https://github.com/ceph/ceph/pull/47932>`_, Brad Hubbard) -* test/{librbd, rgw}: increase delay between and number of bind attempts (`pr#48023 <https://github.com/ceph/ceph/pull/48023>`_, Ilya Dryomov) -* test/{librbd, rgw}: retry when bind fail with port 0 (`pr#47980 <https://github.com/ceph/ceph/pull/47980>`_, Kefu Chai) -* tooling: Change mrun to use bash (`pr#46076 <https://github.com/ceph/ceph/pull/46076>`_, Adam C. Emerson) -* tools: ceph-objectstore-tool is able to trim pg log dups' entries (`pr#46706 <https://github.com/ceph/ceph/pull/46706>`_, Radosław Zarzyński) -* win32_deps_build.sh: master -> main for wnbd (`pr#46763 <https://github.com/ceph/ceph/pull/46763>`_, Ilya Dryomov) - -v17.2.3 Quincy -============== - -This is a hotfix release that addresses a libcephsqlite crash in the mgr. - -Notable Changes ---------------- -* A libcephsqlite bug that caused the mgr to crash repeatedly and die is now - fixed. The bug was exposed due to 17.2.2 being built with gcc 8.5.0-14, which contains - a new patch to check for invalid regex. 17.2.1 was built using gcc 8.5.0-13, which - does not contain the invalid regex patch. - - Relevant tracker: https://tracker.ceph.com/issues/55304 - - Relevant BZ: https://bugzilla.redhat.com/show_bug.cgi?id=2110797 - -Changelog ---------- - -* libcephsqlite: ceph-mgr crashes when compiled with gcc12 (`pr#47270 <https://github.com/ceph/ceph/pull/47270>`_, Ganesh Maharaj Mahalingam) - -v17.2.2 Quincy -============== - -This is a hotfix release that resolves two security flaws. - -Notable Changes ---------------- -* Users who were running OpenStack Manila to export native CephFS, who - upgraded their Ceph cluster from Nautilus (or earlier) to a later - major version, were vulnerable to an attack by malicious users. The - vulnerability allowed users to obtain access to arbitrary portions of - the CephFS filesystem hierarchy, instead of being properly restricted - to their own subvolumes. The vulnerability is due to a bug in the - "volumes" plugin in Ceph Manager. This plugin is responsible for - managing Ceph File System subvolumes which are used by OpenStack - Manila services as a way to provide shares to Manila users. - - With this hotfix, the vulnerability is fixed. Administrators who are - concerned they may have been impacted should audit the CephX keys in - their cluster for proper path restrictions. - - Again, this vulnerability only impacts OpenStack Manila clusters which - provided native CephFS access to their users. - -* A regression made it possible to dereference a null pointer for - for s3website requests that don't refer to a bucket resulting in an RGW - segfault. - -Changelog ---------- -* mgr/volumes: Fix subvolume discover during upgrade (:ref:`CVE-2022-0670`, Kotresh HR) -* mgr/volumes: V2 Fix for test_subvolume_retain_snapshot_invalid_recreate (:ref:`CVE-2022-0670`, Kotresh HR) -* qa: validate subvolume discover on upgrade (Kotresh HR) -* rgw: s3website check for bucket before retargeting (Seena Fallah) - -v17.2.1 Quincy -============== - -This is the first bugfix release of Ceph Quincy. - -Notable Changes ---------------- -* The "BlueStore zero block detection" feature (first introduced to Quincy in - https://github.com/ceph/ceph/pull/43337) has been turned off by default with a - new global option called `bluestore_zero_block_detection`. This feature, - intended for large-scale synthetic testing, does not interact well with some RBD - and CephFS features. Any side effects experienced in previous Quincy versions - would no longer occur, provided that the config option remains set to false. - Relevant tracker: https://tracker.ceph.com/issues/55521 - -* telemetry: Added new Rook metrics to the 'basic' channel to report Rook's - version, Kubernetes version, node metrics, etc. - See a sample report with `ceph telemetry preview`. - Opt-in with `ceph telemetry on`. - - For more details, see: - - https://docs.ceph.com/en/latest/mgr/telemetry/ - -* Add offline dup op trimming ability in the ceph-objectstore-tool. - Relevant tracker: https://tracker.ceph.com/issues/53729 - -* Fixes a bug with cluster logs not being populated after log rotation. - Relevant tracker: https://tracker.ceph.com/issues/55383 - -Changelog ---------- -* .github/CODEOWNERS: tag core devs on core PRs (`pr#46519 <https://github.com/ceph/ceph/pull/46519>`_, Neha Ojha) -* .github: continue on error and reorder milestone step (`pr#46447 <https://github.com/ceph/ceph/pull/46447>`_, Ernesto Puerta) -* [quincy] mgr/alerts: Add Message-Id and Date header to sent emails (`pr#46311 <https://github.com/ceph/ceph/pull/46311>`_, Lorenz Bausch) -* ceph-fuse: ignore fuse mount failure if path is already mounted (`pr#45939 <https://github.com/ceph/ceph/pull/45939>`_, Nikhilkumar Shelke) -* ceph.in: clarify the usage of `--format` in the ceph command (`pr#46246 <https://github.com/ceph/ceph/pull/46246>`_, Laura Flores) -* ceph.spec.in: disable annobin plugin if compile with gcc-toolset (`pr#46377 <https://github.com/ceph/ceph/pull/46377>`_, Kefu Chai) -* ceph.spec.in: remove build directory at end of %install (`pr#45697 <https://github.com/ceph/ceph/pull/45697>`_, Tim Serong) -* ceph.spec.in: Use libthrift-devel on SUSE distros (`pr#45700 <https://github.com/ceph/ceph/pull/45700>`_, Tim Serong) -* ceph.spec: make ninja-build package install always (`pr#45875 <https://github.com/ceph/ceph/pull/45875>`_, Deepika Upadhyay) -* Cephadm Batch Backport April (`pr#46055 <https://github.com/ceph/ceph/pull/46055>`_, Adam King, Lukas Mayer, Ken Dreyer, Redouane Kachach, Aashish Sharma, Avan Thakkar, Moritz Röhrich, Teoman ONAY, Melissa Li, Christoph Glaubitz, Guillaume Abrioux, wangyunqing, Joseph Sawaya, Matan Breizman, Pere Diaz Bou, Michael Fritch, Patrick C. F. Ernzer) -* Cephadm Batch Backport May (`pr#46360 <https://github.com/ceph/ceph/pull/46360>`_, John Mulligan, Adam King, Prashant D, Redouane Kachach, Aashish Sharma, Ramana Raja, Ville Ojamo) -* cephadm: infer the default container image during pull (`pr#45568 <https://github.com/ceph/ceph/pull/45568>`_, Michael Fritch) -* cephadm: preserve `authorized_keys` file during upgrade (`pr#45359 <https://github.com/ceph/ceph/pull/45359>`_, Michael Fritch) -* cephadm: prometheus: The generatorURL in alerts is only using hostname (`pr#46353 <https://github.com/ceph/ceph/pull/46353>`_, Volker Theile) -* cephfs-shell: fix put and get cmd (`pr#46300 <https://github.com/ceph/ceph/pull/46300>`_, Dhairya Parmar, dparmar18) -* cephfs-top: Multiple filesystem support (`pr#46147 <https://github.com/ceph/ceph/pull/46147>`_, Neeraj Pratap Singh) -* client: add option to disable collecting and sending metrics (`pr#46476 <https://github.com/ceph/ceph/pull/46476>`_, Xiubo Li) -* cls/rgw: rgw_dir_suggest_changes detects race with completion (`pr#45901 <https://github.com/ceph/ceph/pull/45901>`_, Casey Bodley) -* cmake/modules: always use the python3 specified in command line (`pr#45966 <https://github.com/ceph/ceph/pull/45966>`_, Kefu Chai) -* cmake/rgw: add missing dependency on Arrow::Arrow (`pr#46144 <https://github.com/ceph/ceph/pull/46144>`_, Casey Bodley) -* cmake: resurrect mutex debugging in all Debug builds (`pr#45913 <https://github.com/ceph/ceph/pull/45913>`_, Ilya Dryomov) -* cmake: WITH_SYSTEM_UTF8PROC defaults to OFF (`pr#45766 <https://github.com/ceph/ceph/pull/45766>`_, Casey Bodley) -* CODEOWNERS: add RBD team (`pr#46542 <https://github.com/ceph/ceph/pull/46542>`_, Ilya Dryomov) -* debian: include the new object_format.py file (`pr#46409 <https://github.com/ceph/ceph/pull/46409>`_, John Mulligan) -* doc/cephfs/add-remove-mds: added cephadm note, refined "Adding an MDS" (`pr#45879 <https://github.com/ceph/ceph/pull/45879>`_, Dhairya Parmar) -* doc/dev: update basic-workflow.rst (`pr#46287 <https://github.com/ceph/ceph/pull/46287>`_, Zac Dover) -* doc/mgr/dashboard: Fix typo and double slash missing from URL (`pr#46075 <https://github.com/ceph/ceph/pull/46075>`_, Ville Ojamo) -* doc/start: add testing support information (`pr#45988 <https://github.com/ceph/ceph/pull/45988>`_, Zac Dover) -* doc/start: s/3/three/ in intro.rst (`pr#46325 <https://github.com/ceph/ceph/pull/46325>`_, Zac Dover) -* doc/start: update "memory" in hardware-recs.rst (`pr#46449 <https://github.com/ceph/ceph/pull/46449>`_, Zac Dover) -* Implement CIDR blocklisting (`pr#46469 <https://github.com/ceph/ceph/pull/46469>`_, Jos Collin, Greg Farnum) -* librbd/cache/pwl: fix bit field endianness issue (`pr#46094 <https://github.com/ceph/ceph/pull/46094>`_, Yin Congmin) -* mds: add a perf counter to record slow replies (`pr#46156 <https://github.com/ceph/ceph/pull/46156>`_, haoyixing) -* mds: include encoded stray inode when sending dentry unlink message to replicas (`issue#54046 <http://tracker.ceph.com/issues/54046>`_, `pr#46184 <https://github.com/ceph/ceph/pull/46184>`_, Venky Shankar) -* mds: reset heartbeat when fetching or committing entries (`pr#46181 <https://github.com/ceph/ceph/pull/46181>`_, Xiubo Li) -* mds: trigger to flush the mdlog in handle_find_ino() (`pr#46497 <https://github.com/ceph/ceph/pull/46497>`_, Xiubo Li) -* mgr/cephadm: Adding python natsort module (`pr#46065 <https://github.com/ceph/ceph/pull/46065>`_, Redouane Kachach) -* mgr/cephadm: try to get FQDN for configuration files (`pr#45665 <https://github.com/ceph/ceph/pull/45665>`_, Tatjana Dehler) -* mgr/dashboard: don't log 3xx as errors (`pr#46453 <https://github.com/ceph/ceph/pull/46453>`_, Ernesto Puerta) -* mgr/dashboard: Compare values of MTU alert by device (`pr#45814 <https://github.com/ceph/ceph/pull/45814>`_, Aashish Sharma, Patrick Seidensal) -* mgr/dashboard: Creating and editing Prometheus AlertManager silences is buggy (`pr#46278 <https://github.com/ceph/ceph/pull/46278>`_, Volker Theile) -* mgr/dashboard: customizable log-in page text/banner (`pr#46342 <https://github.com/ceph/ceph/pull/46342>`_, Sarthak0702) -* mgr/dashboard: datatable in Cluster Host page hides wrong column on selection (`pr#45862 <https://github.com/ceph/ceph/pull/45862>`_, Sarthak0702) -* mgr/dashboard: extend daemon actions to host details (`pr#45722 <https://github.com/ceph/ceph/pull/45722>`_, Aashish Sharma, Nizamudeen A) -* mgr/dashboard: fix columns in host table with NaN Undefined (`pr#46446 <https://github.com/ceph/ceph/pull/46446>`_, Avan Thakkar) -* mgr/dashboard: fix ssl cert validation for ingress service creation (`pr#46203 <https://github.com/ceph/ceph/pull/46203>`_, Avan Thakkar) -* mgr/dashboard: fix wrong pg status processing (`pr#46229 <https://github.com/ceph/ceph/pull/46229>`_, Ernesto Puerta) -* mgr/dashboard: form field validation icons overlap with other icons (`pr#46380 <https://github.com/ceph/ceph/pull/46380>`_, Sarthak0702) -* mgr/dashboard: highlight the search text in cluster logs (`pr#45679 <https://github.com/ceph/ceph/pull/45679>`_, Sarthak0702) -* mgr/dashboard: Imrove error message of '/api/grafana/validation' API endpoint (`pr#45957 <https://github.com/ceph/ceph/pull/45957>`_, Volker Theile) -* mgr/dashboard: introduce memory and cpu usage for daemons (`pr#46220 <https://github.com/ceph/ceph/pull/46220>`_, Aashish Sharma, Avan Thakkar) -* mgr/dashboard: Language dropdown box is partly hidden on login page (`pr#45619 <https://github.com/ceph/ceph/pull/45619>`_, Volker Theile) -* mgr/dashboard: RGW users and buckets tables are empty if the selected gateway is down (`pr#45867 <https://github.com/ceph/ceph/pull/45867>`_, Volker Theile) -* mgr/dashboard: Table columns hiding fix (`issue#51119 <http://tracker.ceph.com/issues/51119>`_, `pr#45724 <https://github.com/ceph/ceph/pull/45724>`_, Daniel Persson) -* mgr/dashboard: unselect rows in datatables (`pr#46323 <https://github.com/ceph/ceph/pull/46323>`_, Sarthak0702) -* mgr/dashboard: WDC multipath bug fixes (`pr#46455 <https://github.com/ceph/ceph/pull/46455>`_, Nizamudeen A) -* mgr/stats: be resilient to offline MDS rank-0 (`pr#45291 <https://github.com/ceph/ceph/pull/45291>`_, Jos Collin) -* mgr/telemetry: add Rook data (`pr#46486 <https://github.com/ceph/ceph/pull/46486>`_, Yaarit Hatuka) -* mgr/volumes: Fix idempotent subvolume rm (`pr#46140 <https://github.com/ceph/ceph/pull/46140>`_, Kotresh HR) -* mgr/volumes: set, get, list and remove metadata of snapshot (`pr#46508 <https://github.com/ceph/ceph/pull/46508>`_, Nikhilkumar Shelke) -* mgr/volumes: set, get, list and remove metadata of subvolume (`pr#45994 <https://github.com/ceph/ceph/pull/45994>`_, Nikhilkumar Shelke) -* mgr/volumes: Show clone failure reason in clone status command (`pr#45927 <https://github.com/ceph/ceph/pull/45927>`_, Kotresh HR) -* mon/LogMonitor: reopen log files on SIGHUP (`pr#46374 <https://github.com/ceph/ceph/pull/46374>`_, 胡玮文) -* mon/OSDMonitor: properly set last_force_op_resend in stretch mode (`pr#45871 <https://github.com/ceph/ceph/pull/45871>`_, Ilya Dryomov) -* mount/conf: Fix IPv6 parsing (`pr#46113 <https://github.com/ceph/ceph/pull/46113>`_, Matan Breizman) -* os/bluestore: set upper and lower bounds on rocksdb omap iterators (`pr#46175 <https://github.com/ceph/ceph/pull/46175>`_, Adam Kupczyk, Cory Snyder) -* os/bluestore: turn `bluestore zero block detection` off by default (`pr#46468 <https://github.com/ceph/ceph/pull/46468>`_, Laura Flores) -* osd/PGLog.cc: Trim duplicates by number of entries (`pr#46251 <https://github.com/ceph/ceph/pull/46251>`_, Nitzan Mordechai) -* osd/scrub: ignoring unsolicited DigestUpdate events (`pr#45595 <https://github.com/ceph/ceph/pull/45595>`_, Ronen Friedman) -* osd/scrub: restart snap trimming after a failed scrub (`pr#46418 <https://github.com/ceph/ceph/pull/46418>`_, Ronen Friedman) -* osd: return appropriate error if the object is not manifest (`pr#46061 <https://github.com/ceph/ceph/pull/46061>`_, Myoungwon Oh) -* qa/suites/rados/thrash-erasure-code-big/thrashers: add `osd max backfills` setting to mapgap and pggrow (`pr#46384 <https://github.com/ceph/ceph/pull/46384>`_, Laura Flores) -* qa/tasks/cephadm_cases: increase timeouts in test_cli.py (`pr#45625 <https://github.com/ceph/ceph/pull/45625>`_, Adam King) -* qa: add filesystem/file sync stuck test support (`pr#46496 <https://github.com/ceph/ceph/pull/46496>`_, Xiubo Li) -* qa: fix teuthology master branch ref (`pr#46503 <https://github.com/ceph/ceph/pull/46503>`_, Ernesto Puerta) -* qa: remove .teuthology_branch file (`pr#46491 <https://github.com/ceph/ceph/pull/46491>`_, Jeff Layton) -* Quincy: client: stop forwarding the request when exceeding 256 times (`pr#46178 <https://github.com/ceph/ceph/pull/46178>`_, Xiubo Li) -* Quincy: Wip doc backport quincy release notes to quincy branch 2022 05 24 (`pr#46381 <https://github.com/ceph/ceph/pull/46381>`_, Neha Ojha, David Galloway, Josh Durgin, Ilya Dryomov, Ernesto Puerta, Sridhar Seshasayee, Zac Dover, Yaarit Hatuka) -* rbd persistent cache UX improvements (status report, metrics, flush command) (`pr#45896 <https://github.com/ceph/ceph/pull/45896>`_, Ilya Dryomov, Yin Congmin) -* rgw: OpsLogFile::stop() signals under mutex (`pr#46038 <https://github.com/ceph/ceph/pull/46038>`_, Casey Bodley) -* rgw: remove rgw_rados_pool_pg_num_min and its use on pool creation use the cluster defaults for pg_num_min (`pr#46234 <https://github.com/ceph/ceph/pull/46234>`_, Casey Bodley) -* rgw: RGWCoroutine::set_sleeping() checks for null stack (`pr#46041 <https://github.com/ceph/ceph/pull/46041>`_, Or Friedmann, Casey Bodley) -* rgw_reshard: drop olh entries with empty name (`pr#45846 <https://github.com/ceph/ceph/pull/45846>`_, Dan van der Ster) -* rocksdb: build with rocksdb-7.y.z (`pr#46492 <https://github.com/ceph/ceph/pull/46492>`_, Kaleb S. KEITHLEY) -* rpm: use system libpmem on Centos 9 Stream (`pr#46212 <https://github.com/ceph/ceph/pull/46212>`_, Ilya Dryomov) -* run-make-check.sh: enable RBD persistent caches (`pr#45992 <https://github.com/ceph/ceph/pull/45992>`_, Ilya Dryomov) -* test/rbd_mirror: grab timer lock before calling add_event_after() (`pr#45905 <https://github.com/ceph/ceph/pull/45905>`_, Ilya Dryomov) -* test: fix TierFlushDuringFlush to wait until dedup_tier is set on base pool (`issue#53855 <http://tracker.ceph.com/issues/53855>`_, `pr#45624 <https://github.com/ceph/ceph/pull/45624>`_, Sungmin Lee) -* test: No direct use of nose (`pr#46254 <https://github.com/ceph/ceph/pull/46254>`_, Steve Kowalik) -* Wip doc pr 46109 backport to quincy (`pr#46116 <https://github.com/ceph/ceph/pull/46116>`_, Ville Ojamo) - -v17.2.0 Quincy -============== - -This is the first stable release of Ceph Quincy. - -Major Changes from Pacific --------------------------- - -General -~~~~~~~ - -* Filestore has been deprecated in Quincy. BlueStore is Ceph's default object - store. - -* The `ceph-mgr-modules-core` debian package no longer recommends - `ceph-mgr-rook`. `ceph-mgr-rook` depends on `python3-numpy`, which - cannot be imported in different Python sub-interpreters multiple times - when the version of `python3-numpy` is older than 1.19. Because - `apt-get` installs the `Recommends` packages by default, `ceph-mgr-rook` - was always installed along with the `ceph-mgr` debian package as an - indirect dependency. If your workflow depends on this behavior, you - might want to install `ceph-mgr-rook` separately. - -* The ``device_health_metrics`` pool has been renamed ``.mgr``. It is now - used as a common store for all ``ceph-mgr`` modules. After upgrading to - Quincy, the ``device_health_metrics`` pool will be renamed to ``.mgr`` - on existing clusters. - -* The ``ceph pg dump`` command now prints three additional columns: - `LAST_SCRUB_DURATION` shows the duration (in seconds) of the last completed - scrub; - `SCRUB_SCHEDULING` conveys whether a PG is scheduled to be scrubbed at a - specified time, whether it is queued for scrubbing, or whether it is being - scrubbed; - `OBJECTS_SCRUBBED` shows the number of objects scrubbed in a PG after a - scrub begins. - -* A health warning is now reported if the ``require-osd-release`` flag - is not set to the appropriate release after a cluster upgrade. - -* LevelDB support has been removed. ``WITH_LEVELDB`` is no longer a supported - build option. Users *should* migrate their monitors and OSDs to RocksDB - before upgrading to Quincy. - -* Cephadm: ``osd_memory_target_autotune`` is enabled by default, which sets - ``mgr/cephadm/autotune_memory_target_ratio`` to ``0.7`` of total RAM. This - is unsuitable for hyperconverged infrastructures. For hyperconverged Ceph, - please refer to the documentation or set - ``mgr/cephadm/autotune_memory_target_ratio`` to ``0.2``. - -* telemetry: Improved the opt-in flow so that users can keep sharing the same - data, even when new data collections are available. A new 'perf' channel that - collects various performance metrics is now available for operators to opt - into with: - `ceph telemetry on` - `ceph telemetry enable channel perf` - See a sample report with `ceph telemetry preview`. - Note that generating a telemetry report with 'perf' channel data might - take a few moments in big clusters. - For more details, see: - https://docs.ceph.com/en/quincy/mgr/telemetry/ - -* MGR: The progress module disables the pg recovery event by default since the - event is expensive and has interrupted other services when there are OSDs - being marked in/out from the cluster. However, the user can still enable - this event anytime. For more detail, see: - - https://docs.ceph.com/en/quincy/mgr/progress/ - -* https://tracker.ceph.com/issues/55383 is a known issue - - to continue to log cluster log messages to file, - run `ceph config set mon mon_cluster_log_to_file true` after every log rotation. - -Cephadm -------- - -* SNMP Support -* Colocation of Daemons (mgr, mds, rgw) -* osd memory autotuning -* Integration with new NFS mgr module -* Ability to zap osds as they are removed -* cephadm agent for increased performance/scalability - -Dashboard -~~~~~~~~~ -* Day 1: the new "Cluster Expansion Wizard" will guide users through post-install steps: - adding new hosts, storage devices or services. -* NFS: the Dashboard now allows users to fully manage all NFS exports from a single place. -* New mgr module (feedback): users can quickly report Ceph tracker issues - or suggestions directly from the Dashboard or the CLI. -* New "Message of the Day": cluster admins can publish a custom message in a banner. -* Cephadm integration improvements: - * Host management: maintenance, specs and labelling, - * Service management: edit and display logs, - * Daemon management (start, stop, restart, reload), - * New services supported: ingress (HAProxy) and SNMP-gateway. -* Monitoring and alerting: - * 43 new alerts have been added (totalling 68) improving observability of events affecting: - cluster health, monitors, storage devices, PGs and CephFS. - * Alerts can now be sent externally as SNMP traps via the new SNMP gateway service - (the MIB is provided). - * Improved integrated full/nearfull event notifications. - * Grafana Dashboards now use grafonnet format (though they're still available - in JSON format). - * Stack update: images for monitoring containers have been updated. - Grafana 8.3.5, Prometheus 2.33.4, Alertmanager 0.23.0 and Node Exporter 1.3.1. - This reduced exposure to several Grafana vulnerabilities (CVE-2021-43798, - CVE-2021-39226, CVE-2021-43798, CVE-2020-29510, CVE-2020-29511). - -RADOS -~~~~~ - -* OSD: Ceph now uses `mclock_scheduler` for BlueStore OSDs as its default - `osd_op_queue` to provide QoS. The 'mclock_scheduler' is not supported - for Filestore OSDs. Therefore, the default 'osd_op_queue' is set to `wpq` - for Filestore OSDs and is enforced even if the user attempts to change it. - For more details on configuring mclock see, - - https://docs.ceph.com/en/quincy/rados/configuration/mclock-config-ref/ - - An outstanding issue exists during runtime where the mclock config options - related to reservation, weight and limit cannot be modified after switching - to the `custom` mclock profile using the `ceph config set ...` command. - This is tracked by: https://tracker.ceph.com/issues/55153. Until the issue - is fixed, users are advised to avoid using the 'custom' profile or use the - workaround mentioned in the tracker. - -* MGR: The pg_autoscaler can now be turned `on` and `off` globally - with the `noautoscale` flag. By default, it is set to `on`, but this flag - can come in handy to prevent rebalancing triggered by autoscaling during - cluster upgrade and maintenance. Pools can now be created with the `--bulk` - flag, which allows the autoscaler to allocate more PGs to such pools. This - can be useful to get better out of the box performance for data-heavy pools. - - For more details about autoscaling, see: - https://docs.ceph.com/en/quincy/rados/operations/placement-groups/ - -* OSD: Support for on-wire compression for osd-osd communication, `off` by - default. - - For more details about compression modes, see: - https://docs.ceph.com/en/quincy/rados/configuration/msgr2/#compression-modes - -* OSD: Concise reporting of slow operations in the cluster log. The old - and more verbose logging behavior can be regained by setting - `osd_aggregated_slow_ops_logging` to false. - -* the "kvs" Ceph object class is not packaged anymore. The "kvs" Ceph - object class offers a distributed flat b-tree key-value store that - is implemented on top of the librados objects omap. Because there - are no existing internal users of this object class, it is not - packaged anymore. - -RBD block storage -~~~~~~~~~~~~~~~~~ - -* rbd-nbd: `rbd device attach` and `rbd device detach` commands added, - these allow for safe reattach after `rbd-nbd` daemon is restarted since - Linux kernel 5.14. - -* rbd-nbd: `notrim` map option added to support thick-provisioned images, - similar to krbd. - -* Large stabilization effort for client-side persistent caching on SSD - devices, also available in 16.2.8. For details on usage, see: - - https://docs.ceph.com/en/quincy/rbd/rbd-persistent-write-log-cache/ - -* Several bug fixes in diff calculation when using fast-diff image - feature + whole object (inexact) mode. In some rare cases these - long-standing issues could cause an incorrect `rbd export`. Also - fixed in 15.2.16 and 16.2.8. - -* Fix for a potential performance degradation when running Windows VMs - on krbd. For details, see `rxbounce` map option description: - - https://docs.ceph.com/en/quincy/man/8/rbd/#kernel-rbd-krbd-options - -RGW object storage -~~~~~~~~~~~~~~~~~~ - -* RGW now supports rate limiting by user and/or by bucket. With this - feature it is possible to limit user and/or bucket, the total operations - and/or bytes per minute can be delivered. This feature allows the - admin to limit only READ operations and/or WRITE operations. The - rate-limiting configuration could be applied on all users and all buckets - by using global configuration. - -* `radosgw-admin realm delete` has been renamed to `radosgw-admin realm - rm`. This is consistent with the help message. - -* S3 bucket notification events now contain an `eTag` key instead of - `etag`, and eventName values no longer carry the `s3:` prefix, fixing - deviations from the message format that is observed on AWS. - -* It is possible to specify ssl options and ciphers for beast frontend - now. The default ssl options setting is - "no_sslv2:no_sslv3:no_tlsv1:no_tlsv1_1". If you want to return to the old - behavior, add 'ssl_options=' (empty) to the ``rgw frontends`` configuration. - -* The behavior for Multipart Upload was modified so that only - CompleteMultipartUpload notification is sent at the end of the multipart - upload. The POST notification at the beginning of the upload and the PUT - notifications that were sent on each part are no longer sent. - - -CephFS distributed file system -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -* fs: A file system can be created with a specific ID ("fscid"). This is - useful in certain recovery scenarios (for example, when a monitor - database has been lost and rebuilt, and the restored file system is - expected to have the same ID as before). - -* fs: A file system can be renamed using the `fs rename` command. Any cephx - credentials authorized for the old file system name will need to be - reauthorized to the new file system name. Since the operations of the clients - using these re-authorized IDs may be disrupted, this command requires the - "--yes-i-really-mean-it" flag. Also, mirroring is expected to be disabled - on the file system. - -* MDS upgrades no longer require all standby MDS daemons to be stoped before - upgrading a file systems's sole active MDS. - -* CephFS: Failure to replay the journal by a standby-replay daemon now - causes the rank to be marked "damaged". - -Upgrading from Octopus or Pacific ----------------------------------- - -Quincy does not support LevelDB. Please migrate your OSDs and monitors -to RocksDB before upgrading to Quincy. - -Before starting, make sure your cluster is stable and healthy (no down or -recovering OSDs). (This is optional, but recommended.) You can disable -the autoscaler for all pools during the upgrade using the noautoscale flag. - -.. note:: - - You can monitor the progress of your upgrade at each stage with the - ``ceph versions`` command, which will tell you what ceph version(s) are - running for each type of daemon. - -Upgrading cephadm clusters -~~~~~~~~~~~~~~~~~~~~~~~~~~ - -If your cluster is deployed with cephadm (first introduced in Octopus), then -the upgrade process is entirely automated. To initiate the upgrade, - - .. prompt:: bash # - - ceph orch upgrade start --ceph-version 17.2.0 - -The same process is used to upgrade to future minor releases. - -Upgrade progress can be monitored with ``ceph -s`` (which provides a simple -progress bar) or more verbosely with - - .. prompt:: bash # - - ceph -W cephadm - -The upgrade can be paused or resumed with - - .. prompt:: bash # - - ceph orch upgrade pause # to pause - ceph orch upgrade resume # to resume - -or canceled with - - .. prompt:: bash # - - ceph orch upgrade stop - -Note that canceling the upgrade simply stops the process; there is no ability to -downgrade back to Octopus or Pacific. - - -Upgrading non-cephadm clusters -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. note:: - If you cluster is running Octopus (15.2.x) or later, you might choose - to first convert it to use cephadm so that the upgrade to Quincy - is automated (see above). For more information, see - :ref:`cephadm-adoption`. - -#. Set the ``noout`` flag for the duration of the upgrade. (Optional, - but recommended.): - - .. prompt:: bash # - - ceph osd set noout - -#. Upgrade monitors by installing the new packages and restarting the - monitor daemons. For example, on each monitor host,: - - .. prompt:: bash # - - systemctl restart ceph-mon.target - - Once all monitors are up, verify that the monitor upgrade is - complete by looking for the ``quincy`` string in the mon - map. The command: - - .. prompt:: bash # - - ceph mon dump | grep min_mon_release - - should report:: - - min_mon_release 17 (quincy) - - If it doesn't, that implies that one or more monitors hasn't been - upgraded and restarted and/or the quorum does not include all monitors. - -#. Upgrade ``ceph-mgr`` daemons by installing the new packages and - restarting all manager daemons. For example, on each manager host,: - - .. prompt:: bash # - - systemctl restart ceph-mgr.target - - Verify the ``ceph-mgr`` daemons are running by checking ``ceph - -s``: - - .. prompt:: bash # - - ceph -s - - :: - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the - ceph-osd daemons on all OSD hosts: - - .. prompt:: bash # - - systemctl restart ceph-osd.target - -#. Upgrade all CephFS MDS daemons. For each CephFS file system, - - #. Disable standby_replay. Before executing, note the current value - so that it may be re-enabled after the upgrade (if currently enabled): - - .. prompt:: bash # - - ceph fs get <fs_name> | grep allow_standby_replay - ceph fs set <fs_name> allow_standby_replay false - - #. Reduce the number of ranks to 1. (Make note of the original - number of MDS daemons first if you plan to restore it later.): - - .. prompt:: bash # - - ceph fs status - ceph fs set <fs_name> max_mds 1 - - #. Wait for the cluster to deactivate any non-zero ranks by - periodically checking the status: - - .. prompt:: bash # - - ceph fs status - - #. Take all standby MDS daemons offline on the appropriate hosts with: - - .. prompt:: bash # - - systemctl stop ceph-mds@<daemon_name> - - #. Confirm that only one MDS is online and is rank 0 for your FS: - - .. prompt:: bash # - - ceph fs status - - #. Upgrade the last remaining MDS daemon by installing the new - packages and restarting the daemon: - - .. prompt:: bash # - - systemctl restart ceph-mds.target - - #. Restart all standby MDS daemons that were taken offline: - - .. prompt:: bash # - - systemctl start ceph-mds.target - - #. Restore the original value of ``max_mds`` for the volume: - - .. prompt:: bash # - - ceph fs set <fs_name> max_mds <original_max_mds> - - #. Restore the original value of ``allow_standby_replay`` for the volume if - it was ``true``: - - .. prompt:: bash # - - ceph fs set <fs_name> allow_standby_replay true - -#. Upgrade all radosgw daemons by upgrading packages and restarting - daemons on all hosts: - - .. prompt:: bash # - - systemctl restart ceph-radosgw.target - -#. Complete the upgrade by disallowing pre-Quincy OSDs and enabling - all new Quincy-only functionality: - - .. prompt:: bash # - - ceph osd require-osd-release quincy - -#. If you set ``noout`` at the beginning, be sure to clear it with: - - .. prompt:: bash # - - ceph osd unset noout - -#. Consider transitioning your cluster to use the cephadm deployment - and orchestration framework to simplify cluster management and - future upgrades. For more information on converting an existing - cluster to cephadm, see :ref:`cephadm-adoption`. - -Post-upgrade -~~~~~~~~~~~~ - -#. Verify the cluster is healthy with ``ceph health``. If your cluster is - running Filestore, a deprecation warning is expected. This warning can - be temporarily muted using the following command: - - .. prompt:: bash # - - ceph health mute OSD_FILESTORE - -#. If you are upgrading from Mimic, or did not already do so when you - upgraded to Nautilus, we recommend you enable the new :ref:`v2 - network protocol <msgr2>`, issue the following command: - - .. prompt:: bash # - - ceph mon enable-msgr2 - - This will instruct all monitors that bind to the old default port - 6789 for the legacy v1 protocol to also bind to the new 3300 v2 - protocol port. To see if all monitors have been updated, run this: - - .. prompt:: bash # - - ceph mon dump - - and verify that each monitor has both a ``v2:`` and ``v1:`` address - listed. - -#. Consider enabling the :ref:`telemetry module <telemetry>` to send - anonymized usage statistics and crash information to the Ceph - upstream developers. To see what would be reported (without actually - sending any information to anyone),: - - .. prompt:: bash # - - ceph telemetry preview-all - - If you are comfortable with the data that is reported, you can opt-in to - automatically report the high-level cluster metadata with: - - .. prompt:: bash # - - ceph telemetry on - - The public dashboard that aggregates Ceph telemetry can be found at - `https://telemetry-public.ceph.com/ <https://telemetry-public.ceph.com/>`_. - - For more information about the telemetry module, see :ref:`the - documentation <telemetry>`. - - -Upgrading from pre-Octopus releases (like Nautilus) ---------------------------------------------------- - - -You *must* first upgrade to Octopus (15.2.z) or Pacific (16.2.z) before -upgrading to Quincy. diff --git a/doc/releases/reef.rst b/doc/releases/reef.rst deleted file mode 100644 index 6f4f82783..000000000 --- a/doc/releases/reef.rst +++ /dev/null @@ -1,551 +0,0 @@ -==== -Reef -==== - -Reef is the 18th stable release of Ceph. It is named after the reef squid -(Sepioteuthis). - -v18.2.0 Reef -============ - -This is the first stable release of Ceph Reef. - -.. important:: - - We are unable to build Ceph on Debian stable (bookworm) for the 18.2.0 - release because of Debian bug - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1030129. We will build as - soon as this bug is resolved in Debian stable. - - *last updated 2023 Aug 04* - -Major Changes from Quincy --------------------------- - -Highlights -~~~~~~~~~~ - -See the relevant sections below for more details on these changes. - -* **RADOS** FileStore is not supported in Reef. -* **RADOS:** RocksDB has been upgraded to version 7.9.2. -* **RADOS:** There have been significant improvements to RocksDB iteration overhead and performance. -* **RADOS:** The ``perf dump`` and ``perf schema`` commands have been deprecated in - favor of the new ``counter dump`` and ``counter schema`` commands. -* **RADOS:** Cache tiering is now deprecated. -* **RADOS:** A new feature, the "read balancer", is now available, which allows users to balance primary PGs per pool on their clusters. -* **RGW:** Bucket resharding is now supported for multi-site configurations. -* **RGW:** There have been significant improvements to the stability and consistency of multi-site replication. -* **RGW:** Compression is now supported for objects uploaded with Server-Side Encryption. -* **Dashboard:** There is a new Dashboard page with improved layout. Active alerts and some important charts are now displayed inside cards. -* **RBD:** Support for layered client-side encryption has been added. -* **Telemetry**: Users can now opt in to participate in a leaderboard in the telemetry public dashboards. - -CephFS -~~~~~~ - -* CephFS: The ``mds_max_retries_on_remount_failure`` option has been renamed to - ``client_max_retries_on_remount_failure`` and moved from ``mds.yaml.in`` to - ``mds-client.yaml.in``. This change was made because the option has always - been used only by the MDS client. -* CephFS: It is now possible to delete the recovered files in the - ``lost+found`` directory after a CephFS post has been recovered in accordance - with disaster recovery procedures. -* The ``AT_NO_ATTR_SYNC`` macro has been deprecated in favor of the standard - ``AT_STATX_DONT_SYNC`` macro. The ``AT_NO_ATTR_SYNC`` macro will be removed - in the future. - -Dashboard -~~~~~~~~~ - -* There is a new Dashboard page with improved layout. Active alerts - and some important charts are now displayed inside cards. - -* Cephx Auth Management: There is a new section dedicated to listing and - managing Ceph cluster users. - -* RGW Server Side Encryption: The SSE-S3 and KMS encryption of rgw buckets can - now be configured at the time of bucket creation. - -* RBD Snapshot mirroring: Snapshot mirroring can now be configured through UI. - Snapshots can now be scheduled. - -* 1-Click OSD Creation Wizard: OSD creation has been broken into 3 options: - - #. Cost/Capacity Optimized: Use all HDDs - - #. Throughput Optimized: Combine HDDs and SSDs - - #. IOPS Optimized: Use all NVMes - - The current OSD-creation form has been moved to the Advanced section. - -* Centralized Logging: There is now a view that collects all the logs from - the Ceph cluster. - -* Accessibility WCAG-AA: Dashboard is WCAG 2.1 level A compliant and therefore - improved for blind and visually impaired Ceph users. - -* Monitoring & Alerting - - * Ceph-exporter: Now the performance metrics for Ceph daemons are - exported by ceph-exporter, which deploys on each daemon rather than - using prometheus exporter. This will reduce performance bottlenecks. - - * Monitoring stacks updated: - - * Prometheus 2.43.0 - - * Node-exporter 1.5.0 - - * Grafana 9.4.7 - - * Alertmanager 0.25.0 - -MGR -~~~ - -* mgr/snap_schedule: The snap-schedule manager module now retains one snapshot - less than the number mentioned against the config option - ``mds_max_snaps_per_dir``. This means that a new snapshot can be created and - retained during the next schedule run. -* The ``ceph mgr dump`` command now outputs ``last_failure_osd_epoch`` and - ``active_clients`` fields at the top level. Previously, these fields were - output under the ``always_on_modules`` field. - -RADOS -~~~~~ - -* FileStore is not supported in Reef. -* RocksDB has been upgraded to version 7.9.2, which incorporates several - performance improvements and features. This is the first release that can - tune RocksDB settings per column family, which allows for more granular - tunings to be applied to different kinds of data stored in RocksDB. New - default settings have been used to optimize performance for most workloads, with a - slight penalty in some use cases. This slight penalty is outweighed by large - improvements in compactions and write amplification in use cases such as RGW - (up to a measured 13.59% improvement in 4K random write IOPs). -* Trimming of PGLog dups is now controlled by the size rather than the version. - This change fixes the PGLog inflation issue that was happening when the - online (in OSD) trimming got jammed after a PG split operation. Also, a new - offline mechanism has been added: ``ceph-objectstore-tool`` has a new - operation called ``trim-pg-log-dups`` that targets situations in which an OSD - is unable to boot because of the inflated dups. In such situations, the "You - can be hit by THE DUPS BUG" warning is visible in OSD logs. Relevant tracker: - https://tracker.ceph.com/issues/53729 -* The RADOS Python bindings are now able to process (opt-in) omap keys as bytes - objects. This allows interacting with RADOS omap keys that are not - decodable as UTF-8 strings. -* mClock Scheduler: The mClock scheduler (the default scheduler in Quincy) has - undergone significant usability and design improvements to address the slow - backfill issue. The following is a list of some important changes: - - * The ``balanced`` profile is set as the default mClock profile because it - represents a compromise between prioritizing client I/O and prioritizing - recovery I/O. Users can then choose either the ``high_client_ops`` profile - to prioritize client I/O or the ``high_recovery_ops`` profile to prioritize - recovery I/O. - * QoS parameters including ``reservation`` and ``limit`` are now specified in - terms of a fraction (range: 0.0 to 1.0) of the OSD's IOPS capacity. - * The cost parameters (``osd_mclock_cost_per_io_usec_*`` and - ``osd_mclock_cost_per_byte_usec_*``) have been removed. The cost of an - operation is now a function of the random IOPS and maximum sequential - bandwidth capability of the OSD's underlying device. - * Degraded object recovery is given higher priority than misplaced - object recovery because degraded objects present a data safety issue that - is not present with objects that are merely misplaced. As a result, - backfilling operations with the ``balanced`` and ``high_client_ops`` mClock - profiles might progress more slowly than in the past, when backfilling - operations used the 'WeightedPriorityQueue' (WPQ) scheduler. - * The QoS allocations in all the mClock profiles are optimized in - accordance with the above fixes and enhancements. - * For more details, see: - https://docs.ceph.com/en/reef/rados/configuration/mclock-config-ref/ -* A new feature, the "read balancer", is now available, which allows - users to balance primary PGs per pool on their clusters. The read balancer is - currently available as an offline option via the ``osdmaptool``. By providing - a copy of their osdmap and a pool they want balanced to the ``osdmaptool``, users - can generate a preview of optimal primary PG mappings that they can then choose to - apply to their cluster. For more details, see - https://docs.ceph.com/en/latest/dev/balancer-design/#read-balancing -* The ``active_clients`` array displayed by the ``ceph mgr dump`` command now - has a ``name`` field that shows the name of the manager module that - registered a RADOS client. Previously, the ``active_clients`` array showed - the address of a module's RADOS client, but not the name of the module. -* The ``perf dump`` and ``perf schema`` commands have been deprecated in - favor of the new ``counter dump`` and ``counter schema`` commands. These new - commands add support for labeled perf counters and also emit existing - unlabeled perf counters. Some unlabeled perf counters became labeled in this - release, and more will be labeled in future releases; such converted perf - counters are no longer emitted by the ``perf dump`` and ``perf schema`` - commands. -* Cache tiering is now deprecated. -* The SPDK backend for BlueStore can now connect to an NVMeoF target. This - is not an officially supported feature. - -RBD -~~~ - -* The semantics of compare-and-write C++ API (`Image::compare_and_write` and - `Image::aio_compare_and_write` methods) now match those of C API. Both - compare and write steps operate only on len bytes even if the buffers - associated with them are larger. The previous behavior of comparing up to the - size of the compare buffer was prone to subtle breakage upon straddling a - stripe unit boundary. -* The ``compare-and-write`` operation is no longer limited to 512-byte - sectors. Assuming proper alignment, it now allows operating on stripe units - (4MB by default). -* There is a new ``rbd_aio_compare_and_writev`` API method that supports - scatter/gather on compare buffers as well as on write buffers. This - complements the existing ``rbd_aio_readv`` and ``rbd_aio_writev`` methods. -* The ``rbd device unmap`` command now has a ``--namespace`` option. - Support for namespaces was added to RBD in Nautilus 14.2.0, and since then it - has been possible to map and unmap images in namespaces using the - ``image-spec`` syntax. However, the corresponding option available in most - other commands was missing. -* All rbd-mirror daemon perf counters have become labeled and are now - emitted only by the new ``counter dump`` and ``counter schema`` commands. As - part of the conversion, many were also renamed in order to better - disambiguate journal-based and snapshot-based mirroring. -* The list-watchers C++ API (`Image::list_watchers`) now clears the passed - `std::list` before appending to it. This aligns with the semantics of the C - API (``rbd_watchers_list``). -* Trailing newline in passphrase files (for example: the - ``<passphrase-file>`` argument of the ``rbd encryption format`` command and - the ``--encryption-passphrase-file`` option of other commands) is no longer - stripped. -* Support for layered client-side encryption has been added. It is now - possible to encrypt cloned images with a distinct encryption format and - passphrase, differing from that of the parent image and from that of every - other cloned image. The efficient copy-on-write semantics intrinsic to - unformatted (regular) cloned images have been retained. - -RGW -~~~ - -* Bucket resharding is now supported for multi-site configurations. This - feature is enabled by default for new deployments. Existing deployments must - enable the ``resharding`` feature manually after all zones have upgraded. - See https://docs.ceph.com/en/reef/radosgw/multisite/#zone-features for - details. -* The RGW policy parser now rejects unknown principals by default. If you are - mirroring policies between RGW and AWS, you might want to set - ``rgw_policy_reject_invalid_principals`` to ``false``. This change affects - only newly set policies, not policies that are already in place. -* RGW's default backend for ``rgw_enable_ops_log`` has changed from ``RADOS`` - to ``file``. The default value of ``rgw_ops_log_rados`` is now ``false``, and - ``rgw_ops_log_file_path`` now defaults to - ``/var/log/ceph/ops-log-$cluster-$name.log``. -* RGW's pubsub interface now returns boolean fields using ``bool``. Before this - change, ``/topics/<topic-name>`` returned ``stored_secret`` and - ``persistent`` using a string of ``"true"`` or ``"false"`` that contains - enclosing quotation marks. After this change, these fields are returned - without enclosing quotation marks so that the fields can be decoded as - boolean values in JSON. The same is true of the ``is_truncated`` field - returned by ``/subscriptions/<sub-name>``. -* RGW's response of ``Action=GetTopicAttributes&TopicArn=<topic-arn>`` REST - API now returns ``HasStoredSecret`` and ``Persistent`` as boolean in the JSON - string that is encoded in ``Attributes/EndPoint``. -* All boolean fields that were previously rendered as strings by the - ``rgw-admin`` command when the JSON format was used are now rendered as - boolean. If your scripts and tools rely on this behavior, update them - accordingly. The following is a list of the field names impacted by this - change: - - * ``absolute`` - * ``add`` - * ``admin`` - * ``appendable`` - * ``bucket_key_enabled`` - * ``delete_marker`` - * ``exists`` - * ``has_bucket_info`` - * ``high_precision_time`` - * ``index`` - * ``is_master`` - * ``is_prefix`` - * ``is_truncated`` - * ``linked`` - * ``log_meta`` - * ``log_op`` - * ``pending_removal`` - * ``read_only`` - * ``retain_head_object`` - * ``rule_exist`` - * ``start_with_full_sync`` - * ``sync_from_all`` - * ``syncstopped`` - * ``system`` - * ``truncated`` - * ``user_stats_sync`` -* The Beast front end's HTTP access log line now uses a new - ``debug_rgw_access`` configurable. It has the same defaults as - ``debug_rgw``, but it can be controlled independently. -* The pubsub functionality for storing bucket notifications inside Ceph - has been removed. As a result, the pubsub zone should not be used anymore. - The following have also been removed: the REST operations, ``radosgw-admin`` - commands for manipulating subscriptions, fetching the notifications, and - acking the notifications. - - If the endpoint to which the notifications are sent is down or disconnected, - we recommend that you use persistent notifications to guarantee their - delivery. If the system that consumes the notifications has to pull them - (instead of the notifications being pushed to the system), use an external - message bus (for example, RabbitMQ or Kafka) for that purpose. -* The serialized format of notification and topics has changed. This means - that new and updated topics will be unreadable by old RGWs. We recommend - completing the RGW upgrades before creating or modifying any notification - topics. -* Compression is now supported for objects uploaded with Server-Side - Encryption. When both compression and encryption are enabled, compression is - applied before encryption. Earlier releases of multisite do not replicate - such objects correctly, so all zones must upgrade to Reef before enabling the - `compress-encrypted` zonegroup feature: see - https://docs.ceph.com/en/reef/radosgw/multisite/#zone-features and note the - security considerations. - -Telemetry -~~~~~~~~~ - -* Users who have opted in to telemetry can also opt in to - participate in a leaderboard in the telemetry public dashboards - (https://telemetry-public.ceph.com/). In addition, users are now able to - provide a description of their cluster that will appear publicly in the - leaderboard. For more details, see: - https://docs.ceph.com/en/reef/mgr/telemetry/#leaderboard. To see a sample - report, run ``ceph telemetry preview``. To opt in to telemetry, run ``ceph - telemetry on``. To opt in to the leaderboard, run ``ceph config set mgr - mgr/telemetry/leaderboard true``. To add a leaderboard description, run - ``ceph config set mgr mgr/telemetry/leaderboard_description ‘Cluster - description’`` (entering your own cluster description). - -Upgrading from Pacific or Quincy --------------------------------- - -Before starting, make sure your cluster is stable and healthy (no down or recovering OSDs). (This is optional, but recommended.) You can disable the autoscaler for all pools during the upgrade using the noautoscale flag. - - -.. note:: - - You can monitor the progress of your upgrade at each stage with the ``ceph versions`` command, which will tell you what ceph version(s) are running for each type of daemon. - -Upgrading cephadm clusters -~~~~~~~~~~~~~~~~~~~~~~~~~~ - -If your cluster is deployed with cephadm (first introduced in Octopus), then the upgrade process is entirely automated. To initiate the upgrade, - - .. prompt:: bash # - - ceph orch upgrade start --image quay.io/ceph/ceph:v18.2.0 - -The same process is used to upgrade to future minor releases. - -Upgrade progress can be monitored with - - .. prompt:: bash # - - ceph orch upgrade status - -Upgrade progress can also be monitored with `ceph -s` (which provides a simple progress bar) or more verbosely with - - .. prompt:: bash # - - ceph -W cephadm - -The upgrade can be paused or resumed with - - .. prompt:: bash # - - ceph orch upgrade pause # to pause - ceph orch upgrade resume # to resume - -or canceled with - -.. prompt:: bash # - - ceph orch upgrade stop - -Note that canceling the upgrade simply stops the process; there is no ability to downgrade back to Pacific or Quincy. - -Upgrading non-cephadm clusters -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. note:: - - 1. If your cluster is running Pacific (16.2.x) or later, you might choose to first convert it to use cephadm so that the upgrade to Reef is automated (see above). - For more information, see https://docs.ceph.com/en/reef/cephadm/adoption/. - - 2. If your cluster is running Pacific (16.2.x) or later, systemd unit file names have changed to include the cluster fsid. To find the correct systemd unit file name for your cluster, run following command: - - ``` - systemctl -l | grep <daemon type> - ``` - - Example: - - ``` - $ systemctl -l | grep mon | grep active - ceph-6ce0347c-314a-11ee-9b52-000af7995d6c@mon.f28-h21-000-r630.service loaded active running Ceph mon.f28-h21-000-r630 for 6ce0347c-314a-11ee-9b52-000af7995d6c - ``` - -#. Set the `noout` flag for the duration of the upgrade. (Optional, but recommended.) - - .. prompt:: bash # - - ceph osd set noout - -#. Upgrade monitors by installing the new packages and restarting the monitor daemons. For example, on each monitor host - - .. prompt:: bash # - - systemctl restart ceph-mon.target - - Once all monitors are up, verify that the monitor upgrade is complete by looking for the `reef` string in the mon map. The command - - .. prompt:: bash # - - ceph mon dump | grep min_mon_release - - should report: - - .. prompt:: bash # - - min_mon_release 18 (reef) - - If it does not, that implies that one or more monitors hasn't been upgraded and restarted and/or the quorum does not include all monitors. - -#. Upgrade `ceph-mgr` daemons by installing the new packages and restarting all manager daemons. For example, on each manager host, - - .. prompt:: bash # - - systemctl restart ceph-mgr.target - - Verify the `ceph-mgr` daemons are running by checking `ceph -s`: - - .. prompt:: bash # - - ceph -s - - :: - - ... - services: - mon: 3 daemons, quorum foo,bar,baz - mgr: foo(active), standbys: bar, baz - ... - -#. Upgrade all OSDs by installing the new packages and restarting the ceph-osd daemons on all OSD hosts - - .. prompt:: bash # - - systemctl restart ceph-osd.target - -#. Upgrade all CephFS MDS daemons. For each CephFS file system, - - #. Disable standby_replay: - - .. prompt:: bash # - - ceph fs set <fs_name> allow_standby_replay false - - #. If upgrading from Pacific <=16.2.5: - - .. prompt:: bash # - - ceph config set mon mon_mds_skip_sanity true - - #. Reduce the number of ranks to 1. (Make note of the original number of MDS daemons first if you plan to restore it later.) - - .. prompt:: bash # - - ceph status # ceph fs set <fs_name> max_mds 1 - - #. Wait for the cluster to deactivate any non-zero ranks by periodically checking the status - - .. prompt:: bash # - - ceph status - - #. Take all standby MDS daemons offline on the appropriate hosts with - - .. prompt:: bash # - - systemctl stop ceph-mds@<daemon_name> - - #. Confirm that only one MDS is online and is rank 0 for your FS - - .. prompt:: bash # - - ceph status - - #. Upgrade the last remaining MDS daemon by installing the new packages and restarting the daemon - - .. prompt:: bash # - - systemctl restart ceph-mds.target - - #. Restart all standby MDS daemons that were taken offline - - .. prompt:: bash # - - systemctl start ceph-mds.target - - #. Restore the original value of `max_mds` for the volume - - .. prompt:: bash # - - ceph fs set <fs_name> max_mds <original_max_mds> - - #. If upgrading from Pacific <=16.2.5 (followup to step 5.2): - - .. prompt:: bash # - - ceph config set mon mon_mds_skip_sanity false - -#. Upgrade all radosgw daemons by upgrading packages and restarting daemons on all hosts - - .. prompt:: bash # - - systemctl restart ceph-radosgw.target - -#. Complete the upgrade by disallowing pre-Reef OSDs and enabling all new Reef-only functionality - - .. prompt:: bash # - - ceph osd require-osd-release reef - -#. If you set `noout` at the beginning, be sure to clear it with - - .. prompt:: bash # - - ceph osd unset noout - -#. Consider transitioning your cluster to use the cephadm deployment and orchestration framework to simplify cluster management and future upgrades. For more information on converting an existing cluster to cephadm, see https://docs.ceph.com/en/reef/cephadm/adoption/. - -Post-upgrade -~~~~~~~~~~~~ - -#. Verify the cluster is healthy with `ceph health`. If your cluster is running Filestore, and you are upgrading directly from Pacific to Reef, a deprecation warning is expected. This warning can be temporarily muted using the following command - - .. prompt:: bash # - - ceph health mute OSD_FILESTORE - -#. Consider enabling the `telemetry module <https://docs.ceph.com/en/reef/mgr/telemetry/>`_ to send anonymized usage statistics and crash information to the Ceph upstream developers. To see what would be reported (without actually sending any information to anyone), - - .. prompt:: bash # - - ceph telemetry preview-all - - If you are comfortable with the data that is reported, you can opt-in to automatically report the high-level cluster metadata with - - .. prompt:: bash # - - ceph telemetry on - - The public dashboard that aggregates Ceph telemetry can be found at https://telemetry-public.ceph.com/. - -Upgrading from pre-Pacific releases (like Octopus) -__________________________________________________ - -You **must** first upgrade to Pacific (16.2.z) or Quincy (17.2.z) before upgrading to Reef. diff --git a/doc/start/documenting-ceph.rst b/doc/start/documenting-ceph.rst index 02d4dccc4..fef870f00 100644 --- a/doc/start/documenting-ceph.rst +++ b/doc/start/documenting-ceph.rst @@ -5,7 +5,7 @@ ================== You can help the Ceph project by contributing to the documentation. Even -small contributions help the Ceph project. +small contributions help the Ceph project. The easiest way to suggest a correction to the documentation is to send an email to `ceph-users@ceph.io`. Include the string "ATTN: DOCS" or @@ -27,18 +27,18 @@ Location of the Documentation in the Repository =============================================== The Ceph documentation source is in the ``ceph/doc`` directory of the Ceph -repository. Python Sphinx renders the source into HTML and manpages. +repository. Python Sphinx renders the source into HTML and manpages. Viewing Old Ceph Documentation ============================== -The https://docs.ceph.com link displays the latest release branch by default -(for example, if "Quincy" is the most recent release, then by default -https://docs.ceph.com displays the documentation for Quincy), but you can view -the documentation for older versions of Ceph (for example, ``pacific``) by -replacing the version name in the url (for example, ``quincy`` in -`https://docs.ceph.com/en/pacific <https://docs.ceph.com/en/quincy>`_) with the -branch name you prefer (for example, ``pacific``, to create a URL that reads -`https://docs.ceph.com/en/pacific/ <https://docs.ceph.com/en/pacific/>`_). +The https://docs.ceph.com link displays the documentation for the latest +release by default (for example, if "Reef" is the most recent release, then by +default https://docs.ceph.com displays the documentation for Reef), but you can +view the documentation for older releases of Ceph (for example, ``quincy``) by +replacing the release name in the url (for example, ``reef`` in +`https://docs.ceph.com/en/reef/ <https://docs.ceph.com/en/reef>`_) with the +branch name you prefer (for example, ``quincy``, to create a URL that reads +`https://docs.ceph.com/en/pacific/ <https://docs.ceph.com/en/quincy/>`_). .. _making_contributions: @@ -113,27 +113,27 @@ this, you must: The Ceph documentation is organized by component: -- **Ceph Storage Cluster:** The Ceph Storage Cluster documentation is +- **Ceph Storage Cluster:** The Ceph Storage Cluster documentation is in the ``doc/rados`` directory. - -- **Ceph Block Device:** The Ceph Block Device documentation is in + +- **Ceph Block Device:** The Ceph Block Device documentation is in the ``doc/rbd`` directory. - -- **Ceph Object Storage:** The Ceph Object Storage documentation is in + +- **Ceph Object Storage:** The Ceph Object Storage documentation is in the ``doc/radosgw`` directory. -- **Ceph File System:** The Ceph File System documentation is in the +- **Ceph File System:** The Ceph File System documentation is in the ``doc/cephfs`` directory. - + - **Installation (Quick):** Quick start documentation is in the ``doc/start`` directory. - + - **Installation (Manual):** Documentaton concerning the manual installation of Ceph is in the ``doc/install`` directory. - + - **Manpage:** Manpage source is in the ``doc/man`` directory. -- **Developer:** Developer documentation is in the ``doc/dev`` +- **Developer:** Developer documentation is in the ``doc/dev`` directory. - **Images:** Images including JPEG and PNG files are stored in the @@ -152,7 +152,7 @@ are in the current release. ``main`` is the most commonly used branch. : git checkout main -When you make changes to documentation that affect an upcoming release, use +When you make changes to documentation that affect an upcoming release, use the ``next`` branch. ``next`` is the second most commonly used branch. : .. prompt:: bash $ @@ -206,8 +206,8 @@ or a table of contents entry. The ``index.rst`` file of a top-level directory usually contains a TOC, where you can add the new file name. All documents must have a title. See `Headings`_ for details. -Your new document doesn't get tracked by ``git`` automatically. When you want -to add the document to the repository, you must use ``git add +Your new document doesn't get tracked by ``git`` automatically. When you want +to add the document to the repository, you must use ``git add {path-to-filename}``. For example, from the top level directory of the repository, adding an ``example.rst`` file to the ``rados`` subdirectory would look like this: @@ -307,6 +307,7 @@ the following packages are required: - graphviz - ant - ditaa +- cython3 .. raw:: html @@ -354,7 +355,7 @@ distributions, execute the following: .. prompt:: bash $ sudo apt-get install gcc python-dev python3-pip libxml2-dev libxslt-dev doxygen graphviz ant ditaa - sudo apt-get install python3-sphinx python3-venv + sudo apt-get install python3-sphinx python3-venv cython3 For Fedora distributions, execute the following: @@ -436,39 +437,39 @@ Ceph documentation commits are simple, but follow a strict convention: - A commit MUST have a comment. - A commit comment MUST be prepended with ``doc:``. (strict) - The comment summary MUST be one line only. (strict) -- Additional comments MAY follow a blank line after the summary, +- Additional comments MAY follow a blank line after the summary, but should be terse. - A commit MAY include ``Fixes: https://tracker.ceph.com/issues/{bug number}``. - Commits MUST include ``Signed-off-by: Firstname Lastname <email>``. (strict) -.. tip:: Follow the foregoing convention particularly where it says - ``(strict)`` or you will be asked to modify your commit to comply with +.. tip:: Follow the foregoing convention particularly where it says + ``(strict)`` or you will be asked to modify your commit to comply with this convention. -The following is a common commit comment (preferred):: +The following is a common commit comment (preferred):: doc: Fixes a spelling error and a broken hyperlink. - + Signed-off-by: John Doe <john.doe@gmail.com> -The following comment includes a reference to a bug. :: +The following comment includes a reference to a bug. :: doc: Fixes a spelling error and a broken hyperlink. Fixes: https://tracker.ceph.com/issues/1234 - + Signed-off-by: John Doe <john.doe@gmail.com> The following comment includes a terse sentence following the comment summary. -There is a carriage return between the summary line and the description:: +There is a carriage return between the summary line and the description:: doc: Added mon setting to monitor config reference - + Describes 'mon setting', which is a new setting added to config_opts.h. - + Signed-off-by: John Doe <john.doe@gmail.com> @@ -477,7 +478,7 @@ To commit changes, execute the following: .. prompt:: bash $ git commit -a - + An easy way to manage your documentation commits is to use visual tools for ``git``. For example, ``gitk`` provides a graphical interface for viewing the @@ -504,7 +505,7 @@ Then, execute: cd {git-ceph-repo-path} gitk - + Finally, select **File->Start git gui** to activate the graphical user interface. @@ -546,15 +547,15 @@ commits will be squashed into a single commit. #. Make the commits that you will later squash. #. Make the first commit. - + :: - + doc/glossary: improve "CephX" entry - + Improve the glossary entry for "CephX". - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # @@ -562,18 +563,18 @@ commits will be squashed into a single commit. # Changes to be committed: # modified: glossary.rst # - + #. Make the second commit. - + :: - + doc/glossary: add link to architecture doc - + Add a link to a section in the architecture document, which link will be used in the process of improving the "CephX" glossary entry. - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # @@ -582,18 +583,18 @@ commits will be squashed into a single commit. # # Changes to be committed: # modified: architecture.rst - + #. Make the third commit. - + :: - + doc/glossary: link to Arch doc in "CephX" glossary - + Link to the Architecture document from the "CephX" entry in the Glossary. - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # @@ -604,24 +605,24 @@ commits will be squashed into a single commit. # modified: glossary.rst #. There are now three commits in the feature branch. We will now begin the - process of squashing them into a single commit. - - #. Run the command ``git rebase -i main``, which rebases the current branch + process of squashing them into a single commit. + + #. Run the command ``git rebase -i main``, which rebases the current branch (the feature branch) against the ``main`` branch: .. prompt:: bash - + git rebase -i main - + #. A list of the commits that have been made to the feature branch now appear, and looks like this: :: - + pick d395e500883 doc/glossary: improve "CephX" entry pick b34986e2922 doc/glossary: add link to architecture doc pick 74d0719735c doc/glossary: link to Arch doc in "CephX" glossary - + # Rebase 0793495b9d1..74d0719735c onto 0793495b9d1 (3 commands) # # Commands: @@ -650,7 +651,7 @@ commits will be squashed into a single commit. # # If you remove a line here THAT COMMIT WILL BE LOST. - Find the part of the screen that says "pick". This is the part that you will + Find the part of the screen that says "pick". This is the part that you will alter. There are three commits that are currently labeled "pick". We will choose one of them to remain labeled "pick", and we will label the other two commits "squash". @@ -662,7 +663,7 @@ commits will be squashed into a single commit. pick d395e500883 doc/glossary: improve "CephX" entry squash b34986e2922 doc/glossary: add link to architecture doc squash 74d0719735c doc/glossary: link to Arch doc in "CephX" glossary - + # Rebase 0793495b9d1..74d0719735c onto 0793495b9d1 (3 commands) # # Commands: @@ -699,34 +700,34 @@ commits will be squashed into a single commit. like this: :: - + # This is a combination of 3 commits. # This is the 1st commit message: - + doc/glossary: improve "CephX" entry - + Improve the glossary entry for "CephX". - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # This is the commit message #2: - + doc/glossary: add link to architecture doc - + Add a link to a section in the architecture document, which link will be used in the process of improving the "CephX" glossary entry. - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # This is the commit message #3: - + doc/glossary: link to Arch doc in "CephX" glossary - + Link to the Architecture document from the "CephX" entry in the Glossary. - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # @@ -742,17 +743,17 @@ commits will be squashed into a single commit. # Changes to be committed: # modified: doc/architecture.rst # modified: doc/glossary.rst - - #. The commit messages have been revised into the simpler form presented here: - + + #. The commit messages have been revised into the simpler form presented here: + :: - + doc/glossary: improve "CephX" entry - + Improve the glossary entry for "CephX". - + Signed-off-by: Zac Dover <zac.dover@proton.me> - + # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # @@ -771,13 +772,13 @@ commits will be squashed into a single commit. #. Force push the squashed commit from your local working copy to the remote upstream branch. The force push is necessary because the newly squashed commit - does not have an ancestor in the remote. If that confuses you, just run this + does not have an ancestor in the remote. If that confuses you, just run this command and don't think too much about it: - .. prompt:: bash $ + .. prompt:: bash $ git push -f - + :: Enumerating objects: 9, done. @@ -821,17 +822,17 @@ Review the following style guides to maintain this consistency. Headings -------- -#. **Document Titles:** Document titles use the ``=`` character overline and - underline with a leading and trailing space on the title text line. +#. **Document Titles:** Document titles use the ``=`` character overline and + underline with a leading and trailing space on the title text line. See `Document Title`_ for details. #. **Section Titles:** Section tiles use the ``=`` character underline with no - leading or trailing spaces for text. Two carriage returns should precede a + leading or trailing spaces for text. Two carriage returns should precede a section title (unless an inline reference precedes it). See `Sections`_ for details. -#. **Subsection Titles:** Subsection titles use the ``_`` character underline - with no leading or trailing spaces for text. Two carriage returns should +#. **Subsection Titles:** Subsection titles use the ``_`` character underline + with no leading or trailing spaces for text. Two carriage returns should precede a subsection title (unless an inline reference precedes it). @@ -843,18 +844,18 @@ a command line interface without leading or trailing white space. Where possible, we prefer to maintain this convention with text, lists, literal text (exceptions allowed), tables, and ``ditaa`` graphics. -#. **Paragraphs**: Paragraphs have a leading and a trailing carriage return, - and should be 80 characters wide or less so that the documentation can be +#. **Paragraphs**: Paragraphs have a leading and a trailing carriage return, + and should be 80 characters wide or less so that the documentation can be read in native format in a command line terminal. #. **Literal Text:** To create an example of literal text (e.g., command line usage), terminate the preceding paragraph with ``::`` or enter a carriage return to create an empty line after the preceding paragraph; then, enter ``::`` on a separate line followed by another empty line. Then, begin the - literal text with tab indentation (preferred) or space indentation of 3 + literal text with tab indentation (preferred) or space indentation of 3 characters. -#. **Indented Text:** Indented text such as bullet points +#. **Indented Text:** Indented text such as bullet points (e.g., ``- some text``) may span multiple lines. The text of subsequent lines should begin at the same character position as the text of the indented text (less numbers, bullets, etc.). @@ -867,13 +868,13 @@ possible, we prefer to maintain this convention with text, lists, literal text #. **Numbered Lists:** Numbered lists should use autonumbering by starting a numbered indent with ``#.`` instead of the actual number so that - numbered paragraphs can be repositioned without requiring manual + numbered paragraphs can be repositioned without requiring manual renumbering. -#. **Code Examples:** Ceph supports the use of the - ``.. code-block::<language>`` role, so that you can add highlighting to - source examples. This is preferred for source code. However, use of this - tag will cause autonumbering to restart at 1 if it is used as an example +#. **Code Examples:** Ceph supports the use of the + ``.. code-block::<language>`` role, so that you can add highlighting to + source examples. This is preferred for source code. However, use of this + tag will cause autonumbering to restart at 1 if it is used as an example within a numbered list. See `Showing code examples`_ for details. @@ -894,12 +895,12 @@ The Ceph project uses `paragraph level markup`_ to highlight points. #. **Version Added:** Use the ``.. versionadded::`` directive for new features or configuration settings so that users know the minimum release for using a feature. - + #. **Version Changed:** Use the ``.. versionchanged::`` directive for changes in usage or configuration settings. -#. **Deprecated:** Use the ``.. deprecated::`` directive when CLI usage, - a feature or a configuration setting is no longer preferred or will be +#. **Deprecated:** Use the ``.. deprecated::`` directive when CLI usage, + a feature or a configuration setting is no longer preferred or will be discontinued. #. **Topic:** Use the ``.. topic::`` directive to encapsulate text that is @@ -917,7 +918,7 @@ Every document (every ``.rst`` file) in the Sphinx-controlled Ceph documentation suite must be linked either (1) from another document in the documentation suite or (2) from a table of contents (TOC). If any document in the documentation suite is not linked in this way, the ``build-doc`` script -generates warnings when it tries to build the documentation. +generates warnings when it tries to build the documentation. The Ceph project uses the ``.. toctree::`` directive. See `The TOC tree`_ for details. When rendering a table of contents (TOC), specify the ``:maxdepth:`` @@ -943,16 +944,16 @@ to refer explicitly to the title of the section being linked to. For example, RST that links to the Sphinx Python Document Generator homepage and generates a sentence reading "Click here to learn more about Python -Sphinx." looks like this: +Sphinx." looks like this: :: ``Click `here <https://www.sphinx-doc.org>`_ to learn more about Python - Sphinx.`` + Sphinx.`` And here it is, rendered: -Click `here <https://www.sphinx-doc.org>`_ to learn more about Python Sphinx. +Click `here <https://www.sphinx-doc.org>`_ to learn more about Python Sphinx. Pay special attention to the underscore after the backtick. If you forget to include it and this is your first day working with RST, there's a chance that @@ -998,8 +999,8 @@ addresses external to the Ceph documentation: `inline text <http:www.foo.com>`_ .. note:: Do not fail to include the space between the inline text and the - less-than sign. - + less-than sign. + Do not fail to include the underscore after the final backtick. To link to addresses that are external to the Ceph documentation, include a @@ -1041,7 +1042,7 @@ Link to target with inline text:: :ref:`inline text<target>` -.. note:: +.. note:: There is no space between "inline text" and the angle bracket that immediately follows it. This is precisely the opposite of :ref:`the @@ -1053,7 +1054,7 @@ Escaping Bold Characters within Words ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This section explains how to make certain letters within a word bold while -leaving the other letters in the word regular (non-bold). +leaving the other letters in the word regular (non-bold). The following single-line paragraph provides an example of this: diff --git a/doc/start/get-involved.rst b/doc/start/get-involved.rst index 4f5277e37..4acc57b8c 100644 --- a/doc/start/get-involved.rst +++ b/doc/start/get-involved.rst @@ -32,6 +32,10 @@ These are exciting times in the Ceph community! Get involved! | | ``#ceph-devel``, ``#ceph-dashboard`` and | ``#cephfs`` | | | ``#cephfs`` dedicated for Ceph developers. | | +----------------------+-------------------------------------------------+-----------------------------------------------+ +| **Slack** | Since 2023, the Upstream Ceph community has | | +| | maintained a community in Slack. Ask your Ceph- | - `Ceph Slack Invite`_ | +| | related questions in Ceph's Slack channels. | | ++----------------------+-------------------------------------------------+-----------------------------------------------+ | **User List** | Ask and answer user-related questions by | | | | subscribing to the email list at | - `User Subscribe`_ | | | ceph-users@ceph.io. You can opt out of the email| - `User Unsubscribe`_ | @@ -96,4 +100,4 @@ These are exciting times in the Ceph community! Get involved! .. _Blog: http://ceph.com/community/blog/ .. _Tracker: http://tracker.ceph.com/ .. _Ceph Source Code: http://github.com/ceph/ceph - +.. _Ceph Slack Invite: https://ceph-storage.slack.com/join/shared_invite/zt-2b91em8b6-NQOKhGYReEIrE28OVncnLQ#/shared-invite/email diff --git a/doc/start/hardware-recommendations.rst b/doc/start/hardware-recommendations.rst index a63b5a457..76dce7801 100644 --- a/doc/start/hardware-recommendations.rst +++ b/doc/start/hardware-recommendations.rst @@ -5,17 +5,17 @@ ========================== Ceph is designed to run on commodity hardware, which makes building and -maintaining petabyte-scale data clusters flexible and economically feasible. -When planning your cluster's hardware, you will need to balance a number +maintaining petabyte-scale data clusters flexible and economically feasible. +When planning your cluster's hardware, you will need to balance a number of considerations, including failure domains, cost, and performance. -Hardware planning should include distributing Ceph daemons and -other processes that use Ceph across many hosts. Generally, we recommend -running Ceph daemons of a specific type on a host configured for that type -of daemon. We recommend using separate hosts for processes that utilize your -data cluster (e.g., OpenStack, CloudStack, Kubernetes, etc). +Hardware planning should include distributing Ceph daemons and +other processes that use Ceph across many hosts. Generally, we recommend +running Ceph daemons of a specific type on a host configured for that type +of daemon. We recommend using separate hosts for processes that utilize your +data cluster (e.g., OpenStack, OpenNebula, CloudStack, Kubernetes, etc). The requirements of one Ceph cluster are not the same as the requirements of -another, but below are some general guidelines. +another, but below are some general guidelines. .. tip:: check out the `ceph blog`_ too. @@ -106,7 +106,7 @@ that the OSD attempts to consume by changing the :confval:`osd_memory_target` configuration option. - Setting the :confval:`osd_memory_target` below 2GB is not - recommended. Ceph may fail to keep the memory consumption under 2GB and + recommended. Ceph may fail to keep the memory consumption under 2GB and extremely slow performance is likely. - Setting the memory target between 2GB and 4GB typically works but may result @@ -118,7 +118,7 @@ configuration option. OSD performance. - Setting the :confval:`osd_memory_target` higher than 4GB can improve - performance when there many (small) objects or when large (256GB/OSD + performance when there many (small) objects or when large (256GB/OSD or more) data sets are processed. This is especially true with fast NVMe OSDs. @@ -130,7 +130,7 @@ configuration option. fragmented huge pages. Modern versions of Ceph disable transparent huge pages at the application level to avoid this, but that does not guarantee that the kernel will immediately reclaim unmapped memory. The OSD - may still at times exceed its memory target. We recommend budgeting + may still at times exceed its memory target. We recommend budgeting at least 20% extra memory on your system to prevent OSDs from going OOM (**O**\ut **O**\f **M**\emory) during temporary spikes or due to delay in the kernel reclaiming freed pages. That 20% value might be more or less than @@ -193,11 +193,11 @@ per gigabyte (i.e., $150 / 3072 = 0.0488). In the foregoing example, using the .. tip:: Hosting multiple OSDs on a single SAS / SATA HDD is **NOT** a good idea. -.. tip:: Hosting an OSD with monitor, manager, or MDS data on a single +.. tip:: Hosting an OSD with monitor, manager, or MDS data on a single drive is also **NOT** a good idea. .. tip:: With spinning disks, the SATA and SAS interface increasingly - becomes a bottleneck at larger capacities. See also the `Storage Networking + becomes a bottleneck at larger capacities. See also the `Storage Networking Industry Association's Total Cost of Ownership calculator`_. @@ -210,7 +210,7 @@ Many "slow OSD" issues (when they are not attributable to hardware failure) arise from running an operating system and multiple OSDs on the same drive. Also be aware that today's 22TB HDD uses the same SATA interface as a 3TB HDD from ten years ago: more than seven times the data to squeeze -through the same same interface. For this reason, when using HDDs for +through the same interface. For this reason, when using HDDs for OSDs, drives larger than 8TB may be best suited for storage of large files / objects that are not at all performance-sensitive. @@ -219,7 +219,7 @@ Solid State Drives ------------------ Ceph performance is much improved when using solid-state drives (SSDs). This -reduces random access time and reduces latency while increasing throughput. +reduces random access time and reduces latency while increasing throughput. SSDs cost more per gigabyte than do HDDs but SSDs often offer access times that are, at a minimum, 100 times faster than HDDs. @@ -236,10 +236,10 @@ to many of the limitations of HDDs. SSDs do have significant limitations though. When evaluating SSDs, it is important to consider the performance of sequential and random reads and writes. -.. important:: We recommend exploring the use of SSDs to improve performance. +.. important:: We recommend exploring the use of SSDs to improve performance. However, before making a significant investment in SSDs, we **strongly recommend** reviewing the performance metrics of an SSD and testing the - SSD in a test configuration in order to gauge performance. + SSD in a test configuration in order to gauge performance. Relatively inexpensive SSDs may appeal to your sense of economy. Use caution. Acceptable IOPS are not the only factor to consider when selecting SSDs for @@ -249,7 +249,7 @@ once a limited cache is filled declines considerably. Consider also durability: a drive rated for 0.3 Drive Writes Per Day (DWPD or equivalent) may be fine for OSDs dedicated to certain types of sequentially-written read-mostly data, but are not a good choice for Ceph Monitor duty. Enterprise-class SSDs are best -for Ceph: they almost always feature power less protection (PLP) and do +for Ceph: they almost always feature power loss protection (PLP) and do not suffer the dramatic cliffing that client (desktop) models may experience. When using a single (or mirrored pair) SSD for both operating system boot @@ -262,7 +262,7 @@ enterprise-class drives are best for production use, as they feature power loss protection and increased durability compared to client (desktop) SKUs that are intended for much lighter and intermittent duty cycles. -SSDs were historically been cost prohibitive for object storage, but +SSDs have historically been cost prohibitive for object storage, but QLC SSDs are closing the gap, offering greater density with lower power consumption and less power spent on cooling. Also, HDD OSDs may see a significant write latency improvement by offloading WAL+DB onto an SSD. @@ -317,7 +317,7 @@ An HBA-free system may also cost hundreds of US dollars less every year if one purchases an annual maintenance contract or extended warranty. .. tip:: The `Ceph blog`_ is often an excellent source of information on Ceph - performance issues. See `Ceph Write Throughput 1`_ and `Ceph Write + performance issues. See `Ceph Write Throughput 1`_ and `Ceph Write Throughput 2`_ for additional details. @@ -490,7 +490,7 @@ The faster that a placement group (PG) can recover from a degraded state to an ``active + clean`` state, the better. Notably, fast recovery minimizes the likelihood of multiple, overlapping failures that can cause data to become temporarily unavailable or even lost. Of course, when provisioning your -network, you will have to balance price against performance. +network, you will have to balance price against performance. Some deployment tools employ VLANs to make hardware and network cabling more manageable. VLANs that use the 802.1q protocol require VLAN-capable NICs and @@ -520,7 +520,7 @@ carefully consider before deploying a large scale data cluster. Additionally BMCs as of 2023 rarely sport network connections faster than 1 Gb/s, so dedicated and inexpensive 1 Gb/s switches for BMC administrative traffic may reduce costs by wasting fewer expenive ports on faster host switches. - + Failure Domains =============== diff --git a/doc/start/intro.rst b/doc/start/intro.rst index 3a50a8733..390f1b2d8 100644 --- a/doc/start/intro.rst +++ b/doc/start/intro.rst @@ -9,10 +9,10 @@ System`. All :term:`Ceph Storage Cluster` deployments begin with setting up each :term:`Ceph Node` and then setting up the network. A Ceph Storage Cluster requires the following: at least one Ceph Monitor and at -least one Ceph Manager, and at least as many Ceph OSDs as there are copies of -an object stored on the Ceph cluster (for example, if three copies of a given -object are stored on the Ceph cluster, then at least three OSDs must exist in -that Ceph cluster). +least one Ceph Manager, and at least as many :term:`Ceph Object Storage +Daemon<Ceph OSD>`\s (OSDs) as there are copies of a given object stored in the +Ceph cluster (for example, if three copies of a given object are stored in the +Ceph cluster, then at least three OSDs must exist in that Ceph cluster). The Ceph Metadata Server is necessary to run Ceph File System clients. @@ -27,13 +27,13 @@ The Ceph Metadata Server is necessary to run Ceph File System clients. | OSDs | | Monitors | | Managers | | MDSs | +---------------+ +------------+ +------------+ +---------------+ -- **Monitors**: A :term:`Ceph Monitor` (``ceph-mon``) maintains maps - of the cluster state, including the monitor map, manager map, the - OSD map, the MDS map, and the CRUSH map. These maps are critical - cluster state required for Ceph daemons to coordinate with each other. - Monitors are also responsible for managing authentication between - daemons and clients. At least three monitors are normally required - for redundancy and high availability. +- **Monitors**: A :term:`Ceph Monitor` (``ceph-mon``) maintains maps of the + cluster state, including the :ref:`monitor map<display-mon-map>`, manager + map, the OSD map, the MDS map, and the CRUSH map. These maps are critical + cluster state required for Ceph daemons to coordinate with each other. + Monitors are also responsible for managing authentication between daemons and + clients. At least three monitors are normally required for redundancy and + high availability. - **Managers**: A :term:`Ceph Manager` daemon (``ceph-mgr``) is responsible for keeping track of runtime metrics and the current @@ -51,12 +51,10 @@ The Ceph Metadata Server is necessary to run Ceph File System clients. heartbeat. At least three Ceph OSDs are normally required for redundancy and high availability. -- **MDSs**: A :term:`Ceph Metadata Server` (MDS, ``ceph-mds``) stores - metadata on behalf of the :term:`Ceph File System` (i.e., Ceph Block - Devices and Ceph Object Storage do not use MDS). Ceph Metadata - Servers allow POSIX file system users to execute basic commands (like - ``ls``, ``find``, etc.) without placing an enormous burden on the - Ceph Storage Cluster. +- **MDSs**: A :term:`Ceph Metadata Server` (MDS, ``ceph-mds``) stores metadata + for the :term:`Ceph File System`. Ceph Metadata Servers allow CephFS users to + run basic commands (like ``ls``, ``find``, etc.) without placing a burden on + the Ceph Storage Cluster. Ceph stores data as objects within logical storage pools. Using the :term:`CRUSH` algorithm, Ceph calculates which placement group (PG) should |