Skip to content

aws-iot-device-sdk-v2 io.ClientBootstrap() fails with "N-API call failed: napi_create_threadsafe_function" #30115

@njbraun

Description

@njbraun

Version: Deno v2.4.1

Unable to use AWS IoT Device SDK v2 for io.ClientBootstrap method:

import { io } from 'npm:aws-iot-device-sdk-v2';

new io.ClientBootstrap();

Output in macOS:

N-API call failed: napi_create_threadsafe_function( env, node_rawdebug, NULL, resource_name, 0, 1, ctx, s_threadsafe_log_finalize, ctx, s_threadsafe_log_call, &ctx->log_drain)
    @ /Users/ec2-user/.jenkins/workspace/aws-crt-nodejs-osx-x64-arm64/aws-crt-nodejs/source/logger.c:277: napi_function_expected
Fatal error condition occurred in /Users/ec2-user/.jenkins/workspace/aws-crt-nodejs-osx-x64-arm64/aws-crt-nodejs/source/logger.c:277: napi_create_threadsafe_function( env, node_rawdebug, NULL, resource_name, 0, 1, ctx, s_threadsafe_log_finalize, ctx, s_threadsafe_log_call, &ctx->log_drain)
Exiting Application
################################################################################
Stack trace:
################################################################################
1   aws-crt-nodejs.node                 0x000000012f27f290 aws_fatal_assert + 80
2   aws-crt-nodejs.node                 0x000000012f1c6990 s_threadsafe_log_create + 600
3   aws-crt-nodejs.node                 0x000000012f1c6cf0 aws_napi_logger_new + 228
4   aws-crt-nodejs.node                 0x000000012f1ca980 napi_register_module_v1 + 472
5   deno                                0x00000001012ddd84 deno + 3530116
6   deno                                0x00000001012de298 deno + 3531416
7   deno                                0x0000000103f12d58 node_api_get_module_file_name + 37571412
8   deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
9   deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
10  ???                                 0x000000011e68ba84 0x0 + 4805147268
11  ???                                 0x000000011e6896e0 0x0 + 4805138144
12  ???                                 0x000000011e6898bc 0x0 + 4805138620
13  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
14  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
15  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
16  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
17  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
18  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
19  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
20  ???                                 0x000000011e6896e0 0x0 + 4805138144
21  ???                                 0x000000011e6898bc 0x0 + 4805138620
22  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
23  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
24  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
25  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
26  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
27  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
28  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
29  ???                                 0x000000011e6896e0 0x0 + 4805138144
30  ???                                 0x000000011e6898bc 0x0 + 4805138620
31  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
32  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
33  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
34  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
35  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
36  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
37  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
38  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
39  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
40  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
41  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
42  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
43  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
44  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
45  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
46  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
47  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
48  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
49  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
50  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
51  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
52  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
53  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
54  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
55  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
56  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
57  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
58  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
59  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
60  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
61  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
62  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
63  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
64  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
65  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
66  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
67  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
68  deno                                0x0000000103f52168 node_api_get_module_file_name + 37830500
69  deno                                0x0000000103f0e8cc node_api_get_module_file_name + 37553864
70  deno                                0x0000000103f0e570 node_api_get_module_file_name + 37553004
71  deno                                0x0000000102c33900 node_api_get_module_file_name + 17782524
72  deno                                0x0000000102c34150 node_api_get_module_file_name + 17784652
73  deno                                0x0000000102c3421c node_api_get_module_file_name + 17784856
74  deno                                0x000000010305b3f0 node_api_get_module_file_name + 22139372
75  deno                                0x000000010305acf0 node_api_get_module_file_name + 22137580
76  deno                                0x000000010305aadc node_api_get_module_file_name + 22137048
77  deno                                0x000000010305a6b0 node_api_get_module_file_name + 22135980
78  deno                                0x00000001030244a8 node_api_get_module_file_name + 21914276
79  deno                                0x0000000102afb824 node_api_get_module_file_name + 16504352
80  deno                                0x00000001017d0cf4 deno + 8719604
81  deno                                0x0000000100fed874 deno + 448628
82  deno                                0x00000001014a340c deno + 5387276
83  deno                                0x00000001014a2258 deno + 5382744
84  deno                                0x000000010146aa48 deno + 5155400
85  deno                                0x00000001014afb10 deno + 5438224
86  deno                                0x0000000100f93138 deno + 78136
87  deno                                0x00000001011a04a4 deno + 2229412
88  deno                                0x00000001014b875c deno + 5474140
89  deno                                0x000000010109c854 deno + 1165396
90  deno                                0x0000000101517f6c deno + 5865324
91  dyld                                0x00000001820c6b98 start + 6076
Signal received: 6, errno: 0
################################################################################
Stack trace:
################################################################################
1   aws-crt-nodejs.node                 0x000000012f1cb7a4 s_print_stack_trace + 24
2   libsystem_platform.dylib            0x00000001824a0624 _sigtramp + 56
3   libsystem_pthread.dylib             0x000000018246688c pthread_kill + 296
4   libsystem_c.dylib                   0x000000018236fc60 abort + 124
5   aws-crt-nodejs.node                 0x000000012f27f294 aws_byte_buf_init + 0
6   aws-crt-nodejs.node                 0x000000012f1c6990 s_threadsafe_log_create + 600
7   aws-crt-nodejs.node                 0x000000012f1c6cf0 aws_napi_logger_new + 228
8   aws-crt-nodejs.node                 0x000000012f1ca980 napi_register_module_v1 + 472
9   deno                                0x00000001012ddd84 deno + 3530116
10  deno                                0x00000001012de298 deno + 3531416
11  deno                                0x0000000103f12d58 node_api_get_module_file_name + 37571412
12  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
13  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
14  ???                                 0x000000011e68ba84 0x0 + 4805147268
15  ???                                 0x000000011e6896e0 0x0 + 4805138144
16  ???                                 0x000000011e6898bc 0x0 + 4805138620
17  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
18  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
19  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
20  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
21  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
22  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
23  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
24  ???                                 0x000000011e6896e0 0x0 + 4805138144
25  ???                                 0x000000011e6898bc 0x0 + 4805138620
26  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
27  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
28  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
29  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
30  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
31  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
32  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
33  ???                                 0x000000011e6896e0 0x0 + 4805138144
34  ???                                 0x000000011e6898bc 0x0 + 4805138620
35  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
36  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
37  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
38  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
39  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
40  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
41  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
42  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
43  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
44  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
45  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
46  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
47  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
48  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
49  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
50  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
51  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
52  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
53  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
54  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
55  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
56  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
57  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
58  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
59  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
60  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
61  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
62  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
63  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
64  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
65  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
66  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
67  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
68  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
69  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
70  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
71  deno                                0x0000000103f1112c node_api_get_module_file_name + 37564200
72  deno                                0x0000000103f52168 node_api_get_module_file_name + 37830500
73  deno                                0x0000000103f0e8cc node_api_get_module_file_name + 37553864
74  deno                                0x0000000103f0e570 node_api_get_module_file_name + 37553004
75  deno                                0x0000000102c33900 node_api_get_module_file_name + 17782524
76  deno                                0x0000000102c34150 node_api_get_module_file_name + 17784652
77  deno                                0x0000000102c3421c node_api_get_module_file_name + 17784856
78  deno                                0x000000010305b3f0 node_api_get_module_file_name + 22139372
79  deno                                0x000000010305acf0 node_api_get_module_file_name + 22137580
80  deno                                0x000000010305aadc node_api_get_module_file_name + 22137048
81  deno                                0x000000010305a6b0 node_api_get_module_file_name + 22135980
82  deno                                0x00000001030244a8 node_api_get_module_file_name + 21914276
83  deno                                0x0000000102afb824 node_api_get_module_file_name + 16504352
84  deno                                0x00000001017d0cf4 deno + 8719604
85  deno                                0x0000000100fed874 deno + 448628
86  deno                                0x00000001014a340c deno + 5387276
87  deno                                0x00000001014a2258 deno + 5382744
88  deno                                0x000000010146aa48 deno + 5155400
89  deno                                0x00000001014afb10 deno + 5438224
90  deno                                0x0000000100f93138 deno + 78136
91  deno                                0x00000001011a04a4 deno + 2229412
92  deno                                0x00000001014b875c deno + 5474140
93  deno                                0x000000010109c854 deno + 1165396
94  deno                                0x0000000101517f6c deno + 5865324
95  dyld                                0x00000001820c6b98 start + 6076

