Are any plans for an API that would allow ZFS commands including snapshot/rollback integrated with customer''s application? Thanks, Cherry
Cherry Shu wrote:> Are any plans for an API that would allow ZFS commands including > snapshot/rollback integrated with customer''s application? >libzfs.h? -- Ian.
Ian Collins wrote:> Cherry Shu wrote: >> Are any plans for an API that would allow ZFS commands including >> snapshot/rollback integrated with customer''s application? >> > libzfs.h?The API in there is Contracted Consolidation Private. Note that private does not mean hidden it means: Private A Private interface is an interface provided by a com- ponent (or product) intended only for the use of that component. A Private interface might still be visible to or accessible by other components. Because the use of interfaces private to another component carries great stability risks, such use is explicitly not supported. Components not supplied by Sun Microsystems should not use Private interfaces. Most Private interfaces are not documented. It is an exceptional case when a Private interface is documented. Reasons for documenting a Private interface include, but are not limited to, the intention that the interface might be reclassified to one of the public stability level classifications in the future or the fact that the interface is inordinately visible. That "not suppied by Sun Microsystems" should change to be not included as part of the OpenSolaris distribution. -- Darren J Moffat
On Tue, 2009-03-17 at 14:53 -0400, Cherry Shu wrote:> Are any plans for an API that would allow ZFS commands including > snapshot/rollback integrated with customer''s application?Sounds like you are looking for abstraction layering on top of integrated solution such as NexentaStor. Take a look on API it provides here: http://www.nexenta.com/nexentastor-api SA-API has bindings for C, C++, Perl, Python and Ruby. This documentation contains examples and samples to demonstrate SA-API applications in C, C++, Perl, Python and Ruby. You can develop and run SA-API applications on both Windows and Linux platforms.
Cherry Shu wrote:> Are any plans for an API that would allow ZFS commands including > snapshot/rollback integrated with customer''s application?This is trivially implemented with system(3c). It is somewhat more difficult with libzfs. So it really depends on how much work they want to do. -- richard
Darren J Moffat wrote:> Ian Collins wrote: >> Cherry Shu wrote: >>> Are any plans for an API that would allow ZFS commands including >>> snapshot/rollback integrated with customer''s application? >>> >> libzfs.h? > > The API in there is Contracted Consolidation Private. Note that > private does not mean hidden it means: > > Private > > A Private interface is an interface provided by a com- > ponent (or product) intended only for the use of that > component. A Private interface might still be visible to > or accessible by other components. Because the use of > interfaces private to another component carries great > stability risks, such use is explicitly not supported. > Components not supplied by Sun Microsystems should not > use Private interfaces. > > Most Private interfaces are not documented. It is an > exceptional case when a Private interface is documented. > Reasons for documenting a Private interface include, but > are not limited to, the intention that the interface > might be reclassified to one of the public stability > level classifications in the future or the fact that the > interface is inordinately visible. > > That "not suppied by Sun Microsystems" should change to be not > included as part of the OpenSolaris distribution. >Maybe I should complete my C++ abstraction layer and try to get it included as part of the OpenSolaris distribution? libzfs is too useful to keep hidden away. -- Ian.
Thank you all for replying my email! Will pass all the information to the customer. Thanks, Cherry Darren J Moffat wrote:> Ian Collins wrote: >> Cherry Shu wrote: >>> Are any plans for an API that would allow ZFS commands including >>> snapshot/rollback integrated with customer''s application? >>> >> libzfs.h? > > The API in there is Contracted Consolidation Private. Note that > private does not mean hidden it means: > > Private > > A Private interface is an interface provided by a com- > ponent (or product) intended only for the use of that > component. A Private interface might still be visible to > or accessible by other components. Because the use of > interfaces private to another component carries great > stability risks, such use is explicitly not supported. > Components not supplied by Sun Microsystems should not > use Private interfaces. > > Most Private interfaces are not documented. It is an > exceptional case when a Private interface is documented. > Reasons for documenting a Private interface include, but > are not limited to, the intention that the interface > might be reclassified to one of the public stability > level classifications in the future or the fact that the > interface is inordinately visible. > > That "not suppied by Sun Microsystems" should change to be not > included as part of the OpenSolaris distribution. >
Ian Collins wrote:> Darren J Moffat wrote: >> Ian Collins wrote: >>> Cherry Shu wrote: >>>> Are any plans for an API that would allow ZFS commands including >>>> snapshot/rollback integrated with customer''s application? >>>> >>> libzfs.h? >> >> The API in there is Contracted Consolidation Private. Note that >> private does not mean hidden it means:[snip]> Maybe I should complete my C++ abstraction layer and try to get it > included as part of the OpenSolaris distribution?Please not C++ that just brings up all the ABI issues on which compiler and which compiler version is in use. Feel free to prose the C++ API here for review though. -- Darren J Moffat