[Anthill] VSS help needed

Marcio Marchini marcio at bedarra.com
Tue Nov 22 10:08:16 CST 2005


Brian,

	The build was "hanging" forever in AnthillOS without the patch (would 
never leave the queue, showing "being built" forever). So, I decided to 
give your quote patch a try, to see if it would fix it (remember, I no 
longer have spaces in teh UNC path, and was running the original 
pagelets again). Well, it turns out that now I get an error:

11:00:47:061 [Thread - AnthillBuildDaemon] DEBUG 
com.urbancode.pagelet.PageletCompiler  - PageletCompiler.compile(): 
javac -classpath 
"C:\java\anthill-1.8.0.264\lib\activation.jar;C:\java\anthill-1.8.0.264\lib\anthill-1.8.0.264.jar;C:\java\anthill-1.8.0.264\lib\antlr.jar;C:\java\anthill-1.8.0.264\lib\Butler-1.0.75.jar;C:\java\anthill-1.8.0.264\lib\CommonsExecute.jar;C:\java\anthill-1.8.0.264\lib\CommonsUtil-0.0.3.jar;C:\java\anthill-1.8.0.264\lib\jakarta-regexp-1.2.jar;C:\java\anthill-1.8.0.264\lib\log4j.jar;C:\java\anthill-1.8.0.264\lib\mail_1_2.jar;C:\java\anthill-1.8.0.264\lib\Pagelets-3.1.5.jar;C:\java\anthill-1.8.0.264\lib\Pagelets-email-3.1.5.jar;C:\java\anthill-1.8.0.264\lib\servlet_2_2b.jar;;C:\Program 
Files\Apache Software Foundation\Tomcat 5.5\bin\bootstrap.jar" 
C:\java\anthill-1.8.0.264\pagelets\Win32\win_vss\getRevisionsSince_pgl.java
11:00:49:515 [Thread - AnthillBuildDaemon] INFO 
com.urbancode.anthill.adapter.VSSRepositoryAdapter  - get revisions 
since command: cmd /x/c cd /d 
"C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" && 
"\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample" 
-Y"builds" &&
  "\\develdata01\sourcesafe\Foo3\win32\ss" history -Y"builds" -R -I-Y 
-vd11/22/2005;11:00A~11/22/2005;10:32A"
11:00:49:515 [Thread - AnthillBuildDaemon] ERROR 
com.urbancode.anthill.adapter.VSSRepositoryAdapter  - Error in 
getRevisionsSince: unbalanced quotes in cmd /x/c cd /d 
"C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" && 
"\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample" 
-Y"builds" &&  "\\develdata01\sourcesafe\Foo3\win32\ss" history 
-Y"builds" -R -I-Y -vd11/22/2005;11:00A~11/22/2005;10:32A"
java.lang.Exception: unbalanced quotes in cmd /x/c cd /d 
"C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" && 
"\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample" 
-Y"builds" &&  "\\develdata01\sourcesafe\Foo3\win32\ss" history 
-Y"builds" -R -I-Y -vd11/22/2005;11:00A~11/22/2005;10:32A"
	at 
com.urbancode.anthill.adapter.ProfileRepositoryAdapter.toArray(ProfileRepositoryAdapter.java:548)
	at 
com.urbancode.anthill.adapter.VSSRepositoryAdapter.getRevisionsSince(VSSRepositoryAdapter.java:172)
	at com.urbancode.anthill.BuildManager.loadRevisions(BuildManager.java:287)
	at com.urbancode.anthill.BuildManager.build(BuildManager.java:215)
	at 
com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:231)
	at com.urbancode.anthill.BuildDefinition.run(BuildDefinition.java:158)
	at com.urbancode.anthill.BuildDaemon.run(BuildDaemon.java:73)
