Skip to main content
Announcements
Qlik Introduces a New Era of Visualization! READ ALL ABOUT IT
cancel
Showing results for 
Search instead for 
Did you mean: 
guilherme-matte
Partner - Creator
Partner - Creator

AR_PUBLICATION and "Table is suspended" error.

Hello team!

I'm having the following problem with 5 out of the 6 tables we are trying to replicate.

The log:

guilhermematte_0-1679266056293.png

The error log message for one table:

guilhermematte_1-1679266136671.png

guilhermematte_2-1679266181369.png

We already have sysadmin role (at least I was told it was granted) since i was looking at this article previously: Ted Manka SQL_ERROR SqlState: 42000 NativeError: 20026 Message: [Microsoft][ODBC Driver 17 for SQL S...

 

Any ideas of what might be the issue?  As I said, one table is making the full load and has not shown any issues, but the other 5 of the 6 are giving me this error.

Edit: Despite one of the tables starting the full load, by the log seems that the replicate feature is not enable in any of the 6.

 

Appreciate the help as always!

Cheers,

 

 

 

1 Solution

Accepted Solutions
Steve_Nguyen
Support
Support

When MS-Replication is enabled on the source, it creates a MS-Replication log reader job which reads from tlogs and populates the distribution database with the changes.

When you apply MS-CDC at the same time on the source, it creates a MS-CDC capture job this time job that also reads from the tlogs but populates the change tables.

You had both enabled on the same system, and the MS-CDC capture job could not run as the sp_repldone process which marks the changes out the logs as replicated could be owned by only one job. The sp_repldone process was owned by the MS-Replication log reader job.

for your MS-CDC task, try the below :
1. edit the SQL (MS-CDC) endpoint, advanced / add internal parameter: skipMscdcJobFitnessCheck and check it.

2. save the endpoint, you can reload task as needed.

this tell Replicate MS-CDC not check for the MS-CDC capture job as it doesn’t rely on it anyway

Help users find answers! Don't forget to mark a solution that worked for you! If already marked, give it a thumbs up!

View solution in original post

5 Replies
OritA
Support
Support

Hi, 

Based on the error, it seems that the CDC option is not turned on on your source db. Please refer to the following section in the documentation and follow the steps listed under: ' Preparing the database for CDC'

https://help.qlik.com/en-US/replicate/November2022/Content/Replicate/Main/MicrosoftSQLServer-MSCDC/M...

The full load only task do not show this error since full load only task do not perform CDC. 

 

Regards,

 

Orit

guilherme-matte
Partner - Creator
Partner - Creator
Author

Hello OritA

Thank you for you response! Let me add you some extra background before accepting the answer (just got this info as well)

Seems that both MS-Replication and MS-CDC were enabled in the Source. I have just tried running the Task with MS-CDC endpoint and received the Fitness check error.

Using the internal parameter"skipMscdcJobFitnessCheck" i was able to start the job without any issues anymore (though i imagine the source capture does not work in these cases). I have just asked to disable the MS-REPLICATE and i will try again without the internal parameter. Will keep you posted here.

Please let me know if it makes sense.

Kind regards!

 

Steve_Nguyen
Support
Support

When MS-Replication is enabled on the source, it creates a MS-Replication log reader job which reads from tlogs and populates the distribution database with the changes.

When you apply MS-CDC at the same time on the source, it creates a MS-CDC capture job this time job that also reads from the tlogs but populates the change tables.

You had both enabled on the same system, and the MS-CDC capture job could not run as the sp_repldone process which marks the changes out the logs as replicated could be owned by only one job. The sp_repldone process was owned by the MS-Replication log reader job.

for your MS-CDC task, try the below :
1. edit the SQL (MS-CDC) endpoint, advanced / add internal parameter: skipMscdcJobFitnessCheck and check it.

2. save the endpoint, you can reload task as needed.

this tell Replicate MS-CDC not check for the MS-CDC capture job as it doesn’t rely on it anyway

Help users find answers! Don't forget to mark a solution that worked for you! If already marked, give it a thumbs up!
guilherme-matte
Partner - Creator
Partner - Creator
Author

Hello Steve!

Thank you for your response.

Did everything as explained and the job seem to be running normally now (doing a full load).

Just to be clear, the change data capture will still work and capture the changes, correct?

Cheers

Steve_Nguyen
Support
Support

@guilherme-matte 

 

"Just to be clear, the change data capture will still work and capture the changes, correct?" yes, you can run some simple test to validate

Help users find answers! Don't forget to mark a solution that worked for you! If already marked, give it a thumbs up!