Discussion:
Subscription expiration time is NOT respected by SQL CE 2.0 subscribers
(too old to reply)
Dev
2009-07-27 18:05:35 UTC
Permalink
Hello,

We have an installation of about 100 Windows Mobile 5.0 Pocket PCs all
equipped with SQL CE 2.0 database and a Microsoft .NET Compact
Framework 1.0 SP3 application written in C#.

The application frequently initiates Merge Replication to a backend
SQL 2000 SP4 Standard Edition database server.

Our issue is that although the Subscription Expiration of our
Publication has been set to 14 days (the default), our subscribers (WM
5.0 Pocket PCs with SQL CE 2.0 installed) can perform merge
replication even after 14 days have passed since their last merge
replication process, without receiving an error that their
subscription is invalid and that must be dropped. As a result, our
subscribers do NOT get recent changes from the Publisher.

Do you have an idea of what we should be investigating in order to
solve this very peculiar problem ?

Thanking you all in advance for any thoughts / experience you are
willing to share.

Panos
Alberto Silva, MVP
2009-07-28 15:02:00 UTC
Permalink
It is not a problem, it's documented in the books online... see the topic
"How Merge Replication Manages Subscription Expiration and Metadata Cleanup
"
--
Alberto Silva
http://www.moving2u.pt - R&D Manager
http://msmvps.com/AlbertoSilva - Blog
Microsoft MVP - Device Application Development
Post by Dev
Hello,
We have an installation of about 100 Windows Mobile 5.0 Pocket PCs all
equipped with SQL CE 2.0 database and a Microsoft .NET Compact
Framework 1.0 SP3 application written in C#.
The application frequently initiates Merge Replication to a backend
SQL 2000 SP4 Standard Edition database server.
Our issue is that although the Subscription Expiration of our
Publication has been set to 14 days (the default), our subscribers (WM
5.0 Pocket PCs with SQL CE 2.0 installed) can perform merge
replication even after 14 days have passed since their last merge
replication process, without receiving an error that their
subscription is invalid and that must be dropped. As a result, our
subscribers do NOT get recent changes from the Publisher.
Do you have an idea of what we should be investigating in order to
solve this very peculiar problem ?
Thanking you all in advance for any thoughts / experience you are
willing to share.
Panos
Dev
2009-07-29 07:26:00 UTC
Permalink
On Tue, 28 Jul 2009 16:02:00 +0100, "Alberto Silva, MVP"
Post by Alberto Silva, MVP
It is not a problem, it's documented in the books online... see the topic
"How Merge Replication Manages Subscription Expiration and Metadata Cleanup
"
How Merge Replication Manages Subscription Expiration and Metadata
Cleanup

Hi Alberto,

The only relevant paragraph I could find was the following:

###
If, after a clean up, the publication retention period is increased
and a subscription tries to merge with the Publisher (which has
already deleted the metadata), the subscription will not expire
because of the increased retention value. However, the Publisher does
not have enough metadata to download changes to the Subscriber, which
leads to non-convergence.
###

I read the above, but I still do not know how to attack the above
issue of non-convergence. Do you have a concrete suggestion/example on
how to know when a subscription has expired, since I do not get any
errors / exceptions when my subscriber tries to merge replciate with
the publisher, even after a month or more has passed since their last
data sync (remember my subscription expiration is set to 14 days).

If I understood correctly, once I know that my subscriber db is out of
sync, I could force my subscriber to request a new (fresh) copy of the
whole publisher db, correct?

Can you please share an example of what I need to check on the
subscriber and/or publisher in order to know when to reinitialise my
subscription?

I use SQL CE 2.0 on the subscribers.

Thank you for your time.
Alberto Silva, MVP
2009-07-30 14:22:43 UTC
Permalink
Hi,
I have to admit that I no longer make direct customer support, but I still
remember that after people vacations, like 3-4 weeks, we used to get a lot
of calls of users complaining that they could no longer sync because they
got a message that the subscription expired. At those days we were still
with SQL CE 2.0 and using the default retention period of 14 days, so I'm
afraid I can't be of any more specific help.
--
Alberto Silva
http://www.moving2u.pt - R&D Manager
http://msmvps.com/AlbertoSilva - Blog
Microsoft MVP - Device Application Development
Post by Dev
On Tue, 28 Jul 2009 16:02:00 +0100, "Alberto Silva, MVP"
Post by Alberto Silva, MVP
It is not a problem, it's documented in the books online... see the topic
"How Merge Replication Manages Subscription Expiration and Metadata Cleanup
"
How Merge Replication Manages Subscription Expiration and Metadata
Cleanup
Hi Alberto,
###
If, after a clean up, the publication retention period is increased
and a subscription tries to merge with the Publisher (which has
already deleted the metadata), the subscription will not expire
because of the increased retention value. However, the Publisher does
not have enough metadata to download changes to the Subscriber, which
leads to non-convergence.
###
I read the above, but I still do not know how to attack the above
issue of non-convergence. Do you have a concrete suggestion/example on
how to know when a subscription has expired, since I do not get any
errors / exceptions when my subscriber tries to merge replciate with
the publisher, even after a month or more has passed since their last
data sync (remember my subscription expiration is set to 14 days).
If I understood correctly, once I know that my subscriber db is out of
sync, I could force my subscriber to request a new (fresh) copy of the
whole publisher db, correct?
Can you please share an example of what I need to check on the
subscriber and/or publisher in order to know when to reinitialise my
subscription?
I use SQL CE 2.0 on the subscribers.
Thank you for your time.
__________ Information from ESET NOD32 Antivirus, version of virus
signature database 4290 (20090730) __________
The message was checked by ESET NOD32 Antivirus.
http://www.eset.com
__________ Information from ESET NOD32 Antivirus, version of virus signature database 4290 (20090730) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com
Dev
2009-07-30 19:28:58 UTC
Permalink
On Thu, 30 Jul 2009 15:22:43 +0100, "Alberto Silva, MVP"
Post by Alberto Silva, MVP
Hi,
I have to admit that I no longer make direct customer support, but I still
remember that after people vacations, like 3-4 weeks, we used to get a lot
of calls of users complaining that they could no longer sync because they
got a message that the subscription expired. At those days we were still
with SQL CE 2.0 and using the default retention period of 14 days, so I'm
afraid I can't be of any more specific help.
Alberto,
Thank you for your time and help.

Loading...