11:00:49:515 [Thread - AnthillBuildDaemon] ERROR 
com.urbancode.anthill.BuildManager  - unbalanced quotes in cmd /x/c cd 
/d "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" && 
"\\develdata01\sourcesafe\Foo3\win32\ss" cp "$/ContinuousBuildExample" 
-Y"builds" &&  "\\develdata01\sourcesafe\Foo3\win32\ss" history 
-Y"builds" -R -I-Y -vd11/22/2005;11:00A~11/22/2005;10:32A"
com.urbancode.anthill.adapter.RepositoryException: unbalanced quotes in 
cmd /x/c cd /d "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" 
&& "\\develdata01\sourcesafe\Foo3\win32\ss" cp 
"$/ContinuousBuildExample" -Y"builds" && 
"\\develdata01\sourcesafe\Foo3\win32\ss" history -Y"builds" -R -I-Y 
-vd11/22/2005;11:00A~11/22/2005;10:32A"
	at 
com.urbancode.anthill.adapter.VSSRepositoryAdapter.getRevisionsSince(VSSRepositoryAdapter.java:220)
	at com.urbancode.anthill.BuildManager.loadRevisions(BuildManager.java:287)
	at com.urbancode.anthill.BuildManager.build(BuildManager.java:215)
	at 
com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:231)
	at com.urbancode.anthill.BuildDefinition.run(BuildDefinition.java:158)
	at com.urbancode.anthill.BuildDaemon.run(BuildDaemon.java:73)
11:00:49:624 [Thread - AnthillBuildDaemon] DEBUG 
com.urbancode.pagelet.PageletFactory  - Using default




	So, I think the patch is probably incorrect.

	Maybe you forgot to patch some files?

	I will try to re-apply the patch teh way I did it way back, to see if 
it helps.


	Cheers,

marcio


