Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7701495
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 31, 20262026-05-31T22:59:57+00:00 2026-05-31T22:59:57+00:00

It seems that once an Ocean Workstep derivative class has been released to production

  • 0

It seems that once an Ocean Workstep derivative class has been released to production (and is used by clients), its name, namespace and assembly name are effectively locked for future updates (in order to ensure backwards compatibility).

When a Petrel project is saved, workstep references are saved as a full type name (namespace, class, strong assembly name) inside the binary file Classes.ptd. During loading, if the exact type name (assembly version seems to be ignored) can’t be resolved, the workstep appears as “workstep not available” in the workflow editor.

In other instances of binary serialization we’ve encountered, Petrel makes use of the SerializationBinder registered with PetrelSystem.ProjectSerializationService – not so for Workstep instances.

Is there any other way to facilitate Workstep class/namespace/assembly renames?

Why is this behaviour so poorly documented (if at all)? Have we misunderstood something?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-31T22:59:59+00:00Added an answer on May 31, 2026 at 10:59 pm

    This issue will actually be fixed with the Ocean 2012.1 API. The workstep reference will not include the version number anymore: Both workstep and process serialization is cleaned up. Version number is not serialized (and not used on deserialization) and a UniqueId can be used instead of the type name.

    Here is an extract of the 2012.1 Ocean release notes on the subject.

    Process and Workstep Unique Id
    Namespace: Slb.Ocean.Petrel.Workflow

    Processes and worksteps created through Ocean did not have a proper identifier until now. They were identified by their full type name including the version number which means that their identifier could change, for instance, if:
    – The version number of the plug-in assembly was increased (e.g. new plug-in install).
    – The process/workstep class was moved to a new assembly.
    – The namespace of the process/workstep class was changed.
    This could cause issues in Petrel such as the display of a “broken link” instead of the process name in the Favorites tree or a workstep appearing as “workstep not available” in the workflow editor.

    To solve this, Ocean has removed the version number from the process and workstep identifier and is delivering a new API to support a user defined identifier for custom processes and worksteps which will be unique across the Petrel application. Any process/workstep created through Ocean should now implement a unique identifier.

    Please refer to:
    – Process.UniqueId to define unique identifier for processes
    – Workstep.UniqueId to define unique identifier for worksteps.
    The new API also offers backward compatibility support for already serialized processes/worksteps and a few changes in the serialization logic. When a legacy project is being opened the old-style ids are automatically replaced by new ids during deserialization.

    Best Regards,
    Gaelle

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

It seems that when a WPF application starts, nothing has focus. This is really
It seems that when we use form_for @story do |f| then Story has to
It seems that once you have a manifest entry, a la: <html manifest=cache.manifest> Then
It seems that one could stop all threat of Sql injection once and for
I have timer that once in a minute executes a method. The method has
Ok. I'm stuck once again and it seems that internet just ran out of
It seems that my attempt at trying to replicate Jquery UI's draggable function has
My problem is that I can only seem to click the button once, if
Seems that even after unchecking the option in the PyDev/Debug preferenecs pane to launch
It seems that in a standard Xcode project, the default target automatically updates the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.