Error while turning on Replication Service

[Please complete the below template with details of the problem reported on your Web-UI. Be as detailed as possible. Community members, including developers, shall try and help. Thanks for your time in reporting this issue! We recommend purchasing commercial support for expedited support directly from the developers.]

Brief description of the problem

[write here]
Click the button to turn “On” the Replication Service

[write here]

Web-UI screenshot

Error Traceback provided on the Web-UI

Traceback (most recent call last): File "/opt/rockstor/src/rockstor/smart_manager/views/replication_service.py", line 65, in post config = self._get_config(service) File "/opt/rockstor/src/rockstor/smart_manager/views/base_service.py", line 43, in _get_config return json.loads(service.config) File "/usr/lib64/python2.7/json/__init__.py", line 339, in loads return _default_decoder.decode(s) File "/usr/lib64/python2.7/json/decoder.py", line 364, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) TypeError: expected string or buffer

@myzamri Welcome to the Rockstor community.

We need to improve our replication docs unfrotunately.

Try entering/configuring the settings of the replication service first on the services page via the spanner against the replication service. I think we may still have a fragility (read but) on that front.

Thanks for the report and let us know if this gets you up-and-running.

Hope that helps.

1 Like

I can say that the part is not finished yet. I am currently testing it in a virtual environment. I’m uninstalling it for now to test others. I may be coming back to this some other time.

@myzamri Hello again.

The replication feature has been proven working on our v4 “Built on openSUSE” and it was one of the earliest features we ensured worked in our move from the prior and now legacy CentOS variant (the v3*).

The docs are the missing bit, so it can be tricky to get going. You have top configure both the source and target machines via the spanner in services page and add each machines appliance ID to the other. They must also not be the same appliance ID. That will not work. Then the service has to be enabled on each machine with the respective send or receive.

The you will get, after 5 completed replication events, a stable state. As stated we need the docs done really. But the system we use ends up with 3 snapshots on each machine. Main issue is robustness as if a single replication event is disturbed one needs to manually intervene. There is also no resume capability for an in-progress btrfs send/receive which is the technology we ‘wrap’ for our replication.

The only docs we have currently on this setup are as follows:

https://rockstor.com/docs/interface/storage/share_replication.html?highlight=replication

And we have some long outstanding doc issues to address this.

Also note that replication is know to be broken in our last CentOS testing channel, but was fixed later on in the CentOS stable channel. However I last proved it working here in the openSUSE testing channel with the indicated and issued caveat of robustness.

https://github.com/rockstor/rockstor-core/issues/2215

Any detailed reports of failure in v4 are of course welcome, given a correctly configured setup. Again the docs are the weakness here, at least initially. I have a technical wiki entry almost done that I need to work on some time that will help other developers contribute but as always there are resource constraints in such a large project.

Hope that helps and if you end up persevering and prevailing on this one do consider contributing the required user documentation update:

Contributing to Rockstor documentation: Contributing to Rockstor documentation — Rockstor documentation

The docs have been getting much better of late and replication has unfortunately not received the attention it deserves.

Hope that helps.

2 Likes