Rasa Memory Growing

I have launched my Rasa application on AWS EC2 with an external tracker store (i.e. not InMemoryTrackerStore). Here is my endpoints.yml file:

action_endpoint:
 url: "http://app:5055/webhook"

tracker_store:
  type: "dynamo"
  table_name: "my_trackerstore"
  region: "us-west-1"

However, I see that my AWS EC2 instance’s memory usage is growing. Eventually, I get the error that there is no space left on device. Is Rasa storing conversations in memory, even though I have configured it to output to DynamoDB? What can I do about this growing memory problem?

Note, I know that it’s writing to my DynamoDB because I can see the entries written there. Additionally, I based my deployment on the following article: TTT Studios | Making a Lightweight, Low-Cost Rasa Chatbot with NGINX

Bump ^

Hi @sum1l0st. Can you check if the conversations are being stored in the SQLite database? An easy way to do this might be to send a message to the assistant and then run the following commands:

sqlite3 rasa.db

SELECT MAX(latest_event_time) FROM conversation;

This will return the time of the latest conversation event in epochs, which you can convert to a human readable timestamp and find out if the message you just sent was stored in memory.

@tyd, thanks for replying. Yes, it seems from

sqlite> SELECT MAX(latest_event_time) FROM conversation;
1599505177.26918

that these conversations are still being stored in-memory — even though I also see these conversations in my DynamoDB table.

What should I do to prevent these messages from being stored in memory, and only in my external database?

@sum1l0st,

Can you describe the exact steps you take in deploying Rasa ?

Are you installing Rasa X, or only Rasa Open Source?