Bug 1296416

Summary: Error log appears during start up when git is not installed on windows environment
Product: [Retired] JBoss BRMS Platform 6 Reporter: Hisao Furuichi <hfuruich>
Component: Business CentralAssignee: Alexandre Porcelli <porcelli>
Status: CLOSED EOL QA Contact: Jiri Locker <jlocker>
Severity: high Docs Contact:
Priority: high    
Version: 6.2.0   
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-03-27 19:09:14 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
server log which contains the error message none

Description Hisao Furuichi 2016-01-07 08:32:25 UTC
Created attachment 1112393 [details]
server log which contains the error message

Description of problem:
If git is not installed on windows environment and tries to start brms, jgit will log following error message

===
23:03:32,059 ERROR [org.eclipse.jgit.util.FS] (MSC service thread 1-2) Caught exception in FS.readPipe(): java.io.IOException: Cannot run program "bash" (in directory "C:\Users\gsslab"): CreateProcess error=2, The system cannot find the file specified
	at java.lang.ProcessBuilder.start(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.Runtime.exec(Unknown Source) [rt.jar:1.8.0_66]
	at org.eclipse.jgit.util.FS.readPipe(FS.java:431) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.eclipse.jgit.util.FS_Win32.discoverGitPrefix(FS_Win32.java:113) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.eclipse.jgit.util.FS.gitPrefix(FS.java:517) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.eclipse.jgit.util.SystemReader$Default.openSystemConfig(SystemReader.java:92) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.eclipse.jgit.internal.storage.file.FileRepository.<init>(FileRepository.java:171) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.eclipse.jgit.lib.BaseRepositoryBuilder.build(BaseRepositoryBuilder.java:577) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.eclipse.jgit.api.InitCommand.call(InitCommand.java:113) [org.eclipse.jgit-3.7.1.201504261725-r.jar:3.7.1.201504261725-r]
	at org.uberfire.java.nio.fs.jgit.util.JGitUtil.newRepository(JGitUtil.java:104) [uberfire-nio2-jgit-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.java.nio.fs.jgit.util.JGitUtil.newRepository(JGitUtil.java:113) [uberfire-nio2-jgit-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.java.nio.fs.jgit.JGitFileSystemProvider.newFileSystem(JGitFileSystemProvider.java:624) [uberfire-nio2-jgit-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.java.nio.file.FileSystems.newFileSystem(FileSystems.java:117) [uberfire-nio2-api-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.java.nio.file.FileSystems.newFileSystem(FileSystems.java:83) [uberfire-nio2-api-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.io.impl.AbstractIOService.newFileSystem(AbstractIOService.java:244) [uberfire-io-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.backend.server.cdi.SystemConfigProducer$2.create(SystemConfigProducer.java:253) [uberfire-backend-cdi-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.backend.server.cdi.SystemConfigProducer$2.create(SystemConfigProducer.java:188) [uberfire-backend-cdi-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:104) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:90) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:104) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.proxies.FileSystem$1366014918$Proxy$_$$_WeldClientProxy.getRootDirectories(FileSystem$1366014918$Proxy$_$$_WeldClientProxy.java) [weld-core-1.1.31.Final-redhat-1.jar:]
	at org.guvnor.structure.backend.config.ConfigurationServiceImpl.setup(ConfigurationServiceImpl.java:122) [guvnor-structure-backend-6.3.0.Final-redhat-5.jar:6.3.0.Final-redhat-5]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_66]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.reflect.Method.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:267) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.introspector.jlr.WeldMethodImpl.invoke(WeldMethodImpl.java:168) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.AbstractClassBean.defaultPostConstruct(AbstractClassBean.java:403) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget.postConstruct(ManagedBean.java:178) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:298) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:104) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:90) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.guvnor.structure.backend.config.ConfigurationServiceImpl$Proxy$_$$_WeldClientProxy.startBatch(ConfigurationServiceImpl$Proxy$_$$_WeldClientProxy.java) [guvnor-structure-backend-6.3.0.Final-redhat-5.jar:6.3.0.Final-redhat-5]
	at org.kie.workbench.drools.backend.server.AppSetup.assertPlayground(AppSetup.java:111) [classes:]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_66]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.reflect.Method.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:267) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.introspector.jlr.WeldMethodImpl.invoke(WeldMethodImpl.java:168) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.AbstractClassBean.defaultPostConstruct(AbstractClassBean.java:403) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.ManagedBean$ManagedBeanInjectionTarget.postConstruct(ManagedBean.java:178) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:298) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:104) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:90) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.kie.workbench.drools.backend.server.AppSetup$Proxy$_$$_WeldClientProxy.toString(AppSetup$Proxy$_$$_WeldClientProxy.java) [classes:]
	at org.uberfire.backend.server.cdi.SystemConfigProducer.runPostConstruct(SystemConfigProducer.java:144) [uberfire-backend-cdi-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.backend.server.cdi.SystemConfigProducer.afterDeploymentValidation(SystemConfigProducer.java:127) [uberfire-backend-cdi-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at org.uberfire.backend.server.cdi.SystemConfigProducer$Proxy$_$$_WeldClientProxy.afterDeploymentValidation(SystemConfigProducer$Proxy$_$$_WeldClientProxy.java) [uberfire-backend-cdi-0.7.4.Final-redhat-4.jar:0.7.4.Final-redhat-4]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_66]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.reflect.Method.invoke(Unknown Source) [rt.jar:1.8.0_66]
	at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:267) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:164) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:51) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:163) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:245) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:233) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:213) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:75) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bootstrap.events.AbstractDeploymentContainerEvent.fire(AbstractDeploymentContainerEvent.java:46) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bootstrap.events.AfterDeploymentValidationImpl.fire(AfterDeploymentValidationImpl.java:31) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:382) [weld-core-1.1.31.Final-redhat-1.jar:1.1.31.Final-redhat-1]
	at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:64) [jboss-as-weld-7.5.4.Final-redhat-4.jar:7.5.4.Final-redhat-4]
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.8.0_66]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.Thread.run(Unknown Source) [rt.jar:1.8.0_66]
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
	at java.lang.ProcessImpl.create(Native Method) [rt.jar:1.8.0_66]
	at java.lang.ProcessImpl.<init>(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.ProcessImpl.start(Unknown Source) [rt.jar:1.8.0_66]
	... 82 more
===

How reproducible:
Whenever brms starts up

Steps to Reproduce:
1. install brms on windows environment. Make sure windows has no git.exe and bash.exe
2. start brms

Actual results:
ERROR log appears

Expected results:
no error occurs

Additional info:
I found a community forum talking about this jgit's behavior:
https://www.eclipse.org/forums/index.php/t/1031740/