When building on the master and there are more than one user that made a submission, the perforce plugin is able to determine the email address of all the users except one.
I have made submissions as two different users (scm and cwong). Regardless of the order that the submissions are made, the email address for cwong could not be found.
For another build, seven different users had made submissions (scm, cwong, johara, pt, cblank, and ajerjiss). For this build, the plugin was able to determine the email addresses for each of the users except "pt".
Here is a copy of the stack:
STATUS | wrapper | 2010/02/18 16:46:42 | --> Wrapper Started as Service
STATUS | wrapper | 2010/02/18 16:46:42 | Java Service Wrapper Community Edition 3.3.0
STATUS | wrapper | 2010/02/18 16:46:42 | Copyright (C) 1999-2008 Tanuki Software, Inc. All Rights Reserved.
STATUS | wrapper | 2010/02/18 16:46:42 | http://wrapper.tanukisoftware.org
STATUS | wrapper | 2010/02/18 16:46:42 |
STATUS | wrapper | 2010/02/18 16:46:43 | Launching a JVM...
INFO | jvm 1 | 2010/02/18 16:46:47 | WrapperManager: Initializing...
INFO | jvm 1 | 2010/02/18 16:46:49 | Running from: C:\Hudson\hudson_master\lib\hudson.war
INFO | jvm 1 | 2010/02/18 16:46:50 | [Winstone 2010/02/18 16:46:50] - Beginning extraction from war file
INFO | jvm 1 | 2010/02/18 16:46:57 | hudson home directory: f:\data
INFO | jvm 1 | 2010/02/18 16:47:00 | [Winstone 2010/02/18 16:47:00] - Winstone Servlet Engine v0.9.10 running: controlPort=disabled
INFO | jvm 1 | 2010/02/18 16:47:00 | [Winstone 2010/02/18 16:47:00] - HTTP Listener started: port=8080
INFO | jvm 1 | 2010/02/18 16:47:00 | [Winstone 2010/02/18 16:47:00] - AJP13 Listener started: port=8009
INFO | jvm 1 | 2010/02/18 16:47:01 | Feb 18, 2010 4:47:01 PM hudson.model.Hudson$4 onAttained
INFO | jvm 1 | 2010/02/18 16:47:01 | INFO: Started initialization
INFO | jvm 1 | 2010/02/18 16:47:02 | Feb 18, 2010 4:47:01 PM hudson.model.Hudson$4 onAttained
INFO | jvm 1 | 2010/02/18 16:47:02 | INFO: Listed all plugins
INFO | jvm 1 | 2010/02/18 16:47:02 | Feb 18, 2010 4:47:02 PM hudson.model.Hudson$4 onAttained
INFO | jvm 1 | 2010/02/18 16:47:02 | INFO: Prepared all plugins
INFO | jvm 1 | 2010/02/18 16:47:02 | Feb 18, 2010 4:47:02 PM hudson.model.Hudson$4 onAttained
INFO | jvm 1 | 2010/02/18 16:47:02 | INFO: Started all plugins
INFO | jvm 1 | 2010/02/18 16:47:10 | Feb 18, 2010 4:47:10 PM hudson.model.Hudson$4 onAttained
INFO | jvm 1 | 2010/02/18 16:47:10 | INFO: Loaded all jobs
INFO | jvm 1 | 2010/02/18 16:47:10 | Feb 18, 2010 4:47:10 PM hudson.init.InitializerFinder getDisplayNameOf
INFO | jvm 1 | 2010/02/18 16:47:10 | WARNING: Failed to load hudson.model.queue.Messages for public static void hudson.model.queue.QueueSorter.installDefaultQueueSorter()
INFO | jvm 1 | 2010/02/18 16:47:10 | java.lang.ClassNotFoundException: hudson.model.queue.Messages
INFO | jvm 1 | 2010/02/18 16:47:10 | at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
INFO | jvm 1 | 2010/02/18 16:47:10 | at java.security.AccessController.doPrivileged(Native Method)
INFO | jvm 1 | 2010/02/18 16:47:10 | at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
INFO | jvm 1 | 2010/02/18 16:47:10 | at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
INFO | jvm 1 | 2010/02/18 16:47:10 | at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
INFO | jvm 1 | 2010/02/18 16:47:10 | at winstone.classLoader.WebappClassLoader.loadClass(WebappClassLoader.java:83)
INFO | jvm 1 | 2010/02/18 16:47:10 | at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
INFO | jvm 1 | 2010/02/18 16:47:10 | at hudson.init.InitializerFinder.getDisplayNameOf(InitializerFinder.java:84)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.init.InitializerFinder$TaskImpl.getDisplayName(InitializerFinder.java:160)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.model.Hudson$4.onTaskStarted(Hudson.java:684)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onTaskStarted(ReactorListener.java:66)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:185)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.Thread.run(Thread.java:619)
INFO | jvm 1 | 2010/02/18 16:47:11 | Feb 18, 2010 4:47:10 PM hudson.init.InitializerFinder getDisplayNameOf
INFO | jvm 1 | 2010/02/18 16:47:11 | WARNING: Failed to load hudson.model.queue.Messages for public static void hudson.model.queue.QueueSorter.installDefaultQueueSorter()
INFO | jvm 1 | 2010/02/18 16:47:11 | java.lang.ClassNotFoundException: hudson.model.queue.Messages
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.security.AccessController.doPrivileged(Native Method)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
INFO | jvm 1 | 2010/02/18 16:47:11 | at winstone.classLoader.WebappClassLoader.loadClass(WebappClassLoader.java:83)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.init.InitializerFinder.getDisplayNameOf(InitializerFinder.java:84)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.init.InitializerFinder$TaskImpl.getDisplayName(InitializerFinder.java:160)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.model.Hudson$3.runTask(Hudson.java:640)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.Thread.run(Thread.java:619)
INFO | jvm 1 | 2010/02/18 16:47:11 | Feb 18, 2010 4:47:11 PM hudson.init.InitializerFinder getDisplayNameOf
INFO | jvm 1 | 2010/02/18 16:47:11 | WARNING: Failed to load hudson.model.queue.Messages for public static void hudson.model.queue.QueueSorter.installDefaultQueueSorter()
INFO | jvm 1 | 2010/02/18 16:47:11 | java.lang.ClassNotFoundException: hudson.model.queue.Messages
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.security.AccessController.doPrivileged(Native Method)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
INFO | jvm 1 | 2010/02/18 16:47:11 | at winstone.classLoader.WebappClassLoader.loadClass(WebappClassLoader.java:83)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.init.InitializerFinder.getDisplayNameOf(InitializerFinder.java:84)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.init.InitializerFinder$TaskImpl.getDisplayName(InitializerFinder.java:160)
INFO | jvm 1 | 2010/02/18 16:47:11 | at hudson.model.Hudson$4.onTaskCompleted(Hudson.java:688)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.ReactorListener$Aggregator.onTaskCompleted(ReactorListener.java:71)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:188)
INFO | jvm 1 | 2010/02/18 16:47:11 | at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
INFO | jvm 1 | 2010/02/18 16:47:11 | at java.lang.Thread.run(Thread.java:619)
INFO | jvm 1 | 2010/02/18 16:47:11 | Feb 18, 2010 4:47:11 PM hudson.model.Hudson$4 onAttained
INFO | jvm 1 | 2010/02/18 16:47:11 | INFO: Completed initialization
INFO | jvm 1 | 2010/02/18 16:47:17 | Feb 18, 2010 4:47:17 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO | jvm 1 | 2010/02/18 16:47:17 | INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@1978611: display name [Root WebApplicationContext]; startup date [Thu Feb 18 16:47:17 PST 2010]; root of context hierarchy
INFO | jvm 1 | 2010/02/18 16:47:17 | Feb 18, 2010 4:47:17 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
INFO | jvm 1 | 2010/02/18 16:47:17 | INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@1978611]: org.springframework.beans.factory.support.DefaultListableBeanFactory@1365360
INFO | jvm 1 | 2010/02/18 16:47:18 | Feb 18, 2010 4:47:17 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO | jvm 1 | 2010/02/18 16:47:18 | INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1365360: defining beans [activeDirectory,authenticationManager]; root of factory hierarchy
INFO | jvm 1 | 2010/02/18 16:47:19 | Feb 18, 2010 4:47:18 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO | jvm 1 | 2010/02/18 16:47:19 | INFO: Refreshing org.springframework.web.context.support.StaticWebApplicationContext@1fe28a7: display name [Root WebApplicationContext]; startup date [Thu Feb 18 16:47:18 PST 2010]; root of context hierarchy
INFO | jvm 1 | 2010/02/18 16:47:19 | Feb 18, 2010 4:47:18 PM org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
INFO | jvm 1 | 2010/02/18 16:47:19 | INFO: Bean factory for application context [org.springframework.web.context.support.StaticWebApplicationContext@1fe28a7]: org.springframework.beans.factory.support.DefaultListableBeanFactory@f34a08
INFO | jvm 1 | 2010/02/18 16:47:19 | Feb 18, 2010 4:47:18 PM org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO | jvm 1 | 2010/02/18 16:47:19 | INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@f34a08: defining beans [filter,legacy]; root of factory hierarchy
INFO | jvm 1 | 2010/02/18 16:47:19 | Feb 18, 2010 4:47:19 PM hudson.TcpSlaveAgentListener <init>
INFO | jvm 1 | 2010/02/18 16:47:19 | INFO: JNLP slave agent listener started on TCP port 3197
INFO | jvm 1 | 2010/02/18 16:47:53 | Feb 18, 2010 4:47:53 PM hudson.TcpSlaveAgentListener$ConnectionHandler run
INFO | jvm 1 | 2010/02/18 16:47:53 | INFO: Accepted connection #1 from /172.17.83.47:3317
INFO | jvm 1 | 2010/02/18 16:50:28 | Feb 18, 2010 4:50:28 PM hudson.triggers.SCMTrigger$Runner run
INFO | jvm 1 | 2010/02/18 16:50:28 | INFO: SCM changes detected in test2. Triggering #113
INFO | jvm 1 | 2010/02/18 16:53:36 | Feb 18, 2010 4:53:36 PM hudson.model.Run run
INFO | jvm 1 | 2010/02/18 16:53:36 | INFO: test2 #113 main build action completed: FAILURE
INFO | jvm 1 | 2010/02/18 16:53:36 | [data] $ c:/Perforce/p4.exe user -o cwong
INFO | jvm 1 | 2010/02/18 16:53:36 | 189125 Executor #0 for master : executing test2 #113 WARN perforce - Perforce process terminated suddenly
INFO | jvm 1 | 2010/02/18 16:53:36 | 189125 Executor #0 for master : executing test2 #113 WARN perforce - java.io.InterruptedIOException
INFO | jvm 1 | 2010/02/18 16:53:36 | at java.io.PipedInputStream.read(PipedInputStream.java:312)
INFO | jvm 1 | 2010/02/18 16:53:36 | at java.io.PipedInputStream.read(PipedInputStream.java:361)
INFO | jvm 1 | 2010/02/18 16:53:36 | at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:264)
INFO | jvm 1 | 2010/02/18 16:53:36 | at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:306)
INFO | jvm 1 | 2010/02/18 16:53:36 | at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:158)
INFO | jvm 1 | 2010/02/18 16:53:36 | at java.io.InputStreamReader.read(InputStreamReader.java:167)
INFO | jvm 1 | 2010/02/18 16:53:36 | at java.io.BufferedReader.fill(BufferedReader.java:136)
INFO | jvm 1 | 2010/02/18 16:53:36 | at java.io.BufferedReader.readLine(BufferedReader.java:299)
INFO | jvm 1 | 2010/02/18 16:53:36 | at java.io.BufferedReader.readLine(BufferedReader.java:362)
INFO | jvm 1 | 2010/02/18 16:53:36 | at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:292)
INFO | jvm 1 | 2010/02/18 16:53:36 | at com.tek42.perforce.parse.Users.getUser(Users.java:52)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.plugins.perforce.PerforceMailResolver.findMailAddressFor(PerforceMailResolver.java:45)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.MailAddressResolver.resolve(MailAddressResolver.java:81)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.Mailer$UserProperty.getAddress(Mailer.java:476)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.MailSender.buildCulpritList(MailSender.java:357)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.MailSender.createEmptyMail(MailSender.java:338)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.MailSender.createFailureMail(MailSender.java:206)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.MailSender.getMail(MailSender.java:133)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.MailSender.execute(MailSender.java:81)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.Mailer.perform(Mailer.java:99)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:582)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:563)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.AbstractBuild$AbstractRunner.performAllBuildStep(AbstractBuild.java:550)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.Build$RunnerImpl.post2(Build.java:152)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:528)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.Run.run(Run.java:1221)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.ResourceController.execute(ResourceController.java:88)
INFO | jvm 1 | 2010/02/18 16:53:36 | at hudson.model.Executor.run(Executor.java:122)
INFO | jvm 1 | 2010/02/18 16:53:36 |
INFO | jvm 1 | 2010/02/18 16:53:36 | Could not get email address from Perforce: No output for: c:/Perforce/p4.exe user -o cwong
INFO | jvm 1 | 2010/02/18 16:53:36 | [data] $ c:/Perforce/p4.exe user -o scm
INFO | jvm 1 | 2010/02/18 16:54:04 | Feb 18, 2010 4:54:03 PM hudson.model.AsyncPeriodicWork$1 run
INFO | jvm 1 | 2010/02/18 16:54:04 | INFO: Started Project disk usage
INFO | jvm 1 | 2010/02/18 16:54:04 | Feb 18, 2010 4:54:04 PM hudson.model.AsyncPeriodicWork$1 run
INFO | jvm 1 | 2010/02/18 16:54:04 | INFO: Finished Project disk usage. 609 ms