I have the following problem:

In an existing mobilink installation I added a new mobilink client ( I took an existing client C1 and Unloaded it in a new (with dbinit)created DB, then configured this DB as a new client C9).

I configured the mobilink Client also on this new C9 so I can see now C9 in the SYSSYNC.

On the server (SQL-17) I added the new remote user and I can see it in ml_user.

I have the problem that C9 connects to the server as C1.

How does mlsrv17 exactly match the rows in ml_subscription? does it match it with the user (ml_user) or with the remote_id (ml_database)?

How can I find the remote_id on the client, to check whtether it matches with the value in ml_database on the server?

asked 19 Jul '21, 04:26

Baron's gravatar image

accept rate: 46%

edited 19 Jul '21, 04:26

More preciesly, my problem is that I dno't see new rows in table ml_subscription!

My Guess ist that the new generated DB (C9) has the same remote_id as the C1, and the question is, can I change the remote_id on C9?

(19 Jul '21, 05:33) Baron
Comment Text Removed

I found it, it is simply in SYSOPTION!!!

But weird, why the mlsrv17 considers the rid and not the user_id!!!!!

permanent link

answered 19 Jul '21, 05:48

Baron's gravatar image

accept rate: 46%

converted 19 Jul '21, 05:51

My other question, is it legit to maniuplate the value of the option ml_remote_id? Can I write any value here (no any restirctions on length...etc.)?

(19 Jul '21, 05:56) Baron
Replies hidden

The ml_remote_id is used to uniquely identify a DATABASE in the synchronization system. This value will typically be used for no other reason than to ensure that all the data you've defined as wanting to synchronize from this database is applied to the consolidated database once and exactly once.

The MobiLink user_id is used to uniquely identify an ENTITY in the synchronization system, such as a person. This value will typically be used to define the subset of data from the consolidated database that is synchronized to the remote database.

As the documentation states ( https://help.sap.com/viewer/61ecb3d4d8be4baaa07cc4db0ddb5d0a/17.0/en-US/8146ea136ce2101495c491b579814da9.html ), it is perfectly valid for you to execute the SET OPTION command to manually set or change the ml_remote_id value. We would strongly recommend using a GUID, to easily ensure uniqueness across your system. The maximum length of the remote_id value is 128, as defined by the size of the remote_id column in the ml_database table in the consolidated database. You should always be careful to ensure that every ml_remote_id value in your synchronization system is unique. As you discovered, when you unload and reload a remote database that has already synchronized, the ml_remote_id value persists across the rebuild, and you now have duplicate values in your system, which is A Very Bad Things. If you do this on a regular basis, you should ensure that you either change the ml_remote_id value on the new database (or set to NULL so a GUID is automatically chosen on the first synch) after the rebuild and before the first synchronization on the new database.


(19 Jul '21, 08:52) Reg Domaratzki

Thanks for the explanation, what exactly means GUID? I do understand it is enough to set it to NULL then the first start of dbmlsync will set the proper value for it.

One more question, was the behaviour of ml_remote_id value persists across the rebuild also the same with Anywhere 10? I don't think so.

(19 Jul '21, 09:00) Baron

> We would strongly recommend using a GUID, to easily ensure uniqueness across your system.

Really? GUIDs are a nightmare for administrative purposes. My preference is for the central administrator to assign unique numbers 1, 2, 3 as remote databases are created, use the same number as the mobilink user name for each database, and to keep strict control...

This practice is described here: https://help.sap.com/viewer/089ddfd5963649299c74e12feeacb0b6/17.0/en-US/81abaf0e6ce21014847ab9ed96454f8c.html

...but, I'm not an administrator, so what do I know? :)

(19 Jul '21, 10:44) Breck Carter

> I don't think so

You (as administrator) are 100% responsible for the remote id... dbunload doesn't have any say in the matter, and never has :)

(19 Jul '21, 10:46) Breck Carter

I agree with you. I don’t like GUIDs, if they are used everywhere. This is a guid-hell, when people use them left and right.

(21 Jul '21, 05:12) Vlad

> guid-hell

A.K.A. the Windows Registry

(22 Jul '21, 09:04) Breck Carter
showing 1 of 8 show all flat view
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 19 Jul '21, 04:26

question was seen: 801 times

last updated: 22 Jul '21, 09:04