Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OTP20. Connection rejected since distel node cannot handle UTF8_ATOMS #61

Closed
alexjgriffith opened this issue Nov 17, 2017 · 0 comments
Closed

Comments

@alexjgriffith
Copy link
Contributor

alexjgriffith commented Nov 17, 2017

Following my upgrade to OTP20 I began getting this error when attempting to connect.

(server@dev)2> 
=ERROR REPORT==== 17-Nov-2017::00:32:12 ===
** server@dev: Connection attempt from node distel_11815@dev rejected since it cannot handle ["UTF8_ATOMS"].**

The only Distel related response to this error I could find was here.

This issue seams to be pretty wide spread among other applications following the release of OTP20, for example and another.

EDIT

From the OTP20 Release notes

In the OTP 20 release candidates the function erlang:term_to_binary/1 changed the encoding of all atoms from ATOM_EXT to ATOM_UTF8_EXT and SMALL_ATOM_UTF8_EXT. This is now changed so that only atoms actually containing unicode characters are encoded with the UTF8 tags while other atoms are encoded ATOM_EXT just as before.

and

Atoms can now contain arbitrary unicode characters which means that the DFLAG_UTF8_ATOMS capability in the distribution protocol must be supported if an OTP 20 node should accept the connection with another node or library. Third party libraries which uses the distribution protocol need to be updated with this.

EDIT 2

Details for ATOM_UTF8_EXT and SMALL_ATOM_UTF8_EXT can be found here . These need to be implemented in exterl.el.

Details for the DFLAG_UTF8_ATOMS can be found here. This needs to be updated in derl.el.

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

No branches or pull requests

1 participant