<br><br><div class="gmail_quote">2008/2/2 Garrick Staples <<a href="mailto:garrick@usc.edu">garrick@usc.edu</a>>:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Sat, Feb 02, 2008 at 02:45:51AM -0500, Glen Beane alleged:<br><div><div></div><div class="Wj3C7c">> I've just checked in some changes into trunk that increase the PBS_JOBBASE<br>> constant from 11 to 61. This allows for 64 char .JB and .SC files on<br>
> pbs_server/pbs_mom<br>><br>> the previous 14 char limit was too small when you combine large job sequence<br>> nubmers and large job arrays - we just couldn't hash those 11 characters<br>> enough to make the neessary number of unique file names.<br>
><br>> This should help the job arrays scale much better.<br>><br>> .JB files with the old size for their jobbase array are automatically<br>> upgraded when pbs_server starts<br>> we used a similar auto upgrader from 2.1.x to 2.2.0. the only down side is<br>
> if you upgrade to 2.3.x you wouldn't be able to recover your jobs if you<br>> downgrade back to 2.2.x (they will be renamed as .BD files I think)<br><br><br></div></div>Would it make sense to rename the existing files when pbs_server or pbs_mom<br>
restarts?<br></blockquote></div><br>I have about 90% of the code done for this but I'm not convinced its worth the trouble. It isn't too difficult, but the biggest pain is this:<br><br>the code to do this should be contained in the version specific function called by job_qs_upgrade. job_qs_upgrade is called by job_recov, which is passed a filename from pbsd_init. By the time control is back into pbsd_init the filename it has might no longer be valid. If something went wrong and job_recov failed, pbsd_init will try to rename this file, but the filename it has is no longer valid and an error is logged and the "bad" job file does not get the .BD extension and pbs_server will attempt to recover it again if it is restarted.<br>
<br>it won't hurt anything to keep legacy filenames for jobs recovered and upgraded, and the code to rename the files is growing much larger than I had anticipated and the impact is extending beyond the version specific function in job_qs_upgrade.c<br>
<br>I think I would rather leave this code out.<br><br>