Topic
4 replies Latest Post - ‏2014-08-22T13:19:39Z by andrewop1
valeriegrunsted
valeriegrunsted
1 Post
ACCEPTED ANSWER

Pinned topic Eclipse plugin development - is ClearCase the right version control tool?

‏2010-03-29T15:21:03Z |
We are a UCM shop using ClearCase version 7.0.1.2, with an AIX backend and clients on multiple platforms (Windows XP, AIX, Linux and HP-UX). Our current Windows (XP) clients typically do J2EE development using RSA and the ClearCase SCM adapter (or CCRC plugin to RSA).

Our company has recently started doing Eclipse plugin development, using the Eclipse IDE, and IBM Portal and IBM Lotus Expeditor.

Due to the long lengths of the Eclipse plugin names and directory structures, developers are unable to work with the files that my team (SCM) has clearfsimported on the backend AIX box, due to the Windows pathname limitation documented here:
http://www-01.ibm.com/support/docview.wss?rs=984&uid=swg21120400

They receive errors when trying to create a simple snapshot view, such as the one listed below:

Unable to open file "D:\CC_storage\jdoe10_APP_MAIN_di_2\abc_apps_dev\utl_abc_di\source\com.xyz.framework.bfcc.pcc.sfcc.security.authorization.pdp.rbac.xacml\src\com\xyz\framework\bfcc\pcc\sfcc\security\authorization\xacml\attribute\internal\DDStandardAttributeConverter.java.loading": Filename too long.
Unable to transfer a file: Filename too long.
Unable to copy "c\cdft\1a\2e\6efa4c66e68111de90130002cdcdcd4c" to "D:\CC_storage\jdoe10_APP_MAIN_di_2\abc_apps_dev\utl_abc_di\source\com.xyz.framework.bfcc.pcc.sfcc.security.authorization.pdp.rbac.xacml\src\com\xyz\framework\bfcc\pcc\sfcc\security\authorization\xacml\attribute\internal\DDStandardAttributeConverter.java.loading": Filename too long.
Unable to load "DDStandardAttributeConverter.java".

We on the SCM team have advised developers to shorten the length of the names of their ClearCase views, component names, directory structures and filenames. We have
also instructed them to use "subst" at the command line, to substitute part of the view and vob path name for a drive letter - e.g, subst Q: D:\CC_storage\jdoe10_APP_MAIN_di_2 and use Q: to reference their view.

Even with these suggestions, developers continue to encounter the Windows pathname limitation as their software development continues.
Furthermore, they have concerns that if they shorten the plugin names in ClearCase (e.g., from com.xyz.framework.bfcc.pcc.sfcc.security.authorization.pdp.rbac.xacml to something shorter, like ClearCase component name pdp_rbac), that because com.xyz.framework.bfcc.pcc.sfcc.security.authorization.pdp.rbac.xacml is the plugin name in their Eclipse IDE,
they will then be unable to share their Eclipse workspace with other developers, using the ClearCase export team project set file function. Meaning, that the actual .psf file created in the export from the IDE will be meaningless to the next developer who tries to use it in their workspace.

It is my understanding that this is a Windows OS limitation. IBM is recommending that my company purchase Rational Team Concert (RTC) as the workaround for this limitation. Since we have clients that RTC does not support (AIX, HP-UX), and have invested significant resources and money to implement ClearCase, having to support two different version control products is a less than ideal solution.

