Skip to content

Conversation

@jprogin
Copy link
Contributor

@jprogin jprogin commented Nov 13, 2025

We want to use asyncua on RevPI devices. However, simply running pip install asyncua was causing a memory overflow and the device was needing a hardware reset. A turn around was to limit virtual memory usage (something like ulimit -v 300000) before running the pip installation, but later the simple import asyncua was causing the memory overflow again.

Investigations revealed that the origin of the issue was the huge size of the file standard_address_space_services.py file. It seems that Python on RevPI was consuming the whole memory available during the load of this file.

Splitting this file into sub function chunks, each loaded separately and then called by a unique function, solves this issue. This behavior has been implemented into schemas/generate_address_space.py and the update_ua_nodeset.py has been called.

@jprogin
Copy link
Contributor Author

jprogin commented Nov 13, 2025

I suppose that the tests are not ok due to the version of the Node Set used during the generation...

Any help appreciated.

@oroulet oroulet merged commit 3e431b6 into FreeOpcUa:master Nov 13, 2025
6 checks passed
Sign up for free to 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.

2 participants