Community
Participate
Working Groups
Created attachment 88150 [details] Patch for PE plugin LoadLeveler support I have approval to contribute the code to implement support for running PE interactive applications using LoadLeveler as a resource manager. I am attaching a patch file for updated source and a compressed tar file containing a new project, org.eclipse.ptp.ibmrm and some updated images for online help. This code now works corectly with the remote proxy support in PTP, both for the original PE/non LoadLeveler mode as well as the new PE/LoadLeveler mode I think I have this packaged right. If I've missed something, let me know.
Created attachment 88151 [details] new org.clipse.ptp.ibmrm package + images for online help
Dave, is the org.eclipse.ptp.ibmrm plugin primarily UI components? If so, I'd like to propose a name change. I've been meaning to ask you about changing the name of the other RM plugins as well (including non-IBM ones). Here is what I'm proposing: org.eclipse.ptp.rm.ibm.ui (formerly org.eclipse.ptp.ibmrm) org.eclipse.ptp.rm.ibm.bluegene.{core,proxy,ui} org.eclipse.ptp.rm.ibm.ll.{core,proxy,ui} org.eclipse.ptp.rm.ibm.pe.{core,proxy,ui} The other plugins will become: org.eclipse.ptp.rm.mpich2.{core,proxy,ui} org.eclipse.ptp.rm.orte.{core,proxy,ui} etc. Does that sound ok?
Greg I agree in general with the renaming you propose, with the possible exception of renaming the org.eclipse.ptp.ibmrm plugin. That plugin consists only of ui code. At this time that plugin consists of widgets used only by my org.eclipse.ptp.ibmpe.ui plugin in the resources tab of the launch manager. I split these out into the org.eclipse.ptp.ibmrm plugin with the intent to share these widgets with Rolf's org.eclipse.ptp.ibmll.ui plugin, but we didn't get that far. The reason they can't be shared today is that I send across the text for the labels and flyover text as strings from my proxy while Rolf sends across keys that he uses to access a properties file to get the text in his plugin. I'd still like to change my plugin to use Rolf's scheme but can't get to that immediately. If you rename org.eclipse.ptp.ibmrm to org.eclipse.ptp.rm.ibm.ui, that sort of implies this is a component shared by all the IBM resource managers, which isn't the case (the existing name isn't any better). I'm not sure what a good name is that indicates it's only used by the PE and LoadLeveler plugins, or if that's even necessary. All I can think of is something like org.eclipse.ptp.ibm.pe.pell.ui, but I'm not fond of that. Maybe we just rename it to something like org.eclipse.ptp.ibm.pe.widgets, or just rename it and accept that they never will be shared with LoadLeveler.
I'm having trouble applying the patch for some reason. The first segment in the patch tries to create src/ptp_ibmpe_proxy.c which already exists. I also get warnings on a number of other patch segments. Was your copy in sync with the repository when you created the patch?
(In reply to comment #3) > Greg > I agree in general with the renaming you propose, with the possible exception > of renaming the org.eclipse.ptp.ibmrm plugin. > > That plugin consists only of ui code. At this time that plugin consists of > widgets used only by my org.eclipse.ptp.ibmpe.ui plugin in the resources tab of > the launch manager. I split these out into the org.eclipse.ptp.ibmrm plugin > with the intent to share these widgets with Rolf's org.eclipse.ptp.ibmll.ui > plugin, but we didn't get that far. > > The reason they can't be shared today is that I send across the text for the > labels and flyover text as strings from my proxy while Rolf sends across keys > that he uses to access a properties file to get the text in his plugin. I'd > still like to change my plugin to use Rolf's scheme but can't get to that > immediately. > > If you rename org.eclipse.ptp.ibmrm to org.eclipse.ptp.rm.ibm.ui, that sort of > implies this is a component shared by all the IBM resource managers, which > isn't the case (the existing name isn't any better). > > I'm not sure what a good name is that indicates it's only used by the PE and > LoadLeveler plugins, or if that's even necessary. All I can think of is > something like org.eclipse.ptp.ibm.pe.pell.ui, but I'm not fond of that. > > Maybe we just rename it to something like org.eclipse.ptp.ibm.pe.widgets, or > just rename it and accept that they never will be shared with LoadLeveler. > Let's keep them in the PE plugin for the moment. If/when it gets used by LL we can move it to a common plugin.
I misunderstood the process for proceeding once I sent you the code for the first contribution. I never did re-sync with the PTP CVS repository, and assumed that when I generated the patch, Eclipse would build the patch using the CVS repository as a baseline without having to re-sync. The reason I did it this way was that I wanted to continue code development for this contribution without being held up waiting for legal approvals on my end. By the time I did get the approvals, I had changed quite a bit of code and didn't want to mess up my code by updating from CVS. So how do I fix this with the least work for you? Does the following seem reasonable? 1) Make a copy of my code, which has not changed since I uploaded the copy you have 2)Replace all the code which has copies committed in CVS by using the replace with latest option in the dropdown menu within project explorer 3) Copy my latest code back on top of the files I just replaced 4) Open each file in the editor, and click 'yes' when prompted that the file has changed outside Eclipse do I want to replace with current file, so that Eclipse knows about the latest file copy 5) Regenerate the patch for updated files and tar file for new files 6) Upload the new patch and source then update the bug report
I assume you just want to replace all the code in HEAD with your code? It might be easier to merge each plugin with HEAD, then update everything, then mark as merged any files with conflicts. I think that should give you a tree that you can create a patch from. Make a copy of everything first!
Created attachment 89187 [details] Replacement patch file for LoadLeveler support in PTP PE plugin I think I have a correct patch now, named ptp_ibmpe_ll_v2.patch. I assumed you were suggesting I try to use the Team->Merge option in the project explorer view to update the code. I couldn't make that work since it seemed like that was looking for two CVS tags to merge, HEAD and something else. I didn't understand how I would create that second tag. So I ended up doing what I suggested, where I replaced all the source from CVS, copied my changes over that, re-synced my Eclipse workspace so it saw the latest updates, then generated the patch. The org.eclipse.ptp.ibmrm package did not change at all, and is still required. Let me know if there are problems with this patch.
Ok, I managed to get the Java and help plugins patched. For some reason the C plugin is still not working. Do you want to attach the files that have changed and I'll overwrite them?
Also, are you ok if I move the ibmrm widgets into the pe.ui plugin?
Created attachment 89240 [details] org.eclipse.ptp.ibmpe.proxy source files
I uploaded the full source for the changed files in org.eclipse.ptp.ibmpe.proxy. You can also move org.eclipse.ptp.ibmrm as you proposed
I think that has all been committed now. Let me know if anything is missing.