It's all about the answers!

Ask a question

Why does lscm changeset extract say successful but is not successful?


Andy Jewell (24236174) | asked Oct 23 '14, 12:37 p.m.
edited Oct 23 '14, 12:39 p.m.
I seem to have problems with this command off and on.  Sometimes using little tricks works but now I'm just stumped.  For example:

c:\rtctool>lscm -u y ls changes -w "hp mbe o 2013 11 01 o386600"  _6ME7MRy6EeSZhI972y06VA
Change sets:
  (2695:_6ME7MRy6EeSZhI972y06VA) ---$ Andrew P Jewell "This is a normal deployment"
    Component: (1349:_YyeQ0UDBEeO0tKtHYG0uSA) "scbcfg"
    Modified: 05-Aug-2014 09:10 AM
    Changes:
      ---c- (2775:_mvMjAEDEEeOonPJBrL5UZQ) \mpc\CG3-alter-505-SB1-022-qc5817.sql
      ---c- (2776:_mvrrMEDEEeOonPJBrL5UZQ) \mpc\CG3-alter-506-SB1-023-qc4852.sql
      ---c- (2777:_QFCd8BkKEeSC_7ryYoonHg) \mpc\CG3-alter-507-SB1-023-qc4852.sql
      ---c- (2778:_RjVA4BkKEeSC_7ryYoonHg) \mpc\CG3-alter-508-SB1-023-qc4852.sql

Now try to extract:

c:\rtctool>lscm.bat changeset extract -w "hp mbe o 2013 11 01 o386600" _6ME7MRy6EeSZhI972y06VA "mpc\CG3-alter-508-SB1-023-qc4852.sql" C:\rtctool\checkout\scbcfg\mpc\CG3-alter-508-SB1-023-qc4852.sql
Problem running 'changeset extract':
"mpc\CG3-alter-508-SB1-023-qc4852.sql" does not exist within the changeset.

c:\rtctool>lscm.bat changeset extract  -w "hp mbe o 2013 11 01 o386600" _6ME7MRy6EeSZhI972y06VA "\mpc\CG3-alter-508-SB1-023-qc4852.sql" c:\rtctool\checkout\scbcfg\mpc\CG3-alter-508-SB1-023-qc4852.sql
Problem running 'changeset extract':
"\mpc\CG3-alter-508-SB1-023-qc4852.sql" does not exist within the changeset.

c:\rtctool>lscm.bat changeset extract -w "hp mbe o 2013 11 01 o386600" _6ME7MRy6EeSZhI972y06VA "mpc/CG3-alter-508-SB1-023-qc4852.sql" c:\rtctool\checkout\scbcfg\mpc\CG3-alter-508-SB1-023-qc4852.sql
Problem running 'changeset extract':
"mpc/CG3-alter-508-SB1-023-qc4852.sql" does not exist within the changeset.
c:\rtctool>lscm.bat changeset extract  -w "hp mbe o 2013 11 01 o386600" _6ME7MRy6EeSZhI972y06VA "\\mpc\\CG3-alter-508-SB1-023-qc4852.sql" c:\rtctool\checkout\scbcfg\mpc\CG3-alter-508-SB1-023-qc4852.sql
Problem running 'changeset extract':
Unable to get canonical form of path \\mpc
	

Ok, none of the obvious paths are working.  So let's try by UUID:

c:\rtctool>lscm.bat changeset extract -w "hp mbe o 2013 11 01 o386600" _6ME7MRy6EeSZhI972y06VA _RjVA4BkKEeSC_7ryYoonHg c:\rtctool\checkout\scbcfg\mpc\CG3-alter-508-SB1-023-qc4852.sql
Successfully extracted file to "C:\rtctool\checkout\scbcfg\mpc\CG3-alter-508-SB1-023-qc4852.sql".

Seems to work, but actually nothing is there:

c:\rtctool>dir checkout\scbcfg\mpc\
 Volume in drive C is Local Disk
 Volume Serial Number is 6E9F-6270
 Directory of c:\rtctool\checkout\scbcfg\mpc
10/23/2014  08:33 AM    <DIR>          .
10/23/2014  08:33 AM    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  178,348,171,264 bytes free

Am I doing something wrong?  I'm actually revisiting code that used to work completely but apparently something has changed - it's not a version change, we've only ever had v4.0.3.  Does anyone else do changeset extracts in a different way?

One answer



permanent link
Andy Jewell (24236174) | answered Oct 24 '14, 7:12 p.m.
 I kept running into issues with this including runtime exceptions when checking out by UUID if I'd already checked out that UUID and then deleted the file.  However, I've found that it's much more predictable to checkout to a folder a single level deep (e.g. c:\temp).  Seems like checking out to a longer path brings on whackiness.  So for future readers, my approach was to use the UUID of the versionable path in the changeset to extract, extract it to a safe temp directory (temp directory should be as simple as possible or this can raise issues with it parsing it as a canonical path) then copy into the path you want using basic filesystem management.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.