What have other shops done to support the version control needs of Eclipse/Portal plugin development? Is ClearCase (Windows side) a workable solution for this kind of development?
Updated on 2010-03-30T12:04:15Z at 2010-03-30T12:04:15Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    47293 Posts
    ACCEPTED ANSWER

    Re: Eclipse plugin development - is ClearCase the right version control tool?

    ‏2010-03-30T11:39:11Z  in response to valeriegrunsted
    We have had similar problems in the past, and used the same workarounds as you have mentioned. But this was sufficient in our case.
    Do you know if this problem also exists with the CCRC ? If not, maybe you could consider upgrading to ClearCase 7.1 and use the CCRC of CC7.1 (should have almost the same functionality as the old CC-client).

    Regards,
    Marc
    • SystemAdmin
      SystemAdmin
      47293 Posts
      ACCEPTED ANSWER

      Re: Eclipse plugin development - is ClearCase the right version control tool?

      ‏2010-03-30T11:57:23Z  in response to SystemAdmin
      The issue is a Windows limitation, CCRC on Windows would still be under the same restrictions. This is not an issue on non-Windows Operating systems.
      Fred Bickford
  • SystemAdmin
    SystemAdmin
    47293 Posts
    ACCEPTED ANSWER

    Re: Eclipse plugin development - is ClearCase the right version control tool?

    ‏2010-03-30T12:04:15Z  in response to valeriegrunsted
    Hi Valerie,
    You are right that there are problems. You will probably not find many people on this list that have good answers to your questions. There are not many ClearCase admins who are also java programmers. Usually ClearCase admins would probably tell the Java people - "this is the problem" and leave it to the java people to find a solution.

    I'd argue that their plugin names are too long. For comparison, look at the names of the plugins provided with Eclipse. For example, in this directory in my system: C:\Program Files\ibm\RationalSDLC\ClearCase\RemoteClient\plugins (or your equivalent), if you take of the version information at the end, the longest name is:
    org.eclipse.cdt.managedbuilder.gnu.ui
    Compare that to the one your developers are suggesting:
    com.xyz.framework.bfcc.pcc.sfcc.security.authorization.pdp.rbac.xacml
    Perhaps a little sanity might prevail... do the really need all of that just for a name??? Long names are supposed to provide clarity. There isn't a lot of clarity in that.
    For java files in the plugin... yes it can be a challenge. But it does seem like they are are being a little unreasonable.

    For the specific example you quote. It seems to imply they have a framework architecture that has a namespace many layers deep. Its not possible to comment on whether that is really necessary without knowing their code but I do wonder. It sort of implies that their may be several different security authorization components in different places within the architecture. It may be necessary to have that many layers for some parts of their code but here?

    Their namespace before the class name has 11 levels (that is the different levels separated by dots). I looked at a couple of other frameworks just for fun... I could not find any with more than six levels. I'm not saying there are not any with that many but I didn't see any in my quick check. Draw your own conclusions.

    Finally, even if they switched to another version control system, in Windows they are still going have a problem. Of the name you gave:
    D:\CC_storage\jdoe10_APP_MAIN_di_2\abc_apps_dev\utl_abc_di\source\com.xyz.framework.bfcc.pcc.sfcc.security.authorization.pdp.rbac.xacml\src\com\xyz\framework\bfcc\pcc\sfcc\security\authorization\xacml\attribute\internal\DDStandardAttributeConverter.java.loading

    Only D:\CC_storage\jdoe10_APP_MAIN_di_2\abc_apps_dev I'd argue can be attributed to ClearCase (and maybe the .loading on the end?) The rest would be required anyway, or at least something very similar.

    If they used some other version control system in Windows they still have to put the file somewhere. Lets say it was D:\workspaces\abc_apps_dev instead of D:\CC_storage\jdoe10_APP_MAIN_di_2\abc_apps_dev.

    That is only 20 characters shorter (or maybe 28 if the .loading is ClearCase's fault). They are right at the limit of what Windows supports even without ClearCase in the picture. If they keep using the sort of naming conventions they are at present they are bound to hit the wall anyway.

    Regards,
    Mark
    • andrewop1
      andrewop1
      1 Post
      ACCEPTED ANSWER

      Re: Eclipse plugin development - is ClearCase the right version control tool?

      ‏2014-08-22T13:19:39Z  in response to SystemAdmin

      Hello

       

      you are welcome to this site

      Long Path Tool is the most appropriate program to sort out such issues

      -------------------------