Please take our Survey
logo       

Choosing A Webhost:
A web hosting service is a type of Internet hosting service that allows individuals and organizations to provide their own website accessible via the World Wide Web. Web hosts are companies that provide space on a server they own for use by their clients as well as providing Internet connectivity, typically in a data center. Web hosts can also provide data center space and connectivity to the Internet for servers they do not own to be located in their data center, called colocation. more...

Fix for renamed changelist number: msg#00000

version-control.revml

Subject: Fix for renamed changelist number

Hi,

I've been importing a rather large CVS repository into a Perforce
server. This import takes approximately 5 days to complete (yes,
really). All the while, the destination Perforce server is in normal
use by a few hundred other developers, that regularly submit stuff.

In this case, when it has a lot of incoming requests queued, the
Perforce server sometimes decides to rename changelist numbers at the
last instant of the submit, as in:

Change 131688 created with 15947 open file(s).
Submitting change 131688.
Locking 15947 files ...
add //depot-foo/bar#1
[...15946 more files...]
Change 131688 renamed change 131700 and submitted.

Unfortunately, vcp picks up the first changelist number that is output,
and tries to do some post-submit modifications to that specific
changelist. This will then fail, because the earlier number doesn't
exist.

I would like to propose the following diff, which should fix the issue.
It does a little bit stricter matching on the "Change NNNN submitted"
line, and handles the "Change NNNN renamed change MMMM and submitted"
case.


diff -u a/lib/VCP/Dest/p4.pm b/lib/VCP/Dest/p4.pm
--- a/lib/VCP/Dest/p4.pm 2007-06-05 10:04:31.000000000 +0200
+++ b/lib/VCP/Dest/p4.pm 2007-12-21 11:14:16.000000000 +0100
@@ -565,7 +565,10 @@
if ( $line =~ m{^\w+\s+//(.*)#(\d+)\z} ) {
$p4_rev_ids{$1} = $2;
}
- elsif ( $line =~ m{^Change (\d+) } ) {
+ elsif ( $line =~ m{^Change (\d+) renamed change (\d+) and submitted}
) {
+ $change_number = $2;
+ }
+ elsif ( $line =~ m{^Change (\d+) submitted} ) {
$change_number = $1;
}
}


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
hardware.arm.at...    cms.citadel.dev...    video.gstreamer...    java.facelets.u...    misc.basics.qna...    web.wiki.instik...    network.uip.use...    xdg.devel/2003-...    tex.bibtex.bibd...    finance.quotesp...    ietf.zeroconf/2...    redhat.blinux.g...    suse.db2/2003-0...    php.phpesp/2004...    uml.devel/2003-...    gnome.labyrinth...    qnx.openqnx.dev...    boot-loaders.gr...    db.dataperfect....    audio.audacity....    linux.uclinux.m...    editors.j.devel...    os.openbsd.tech...    kde.users.multi...   
Home | advertise | OSDir is an inevitable website. super tiny logo

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe

Navigation