Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); lets try this on the new Travis setup by joshk · Pull Request #28437 · rust-lang/rust · GitHub
Skip to content

lets try this on the new Travis setup - #28437

Closed
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1
Closed

lets try this on the new Travis setup#28437
joshk wants to merge 4 commits into
rust-lang:masterfrom
joshk:patch-1

Conversation

@joshk

Copy link
Copy Markdown

please do not merge me, just yet, pretty please, sugar on top

@rust-highfive

Copy link
Copy Markdown
Contributor

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. The way Github handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we timed out :(

@joshk

Copy link
Copy Markdown
Author

ah ha! so timeouts aren't working of the container jobs, interesting. Well, let me modify the timeouts for this repo and we can restart (i'll do a new commit for that)

@joshk

Copy link
Copy Markdown
Author

I've bumped the time limit to 120 minutes while we see if we can get this to finish before being killed.

@Gankra

Copy link
Copy Markdown
Contributor

Yes, this is why I filed travis-ci/travis-ci#4521 and never fully went forward with sudo: 9000

IIRC, ccache was also broken with this mode, significantly exacerbating the timeout issue.

@alexcrichton

Copy link
Copy Markdown
Member

Looks like we managed to just squeeze in with a 2hr timeout on that build, although a number of the tests failed:

failures:
net::tcp::tests::clone_accept_concurrent
net::tcp::tests::clone_accept_smoke
net::tcp::tests::clone_while_reading
net::tcp::tests::close_read_wakes_up
net::tcp::tests::close_readwrite_smoke
net::tcp::tests::connect_ip6_loopback
net::tcp::tests::double_bind
net::tcp::tests::fast_rebind
net::tcp::tests::multiple_connect_interleaved_greedy_schedule
net::tcp::tests::multiple_connect_interleaved_lazy_schedule_ip4
net::tcp::tests::multiple_connect_serial_ip4
net::tcp::tests::partial_read
net::tcp::tests::read_eof_ip4
net::tcp::tests::shutdown_smoke
net::tcp::tests::smoke_test_ip6
net::tcp::tests::socket_and_peer_name_ip4
net::tcp::tests::tcp_clone_smoke
net::tcp::tests::tcp_clone_two_read
net::tcp::tests::tcp_clone_two_write
net::tcp::tests::write_close
net::udp::tests::socket_name_ip4
net::udp::tests::socket_smoke_test_ip4
net::udp::tests::udp_clone_smoke
net::udp::tests::udp_clone_two_read
net::udp::tests::udp_clone_two_write

They all failed for the same reason:

thread '<unnamed>' panicked at 'received error for `TcpListener::bind(&addr)`: Cannot assign requested address (os error 99)', src/libstd/net/tcp.rs:867

Which may be on our end, but I've only seen that when we have two standard library test suites running in parallel, which I don't think this is doing. Just to be sure, IPv6 is enabled for these new machines?

Also, as @gankro pointed out although ccache may not be necessary to get us under the time limit it's certainly useful for reducing build times, so just curious if you guys know if it's an issue on the new machines? If not we can just turn it on and it'll all start working once it's smoothed out in the backend :)

@joshk

Copy link
Copy Markdown
Author

Caching isn't currently available on the new GCE setup, yet.

As for the failures, GCE VMs doesn't support IPv6 just yet, which might mean sticking to the Docker setup OR using Docker on the GCE hosts.

Happy to talk through how this might work.

@alexcrichton

Copy link
Copy Markdown
Member

Ah ok, lack of IPv6 would do it for the failing tests, so we may have to stick to Docker for now. Is it planned to have IPv6 enabled on GCE?

The ccache problem isn't critical per se, just a nice to have. So long as the build doesn't time out it's not so bad to take a little longer to build LLVM, the build's already quite long anyway!

@joshk

Copy link
Copy Markdown
Author

Hey Alex,

Sadly IPv6 is out of our control when it comes to GCE as GCE is just not capable of that right now.

What you could do though is use Docker inside of GCE and run your tests in there, thus giving you IPv6, and also allowing you to use the extra ram that the host has. This would also mean you could pre prep an image with any deps needed (like what is stored using ccache) to reduce test times.

If this is of interest, let me know how I can help.

@alexcrichton

Copy link
Copy Markdown
Member

Hm, so we've long wanted automation using a stock build of LLVM instead, so this may be a good opportunity to take action on that! We can probably just use a vanilla ubuntu docker image and install stock LLVM at build time.

I may try playing around and see how far that gets us, thanks @joshk!

@joshk

Copy link
Copy Markdown
Author

My pleasure @alexcrichton!

Let me know how you get on!

@alexcrichtonalexcrichton mentioned this pull request Sep 18, 2015
@alexcrichton

Copy link
Copy Markdown
Member

Continuing this in #28500 where we can try out docker (but get the higher time limit on this repo as well)

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@joshk@rust-highfive@alexcrichton@Gankra