17 messages in com.perforce.perforce-user[p4] Multi-site, multi-project, multi...
FromSent OnAttachments
Eric D. Blom22 Apr 2005 08:42 
Lee Marzke22 Apr 2005 09:22 
Eric D. Blom25 Apr 2005 15:07 
Grills, Jeff25 Apr 2005 16:10 
Lee Marzke25 Apr 2005 19:58 
Todd Short (tshort)26 Apr 2005 06:52 
Dave Lewis26 Apr 2005 08:15 
Eric D. Blom26 Apr 2005 08:17 
Ivey, William26 Apr 2005 08:17 
Eric D. Blom26 Apr 2005 08:19 
Todd Short (tshort)26 Apr 2005 08:47 
Wright, Richard26 Apr 2005 11:08 
Robert Cowham26 Apr 2005 11:30 
Tetlow, Gordon26 Apr 2005 12:18 
Grills, Jeff26 Apr 2005 18:56 
Grills, Jeff26 Apr 2005 19:38 
Chuck Karish03 May 2005 11:00 
Subject:[p4] Multi-site, multi-project, multi-platform deployment
From:Lee Marzke (le@marzke.net)
Date:04/25/2005 07:58:51 PM
List:com.perforce.perforce-user

Eric,

Glad to help. Yes, the 5/2003 post is the one I remember; I found it in my archived email. Any reason your not happy with that solution ?

I generally prefer Python scripts, especially with the built-in Perforce support for Python marshalled output. I've had problems with some perl scripts on Windows, so running the server on Linux is definitely to your advantage.

Eric D. Blom wrote:

Lee, Thanks for your input. In our case I believe the amount of sharing will make a single server the best solution. I guess if we start off that way we can always split things up easily enough.

As for the protections, I found a message from May of 2003 by Jef Grills. I searched for protect and script. Do you have any key words for something a little more recent?

Cheers, Eric

On Apr 22, 2005, at 9:22 AM, Lee Marzke wrote:

Eric,

A lot may depend on how you structure your development organization.

If developers in each of the three groups ( west, east, Asia ) all must work down to the individual source files for all of your code base, then a single repository may be the best fit.

However, if you have segregated work so that some groups are responsible for "packages" or libraries, and they issue releases ( a branch in P4 ) then using multiple repositories, with the perforce "remote depot" option may work quite well for you.

For example if the Asia group released a library, then it would be visible "read-only" in the US as a remote depot. Local developers could not change it, but they could branch it locally, if they needed an emergency patch, and the Asia group would have to pull the changes back to Asia and incorporate them into the next release.

For large number of users the Perforce protections table is often not easy to use. Some sites store the Perforce protections in their own internal format, and use a script to create the Perforce protections. Some example were distributed on the list recently. Also, since users move around from team-to-team and project-to-project, your admin workload will be much less if your security can tolerate having fewer groups. You might structure it related to job function ( engineers, testers, documentation changes only, etc ) since these tend to change less frequently

I believe that in a large server, the limiting factor is almost aways RAM, and your disk performance is not a factor. ReiserFS and XFS may deal with lots of small files, or directories with huge number of files better than EXT3, however.

You should read the Performance notes at Perforce that cover many of your questions.

See the "Performance" link on the right side of the page. http://www.perforce.com/perforce/technotes.html

Eric D. Blom wrote:

Our corporate parent has accepted a recommendation to expand the use of perforce from our single design center and product line to the entire corporation. I'm looking for suggestions on how to successfully deploy perforce in a multi-site, multi-project, multi-platform environment.

Some questions: 1) When do you not use a single server? I like the idea of having a single server because it would make sharing code easier. There are only two reasons I can see not having a single server a) single point of failure. We will have users on the west and east coasts of the USA and in asia. Wouldn't want a server problem to stop work during my night. b) performance. Perforce performance is good over the WAN, but, the sub 1/2 second response times you get on the LAN are very nice.

2) How do you manage protections? I wish you could authorize a person to mange a group in perforce so that a project lead or site manager could add and remove users without needing super user access to the server, but, it appears that it is not possible. Do you normally have protections set up along the lines of sites, teams, projects, or something else. Do you create a large number of groups? Do you put individual user entries in your protection file?

3) Should each site have a super user?

4) Depot per team, site, project?

5) Is XFS worth it? I've head that the XFS filesystem provides the best performance. Is it worth the work to use it compared to EXT3 on a Linux machine?

Thank you for your responses to my questions above or any other areas you believe I should be focusing on.

Cheers, Eric

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Eric D. Blom Toll Free: 800-669-0557 Senior Staff Design Engineer Tel: 425-787-4825 Cypress MicroSystems Fax: 425-787-4641 ebx at cypress.com www.cypress.com =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Eric D. Blom Toll Free: 800-669-0557 Senior Staff Design Engineer Tel: 425-787-4825 Cypress MicroSystems Fax: 425-787-4641 ebx at cypress.com www.cypress.com =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=