Comments (7)
Well I am only an end user stumbling over a bug which I reported and provided a fix with my PR. Without a bug fix I cannot proceed with my application.
As an outsider I leave the debate about whether internal data structures should be accessed or not within Microsoft products to the relevant dev teams.
However I would prefer a quick pragmatic solution, and my PR does provide this. It fixes the correctness of the internal data structure and then nx_azure_iot_json_writer_append_json_text()
works as expected.
In the long run, maybe exposing _internal.total_bytes_written
as an API call would be a solution, that way tests can be added and such a bug would have been picked up by a test case.
from netxduo.
Absolutely! Thank you for flagging the issue and providing the fix. I totally agree that it was the right approach, especially to address customer facing issues like you pointed out. My note above was mainly for contributors to this repo to evaluate current usage of internal-only state. I hadn't realized folks were using and benefiting from the total_bytes_written
field in their scenarios
:)
from netxduo.
Fixed in latest 6.1.9 release,
from netxduo.
The current implementation is directly accessing internal fields, which should be avoided where possible. The issue is with the total_bytes_written
, but that isn't exposed, and is currently meant for testing purposes only, within azure-sdk-for-c.
https://github.com/azure-rtos/netxduo/blob/d9d7fb05bd6a7a6b50a54c762e1730d8a8054cbb/addons/azure_iot/nx_azure_iot_json_writer.c#L97-L98
from netxduo.
@ahsonkhan Thank's for the quick resolution.
Now I hope the change is rolled into the next NetXDuo release soon.
from netxduo.
cc @yuxin-azrtos, @JeffreyRichter, @RickWinter
from netxduo.
cc @hihigupt
from netxduo.
Related Issues (20)
- DNS cleint at non-blocking mode
- Missing include guards
- Wrong type across netxduo and threadx
- crypto hardware acceleration support HOT 15
- Inconsistent types across files
- NX_BSD_TIMEOUT_PROCESS_IN_TIMER
- CoAP addon HOT 1
- ULONG64 definition failing for rx architecture HOT 1
- PPP LCP Negotiation stops at state 4.
- BSD addon fails to compile HOT 3
- BSD socket create failed!
- Deployment in Device Update for IoT Hub is Failed with NETX DUO 6.4.1 HOT 3
- Improper handled of out of order packets in case Application connection restarts in multiple loop HOT 3
- http(s) client: how to download a big file chunk by chunk ? HOT 1
- DHCPv6 Server instance sends IPv6 response packets on incorrect index when DHCPv6 Client and DHCPv6 Server are brought up simultaneously
- Module (DHCPv6 Client) is getting a new IPv6 address each time we disconnect and reconnect from the Home Wi-Fi
- Can NETX DHCPv6 support simultaneous DHCPv6 Client & DHCPv6 Server on two interfaces?
- NetX BSD fails when select() is passed a timeout
- NetX Duo Socket Error NX_NOT_CONNECTED due to dropped SYN-ACKs
- MQTT with TLS1.3 on STMH563ZI nucleo board
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from netxduo.