Lustre Community Development in Progress: Difference between revisions

From OpenSFS Wiki
Jump to navigation Jump to search
mNo edit summary
 
(26 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Category:LWG]]
This content [http://wiki.lustre.org/Projects has moved] to the [http://wiki.lustre.org official Lustre wiki].
 
== Lustre Development Scope ==
 
For the Lustre development cycle, we are tracking all outstanding work for the release right in Jira.  We do so by adding a version string (e.g. "Lustre 2.6.0") to the "Fix Version/s" field of any ticket that we have scoped to be part of that release.  Jira uses the "Fix Version/s" field in a number of ways, including its built-in Road Map, Change Log, and of course Issues pages.
 
Thanks to use of this field, the Lustre project page in Jira will better reflect the state of development for the next Lustre release.  Here are some quick links:
 
* [https://jira.hpdd.intel.com/browse/Jira LU Lustre Project Page]
* [[Jira LU Keywords]]
* [https://jira.hpdd.intel.com/browse/LU/fixforversion/10595 Lustre 2.6.0 Jira Summary Page]
* [https://jira.hpdd.intel.com/issues/?jql=fixVersion%20%3D%20%22Lustre%202.6.0%22%20AND%20project%20%3D%20LU%20AND%20resolution%20%3D%20Unresolved%20ORDER%20BY%20priority%20DESC Lustre 2.6.0 Unresolved Issues]
 
The OpenSFS LWG provides the initial list of tickets scoped for a release.  General release info (scope, schedule, etc.) is tracked on per-version LWG pages:
* [[Lustre_2.6.0|Lustre 2.6]]
* [[Lustre_2.7.0|Lustre 2.7]]
 
Keep in mind that the list of work is not static.  As bugs are discovered, the list will grow.  When new Jira tickets are opened for Lustre bug on the master branch, Intel, as part of the work for the [[Community Tree Development Contract]], will make the initial determination of whether the ticket should be added to the scope for a release.
 
If a party feels like a ticket should be added to the Lustre version scope, but Intel did not make that initial determination, a request to have the version (e.g. "Lustre 2.6.0") added to the "Fix Version/s" field should be made in the Jira ticket itself.
 
Should Intel and the interested party disagree, the issue should be raised on [[Lustre Working Group]] [http://lists.opensfs.org/listinfo.cgi/lwg-opensfs.org mailing list] so that the issue can be discussed by the larger community and final determination made.
 
= List of features under development =
Features that are currently being developed for future Lustre releases in the Lustre community. These will be eligible for inclusion in future Lustre releases as per the defined processes. Features are not listed in priority or landing order.  Projects not currently under development, or ideas for features, should be listed on the Project Ideas page.
 
Please note that the targeted release information is provided by the developing organization for informational purposes only and is in no way a roadmap commitment until it appears on the [http://lustre.opensfs.org/community-lustre-roadmap/ Lustre Roadmap].
 
[[File:LustreRoadmap.png|640px|link=http://lustre.opensfs.org/community-lustre-roadmap]|Lustre Community Roadmap]]
 
{| class="wikitable sortable"
|-
! Feature !! Feature Summary !! Developer!! Tracker !! Targeted Release !! Landed Release
|-
| Patchless Server || Remove Lustre kernel patches to allow Lustre servers to be more easily ported to new kernels, and to be built against vendor kernels without changing the vendor kernel RPMs. || Intel || [https://jira.hpdd.intel.com/browse/LU-20 LU-20] || 2.7 || .
|-
| End-to-End Data Integrity with T10 || Add a path to pass T10 Protection Information from Lustre clients through to server disks to reduce CPU overhead of multiple checksum calculations. || Xyratex || [https://jira.hpdd.intel.com/browse/LU-2488 LU-2488] [https://jira.hpdd.intel.com/browse/LU-2584 LU-2584] || 2.9 || .
|-
| LFSCK Phase 3 - DNE consistency || Enhance LFSCK to work with DNE filesystems, including remote directory entries, and OST orphan handling for multiple MDTs. || Intel || [https://jira.hpdd.intel.com/browse/LU-2307 LU-2307] || 2.7 || .
|-
| DNE Phase IIb || Asynchronous Commit of cross-MDT updates for improved performance.  Remote rename and remote hard link functionality. || Intel || [https://jira.hpdd.intel.com/browse/LU-3534 LU-3534] || 2.7 || .
|-
| Layout Enhancement || Add support for multiple layouts on a single file, for File Level Replication, Data on MDT, extent-based layouts, etc. || Intel || [https://jira.hpdd.intel.com/browse/LU-3480 LU-3480] || 2.8 || .
|-
| File Level Replication Phase 1 || Solution Architecture and HDL, Exclusive Open, RAID 1 Layout, Layout Modification Method, Read Only RAID 1 || Intel || [https://jira.hpdd.intel.com/browse/LU-3254 LU-3254] || 2.9 || .
|-
| File Level Replication Phase 2 || Immediate asynchronous write from client. || Intel || [https://jira.hpdd.intel.com/browse/LU-3254 LU-3254] || 2.10 || .
|-
| Data on MDT || Allow small files to be stored directly on the MDT for reduced RPC count and improved performance. || Intel || . || 2.9 || .
|-
| Dynamic LNET Config || Introduces a user space script which will read routes from a config file and add those routes to LNET dynamically with the lctl utility. This allows the support of very large routing tables || Intel || [https://jira.hpdd.intel.com/browse/LU-2950 LU-2950] || 2.7 || .
|-
| Quota for Projects || Allow specifying a "project" or "subtree" identifier for files for accounting to a project, separate from UID/GID. || DDN || [https://jira.hpdd.intel.com/browse/LU-4017 LU-4017] || 2.8 || .
|-
| Large Bulk IO || Increase the OST bulk IO maximum size to 16MB or larger for more efficient disk IO submission. || Intel/DDN || . || 2.9 || .
|-
| Kerberos Revival || Fix up existing Kerberos code so it is tested working again. || Xyratex || . || 2.8 || .
|-
| UID/GID mapping || Map UID/GID for remote client nodes to local UID/GID on the MDS and OSS.  Allows a single Lustre filesystem to be shared across clients with administrative domains. || Indiana University || [https://jira.hpdd.intel.com/browse/LU-3527 LU-3527] || 2.7 || .
|-
| Shared Key Crypto || Allow node authentication and/or RPC encryption using symmetric shared key crypto with GSSAPI.  Avoids complexity in configuring Kerberos across multiple domains. || Indiana University || [https://jira.hpdd.intel.com/browse/LU-3289 LU-3289] || 2.9 || .
|-
| 3.6/FC18 Server Patches || . || ORNL/NRL/SuSE/EMC || [https://jira.hpdd.intel.com/browse/LU-1812 LU-1812] || 2.5 || 2.5
|-
| Extended Attribute Batching || Allow clients to fetch multiple xattrs in a single RPC for efficiency || Xyratex || [https://jira.hpdd.intel.com/browse/LU-549 LU-549] || 2.5 || 2.5
|-
| HSM || Hierarchical Storage Manager to allow Lustre to interface with external tape libraries and automatically and transparently store files from Lustre to an external archive and the reverse. || CEA || [https://jira.hpdd.intel.com/browse/LU-3608 LU-3608] || 2.5 || 2.5
|-
| Client in upstream kernel ||  Include Lustre client in vanilla kernel release. || EMC || . || 2.4 || Linux 3.11
|-
| Reduce ldlm_poold Execution Time || Reduce the overhead of the ldlm_poold thread that calculates which locks to expire on the client. || Intel || [https://jira.hpdd.intel.com/browse/LU-2924 LU-2924] || 2.5 || 2.5
|-
| LNET Router Priorities || Adds a parameter to route module parameters which sets a priority number for that route. Routes with the smallest priority number will be favored over ones with larger numbers || Intel || [https://jira.hpdd.intel.com/browse/LU-2934 LU-2934] || 2.5 || 2.5
|-
| Endianness Fixes || Fixes endian and byte-alignment issues in the Lustre codebase. Platforms under consideration for this project are x86 vs Sparc || Intel || [https://jira.hpdd.intel.com/browse/LU-3221 LU-3221] || 2.5/2.7 || 2.5/2.7
|-
| errno Translation Tables || Add addition of errno translations between architectures with different errno definitions || Intel ||  [https://jira.hpdd.intel.com/browse/LU-2743 LU-2743] || 2.5 || 2.5
|-
| Unified parameter syntax || Make conf_param and set_param syntax the same; add complete coverage || Xyratex || [https://jira.hpdd.intel.com/browse/LU-3155 LU-3155] || 2.5 || 2.5
|-
| client-server shared modules cleanup || Clean up Lustre client to facilitate pushing it into upstream Linux kernel. Need to split some server code dependencies from client to avoidmaking extensive server code changes || EMC || [https://jira.hpdd.intel.com/browse/LU-1214 LU-1214] [https://jira.hpdd.intel.com/browse/LU-1330 LU-1330] || 2.5 || 2.5/2.6
|-
| libcfs cleanup || clean up libcfs to use Linux kernel APIs || EMC || [https://jira.hpdd.intel.com/browse/LU-1346 LU-1346] || 2.5 || 2.5/2.6
|-
| LFSCK Phase 2 - MDT-OST consistency || Traverse all inodes in an MDT and verify their corresponding objects on the OSTs exist. || Intel || [https://jira.hpdd.intel.com/browse/LU-957 LU-957] || 2.5 || 2.6
|-
| DNE Phase IIa || Migration Tool, OUT Handler, OSP Object Cache, Simplify Commit || Intel || [https://jira.hpdd.intel.com/browse/LU-3531 LU-3531] || 2.6 || 2.6
|}

Latest revision as of 11:39, 8 April 2015

This content has moved to the official Lustre wiki.