0

I've been trying to setup codeswarm for kicks at work using the activity log generated by our perforce depot. I am however running into some troubles following the guide/wiki on the google-code site and was wondering if maybe anyone had experiences with setting it up for a perforce server they could share?

I am running into UTF-8 encoding issues as well as it's taking a bloody long time I believe. My activity log generated by the python script is 65k. I have seen videos of other seemingly large projects so I cannot tell if this is the cause.

Any help appreciated. Thanks

vidstige
  • 12,492
  • 9
  • 66
  • 110
Setheron
  • 3,520
  • 3
  • 34
  • 52
  • I'm pretty sure this is doable as one of my colleagues has got it working. Not too sure about any issues he had though. – cristobalito Dec 25 '10 at 14:03
  • Can you be more specific about your "troubles"? I got codeswarm working on some large perforce depots at my site and ran into no troubles. – Mark Jan 05 '11 at 17:50
  • I've got the scripts working too on a rather hugemongous project. Please elaborate on your "troubles". – vidstige Jan 15 '12 at 15:11
  • @vidstige I did end up getting it working much later. I had to modify the Python script however (don't remember what I did). – Setheron Jan 16 '12 at 16:01
  • I should've commit my changes :( – Setheron Jan 16 '12 at 16:01
  • This question would be more valuable if it had detailed information about the problems encountered, and about the changes made to resolve them. Down-voted in the hope that information can be recovered and added to the question. – Bryan Pendleton Jan 18 '12 at 23:19

1 Answers1

0

I just ran into similar issues with runtime. My interest is in visualizing only the most recent development cycle for my company's large project, which consisted of approximately 10000 Perforce changelists.

Looking at convert_logs.py, I saw it was making a direct call to p4 -G changelists which would dump the entire revision history at considerable cost. p4 changes takes an argument -m to limit the number of changelists returned. So I simply edited line 347 of convert_logs.py from

changelists = run_marshal('p4 -G changelists "' + opts.perforce_path + '"')

to

changelists = run_marshal('p4 -G changes -m 10000 "' + opts.perforce_path + '"')

This helped immensely with reducing the runtime.

If anyone is feeling ambitious, I'd suggest refactoring convert_logs to include something like a --perforce-args option where this and any other options could be specified.

saforrest
  • 196
  • 3