<< Back to previous view

[QB-2298] QuickBuild Repository specifiying Files to Retrieve to not existing path is failing checkout
Created: 19/Jan/15  Updated: 23/Jan/15

Status: Closed
Project: QuickBuild
Component/s: None
Affects Version/s: 6.0.4
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Maikel vd Hurk Assigned To: Robin Shen
Resolution: Won't Fix Votes: 0
Remaining Estimate: Unknown Time Spent: Unknown
Original Estimate: Unknown


 Description   
QuickBuild Repository specifiying Files to Retrieve to not existing path is failing checkout. Previously in version 5.1.36 (from which we upgraded) this was silently ignored and not failing the checkout step critically, this could cause quite some problems if you have multiple Configurations specified.

Stacktrace:
<p>Problem accessing /file_transfer. Reason:
<pre> /opt/quickbuild/storage/builds/3090602/artifacts/Archive/AndroidSDK/Release does not exist.</pre></p><h3>Caused by:</h3><pre>/opt/quickbuild/storage/builds/3090602/artifacts/Archive/AndroidSDK/Release does not exist.
    at org.apache.tools.ant.types.AbstractFileSet.getDirectoryScanner(AbstractFileSet.java:484)
    at com.pmease.quickbuild.util.FileUtils.listFiles(FileUtils.java:459)
    at com.pmease.quickbuild.grid.FileTransferServlet.doGet(FileTransferServlet.java:103)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1336)
    at com.pmease.quickbuild.Quickbuild$DisableTraceFilter.doFilter(Quickbuild.java:1048)
    at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:229)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:365)
    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
    at org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)
    at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
    at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
    at org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Unknown Source)

 Comments   
Comment by Robin Shen [ 20/Jan/15 12:33 AM ]
I checked and the behavior in QB6 and QB 5.1.36 is the same. That is:
1. If source path defined in QuickBuild repository does not exist, QB will fail the build. This additional check is added to make sure user have specified the source path correctly.
2. If source path exists, but "files to retrieve" does not exist, QB will NOT fail the build as it thinks that there simply no files matching specified pattern.
Comment by Maikel vd Hurk [ 22/Jan/15 07:23 PM ]
Actually the way to reproduce this is specify:
Configuration with 'Specify configuration paths': ConfigA,ConfigB
Build with 'Specify build version': B1 (which is available on both ConfigA and ConfigB)
Files to retrieve with 'Source Paths' | 'Files To Retrieve' | 'Destination Path': ConfigA/files | ** | files, ConfigB/files | ** | files

This is resulting in the above sketched failure, while it was perfectly passing with QB version 5.1.36. If the above text description is not clear enough I could try to recreate this next week in a test database which I can share with you.
Comment by Maikel vd Hurk [ 22/Jan/15 08:51 PM ]
Rechecked locally with both versions to create test database for you and it seems that the problem is indeed different and I must have mislooked something sorry for inconvenience this can be closed.
Comment by Robin Shen [ 23/Jan/15 12:31 AM ]
No problem. Let me know if you have any other issues.
Generated at Thu May 02 12:28:04 UTC 2024 using JIRA 189.