History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: QB-2298
Type: Bug Bug
Status: Closed Closed
Resolution: Won't Fix
Priority: Critical Critical
Assignee: Robin Shen
Reporter: Maikel vd Hurk
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
QuickBuild

QuickBuild Repository specifiying Files to Retrieve to not existing path is failing checkout

Created: 19/Jan/15 08:00 AM   Updated: 23/Jan/15 12:31 AM
Component/s: None
Affects Version/s: 6.0.4
Fix Version/s: None

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
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)

 All   Comments   Work Log   Change History      Sort Order:
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.

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.

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.

Robin Shen [23/Jan/15 12:31 AM]
No problem. Let me know if you have any other issues.