setting up sdk environment

154 views
Skip to first unread message

ritika bhalla

unread,
Aug 17, 2011, 7:11:51 AM8/17/11
to XAM Developers Group
In the XAM_SDK_GUIDE page 17 (chapter 4) it says to go to
java_interface and run ant deliverables.
the only contents i get in my java_interfaces folder are src and a xml
file. can you guide me how to go ahead so as to run the samples given

Rakesh Vende

unread,
Aug 18, 2011, 12:35:15 AM8/18/11
to xam-develo...@googlegroups.com
Hello there.

I also needed the same information. Experienced buddies please guide.

Rakesh Vende



--
You received this message because you are subscribed to the  "XAM Developers Group" group.
To post to this group, send email to
xam-develo...@googlegroups.com
To unsubscribe from this group, send email to
xam-developers-g...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/xam-developers-group?hl=en
Reminder that due to the SNIA IP Policy, only bug reports can be accepted as feedback for the specification or code.

Mike A

unread,
Aug 18, 2011, 3:17:50 AM8/18/11
to XAM Developers Group
I just did this on a freshly unzipped copy of xamsdk-1.0.1:

ant deliverables

This produced a bit of output (javac, etc) with the resulting
directory looking like:

bin build.xml deliverables lib src

Where "bin" contains the class files, and the subdirectory
"deliverables" contains the file "snia-xam.jar"

There should be a similar outcome with the other Java bits (xam
library and reference VIM).

Mike A

P.S. The "xml" file is the ant build script

ritika bhalla

unread,
Aug 19, 2011, 12:37:16 AM8/19/11
to xam-develo...@googlegroups.com
Mike,

can you tell me where you wrote "and deliverables"?
is this done on the command prompt?
the steps given in the pdf arent very clear.

and the resultant directory you get.. it is under which folder..Java_Interface?

Ritika

Mike A

unread,
Aug 19, 2011, 11:57:33 AM8/19/11
to XAM Developers Group
Here is the actual terminal output (it was still open on my system).
This shows exactly the steps I took to compile the interfaces and
contains the actual output.

[cat-tongs-3:~/Development/tmp] mike% ls
C_XAM_Library Java_Reference_VIM package.properties
Docs Java_XAM_Library pkg
HTTP_Protocol_VIM build.xml xamsdk-1.0.1.zip
Java_Interfaces lib

[cat-tongs-3:~/Development/tmp] mike% cd Java_Interfaces/

[cat-tongs-3:~/Development/tmp/Java_Interfaces] mike% ls
build.xml src

[cat-tongs-3:~/Development/tmp/Java_Interfaces] mike% ant deliverables
Buildfile: /Users/mike/Development/tmp/Java_Interfaces/build.xml

init:
[mkdir] Created dir: /Users/mike/Development/tmp/Java_Interfaces/
bin
[mkdir] Created dir: /Users/mike/Development/tmp/Java_Interfaces/
deliverables
[mkdir] Created dir: /Users/mike/Development/tmp/Java_Interfaces/
lib

compile:
[javac] /Users/mike/Development/tmp/Java_Interfaces/build.xml:26:
warning: 'includeantruntime' was not set, defaulting to
build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 57 source files to /Users/mike/Development/tmp/
Java_Interfaces/bin

deliverables:
[jar] Building jar: /Users/mike/Development/tmp/Java_Interfaces/
deliverables/snia-xam.jar

BUILD SUCCESSFUL
Total time: 1 second

[cat-tongs-3:~/Development/tmp/Java_Interfaces] mike% ls
bin build.xml deliverables lib src

[cat-tongs-3:~/Development/tmp/Java_Interfaces] mike% ls deliverables
snia-xam.jar

ritika bhalla

unread,
Aug 23, 2011, 12:36:27 AM8/23/11
to xam-develo...@googlegroups.com
Mike,
Thanks a ton. that did work. but the next step.. doing the same with Java_XAM_Library is giving me a failed build!

kindly throw some light

Ritika


--

Mike A

unread,
Aug 23, 2011, 12:47:59 AM8/23/11
to XAM Developers Group
You need to post more information, such as the errors which are
occuring. There are so many ways that something can fail it's not
possible to shed any light with such a general question.

