Skip to content

Instantly share code, notes, and snippets.

View misterdjules's full-sized avatar

Julien Gilli misterdjules

View GitHub Profile
[2018-02-14T22:47:19.646Z] WARN: muskie/27560 on 56564894-a7c2-470e-a218-3d859e7e1687: mako: connection failed (req_id=95747e03-ec42-4075-9721-317822b609c3, method=GET, path=/Joyent_Dev/public/builds/reg
istrar/master-latest, shark="[object SharkClient<17.stor.us-east.joyent.us>]")
PoolFailedError: Pool 15b224b9-30d0-4214-8cf1-3fb68d8caa55 (17.stor.us-east.joyent.us) has failed and cannot take new requests.
at Object._onImmediate (/opt/smartdc/muskie/node_modules/cueball/lib/pool.js:752:8)
at processImmediate [as _immediateCallback] (timers.js:363:15)
[2018-02-14T22:47:19.648Z] WARN: muskie/27560 on 56564894-a7c2-470e-a218-3d859e7e1687: request failed: internal error (req_id=95747e03-ec42-4075-9721-317822b609c3, method=GET, path=/Joyent_Dev/public/bui
lds/registrar/master-latest)
InternalError: an unexpected error occurred
at translateError (/opt/smartdc/muskie/lib/errors.js:681:13)
at ServerResponse.formatJSON (/opt/smartdc/muskie/lib/server.js:51:16)
[root@15334da5-a188-4143-926c-25ff16f8c1d1 (nightly-1:binder2) ~]# pstack 5930
5930: /lib/svc/bin/svc.startd
----------------- lwp# 1 / thread# 1 --------------------
feec3ee5 sigsuspend (8047dd0)
0807625f main (8047e1c, fef3f348, 8047e58, 805b2d8, 1, 8047e80) + 20e
0805b2d8 _start_crt (1, 8047e80, fefd1f20, 0, 0, 0) + 97
0805b1aa _start (1, 8047f48, 0, 8047f60, 8047f80, 8047f91) + 1a
----------------- lwp# 2 / thread# 2 --------------------
feec3875 ioctl (5, 63746502, 80edfa8)
fed62fbd ct_event_read_critical (5, fed0efac, fed0efa8, 1, fef39d20, fedd2000) + 16
diff --git a/lib/errors.js b/lib/errors.js
index 825c42f..5f3f6a1 100644
--- a/lib/errors.js
+++ b/lib/errors.js
@@ -342,6 +342,18 @@ DefaultFabricNetworkNotConfiguredError.prototype.restCode =
'DefaultFabricNetworkNotConfiguredError';
DefaultFabricNetworkNotConfiguredError.prototype.statusCode = 409;
+function isDataVersionError(err) {
+ assert.object(err, 'err');
[root@headnode (coal) ~]# sdc-volapi /volumes | json -Ha -c 'state==="ready"'
{
"uuid": "d0ae6d3d-28e5-cbe7-f1d0-efd9e783e606",
"name": "test-volume",
"owner_uuid": "a08085c4-1624-45c1-a004-c16e91efae1e",
"size": 10240,
"type": "tritonnfs",
"create_timestamp": "2017-10-26T21:32:26.972Z",
"state": "ready",
"networks": [
exports.list_invalid_empty_metadata_key = function (t) {
var expectedError = {
code: 'ValidationFailed',
message: 'Invalid Parameters',
errors: [ {
field: 'internal_metadata',
code: 'Invalid',
message: 'Invalid internal_metadata key: ""'
} ]
};

Summary of the current issues with Solaris binaries

TL;DR

SmartOS' C and C++ runtimes have diverged from Solaris' C and C++ runtime. The SmartOS ABI is not compatible with the Solaris ABI. For that reason, node binaries should not be ran on anything else than the SmartOS platform on which they've been built, or a newer SmartOS platform. As a consequence, Solaris users should not run SmartOS binaries on Solaris, and it is expected that they would not run anyway.

Issues with nodejs.org binaries for SmartOS users

Description of the problem

Node v4.x.y binaries have been built with compilers at versions greater than the ones used to build packages in the LTS pkgsrc repositories. They've been built with gcc 4.9 and gcc 4.8, when the compiler used to build packages from the 2014Q4 pkgsrc repository is gcc 4.7.3.

As a consequence, these node v4.x.y binaries downloaded from nodejs.org have

05:08:51 # create empty-env-var container
05:09:07 ok 51 Warnings should be present and empty
05:09:07 ok 52 Id should be present
05:09:18 ok 53 null
05:09:18 ok 54 null
05:09:18 ok 55 null
05:09:18 ok 56 null
05:09:18 ok 57 create empty-env-var container
05:09:18 ok 58 Check container running
05:09:18 not ok 59 Check cat /etc/resolv.conf result

Use triton.system_role tag

pros

  • Easy to implement.

cons

  • Tags are not used to express internal properties. A customer could set the smartdc_role=nfsvolumestorage tag at in stance creation time. So we'd have
diff --git a/master:lib/networks.js b/PUBAPI-1448:lib/endpoints/networks.js
index c59d9b7..df124e3 100644
--- a/master:lib/networks.js
+++ b/PUBAPI-1448:lib/endpoints/networks.js
@@ -9,20 +9,19 @@
*/
var assert = require('assert-plus');
-var util = require('util');
-var mod_config = require('./config');