Opened 12 years ago

Closed 12 years ago

#398 closed defect (fixed)

fix UCERF2 thread safety

Reported by: Peter Powers Owned by: Peter Powers
Priority: major Milestone: OpenSHA 1.3
Component: sha Version:
Keywords: Cc:

Description

Threading issues exist when running multiple instances of UCERF2 in the same JVM. Specifically:

  • magLen relationships are commonly declared static even though they have a settable fields
  • deformation and fault model fetchers are usually only initialized once, but their internal tables are static and may not be fully initialized when accessed by multiple threads
  • nnls is unsynchronized

Change History (2)

comment:1 Changed 12 years ago by Peter Powers

in [8930]

org.opensha.commons.nnls.Nnls.nnls()

  • is now synchronized

UCERF2...A_FaultSegmentedSourceGenerator.java

  • nnls references are now instance not static
  • magLen rel is instance

UCERF2...DeformationModelPrefDataFinal?

  • internal maps are tied to instance and not static shared

UCERF2...PrefFaultSectionDataFinal?

  • internal maps are tied to instance and not static shared

UCERF2...NSHMP_GridSourceGenerator

  • magLen rel is instance

comment:2 Changed 12 years ago by Peter Powers

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.