ritika bhalla

unread,
Aug 25, 2011, 12:10:07 AM8/25/11
to xam-develo...@googlegroups.com
hey Mike,
i agree. i am sorry for such a vague question!

what i did was:
cd Java_Xam_Library

and then ant deliverables ( on the command prompt)

and got the following errors: (a total 0f 100)

    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\QueryFactoryTest.
java:51: cannot find symbol
    [javac] symbol: class TestCase
    [javac]    extends TestCase
    [javac]            ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\QueryFactoryTest.
java:53: cannot find symbol
    [javac] symbol  : class Test
    [javac] location: class org.snia.xam.util.QueryFactoryTest
    [javac]    public static Test suite()
    [javac]                  ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XAMLibraryFactory
Test.java:35: package junit.framework does not exist
    [javac] import junit.framework.Test;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XAMLibraryFactory
Test.java:36: package junit.framework does not exist
    [javac] import junit.framework.TestCase;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XAMLibraryFactory
Test.java:37: package junit.framework does not exist
    [javac] import junit.framework.TestSuite;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XAMLibraryFactory
Test.java:46: cannot find symbol
    [javac] symbol: class TestCase
    [javac]    extends TestCase
    [javac]            ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XAMLibraryFactory
Test.java:50: cannot find symbol
    [javac] symbol  : class Test
    [javac] location: class org.snia.xam.util.XAMLibraryFactoryTest
    [javac]    public static Test suite()
    [javac]                  ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XUIDIteratorTest.
java:37: package junit.framework does not exist
    [javac] import junit.framework.Test;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XUIDIteratorTest.
java:38: package junit.framework does not exist
    [javac] import junit.framework.TestCase;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XUIDIteratorTest.
java:39: package junit.framework does not exist
    [javac] import junit.framework.TestResult;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XUIDIteratorTest.
java:40: package junit.framework does not exist
    [javac] import junit.framework.TestSuite;
    [javac]                        ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XUIDIteratorTest.
java:53: cannot find symbol
    [javac] symbol: class TestCase
    [javac]    extends TestCase
    [javac]            ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\util\XUIDIteratorTest.
java:55: cannot find symbol
    [javac] symbol  : class Test
    [javac] location: class org.snia.xam.util.XUIDIteratorTest
    [javac]    public static Test suite()
    [javac]                  ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:103: cann
ot find symbol
    [javac] symbol  : class TestSuite
    [javac] location: class org.snia.xam.XAMTest
    [javac]       TestSuite suite = new TestSuite();
    [javac]       ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:103: cann
ot find symbol
    [javac] symbol  : class TestSuite
    [javac] location: class org.snia.xam.XAMTest
    [javac]       TestSuite suite = new TestSuite();
    [javac]                             ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:113: cann
