Re: [XMLPipeDB-developer] GM Builder post taxon merge
Brought to you by:
kdahlquist,
zugzugglug
From: Richard B. <rbr...@gm...> - 2011-04-15 07:04:38
|
No, unfortunetely i haven't done the query or looked at the original xml file yet but those will be my first steps when I start digging into this again tomorrow. Richard On Thu, Apr 14, 2011 at 11:38 PM, John David N. Dionisio <do...@lm...>wrote: > Hi Rich, > > Did you do the aforementioned "lower level" investigation, which was to > query all of the available taxon IDs directly from PostgreSQL, to see what > taxon IDs were there? > > Alternatively, you can look at the original UniProt XML file that was > imported into PostgreSQL, and examine the taxon IDs in that file. > > Essentially, the program won't match a species profile if that species > profile's declared taxon ID cannot be found in the relational database. So, > you need to know what taxon IDs found their way into the relational database > to begin with, then work from there. > > John David N. Dionisio, PhD > Associate Professor, Computer Science > Loyola Marymount University > > > > On Apr 14, 2011, at 11:22 PM, Richard Brous wrote: > > > Well that seemed to do the trick as I was able to export out a > Mtuberculosis gdb which is very close to our baseline gdb from b63. I will > post both gdb's onto the wiki along with an excel doc comparison of the > original row counts. > > > > But I'm still unclear exactly why using the general species taxon id > would work and the taxon id for our specific species would not work? > > > > Maybe I'm still a bit weak in my understanding, but it seemed to me that > what we wanted to do was identify the species by its taxon id to eliminate > issues with potentially different, non-exact spellings (and tracking) of > particual species names. > > > > Can someone clarify please? ;-D > > > > Thanks! > > > > Richard > > > > On Thu, Apr 14, 2011 at 8:51 PM, Richard Brous <rbr...@gm...> > wrote: > > No intrusion Don =D > > > > Thanks for the suggestion. I'll give it a try and let the distribution > know the findings. > > > > Richard > > > > Sent from my iPhone > > > > On Apr 14, 2011, at 7:07 PM, Don Murphy <djs...@gm...> wrote: > > > >> Forgive my intrusion, but I have an idea of what may be the problem. In > the screenshot you provided, the only species shown in the drop down box, as > taken from the source files, is taxon id 1773. An quick Google search > reveals that 1773 is the general taxon id for Mycobacterium tuberculosis. In > the profile you created, the taxon id used is 83332, which is for M. > tuberculosis strain H37Rv. The problem seems to be that the profile you > created was for the certain strain, while your source files were for M. > tuberculosis in general. Try changing the profile to use the id 1773 and see > if that helps. > >> > >> On Thu, Apr 14, 2011 at 6:53 PM, Richard Brous <rbr...@gm...> > wrote: > >> OK, found the method and reviewed it. > >> > >> It makes sense and I believe it should work as is unless I'm reading the > code wrong. > >> > >> I don't see how if the taxon id is included in the Mtuberculosis species > profile (which it is) why this shouldn't work? > >> > >> Help please, what am i missing? > >> > >> richard > >> > >> On Thu, Apr 14, 2011 at 11:04 AM, Richard Brous <rbr...@gm...> > wrote: > >> Gotcha, will check it out later today as well as post gdb's up to the > wiki. > >> > >> Rb > >> > >> Sent from my iPhone > >> > >> On Apr 13, 2011, at 11:32 AM, "John David N. Dionisio" <do...@lm...> > wrote: > >> > >> > Greetings, > >> > > >> > Sorry for the delay; I ended up digging through the code a bit so I > would be sure of the response. > >> > > >> > getSpeciesProfilesFound does indeed feed the combo box that you want > to touch, but it turns out that the array returned by this method is not > built here. > >> > > >> > The code that builds the array returned by getSpeciesProfilesFound is > located in UniProtDatabaseProfile; the method is called checkRequirements. > This is the method that performs the query which retrieves the available > taxon IDs from the relational database. > >> > > >> > The intent of the method is this: if a custom species profile is found > that matches the taxon ID, then that species profile is added to the list. > If a custom species profile is *not* found, a generic species profile > initialized to the taxon ID is added instead. > >> > > >> > That is the method's intent. As you have seen, it may need some > cleanup and/or fixing. But there it is for you: > UniProtDatabaseProfile.checkRequirements. > >> > > >> > John David N. Dionisio, PhD > >> > Associate Professor, Computer Science > >> > Loyola Marymount University > >> > > >> > > >> > > >> > On Apr 12, 2011, at 7:03 PM, Richard Brous wrote: > >> > > >> >> OK, in ExportPanel1.java i found the following: > >> >> > >> >> 1. COMBOBOX DEFINED ON LINE 59 > >> >> private > >> >> > >> >> JComboBox speciesComboBox; > >> >> 2. THEN COMBOBOX IS INSTANTIATED AND ACTION LISTENER ASSIGNED > STARTING ON LINE 141 > >> >> > >> >> // Species | JComboBox | speciesFound | JLabel | Description > >> >> > >> >> > >> >> // | JTextField | customizable name > >> >> > >> >> speciesComboBox = new JComboBox(); > >> >> > >> >> speciesComboBox.addActionListener(new ActionListener() { > >> >> > >> >> public void actionPerformed(ActionEvent arg0) { > >> >> speciesProfileSelected( > >> >> > >> >> speciesComboBox.getSelectedItem()); > >> >> } > >> >> > >> >> }); > >> >> > >> >> 3. NEXT CODE BLOCK ADJUSTS THE DATABASE PROFILE WHICH IS ALWAYS > UNIPROT, THEN BASED ON DATABASE PROFILE > >> >> IT POPULATES THE SPECIES COMBOBOX STARTING LINE 210 > >> >> > >> >> > >> >> * Adjusts the dynamic content when a database profile is selected. > >> >> > >> >> * > >> >> > >> >> * > >> >> > >> >> @param selectedItem > >> >> */ > >> >> > >> >> > >> >> protected void databaseProfileSelected(Object selectedItem) { > >> >> > >> >> if (selectedItem instanceof DatabaseProfile) { > >> >> DatabaseProfile selectedProfile = (DatabaseProfile)selectedItem; > >> >> > >> >> ExportToGenMAPP.setDatabaseProfile(selectedProfile); > >> >> > >> >> > >> >> profileDescriptionTextArea.setText(selectedProfile.getDescription()); > >> >> > >> >> modSystemTextField.setText(selectedProfile.getMODSystem()); > >> >> > >> >> > >> >> //This is populating the list of items in the speciesProfile combobox > >> >> > >> >> // based on what database was selected. > >> >> > >> >> speciesComboBox.removeAllItems(); > >> >> > >> >> for (SpeciesProfile speciesProfile : > selectedProfile.getSpeciesProfilesFound()) { > >> >> > >> >> speciesComboBox.addItem(speciesProfile); > >> >> } > >> >> > >> >> } > >> >> > >> >> } > >> >> > >> >> SO I THINK THE METHOD I NEED TO SOURCE IS: > selectedProfile.getSpeciesProfilesFound()) > >> >> > >> >> SOUND GOOD SO FAR?? > >> >> > >> >> Richard > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> On Tue, Apr 12, 2011 at 6:18 PM, Richard Brous <rbr...@gm...> > wrote: > >> >> > >> >> OK, I'll look around and attempt to sniff out the code regarding > populating the drop down menu on the first export screen. > >> >> > >> >> But that said, I was surprised it didn't work since the functionality > 'seemed' to be in place for the two working species (P_a and S_a). And I > noticed that the working species don't always show in the drop down box, so > figured they likely aren't hard coded in. > >> >> > >> >> Richard > >> >> > >> >> > >> >> On Tue, Apr 12, 2011 at 6:04 PM, John David N. Dionisio < > do...@lm...> wrote: > >> >> > >> >> Greetings, > >> >> > >> >> First off, recall that the taxon ID that is given to the species > profile is not involved in building the dropdown menu; it is used to match > the chosen taxon ID from that menu with a species profile to use. That > dropdown menu is built from a database query that retrieves all available > taxon IDs and species names in the PostgreSQL database. > >> >> > >> >> With that in mind, I would tackle this as follows: > >> >> > >> >> - First, track down the code that builds the data displayed in that > JComboBox. It should be trackable from the wizard panel code. If you're > having trouble finding it, let me know and I can take a stab at following > the breadcrumbs, or you can ask Don. > >> >> > >> >> This code should ultimately lead you to the database query that > derives the overall list of available taxon IDs and species names in the > PostgreSQL database. > >> >> > >> >> - Now, armed with this database query, you can verify the validity of > this query directly in PostgreSQL. Essentially you need to make sure that > this query does indeed retrieve the list of all taxon IDs and species names > that are present in the PostgreSQL database. > >> >> > >> >> If the query is correct, then the issue is in the way the JComboBox > is put together. This may need a little more knowledge of Swing that you > have, in which case send the issue my way and I can take a look. > >> >> > >> >> If the query is incorrect, then it should be corrected. If the Swing > code is correct, then things should work. If the Swing code is also > incorrect, then you are at the previous case, and the Swing code now needs > to be addressed (safe in the knowledge that the data part has been fixed). > >> >> > >> >> Let me know how that plan sounds to you. > >> >> > >> >> John David N. Dionisio, PhD > >> >> Associate Professor, Computer Science > >> >> Loyola Marymount University > >> >> > >> >> > >> >> > >> >> > >> >> On Apr 12, 2011, at 5:56 PM, Richard Brous wrote: > >> >> > >> >>> Great, glad we are on the same page! > >> >>> > >> >>> I went ahead and added the taxon id to the Mtuberculosis species > profile, recompiled and initiated an export but the expected taxon id didn't > show in the species drop down box. > >> >>> > >> >>> The coded modified is (as shown above): > >> >>> > >> >>> > >> >>> public MycobacteriumTuberculosisUniProtSpeciesProfile() { > >> >>> > >> >>> super("Mycobacterium tuberculosis", 83332, > >> >>> > >> >>> "This profile customizes the GenMAPP Builder export for > Mycobacterium Tuberculosis data loaded from a UniProt XML file."); > >> >>> } > >> >>> > >> >>> Attached is a ss of the dialog box. > >> >>> > >> >>> I also checked to make sure the species was listed in the > UniProtDatabaseProfile and Mtuberculosis and the rest of the newer species > are present. > >> >>> > >> >>> Any idea where i should look next aside from assuring that the > change is actually in my working build? > >> >>> > >> >>> Thanks! > >> >>> > >> >>> Richard > >> >>> > >> >>> > >> >>> > >> >>> > >> >>> On Tue, Apr 12, 2011 at 3:40 PM, John David N. Dionisio < > do...@lm...> wrote: > >> >>> > >> >>> Hi Rich, > >> >>> > >> >>> Thanks for the update. I agree that we can move past the merge > stage now. > >> >>> > >> >>> Regarding the species constructor, yes, having the required change > consist solely of the addition of the taxon ID really was the goal. > "Separation of concerns" and "don't repeat yourself" and all that :) Note > how, in the end, the designation of the taxon ID is truly the only piece of > additional information that is required of species profiles in order to get > the work done. So, this ideal is reflected in the code. > >> >>> > >> >>> Of course, there is a possibility that certain types of > customizations may require additional work; however that depends on the type > of customization involved and the way the species profile implements it. We > can approach those on a per-species-profile basis. > >> >>> > >> >>> John David N. Dionisio, PhD > >> >>> Associate Professor, Computer Science > >> >>> Loyola Marymount University > >> >>> > >> >>> > >> >>> > >> >>> > >> >>> On Apr 11, 2011, at 11:57 PM, Richard Brous wrote: > >> >>> > >> >>>> Hi all, > >> >>>> > >> >>>> I recreated a multispecies postgres db for P_aeruginosa and > S_aureus and reimported the species xml files: > >> >>>> P_aeruginosa UniProtXML > >> >>>> P_aeruginosa goa > >> >>>> > >> >>>> S_aureus UniProtXML > >> >>>> S_aureus goa > >> >>>> > >> >>>> GO xml > >> >>>> processed go data > >> >>>> > >> >>>> I then exported P_aeruginosa .gdb using both Don's name2taxon code > and the new trunk (b64): both gdb's original row counts are identical > >> >>>> Also exported S_aureus using both Don's name2taxon code and the new > trunk (b64) : both gdb's original row counts are identical > >> >>>> > >> >>>> I think we can safely say that Don's name2taxon changes are working > at the point where he left off and the successful merge into the trunk is > now verfied. > >> >>>> > >> >>>> > ============================================================================= > >> >>>> > >> >>>> Now to move to species I am familiar with and ensure they still > match the base line gdb's generated from b63. > >> >>>> > >> >>>> The first species I will work on is Mtuberculosis. From the readme > file of the gdb previously posted, the taxon id is 83332. > >> >>>> > >> >>>> I will go ahead and make the change to the Mtuberculosis species > profile which is to add the taxon id in the form: > >> >>>> > >> >>>> > >> >>>> public MycobacteriumTuberculosisUniProtSpeciesProfile() { > >> >>>> > >> >>>> super("Mycobacterium tuberculosis", 83332, > >> >>>> > >> >>>> "This profile customizes the GenMAPP Builder export for > Mycobacterium Tuberculosis data loaded from a UniProt XML file."); > >> >>>> } > >> >>>> > >> >>>> When comparing to S_aereus species profile, it was the only change > to make in the Mtuberculosis species profile. > >> >>>> > >> >>>> I rechecked my notes from this morning and don't see any other > changes needed to enable our newer species to work with the post merge > constructor. > >> >>>> > >> >>>> I'll attempt an export tomorrow and see what happens. > >> >>>> > >> >>>> Richard > >> >>>> > >> >>>> On Fri, Apr 1, 2011 at 12:51 PM, John David N. Dionisio < > do...@lm...> wrote: > >> >>>> Follow the way the name2taxon “branch” was done. Put a gmbuilder/ > directory under tags/ if it is not already there, and make sure that the > copied/tagged/branched subdirectory under that corresponds to the top-level > directory of a gmbuilder project (i.e., it contains the build.xml, other > top-level directories, etc.). > >> >>>> > >> >>>> Subversion copies are “cheap:” it is OK to copy deep trees of > files. You only start using additional storage space if the files > themselves get modified. Otherwise, they are just references to their > original versions. > >> >>>> > >> >>>> John David N. Dionisio, PhD > >> >>>> Associate Professor, Computer Science > >> >>>> Loyola Marymount University > >> >>>> > >> >>>> > >> >>>> > >> >>>> On Apr 1, 2011, at 12:47 PM, Richard Brous wrote: > >> >>>> > >> >>>>> ok, so should I start at the gmbuilder directory Or the src > directory? > >> >>>>> > >> >>>>> On Fri, Apr 1, 2011 at 11:42 AM, John David N. Dionisio < > do...@lm...> wrote: > >> >>>>> Yes, in Subversion what they did is collapse both activities into > a single operation called "Copy." Whether you use the copy as a branch for > modifications, or use it as a tag for posterity, is left to the developer > and not the system. > >> >>>>> > >> >>>>> This functional change is the subject of some debate in the > community. Some folks still feel that "enforced" tags have their benefits. > But in the end, this is how Subversion conducts things, so we'll just have > to go with it. > >> >>>>> > >> >>>>> John David N. Dionisio, PhD > >> >>>>> Associate Professor, Computer Science > >> >>>>> Loyola Marymount University > >> >>>>> > >> >>>>> > >> >>>>> On Apr 1, 2011, at 12:38 PM, Richard Brous wrote: > >> >>>>> > >> >>>>>> ok, makes sense because when I went through the process (without > clicking finish) there was really no difference between the two... not even > a specification to say this this is a "tag" vs "branch" unless I can only do > that in the comments. > >> >>>>>> > >> >>>>>> On Fri, Apr 1, 2011 at 11:35 AM, John David N. Dionisio < > do...@lm...> wrote: > >> >>>>>> Yes, tags and branches are structurally identical in Subversion. > The only difference between a “tag” and a “branch” is that the developers > have agreed to *not* touch a tag after it has been copied out. > >> >>>>>> > >> >>>>>> In other words, “tags” and “branches” are only different in > Subversion by consensus. The distinction is not system-enforced. > >> >>>>>> > >> >>>>>> John David N. Dionisio, PhD > >> >>>>>> Associate Professor, Computer Science > >> >>>>>> Loyola Marymount University > >> >>>>>> > >> >>>>>> > >> >>>>>> > >> >>>>>> On Apr 1, 2011, at 12:32 PM, Richard Brous wrote: > >> >>>>>> > >> >>>>>>> tagging is really creating a new branch for posterity? > >> >>>>>>> > >> >>>>>>> On Fri, Apr 1, 2011 at 10:56 AM, John David N. Dionisio < > do...@lm...> wrote: > >> >>>>>>> You'll want to tag from the repository, since your local copy > has been modified. If you issue the tag command from the SVN Repository > Viewing perspective, that should happen server-side. > >> >>>>>>> > >> >>>>>>> If you want to play it really safe, you can even do the tagging > from a completely separate Eclipse workspace that does not have your local > copies loaded up. > >> >>>>>>> > >> >>>>>>> John David N. Dionisio, PhD > >> >>>>>>> Associate Professor, Computer Science > >> >>>>>>> Loyola Marymount University > >> >>>>>>> > >> >>>>>>> > >> >>>>>>> > >> >>>>>>> On Apr 1, 2011, at 11:54 AM, Richard Brous wrote: > >> >>>>>>> > >> >>>>>>>> Am I tagging in my local project or in the repository? > >> >>>>>>>> > >> >>>>>>>> On Fri, Apr 1, 2011 at 10:51 AM, John David N. Dionisio < > do...@lm...> wrote: > >> >>>>>>>> Hi Rich, > >> >>>>>>>> > >> >>>>>>>> I think it's OK to commit to the trunk, with one tweak for easy > management: before committing, copy out ("tag") what is in the trunk right > now, and put it in /tags/gmbuilder/before-name2taxon-merge (or something > like that). This way, you have an easy basis for comparison if you need to > go back to how the trunk was before name2taxon came along. > >> >>>>>>>> > >> >>>>>>>> Also, it will save some time if your before- and after- .gdbs > are available. Running our own exports, while of course doable as you said, > would require things like getting old versions, building them, etc. > >> >>>>>>>> > >> >>>>>>>> Happy digital forensics... > >> >>>>>>>> > >> >>>>>>>> John David N. Dionisio, PhD > >> >>>>>>>> Associate Professor, Computer Science > >> >>>>>>>> Loyola Marymount University > >> >>>>>>>> > >> >>>>>>>> > >> >>>>>>>> On Apr 1, 2011, at 11:42 AM, Richard Brous wrote: > >> >>>>>>>> > >> >>>>>>>>> Hi all, > >> >>>>>>>>> > >> >>>>>>>>> Started a new thread since this is Pfalciparum specific. > >> >>>>>>>>> > >> >>>>>>>>> I have double checked my manual merge to confirm that in fact > my edits were correctly included for Mtuberculosis and Pfalciparum. > >> >>>>>>>>> > >> >>>>>>>>> So when running gdb exports for each I determined that in fact > something broke in the merge. > >> >>>>>>>>> > >> >>>>>>>>> Before I start digging into this further I want to ask a > couple questions: > >> >>>>>>>>> > >> >>>>>>>>> 1. Should I commit the changes up to Sourceforge yet or leave > them locally on my laptop while troubleshooting? I know we can revert to > earlier versions if needed but wanted to be sure we were all on same page. > >> >>>>>>>>> > >> >>>>>>>>> 2. I have before and after exports of Mtuberculosis and > Pfalciparum on my laptop. Would you like me to post them for review or will > you be running your own anyway? > >> >>>>>>>>> > >> >>>>>>>>> Richard > >> >>>>>>>>> <ATT00001..txt><ATT00002..txt> > >> >>>>>>>> > >> >>>>>>>> > >> >>>>>>>> > ------------------------------------------------------------------------------ > >> >>>>>>>> Create and publish websites with WebMatrix > >> >>>>>>>> Use the most popular FREE web apps or write code yourself; > >> >>>>>>>> WebMatrix provides all the features you need to develop and > >> >>>>>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >> >>>>>>>> _______________________________________________ > >> >>>>>>>> xmlpipedb-developer mailing list > >> >>>>>>>> xml...@li... > >> >>>>>>>> > https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >>>>>>>> > >> >>>>>>>> <ATT00001..txt><ATT00002..txt> > >> >>>>>>> > >> >>>>>>> > >> >>>>>>> > ------------------------------------------------------------------------------ > >> >>>>>>> Create and publish websites with WebMatrix > >> >>>>>>> Use the most popular FREE web apps or write code yourself; > >> >>>>>>> WebMatrix provides all the features you need to develop and > >> >>>>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >> >>>>>>> _______________________________________________ > >> >>>>>>> xmlpipedb-developer mailing list > >> >>>>>>> xml...@li... > >> >>>>>>> > https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >>>>>>> > >> >>>>>>> <ATT00001..txt><ATT00002..txt> > >> >>>>>> > >> >>>>>> > >> >>>>>> > ------------------------------------------------------------------------------ > >> >>>>>> Create and publish websites with WebMatrix > >> >>>>>> Use the most popular FREE web apps or write code yourself; > >> >>>>>> WebMatrix provides all the features you need to develop and > >> >>>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >> >>>>>> _______________________________________________ > >> >>>>>> xmlpipedb-developer mailing list > >> >>>>>> xml...@li... > >> >>>>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >>>>>> > >> >>>>>> <ATT00001..txt><ATT00002..txt> > >> >>>>> > >> >>>>> > >> >>>>> > ------------------------------------------------------------------------------ > >> >>>>> Create and publish websites with WebMatrix > >> >>>>> Use the most popular FREE web apps or write code yourself; > >> >>>>> WebMatrix provides all the features you need to develop and > >> >>>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >> >>>>> _______________________________________________ > >> >>>>> xmlpipedb-developer mailing list > >> >>>>> xml...@li... > >> >>>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >>>>> > >> >>>>> <ATT00001..txt><ATT00002..txt> > >> >>>> > >> >>>> > >> >>>> > ------------------------------------------------------------------------------ > >> >>>> Create and publish websites with WebMatrix > >> >>>> Use the most popular FREE web apps or write code yourself; > >> >>>> WebMatrix provides all the features you need to develop and > >> >>>> publish your website. http://p.sf.net/sfu/ms-webmatrix-sf > >> >>>> _______________________________________________ > >> >>>> xmlpipedb-developer mailing list > >> >>>> xml...@li... > >> >>>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >>>> > >> >>> > >> >>>> <ATT00001..txt><ATT00002..txt> > >> >>> > >> >>> > >> >>> > ------------------------------------------------------------------------------ > >> >>> Forrester Wave Report - Recovery time is now measured in hours and > minutes > >> >>> not days. Key insights are discussed in the 2010 Forrester Wave > Report as > >> >>> part of an in-depth evaluation of disaster recovery service > providers. > >> >>> Forrester found the best-in-class provider in terms of services and > vision. > >> >>> Read this report now! http://p.sf.net/sfu/ibm-webcastpromo > >> >>> > >> >>> _______________________________________________ > >> >>> xmlpipedb-developer mailing list > >> >>> xml...@li... > >> >>> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >>> > >> >>> > >> >> > >> >>> <Tb_export_screen.jpg><ATT00001..txt><ATT00002..txt> > >> >> > >> >> > >> >> > ------------------------------------------------------------------------------ > >> >> Forrester Wave Report - Recovery time is now measured in hours and > minutes > >> >> not days. Key insights are discussed in the 2010 Forrester Wave > Report as > >> >> part of an in-depth evaluation of disaster recovery service > providers. > >> >> Forrester found the best-in-class provider in terms of services and > vision. > >> >> Read this report now! http://p.sf.net/sfu/ibm-webcastpromo > >> >> _______________________________________________ > >> >> xmlpipedb-developer mailing list > >> >> xml...@li... > >> >> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> >> > >> >> > >> >> > >> >> <ATT00001..txt><ATT00002..txt> > >> > > >> > > >> > > ------------------------------------------------------------------------------ > >> > Forrester Wave Report - Recovery time is now measured in hours and > minutes > >> > not days. Key insights are discussed in the 2010 Forrester Wave Report > as > >> > part of an in-depth evaluation of disaster recovery service providers. > >> > Forrester found the best-in-class provider in terms of services and > vision. > >> > Read this report now! http://p.sf.net/sfu/ibm-webcastpromo > >> > _______________________________________________ > >> > xmlpipedb-developer mailing list > >> > xml...@li... > >> > https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> > >> > >> > ------------------------------------------------------------------------------ > >> Benefiting from Server Virtualization: Beyond Initial Workload > >> Consolidation -- Increasing the use of server virtualization is a top > >> priority.Virtualization can reduce costs, simplify management, and > improve > >> application availability and disaster protection. Learn more about > boosting > >> the value of server virtualization. > http://p.sf.net/sfu/vmware-sfdev2dev > >> _______________________________________________ > >> xmlpipedb-developer mailing list > >> xml...@li... > >> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > >> > >> > >> > ------------------------------------------------------------------------------ > >> Benefiting from Server Virtualization: Beyond Initial Workload > >> Consolidation -- Increasing the use of server virtualization is a top > >> priority.Virtualization can reduce costs, simplify management, and > improve > >> application availability and disaster protection. Learn more about > boosting > >> the value of server virtualization. > http://p.sf.net/sfu/vmware-sfdev2dev > >> _______________________________________________ > >> xmlpipedb-developer mailing list > >> xml...@li... > >> https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > > > > <ATT00001..txt><ATT00002..txt> > > > > ------------------------------------------------------------------------------ > Benefiting from Server Virtualization: Beyond Initial Workload > Consolidation -- Increasing the use of server virtualization is a top > priority.Virtualization can reduce costs, simplify management, and improve > application availability and disaster protection. Learn more about boosting > the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev > _______________________________________________ > xmlpipedb-developer mailing list > xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlpipedb-developer > |