erlang | Development repository for the erlang cookbook | Infrastructure Automation library
kandi X-RAY | erlang Summary
kandi X-RAY | erlang Summary
Manages installation of Erlang via packages or source.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of erlang
erlang Key Features
erlang Examples and Code Snippets
Community Discussions
Trending Discussions on erlang
QUESTION
We are looking to upgrade to the latest version of RabbitMQ so I have installed Erlang 24.0 and RabbitMQ 3.8.16 onto a Windows 10 PC for testing. I have the two RabbitMQ configuration files (rabbitmq.conf and advanced.config) stored in a folder called C:\RabbitMQ. The advanced.config contains static shovel configuration. I cannot get RabbitMQ to recognise the advanced.config file. Has anyone encountered this problem before?
We have earlier installs of RabbitMQ (i.e. Erlang 22.1 an RabbitMQ 3.8.2) running on Windows Server 2019 and these earlier versions load both config files with no issues.
All of our RabbitMQ installations store the config files in a folder called C:\RabbitMQ. We then set three environment variables to ensure that RabbitMQ recognises the folder and files:
- RABBITMQ_ADVANCED_CONFIG_FILE - C:\RabbitMQ\advanced
- RABBITMQ_BASE - C:\RabbitMQ
- RABBITMQ_CONFIG_FILE - C:\RabbitMQ\rabbitmq
I have followed the advice on the RabbitMQ config page https://www.rabbitmq.com/configure.html with regard to verifying the config file location.
I have also run the rabbitmq-diagnostics command which shows that only one config file is being loaded:
If I run the same command on our earlier installation then I can see that both files are being loaded:
...ANSWER
Answered 2021-Jun-14 at 09:19We tested it internally and everything works as expected.
Note that:
QUESTION
Well, the title says it all: I'm wondering what is the reason why the BEAM doesn't garbage collect atoms. I'm aware of question How Erlang atoms can be garbage collected but, while related, it doesn't reply to why.
...ANSWER
Answered 2021-Jun-12 at 20:42Because that is not possible (or at least very hard) to do in the current design. Atoms are important part of:
- modules, as module names are atoms
- function names, which also are atoms
- distributed Erlang also extensively use atoms
Especially last point makes it hard. Imagine for second that we would have a GC for atoms. What would happen if there would be a GC cleanup in between the distributed call where we send some atoms over the wire? All of that makes atoms quite essential to how VM works and making them GCed would not only make implementation of VM much more complex, it would also make code much slower as atoms do not need to be copied between processes and as these aren't GCed, these can be completely omitted in GC mark step.
QUESTION
What is the Erlang/OTP release schedule? How many major versions are released per year, and is there a schedule you can link?
What versions have long-term support (LTS)?
...ANSWER
Answered 2021-Feb-01 at 09:57Since the release of Erlang/OTP 18.0 in June 2015, there has been a major release every year in June, followed by minor releases (x.1, x.2, x.3) in September, December and March. There are also frequent patch packages announced on the erlang-announce mailing list.
I'm pretty sure this release schedule was announced on the erlang-questions mailing list, but I can't find it now...
There are, strictly speaking, no LTS versions. The documentation on supported releases says:
In general, bugs are only fixed on the latest release, and new features are introduced in the upcoming release that is under development. However, when we, due to internal reasons, fix bugs on older releases, these will be available and announced as well.
QUESTION
erlang version = 1:24.0.2-1
rabbitmq-server version = 3.8.16-1
Recently installed latest rabbitmq on Ubuntu20. I verified that all was working fine and consumer was consuming the notification from messaging queue as required.
After approximately a day, rabbbitmq crashed as there was 0 disk space left.
After analysis found that around 10G was consumed by msg_store_transient, to which restarting rabbitmq solved the issue. But after a day, it happens again.
Can someone help me further?
...ANSWER
Answered 2021-Jun-06 at 12:54most likely you are consuming messages without sending back the basic_ack
, see for example here the ch.basic_ack
What to do:
QUESTION
I'm looking for a message queue implementation for python 3.6 (this exact version) that can be used to communicate between multiprocess.Process
es, specifically, It should be a multiproducer, single consumer, fifo with priority receive of messages of application specific types (e.g. if there is an system message (in erlang terms) in the middle of the queue, and an normal message in the head of the queue, the next receive should return the system message rather than the normal one)
But I doubt there will be such an library, so the question becomes, is there any stdlib or third party lib that gives me a chunk of shared memory or better a list, so I can read write to a buffer backed but the memory/list and guard the order with something like mp.Lock
?
multiprocessing.Manager
uses tcp, and starts a new process
ANSWER
Answered 2021-Jun-10 at 08:34I'm not so familiar with Erlang, but, based on how you described your needs, I think you might be able to take the approach of using multiprocessing.Queue
and sorting your messages before reading them.
The idea is to have a multiprocessing.Queue
(FIFO message queue) for each process. When process A sends a message to process B, process A puts its message along with the message's priority into process B's message queue. When a process reads its messages, it transfers the messages from the FIFO queue into a list and then sorts the list before handling the messages. Messages are sorted first by their priority followed by the time at which they arrived in the message queue.
Here's an example that has been tested with Python 3.6 on Windows.
QUESTION
Setup: 3 node cluster of rabbitmq nodes(via docker), behind ha-proxy.
Version:
- RabbitMQ: 3.8.11
- Erlang: 23.2.3
- Spring-amqp: 1.7.3
Spring-boot(1.5.4) app with 3 queues.
- defined as "exclusive", durable, auto-delete is false
- defined as "SAC", durable, auto-delete is false
- classic, durable, auto-delete is false
Policy:
Scenario:
- When application starts at first, queues are registered correctly.
- I bring down any node at random, if it is master node, the mirroring is triggered and one of the mirrored node becomes master.All fine so far.
- When I bring that node up, it is when I start to get exceptions in the application logs:
Logs:
...ANSWER
Answered 2021-Mar-18 at 21:25Boot 1.5.x and Spring AMQP 1.7.x are end of life and no longer supported.
That said, the following applies to 1.7.x too.
This situation will occur if queue recovery takes longer then 15 seconds (by default).
This is controlled by 2 container properties.
QUESTION
I have encountered some problems with dockerizing my rebar3 app. As I'm trying to run the app (after building) I receive an error /prod/bin/prod: line 272: /prod/erts-11.2.2.1/bin/erl: not found
This is my rebar.config:
...ANSWER
Answered 2021-May-30 at 10:09Erlang does not compile into binary files, you still need the erlang runtime to be able to run the application, yet your final docker image is a fresh alpine install that doesn't have erlang installed
QUESTION
Recently updated the macOS to Bigsur and as part of the update, I also updated the packages through homebrew. My coc.nvim plugin was not working so, I reinstalled the package. And after that, I am unable to see the color of my scheme (gruvbox) which is also installed as a plugin. Now the screen is all grey with the dark background (the background was dark even previously). I am attaching the vim settings for clarification. The syntax setting is enabled and it is rightly picking erlang, the termguicolors is set as well. I am using mac terminal to invoke vim.
...ANSWER
Answered 2021-Jun-03 at 06:48Vim colorschemes typically define styling attributes for basic terminals (term
), color terminals (cterm*
), and GUI (gui*
). Here is an example:
QUESTION
Trying to run the example app, sellaprime app, from the programming erlang book. I tested the supervisor code with the testing function within the supervisor. So, the supervisor should be OK. The application gets loaded but the application start runs into problem with below error:
...ANSWER
Answered 2021-Jun-01 at 19:38This:
QUESTION
I am new to Elixir and I would like to learn how to debug Streams better.
It's common where I work to have operations performed on large datasets. This means that Streams are used heavily until the final operation, usually an Enum.sum()
.
But this unfortunately means several calls look indecipherable as they are composed of several undocumented Stream.map
functions. (a problem we are currently fixing). I would like to see the state of the data as it passes from stream to stream for debugging. How is this normally accomplished?
Example:
...ANSWER
Answered 2021-May-22 at 15:56Would it be enough to start with connecting IO.inspect/2
to your pipeline?
ie:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install erlang
On a UNIX-like operating system, using your system’s package manager is easiest. However, the packaged Ruby version may not be the newest one. There is also an installer for Windows. Managers help you to switch between multiple Ruby versions on your system. Installers can be used to install a specific or multiple Ruby versions. Please refer ruby-lang.org for more information.
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page