Output in Linux:

N-API call failed: napi_create_threadsafe_function( env, node_rawdebug, NULL, resource_name, 0, 1, ctx, s_threadsafe_log_finalize, ctx, s_threadsafe_log_call, &ctx->log_drain)
    @ /codebuild/output/src1078142045/src/aws-crt-nodejs/source/logger.c:277: napi_function_expected
Fatal error condition occurred in /codebuild/output/src1078142045/src/aws-crt-nodejs/source/logger.c:277: napi_create_threadsafe_function( env, node_rawdebug, NULL, resource_name, 0, 1, ctx, s_threadsafe_log_finalize, ctx, s_threadsafe_log_call, &ctx->log_drain)
Exiting Application
################################################################################
Stack trace:
################################################################################
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(aws_backtrace_print+0x41) [0x7fe7f5e968a1]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(aws_fatal_assert+0x43) [0x7fe7f5e89783]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(s_threadsafe_log_create+0x1e9) [0x7fe7f5a91269]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(aws_napi_logger_new+0xfe) [0x7fe7f5a915ae]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(napi_register_module_v1+0x21a) [0x7fe7f5a943da]
deno(+0x475a107) [0x55cc18378107]
deno(+0x475a7f0) [0x55cc183787f0]
[0x7fe7bfdcf54d]
Signal received: 0, errno: 0
################################################################################
Stack trace:
################################################################################
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(aws_backtrace_print+0x41) [0x7fe7f5e968a1]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(+0x91683) [0x7fe7f5a91683]
/lib/x86_64-linux-gnu/libc.so.6(+0x45330) [0x7fe7fd938330]
/lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x11c) [0x7fe7fd991b2c]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x1e) [0x7fe7fd93827e]
/lib/x86_64-linux-gnu/libc.so.6(abort+0xdf) [0x7fe7fd91b8ff]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(+0x489788) [0x7fe7f5e89788]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(s_threadsafe_log_create+0x1e9) [0x7fe7f5a91269]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(aws_napi_logger_new+0xfe) [0x7fe7f5a915ae]
/home/nbraun/Projects/iot-test2/node_modules/.deno/aws-crt@1.27.3/node_modules/aws-crt/dist/bin/linux-x64-glibc/aws-crt-nodejs.node(napi_register_module_v1+0x21a) [0x7fe7f5a943da]
deno(+0x475a107) [0x55cc18378107]
deno(+0x475a7f0) [0x55cc183787f0]
[0x7fe7bfdcf54d]

https://github.com/awslabs/aws-crt-nodejs/blob/main/source/logger.c#L277

cc @littledivy

awslabs/aws-crt-nodejs#592

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working correctlynode native extensionrelated to the node-api (.node)

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions