5

Having some problems using DMS - misconfigure the task selection rule (i guess)

testing it between 2 small rds postgres instances created source and target endpoints created a replication instances
( tested connections successfuly )

The task i run keeps failing : " Last Error No tables were found at task initialization. Either the selected table(s) or schemas(s) no longer exist or no match was found for the table selection pattern(s)." 

Schemas : pg_catalog,information_schema,public

I only want to replicate a single DB called test_db

What should i use in the selection rule ?

enter image description here

9
  • hey..anyone knows ? Commented Sep 13, 2021 at 6:57
  • Does your DB have more than one schema ? Commented Sep 13, 2021 at 12:08
  • Im not very familiar with databases,but i checked ( also in the question body ) and there are 3 schemas ( pg_catalog,information_schema,public ) Commented Sep 13, 2021 at 15:11
  • Does the above settings give you any errors in cloud watch? is it worth splitting it into 3 task? Commented Sep 14, 2021 at 7:10
  • 1
    @EyalSolomon How did you solve this issue? Commented Apr 10, 2022 at 11:23

4 Answers 4

2

In my experience, my user didn't have the proper permissions/roles in my source MongoDB. My user couldn't access the schema, nor could it read from the tables, thus the error. If anyone sees this error, I suggest creating a user (or granting your user) with super permissions.

Sign up to request clarification or add additional context in comments.

2 Comments

Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
Spot on.. This is usually an error when the user does not have proper permission. This error is because your task, thus the user you are using on the dms task to read the source is not able to find these tables. Also check out the answer above with the kind of selection rule you can use. It would be interesting to check detailed debug logs wherein you can get the exact step where your task is failing.
0

You can pass testDB as the schema.

"rules": [{ "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "test_db", "table-name": "%" }, "rule-action": "include" }]

1 Comment

As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.
0

I have this error after I set up Selection rules on my migration tasks.

My source and target endpoints test the connection successfully. and I m pretty sure my source database schema and tables name are correct on my Selection rules.

Even I click Action and then modify the Selection rules again, it still showing this error.

However, I fix it by clicking Action and choosing Restart/Reusme, then it works... and migrates the data successfully.

Comments

0

I was getting the same error for a wile and figured it out. I have noticed that when I start my DMS task in the CloudWatch logs I could see that DMS was loading and preparing all the files and databases schemas. Since I have a lot of schemas and tables it took more than 120s to execute and it got timed out and I have received the same error.

*How to fix: Since the problem is at the source go to Endpoint and search for you Source Endpoint and got to Extra connection attributes and enter valued for executeTimeout to 3600.

Ref: https://repost.aws/knowledge-center/dms-error-canceling-statement-timeout

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.