ot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,long,long)
    [javac] location: class org.snia.xam.XAMTest
    [javac]       assertEquals(XAMLibrary.XAM_LOG_LEVEL + " value",
    [javac]       ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:117: cann
ot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,long,long)
    [javac] location: class org.snia.xam.XAMTest
    [javac]       assertEquals(XAMLibrary.XAM_LOG_LEVEL + " value",
    [javac]       ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:144: cann
ot find symbol
    [javac] symbol  : method fail(java.lang.String)
    [javac] location: class org.snia.xam.XAMTest
    [javac]          fail(buf.toString());
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:148: cann
ot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.XAMTest
    [javac]          assertEquals(expected[i] + " type",
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:176: cann
ot find symbol
    [javac] symbol  : class TestResult
    [javac] location: class org.snia.xam.XAMTest
    [javac]       TestResult res = junit.textui.TestRunner.run(test);
    [javac]       ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:176: pack
age junit.textui does not exist
    [javac]       TestResult res = junit.textui.TestRunner.run(test);
    [javac]                                    ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:251: cann
ot find symbol
    [javac] symbol  : method getClass()
    [javac] location: class org.snia.xam.XAMTest
    [javac]          System.out.println(getClass().getName() + "." + getName());

    [javac]                             ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:251: cann
ot find symbol
    [javac] symbol  : method getName()
    [javac] location: class org.snia.xam.XAMTest
    [javac]          System.out.println(getClass().getName() + "." + getName());

    [javac]                                                          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\XAMTest.java:315: cann
ot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,byte,byte)
    [javac] location: class org.snia.xam.XAMTest
    [javac]          assertEquals("Byte " + i, value, buf[offset + i]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\AllTest.java:56: canno
t find symbol
    [javac] symbol  : class TestSuite
    [javac] location: class org.snia.xam.AllTest
    [javac]       TestSuite suite = new TestSuite();
    [javac]       ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\AllTest.java:56: canno
t find symbol
    [javac] symbol  : class TestSuite
    [javac] location: class org.snia.xam.AllTest
    [javac]       TestSuite suite = new TestSuite();
    [javac]                             ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:192: cannot find symbol
    [javac] symbol  : method fail(java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          fail( "Unexpected error in setup of configuration file" );
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:211: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(vc.classForVIMName(VIM1), EXAMPLE_VIM);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:212: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(vc.classForVIMName(VIM2), EXAMPLE_VIM);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:213: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(vc.classForVIMName(VIM3), TEST_VIM);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:237: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(VIM3, vims[0]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:238: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(VIM2, vims[1]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:239: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(VIM1, vims[2]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:240: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(VIM99, vims[3]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:264: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,long,long)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(XAMLibrary.XAM_LOG_LEVEL, TEST_LEVEL, level);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:266: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,long,long)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(XAMLibrary.XAM_LOG_VERBOSITY, TEST_VERBOSITY,
verbosity);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:268: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals(XAMLibrary.XAM_LOG_PATH, TEST_PATH, path);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:293: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Preload order", VIM2, order[0]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:294: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Preload order", VIM3, order[1]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:295: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Preload order", VIM1, order[2]);
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:317: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Extra non typed property didn't pass properly
",
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:320: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,long,long)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Typed Int property didn't parse properly",
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:323: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,double,double)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Typed Double property didn't parse properly",

    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:326: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,boolean,boolean)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Typed Boolean property didn't parse properly"
,
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:329: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.util.Calendar,ja
va.util.Calendar)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Typed Datetime property didn't parse properly
",
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:332: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,org.snia.xam.XUID,org
.snia.xam.XUID)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Typed XUID property didn't parse properly",
    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:335: cannot find symbol
    [javac] symbol  : method assertEquals(java.lang.String,java.lang.String,java
.lang.String)
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]          assertEquals("Typed String property didn't parse properly",

    [javac]          ^
    [javac] C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\TestVIMConfiguration.j
ava:355: cannot find symbol
    [javac] symbol  : class TestResult
    [javac] location: class org.snia.xam.TestVIMConfiguration
    [javac]         TestResult res = junit.textui.TestRunner.run(test);
    [javac]         ^
    [javac] Note: C:\xam_sdk\Java_XAM_Library\test\org\snia\xam\testvim\TestXSys
tem.java uses or overrides a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 100 errors

BUILD FAILED
C:\xam_sdk\Java_XAM_Library\build.xml:117: Compile failed; see the compiler erro
r output for details.

Total time: 7 seconds

C:\xam_sdk\Java_XAM_Library>

Mike A

unread,
Aug 25, 2011, 11:46:20 AM8/25/11
to XAM Developers Group
Dig into the code a little bit and you find that TestCase comes from a
package hierarchy "org.junit".

You need to go get Junit to complete your build. There may be other
external dependencies you need to satisfy. The instructions point out
what other packages you need go retrieve. This is a case where you
really need to RTFM.

Good luck.
> ...
>
> read more »

Mike A

unread,
Aug 25, 2011, 11:47:46 AM8/25/11
to XAM Developers Group
Whoops, meant to say the package hierarchy was "junit", as is
indicated from the import statement:

import junit.framework.TestCase;

Turns out I need to dig into the code (or error listing you provided!)
> ...
>
> read more »

ritika bhalla

unread,
Sep 1, 2011, 12:30:56 AM9/1/11
to xam-develo...@googlegroups.com
hey Mike,

I am working on the issue. some problems coming up. i have already installed JUnit and i have the Jar files mentioned too but still..

meanwhile i wanted to ask you about the prospects of XAM. here in my organisation we have got in touch with several storage vendors but none of them seem very keen on using XAM. rather they have asked us to go for NFS and CIFS level storage. they didnt give us a very positive feedback for XAM. can u guide me here?

Ritika


--

Mike Horgan

unread,
Sep 1, 2011, 10:23:16 AM9/1/11
to xam-develo...@googlegroups.com, rit.bh...@gmail.com
Hi Ritika -

I think we're all quite interested to hear more about the feedback you got from the vendors if you wouldn't mind sharing.  In my company we are using XAM quite heavily with good results.

Best Regards,
Mike Horgan

--
Mike Horgan
CTO, Interlock Technology
Waltham, MA
+1.888.369.1024
www.interlock-tech.com

Ben Grissinger

unread,
Sep 1, 2011, 10:52:57 AM9/1/11
to xam-develo...@googlegroups.com, rit.bh...@gmail.com
Hi Ritika

I think the translation you are hearing from storage vendors regarding
the implementation of XAM is much of the same I got when trying to
implement XAM. It seems the storage vendors are not prepared to
"build in" a new protocol to their existing storage offering, and the
software vendors are not prepared to write commit xstreams where file
close statements exist today within their software. The way to
implementation of XAM is certainly open ssoftware architectures such
as REST, of which, if developers are not doing today, will certainly
bear a price to pay later.

ritika bhalla

unread,
Sep 1, 2011, 11:19:26 AM9/1/11
to Ben Grissinger, xam-develo...@googlegroups.com
we had a meeting with some vendors( cant name them yet) 
according to them, XAM is getting obsolete! i couldnt believe it myself!
they say its phasing out as the same thing can be provided by normal storage devices.

i guess its just marketing strategies. i need to convince the people at my workplace about XAM.

can you give me 3 solid points by which i can do so. 

its high time we try to do something new and better.
looking forward to your reply!

thankyou..
Ritika

Mike A

unread,
Sep 1, 2011, 12:15:41 PM9/1/11
to XAM Developers Group
There were only a couple of large storage vendors that implemented
XAM. Other storage vendors stayed out of the XAM game, deciding that a
file system abstraction is OK.

If you are wanting to use XAM, but the storage vendors aren't going to
supply a VIM, your options are somewhat limited. You could write your
own (or contract to have one written) to interface with the storage
vendor's API. If the vendor only supplies file semantics (CIFS/NFS)
you will be hard pressed to implement the retention, ACL, and query
functionality without providing a middle layer. It is possible you can
write a simple VIM that implements only the file based semantics
without all that other stuff. This wouldn't win any prizes for
implementing the required (by SNIA) functionality, but it may be
enough to implement your application.



On Aug 31, 9:30 pm, ritika bhalla <rit.bhall...@gmail.com> wrote:
> hey Mike,
>
> I am working

Mike A

unread,
Sep 1, 2011, 12:29:08 PM9/1/11
to XAM Developers Group
XAM is an API dealing with MANAGED storage, while many of the storage
vendors are talking about FILE STORAGE.
It's possible to put in retention and disposition management, and
query support but mapping that into file calls borders on "crimes
against nature".

A technology is obsolete when people are not using it, but there are
companies using XAM right now... just not a lot. That makes XAM
uncommon, but I don't know about obsolete. That said there is a strong
movement among different groups to implement storage interfaces using
web services, etc. This makes it easy to normalize interfaces between
clients and servers. My opinion is that an application programmer
doesn't want to be dealing with raw web calls to accomplish a task and
so they'd likely end up implementing an interface over it to be more
compatible with what ever language they are using. Something like XAM
could do that nicely, normalizing application interaction so it can
deal with highly structured protocols, web protocols, simple file
APIs, etc. Other people have different opinions... not one that I
share.

Anyway, I'd really like to see how "normal" storage interfaces provide
the globally unique addressing scheme (XUID), a query functionality,
import/export normalization, and retention/disposition management. My
guess is that their response is "sure if you add the following pieces
of software..." What this means is that they don't have that
functionality in their storage systems, and so they dismiss XAM as
"irrelevant" because they can't supply it.

My opinion is that the XAM spec is to rigid on what it requires
storage vendors to provide (e.g. level 1 query) which makes it harder
to implement a VIM/Storage System. If you are willing to "go off grid"
you can implement a XAM interface to the simplest core concepts and
not really need to support that fancier stuff. It wouldn't pass a SNIA
compliance test, but you may not care.

If you are intent on using XAM, I'd implement is simple core VIM to
talk to whatever storage system has been chosen. You can omit things
like query and retention, but handle the streams, attributes, and
import/export. You'll still have a pretty powerful system.

Mike A

unread,
Sep 1, 2011, 12:37:17 PM9/1/11
to XAM Developers Group
Ben,

You make a good point, one with which I agree. The storage vendors
like their existing protocols, for many reasons.
What they are missing is that XAM is designed to wrap those existing
protocols and normalize the interface to the
application. This is why I suggest it's possible for a third party to
provide a VIM for a storage system, even if the
vendor doesn't want to do so. Certain "required" functionality may not
be easy to implement... but if you want to
stray from what the XAM spec must be implemented, you can accomplish a
lot.

Writing such a scaled down VIM isn't that hard. In fact I have a
system right now with the vendor is not even in
the storage industry and I may write a VIM on top of the existing
API.


On Sep 1, 7:52 am, Ben Grissinger <bengrissin...@gmail.com> wrote:
> Hi Ritika
>
> I think the translation you are hearing from storage vendors regarding
> the implementation of XAM is much of the same I got when trying to
> implement XAM.  It seems the storage vendors are not prepared to
> "build in" a new protocol to their existing storage offering, and the
> software vendors are not prepared to write commit xstreams where file
> close statements exist today within their software.  The way to
> implementation of XAM is certainly open ssoftware architectures such
> as REST, of which,  if developers are not doing today, will certainly
> bear a price to pay later.On Thu, Sep 1, 2011 at 10:23 AM, Mike Horgan <m...@interlock-tech.com> wrote:
> > Hi Ritika -
> > I think we're all quite interested to hear more about the feedback you got
> > from the vendors if you wouldn't mind sharing.  In my company we are using
> > XAM quite heavily with good results.
> > Best Regards,
> > Mike Horgan
>
> > On Thu, Sep 1, 2011 at 12:30 AM, ritika bhalla <rit.bhall...@gmail.com>
> > wrote:
>

Mark Carlson

unread,
Sep 1, 2011, 12:53:09 PM9/1/11
to xam-develo...@googlegroups.com
This may be dated, but http://snia.org/forums/xam/solutions provides a
shapshot of XAM support
a couple of years ago. Bycast has since been acquired by NetApp, Sun by
Oracle, etc.

Also, SNIA's Cloud Storage standard CDMI has integrated many of the XAM
features into an object
store standard that is starting to get commercial traction as well.

-- mark

ritika bhalla

unread,
Sep 5, 2011, 11:51:50 PM9/5/11
to xam-develo...@googlegroups.com
We are convinced on using XAM. thanks for all the help..
Also, could you tell me how to procure a VIM? (If i dont have the time to write one)
since the RVIM provided in the XAM SDK is giving me a failed build.

P.S kindly ignore my novice questions. This is my first job and my very first project! new yo all this.. hope ill get good guidance :)

Ritika

--
You received this message because you are subscribed to the  "XAM Developers Group" group.
To post to this group, send email to

To unsubscribe from this group, send email to

Michael J. Allison

unread,
Sep 6, 2011, 2:38:07 AM9/6/11
to xam-develo...@googlegroups.com
Pretty much there are two ways to get a VIM.

1) Get one from your storage vendor, specifically to support the storage vendor's system. 

2) Write one yourself, or get hire out the work to get it done. 

I suppose there is a third option... wish on a falling star, but that has never worked for me. 

If your organization would like some help developing a VIM I am available for contract labor, please contact me. 

Mike A


To unsubscribe from this group, send email to
Reply all
Reply to author
Forward
0 new messages