Brian Dellisanti wrote:
> Marcio,
> 
> I'm afraid I can't find any spot in the pagelet with a component that 
> isn't being quoted. Do you have a command string generated by Anthill OS 
> you can send me or can you point me to the spot in the pagelet that 
> needs quoting?
> 
> Regards,
> Brian
> 
> Marcio Marchini wrote:
> 
>> Hi Brian,
>>
>>     I had already applied a similar patch here (quote before the cd, 
>> and end quote in all other pagelets) but I ran into another problem. 
>> If the path to the UNC drive where VSS is had a space, it would also 
>> fail.
>>
>>     Something like this: \\foo\bar\prj 2.0\
>>
>>     The equivalent test case is:
>>
>> 1) go to c:\temp
>> 2) run this:   cmd /x/c cd "\Documents and Settings" && dir
>> the contents of "\Documents and Settings" is *not* listed
>> instead, you get c:\temp
>>
>>     You need the quotes around the whole thing and also individual 
>> paths which could also have spaces:
>>
>>
>> 1) go to c:\temp
>> 2) run this:   cmd /x/c "cd "\Documents and Settings" && dir"
>> the contents of "\Documents and Settings" *is* listed
>>
>>
>>     Anyway, I got the VSS admin folks here to rename their dir to 
>> avoid the space for now. This means I can no longer test your patch 
>> for the space problem :-(
>>
>>     So... I am not sure it is ok to commit the fix. As I said, the 
>> space exposed a problem with the patch. What is even more strange... 
>> after they removed the space, I was able to run even without the patch.
>>
>>     Strange and confusing. I am sorry I no longer have my original 
>> test case (dir with space) :-(  Can you by any chance try this scenario?
>>
>> marcio
>>
>>
>> Brian Dellisanti wrote:
>>
>>> Marcio,
>>>
>>> I checked and I do believe it's a bug in Anthill OS. I put some 
>>> updated pagelets you download at 
>>> http://www.urbancode.com/download/anthill_os/vss.zip that contain the 
>>> quotes as you describe. I believe this will also resolve the problem 
>>> of SSDIR not getting picked up. You need to replace the contents of 
>>> your conf/profiles/Win32/win_vss directory with the contents of the 
>>> zip and restart your servlet container. Please let me know if that 
>>> works for you and I'll resolve the issue and merge the fix.
>>>
>>> Regards,
>>> Brian
>>>
>>> Marcio Marchini wrote:
>>>
>>>>
>>>>     Ok, I think it is an Anthill bug.
>>>>
>>>>     Try this:
>>>>
>>>> 1) go to c:\temp
>>>> 2) run this:   cmd /x/c cd C:\windows && dir
>>>> the contents of c:\windows is *not* listed
>>>> instead, you get c:\temp
>>>>
>>>>
>>>>     Now try this:
>>>>
>>>> 1) go to c:\temp
>>>> 2) cmd /x/c "cd C:\windows && dir"
>>>> the contents of c:\windows *is* listed
>>>>
>>>>
>>>>     Fair enough, http://www.ss64.com/nt/cmd.html says:
>>>>
>>>>
>>>> If /C or /K is specified, then the remainder of the command line is
>>>> processed as an immediate command in the new shell. Multiple commands
>>>> separated by the command separator '&&' are accepted if surrounded 
>>>> by quotes.
>>>>
>>>>
>>>>
>>>>     But if you look at the Anthill pagelet for VSS 
>>>> (getCommandInit_pgl.java):
>>>>
>>>> }    // line 35
>>>>     out.write("cmd /x/c cd /d \"");    // line 35
>>>>     out.write(String.valueOf(localProjectDir));    // line 36
>>>>     out.write("\"");    // line 36
>>>>     out.write(String.valueOf(ssDirStr));    // line 36
>>>>     out.write(" && \"");    // line 36
>>>>     out.write(String.valueOf(ssExeStr));    // line 36
>>>>     out.write("\" cp \"$/");    // line 36
>>>>     out.write(String.valueOf(module));    // line 36
>>>>     out.write("\"");    // line 36
>>>>     out.write(String.valueOf(userNamePassStr));    // line 36
>>>>     out.write(" &&");    // line 36
>>>>     out.write("\n");    // line 36
>>>> }
>>>>
>>>>
>>>>
>>>>
>>>>     Note how there's no \"  before "cd /d...", and no corresponding 
>>>> close double quotes at the very end.
>>>>
>>>>
>>>>     Can an Anthill developer confirm this please?
>>>>
>>>>     Thanks,
>>>>
>>>> marcio
>>>>
>>>>
>>>> Marcio Marchini wrote:
>>>>
>>>>>
>>>>> Correction: if I run from the cmd-line, from c:\temp:
>>>>>
>>>>> cmd /x/c cd /d 
>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample && 
>>>>> v:\win32\ss cp $/ContinuousBuildExample -Ybuilds && v:\win32\ss get 
>>>>> * -Ybuilds -R -I-Y -O-
>>>>>
>>>>>
>>>>> The checkout does happen, and into the current dir, c:\temp, and 
>>>>> not into the "C:\java\anthill-1.8.0.264\work\ContinuousBuildExample"
>>>>>
>>>>>
>>>>> Any suggestions? It looks like these commands are being executed in 
>>>>> separate contexts and therefore the "cd /d 
>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample" does not 
>>>>> apply later on.
>>>>>
>>>>> I suspect this may be the same problem that the Tomcat service is 
>>>>> having. It is probably failing because ContinuousBuildExample  
>>>>> probably does not exist as a subdir wherever "." is when the 
>>>>> service is running.
>>>>>
>>>>>
>>>>>     Suggestions? Thanks,
>>>>>
>>>>>
>>>>> marcio
>>>>>
>>>>> Marcio Marchini wrote:
>>>>>
>>>>>>
>>>>>>     Thanks for the tip. Now the error changed.
>>>>>>
>>>>>> 1)In the Tomcat log:
>>>>>> -------------------
>>>>>> The system cannot find the drive specified.
>>>>>>
>>>>>>
>>>>>> 2)If I run from the command-line:
>>>>>> -------------------------------
>>>>>> C:\>cmd /x/c cd /d 
>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample && v:\w
>>>>>> in32\ss cp $/ContinuousBuildExample -Ybuilds && v:\win32\ss get * 
>>>>>> -Ybuilds -R -I
>>>>>> -Y -O-
>>>>>> Current project is $/ContinuousBuildExample
>>>>>>
>>>>>> But nothing under 
>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample (empty dir).
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>     So, 2 separate problems.
>>>>>>
>>>>>>
>>>>>> In #1 I thought that perhaps v:\ was not mapped for the Tomcat 
>>>>>> service (I run as a service). I changed the properties of the 
>>>>>> service to run under my user, which has the v:\ drive mapped, but 
>>>>>> I still get the problem above. Is it possible that mapped drives 
>>>>>> are not mounted for processes launched as services even if using 
>>>>>> my login? Maybe they are forked before the network drive is 
>>>>>> mapped? I tried using the \\foo\bar notation but that one also 
>>>>>> failed with the same error, so I am puzzled. (Note: the \\foo\bar 
>>>>>> path has spaces, so I was suspecting that the space might be the 
>>>>>> cause of the problem, so I tried mapping v:\ to it)
>>>>>>
>>>>>> In #2 the thing seems to work but no checkout happens. I suppose I 
>>>>>> should have got some files? I never used VSS, so please bare with 
>>>>>> me. My friend tells me he added the code to the VSS repository as 
>>>>>> $/ContinuousBuildExample... is there a way for me to double check? 
>>>>>> Just to make sure he did not make a mistake.
>>>>>>
>>>>>>     Thanks,
>>>>>>
>>>>>> marcio
>>>>>>
>>>>>>
>>>>>> joel.wiens at thomson.com wrote:
>>>>>>
>>>>>>> Marcio,
>>>>>>> I had the same problem.  I was able to resolve it by setting a SSDIR
>>>>>>> environment variable on the server which points to the 
>>>>>>> srcsafe.ini file.
>>>>>>> Then when you are configuring the VSS Repository Adapter for your
>>>>>>> Anthill project, leave the srcsafe.ini option blank.
>>>>>>>
>>>>>>> Joel
>>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: anthill-bounces at lists.urbancode.com
>>>>>>> [mailto:anthill-bounces at lists.urbancode.com] On Behalf Of Marcio
>>>>>>> Marchini
>>>>>>> Sent: Friday, November 18, 2005 12:42 PM
>>>>>>> To: anthill at lists.urbancode.com
>>>>>>> Subject: [Anthill] VSS help needed
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>>     AnthillOS is not able to do teh VSS checkout. I am not familiar
>>>>>>> with VSS, but my friend is. On the other hand, he is not familiar 
>>>>>>> with
>>>>>>> AnthillOS and I am.
>>>>>>>
>>>>>>>     I checked teh Tomcat logs to see what the VSS Pagelet was
>>>>>>> running, and tried it myself:
>>>>>>>
>>>>>>> C:\>cmd /x/c cd /d 
>>>>>>> C:\java\anthill-1.8.0.264\work\ContinuousBuildExample
>>>>>>> && set
>>>>>>> SSDIR=v:\ && v:\win32\ss cp $/ContinuousBuildExample -Ybuilds &&
>>>>>>> v:\win32\ss get
>>>>>>>   * -Ybuilds -R -I-Y -O-
>>>>>>> No VSS database (srcsafe.ini) found.  Use the SSDIR environment 
>>>>>>> variable
>>>>>>> or run netsetup.
>>>>>>>
>>>>>>>
>>>>>>>     But the file does exist:
>>>>>>>
>>>>>>> C:\>dir v:\srcsafe.ini
>>>>>>>   Volume in drive V is Data Files
>>>>>>>   Volume Serial Number is 90F0-F942
>>>>>>>
>>>>>>>   Directory of v:\
>>>>>>>
>>>>>>> 16/11/2005  03:50 PM             1,225 srcsafe.ini
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>     What's going on? Any tips?
>>>>>>>
>>>>>>>     Thanks,
>>>>>>>
>>>>>>> marcio
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Anthill mailing list
>>>>>>> Anthill at lists.urbancode.com
>>>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>>>> _______________________________________________
>>>>>>> Anthill mailing list
>>>>>>> Anthill at lists.urbancode.com
>>>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Anthill mailing list
>>>>> Anthill at lists.urbancode.com
>>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Anthill mailing list
>>>> Anthill at lists.urbancode.com
>>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>>>
>>> _______________________________________________
>>> Anthill mailing list
>>> Anthill at lists.urbancode.com
>>> http://lists.urbancode.com/mailman/listinfo/anthill
>>
>>
>>
>> _______________________________________________
>> Anthill mailing list
>> Anthill at lists.urbancode.com
>> http://lists.urbancode.com/mailman/listinfo/anthill
>>
> _______________________________________________
> Anthill mailing list
> Anthill at lists.urbancode.com
> http://lists.urbancode.com/mailman/listinfo/anthill




More information about the Anthill mailing list