Easy questions this time. ;)
Ø How much trouble is the conversion process?
Not too much.
The biggest problem of the conversion that I see is the archive.
However, in your case, you will probably have the archive *not* NFS-shared since your geographic location is different.
In that case, you should be OK.
What I would do is this:
- Create a different server id for the edge server;
- Wait until the replica gets in sync with the master;
- Shut down the replica;
- Remove several db files (the way Perforce documented – let me know if you don’t know where – I can find it);
- Update the serverid on disk in the P4ROOT directory;
- Restart the server with a different server id.
I’m sort of thinking out loud, but it should work.
Alternatively, you can rebuild the server from a checkpoint. I would just save time since the replica is in sync with the master. After a restart it will continue replicating whatever happened on the master in the meantime.
More importantly IMHO is to figure out the DR strategy and maintenance.
One-time conversion is relatively easy. Maintenance is a whole different matter.
You may have some DR approach for the master. How will it work for the edge server?
Do you do fail-overs of the master?
You have to deal with replicas, so they would correctly “switch” from the old server to the new one.
The same thing – but somewhat more complex – is with the edge server.
We still have a number of wrinkles of the failover process, and having edge servers in the infrastructure further complicates the situation.
Test it well before going into production.
--Mike
From: Garner Halloran [mailto:***@gmail.com]
Sent: Wednesday, July 9, 2014 8:11 PM
To: Michael Mirman
Cc: perforce-***@perforce.com
Subject: Re: [p4] Edge server vs forward replica
Very useful, thanks!
I'm now leaning a little more towards edge servers, but I'm also considering starting with a forward replica and converting it later if I really need it. How much trouble is the conversion process?
Oh and one more question I forgot. What about shelving with Edge servers? Are the shelves local or global?
On Wed, Jul 9, 2014 at 3:29 PM, Michael Mirman <***@mathworks.com<mailto:***@mathworks.com>> wrote:
Garner -
We are in the process of replacing our forwarding replicas with edge servers.
We think it will take a few more months, but it's definitely worth it.
we do use branch specs for integrating between projects
Can Edge Servers handle this?
Certainly. Integrations are done locally, opening files in the clients on the edge server.
If our VPN goes down, we lose Perforce access. Our tools require Perforce access.
Will either or both handle this situation?
This is a great question. I'd like to say with the 98% certainty, YES.
I'm leaving a couple of percentage points for cases like this:
We understand that not only commands like "p4 commit" is passed through to the commit server, but also things like "branch -i", "stream -i", and other similar commands.
Then, what happens is: the edge server - just like a forwarding replica - will wait until the information that was written on the commit server comes back through the replication channel (pull).
Only after this information comes back and replayed on the edge server, the user gets back control on the command line (or where ever the command was issued).
So, in normal circumstances, we observe a delay when this happens - sometimes small, sometimes not so small - it depends.
If the master goes down, and my "p4 submit" sees it immediately and fails because it could not connect, I don't see any problem.
However, there are other cases, when the server is unresponsive, but the TCP connection goes through.
Now I am stuck.
I think we've had some cases like this, when everything was hung, but it's very rare, and I can't really give a specific workflow that would definitely lead to it.
There are a number of issues we filed with Perforce Support in regards to the edge servers, but almost all of them can be worked around.
The technology is still very young, but all in all, edge servers seem the way to go. :-)
--Michael Mirman
508-647-7555<tel:508-647-7555>
MathWorks, Inc.
3 Apple Hill Dr, Natick, MA 01760
-----Original Message-----
From: perforce-user-***@perforce.com<mailto:perforce-user-***@perforce.com> [mailto:perforce-user-***@perforce.com<mailto:perforce-user-***@perforce.com>] On Behalf Of Garner Halloran
Sent: Wednesday, July 09, 2014 2:38 PM
To: perforce-***@perforce.com<mailto:perforce-***@perforce.com>
Subject: [p4] Edge server vs forward replica
Our company is trying to decide whether to use a forward replica or an edge
server and while I understand the basic differences I'd like some help in
determines which one best suits our needs.
Currently we have a master (commit) server in Burbank and a proxy in
Durham. It's the Durham location we want to change.
People from both locations need to be able to sync, edit, integrate, etc
from any of the depots. Edge servers talk about handling things locally
including branch specs and labels. We hardly use labels anymore, but we do
use branch specs for integrating between projects. Can Edge Servers handle
this?
Another reason we want to move away from a proxy is being more self
sufficient. If our VPN goes down, we lose Perforce access. Our tools
require Perforce access. Will either or both handle this situation? Any
caveats?
Thanks!
_______________________________________________
perforce-user mailing list - perforce-***@perforce.com<mailto:perforce-***@perforce.com>
http://maillist.perf