Skip to content

Commit

Permalink
Merge pull request #15913 from mayankkunwar/quarkus-15442
Browse files Browse the repository at this point in the history
Fix Narayana STM failing to build in Native
  • Loading branch information
gsmet authored Mar 23, 2021
2 parents a9fadaf + 78c5633 commit b0d0e2a
Showing 1 changed file with 6 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@

import com.arjuna.ats.internal.arjuna.coordinator.CheckedActionFactoryImple;
import com.arjuna.ats.internal.arjuna.objectstore.ShadowNoFileLockStore;
import com.arjuna.ats.internal.arjuna.utils.SocketProcessId;
import com.arjuna.ats.txoj.Lock;

import io.quarkus.deployment.Feature;
Expand All @@ -30,6 +31,7 @@
import io.quarkus.deployment.builditem.nativeimage.NativeImageSystemPropertyBuildItem;
import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem;
import io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyBuildItem;
import io.quarkus.deployment.builditem.nativeimage.RuntimeInitializedClassBuildItem;
import io.quarkus.narayana.stm.runtime.NarayanaSTMRecorder;

class NarayanaSTMProcessor {
Expand Down Expand Up @@ -60,8 +62,11 @@ public NativeImageSystemPropertyBuildItem substrateSystemPropertyBuildItem() {
// so disable it at runtime
@BuildStep()
@Record(RUNTIME_INIT)
public void configureRuntimeProperties(NarayanaSTMRecorder recorder) {
public void configureRuntimeProperties(NarayanaSTMRecorder recorder,
BuildProducer<RuntimeInitializedClassBuildItem> runtimeInit) {
recorder.disableTransactionStatusManager();
runtimeInit.produce(new RuntimeInitializedClassBuildItem(SocketProcessId.class.getName()));
runtimeInit.produce(new RuntimeInitializedClassBuildItem(Lock.class.getName()));
}

// register STM dynamic proxies
Expand Down

0 comments on commit b0d0e2a

Please sign in to comment.