DR2 mixed environment — version match requirements across platforms and components?

Hello,

I run a mixed environment: a Windows workstation 3ds Max with + V-Ray 7.30.02 (dispatcher + AppSDK) alongside a small Linux DR2 render farm.

Since Windows and Linux releases have separate version numbers, exact matches are difficult to maintain. Before I invest time into version-sync tooling, I’d like to understand the actual requirements.

Setup:

Windows: V-Ray for 3ds Max (includes AppSDK) — dispatcher
Linux nodes: V-Ray standalone installer + V-Ray AppSDK (separate packages)
Questions:

Must the Windows V-Ray version exactly match the Linux standalone version for DR2 — or is a patch-level difference tolerated?

On Linux: must the standalone installer and the AppSDK be the exact same build — or can they differ at the patch level?

Does a version mismatch cause a hard connection refusal, or does it render silently with potential artifacts/errors?

Which part of the version string matters — major.minor.patch.build?

Kind regards
algato

Hi algato,

Soon (hopefully by next week) we will enable the Stable builds for AppSDK, so from then on you will be able to have exact build matching between all the products.

As a hint - the V-Ray AppSDK builds include V-Ray Standalone (vray.bin) so you probably do not need to download and install that separately.

Edit: I am sorry, I was completely wrong - the version must be an exact match. I see that the 3ds Max and AppSDK releases have a different hotfix version, so you will have to wait for the Stable builds of AppSDK in order to use them together. Sorry about that.

Thanks for the clarification, dimitar — exact match is now clear.

Since we’re managing a mixed Linux farm (q1–q7 running V-Ray Standalone + AppSDK) alongside a Windows workstation (w1, V-Ray for 3ds Max), I built a small internal tool to monitor installed vs. available versions across all nodes automatically. It queries the Chaos Download API (download.chaos.com/api/v3/builds/latest) and reads installed versions via SSH from each node.

One thing I noticed while building it: the version format is inconsistent across sources on Windows:

  • PackageContents.xml reports 7.30.02
  • The vray.exe file version (via Windows Version Info API) reports 7.30.2.33544

Both refer to the same build, but the differing formats make programmatic comparison unnecessarily tricky. Would it be possible to align these — ideally to a consistent 4-part format everywhere?

Kind Regards
algato

Follow-up on my own question — sharing the approach I ended up using

Thanks again to Dimitar for clarifying the exact-match requirement. For anyone building programmatic version checks across mixed sources: I normalize to a 3-part integer tuple for cross-platform comparison (Windows exe reports 7.30.2.33544, Linux standalone reports 7.30.02 — both become (7, 30, 2)), but store the full 4-part string as an exact fingerprint when checking whether a specific build is installed on a known machine.

def version_norm(v: str) → tuple:
parts = v.split(“.”)[:3]
try:
return tuple(int(x) for x in parts)
except ValueError:
return (0, 0, 0)

# Cross-platform match check:
version_norm(“7.30.2.33544”) == version_norm(“7.30.02”) # True

# Exact build check (Windows node):
installed == “7.30.03.33544” # full 4-part string

Works reliably in our setup so far on V-Ray 7.30.